:root{--bg-color:#fff;--mat-color:#fff;--text-primary:#1c1c1c;--font-sans:"Inter", system-ui, -apple-system, sans-serif;--font-serif:"Cormorant Garamond", Georgia, serif;--nav-height:70px}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;font-family:var(--font-sans);background-color:var(--bg-color);color:var(--text-primary);-webkit-font-smoothing:antialiased}#root{flex-direction:column;min-height:100%;display:flex}.navbar{height:var(--nav-height);background-color:var(--bg-color);flex-shrink:0;justify-content:center;align-items:center;width:100%;display:flex}.artist-name{letter-spacing:.25em;text-transform:uppercase;color:var(--text-primary);font-size:.8rem;font-weight:500}.gallery-container.vertical-layout{background-color:var(--bg-color);flex:1;width:100%;overflow:hidden auto}.clouds-banner{background-color:#000;border:4px solid #e3dfd5;border-radius:16px;justify-content:center;align-items:center;width:calc(100% - 64px);max-width:1050px;height:280px;margin:24px auto 0;display:flex;position:relative;overflow:hidden;box-shadow:0 4px 24px #00000014}.banner-video{object-fit:cover;z-index:1;width:100%;height:100%;position:absolute;top:0;left:0}.clouds-banner:before{content:"";z-index:2;background-color:#00000040;position:absolute;inset:0}.banner-grain{opacity:.18;pointer-events:none;z-index:3;background:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");width:200%;height:200%;animation:8s steps(10,end) infinite grain-animation;position:absolute;inset:-50%}.banner-content{z-index:4;text-align:center;position:relative}@keyframes grain-animation{0%,to{transform:translate(0)}10%{transform:translate(-5%,-10%)}20%{transform:translate(-15%,5%)}30%{transform:translate(7%,-25%)}40%{transform:translate(-5%,25%)}50%{transform:translate(-15%,10%)}60%{transform:translate(15%)}70%{transform:translateY(15%)}80%{transform:translate(3%,35%)}90%{transform:translate(-10%,10%)}}.banner-title{color:#fff;text-shadow:0 4px 18px #0006,0 2px 4px #0000004d;margin-bottom:0;font-family:Marck Script,cursive;font-size:4rem;font-weight:400;line-height:1.2}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:24px;width:100%;max-width:1050px;margin:60px auto 100px;padding:0 32px;display:grid}.artwork-card{justify-content:center;align-items:center;width:100%;display:flex}.framed-artwork{aspect-ratio:1;background-color:#0000;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.artwork-wrapper{justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}.artwork-img{object-fit:contain;width:auto;max-width:100%;height:auto;max-height:100%;transition:opacity .4s;display:block;box-shadow:0 10px 30px #0000000d,0 2px 8px #00000008}.framed-artwork:hover .artwork-img{opacity:.15}.artwork-overlay{text-align:center;opacity:0;pointer-events:none;z-index:5;background-color:#121212d9;flex-direction:column;justify-content:center;align-items:center;padding:2rem;transition:opacity .4s;display:flex;position:absolute;inset:0}.framed-artwork:hover .artwork-overlay{opacity:1}.overlay-title{font-family:var(--font-serif);color:#fff;margin-bottom:.4rem;font-size:1.2rem;font-style:italic;font-weight:500;line-height:1.3}.overlay-meta{color:#bbb;letter-spacing:.06em;text-transform:uppercase;font-size:.6rem;font-weight:500}.site-footer{text-align:center;color:#999;letter-spacing:.05em;padding:32px 16px;font-size:.75rem}.sections-nav-container{width:100%;max-width:900px;margin:32px auto 0;padding:0 32px}.sections-nav{justify-content:space-between;align-items:center;gap:20px;padding-bottom:16px;display:flex}.nav-links{align-items:center;gap:28px;display:flex}.nav-link-item{font-family:var(--font-sans);letter-spacing:.12em;text-transform:uppercase;color:#777;white-space:nowrap;padding:4px 0;font-size:.8rem;font-weight:500;text-decoration:none;transition:color .3s}.nav-link-item:hover{color:var(--text-primary)}.nav-link-item.active{color:var(--text-primary);font-weight:600}.nav-dropdown{display:inline-block;position:relative}.dropdown-trigger{align-items:center;gap:4px;display:inline-flex}.dropdown-menu{opacity:0;visibility:hidden;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);z-index:100;background-color:#fffffffa;border:1px solid #e3dfd5;border-radius:8px;min-width:140px;padding:8px 0;transition:opacity .3s cubic-bezier(.16,1,.3,1),transform .3s cubic-bezier(.16,1,.3,1),visibility .3s;position:absolute;top:calc(100% + 4px);left:50%;transform:translate(-50%)translateY(8px);box-shadow:0 10px 30px #0000000f}.dropdown-item{font-family:var(--font-sans);letter-spacing:.1em;text-transform:uppercase;color:#777;text-align:center;padding:10px 18px;font-size:.75rem;font-weight:500;text-decoration:none;transition:color .2s,background-color .2s;display:block}.dropdown-item:hover{color:var(--text-primary);background-color:#f7f5f0}.dropdown-item.active{color:var(--text-primary);background-color:#f7f5f0;font-weight:600}.dropdown-menu.show{opacity:1;visibility:visible;transform:translate(-50%)translateY(0)}.dropdown-arrow{transition:transform .25s cubic-bezier(.16,1,.3,1);display:inline-block}.dropdown-arrow.open{transform:rotate(180deg)}.search-box{border-bottom:1px solid #00000014;align-items:center;padding-bottom:4px;transition:border-color .3s;display:flex;position:relative}.search-box:focus-within{border-color:var(--text-primary)}.search-icon{color:#999;margin-right:8px}.search-input{font-family:var(--font-sans);color:var(--text-primary);background:0 0;border:none;outline:none;width:150px;font-size:.8rem}.clear-search-btn{color:#999;cursor:pointer;background:0 0;border:none;padding:0 4px;font-size:1.1rem;line-height:1}.clear-search-btn:hover{color:var(--text-primary)}.no-search-results{text-align:center;color:#888;font-family:var(--font-sans);padding:60px 20px;font-size:.9rem}.news-section{width:100%;max-width:1050px;margin:80px auto;padding:0 32px}.news-header{text-align:center;margin-bottom:48px}.news-section-title{font-family:var(--font-serif);letter-spacing:.02em;margin-bottom:8px;font-size:2rem;font-weight:400}.news-section-subtitle{text-transform:uppercase;letter-spacing:.15em;color:#888;font-size:.75rem}.news-grid{grid-template-columns:repeat(2,1fr);gap:48px;max-width:100%;margin:0 auto;display:grid}.news-card{padding:8px 0}.news-date{text-transform:uppercase;letter-spacing:.08em;color:#999;margin-bottom:12px;font-size:.75rem;font-weight:600}.news-title{font-family:var(--font-serif);color:var(--text-primary);margin-bottom:12px;font-size:1.15rem;font-weight:500;line-height:1.4}.news-excerpt{color:#666;font-size:.85rem;line-height:1.6}.news-thumbnail-wrapper{aspect-ratio:16/9;width:160px;margin-top:24px;overflow:hidden}.news-thumbnail{object-fit:cover;width:100%;height:100%;display:block}.news-link{font-family:var(--font-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--text-primary);border-bottom:1px solid var(--text-primary);margin-top:16px;padding-bottom:2px;font-size:.75rem;font-weight:500;text-decoration:none;transition:opacity .3s;display:inline-block}.news-link:hover{opacity:.7}.about-section{width:100%;max-width:1050px;margin:100px auto;padding:0 32px}.about-title{font-family:var(--font-sans);letter-spacing:.15em;text-transform:uppercase;color:#777;text-align:center;margin-bottom:48px;font-size:.8rem;font-weight:500}.about-text{color:#333;text-align:left;max-width:600px;margin-bottom:60px;margin-left:0;margin-right:auto;font-size:.95rem;font-weight:400;line-height:1.85}.about-text p{margin-bottom:24px}.social-links{justify-content:center;align-items:center;gap:24px;margin-top:40px;display:flex}.social-link-item{color:#777;justify-content:center;align-items:center;text-decoration:none;transition:color .3s;display:inline-flex}.social-link-item:hover{color:var(--text-primary)}.social-link-item.instagram:hover{color:#e1306c}.social-link-item.x-twitter:hover{color:#000}.loading-viewport{width:100%;height:100vh;font-family:var(--font-sans);letter-spacing:.15em;text-transform:uppercase;color:#777;background-color:var(--bg-color);justify-content:center;align-items:center;font-size:.85rem;display:flex}.loading-text{animation:1.5s ease-in-out infinite pulse}@keyframes pulse{0%,to{opacity:.5}50%{opacity:1}}.admin-section{width:100%;max-width:1050px;margin:80px auto;padding:0 32px}.admin-login-card{background:#fff;border:1px solid #e5e5e5;max-width:400px;margin:0 auto;padding:40px;box-shadow:0 10px 30px #0000000d}.admin-login-form{margin-top:24px}.admin-form-group{flex-direction:column;margin-bottom:20px;display:flex}.admin-form-group label{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.08em;color:#777;margin-bottom:8px;font-size:.75rem;font-weight:500}.admin-input,.admin-textarea{font-family:var(--font-sans);background:0 0;border:1px solid #e5e5e5;outline:none;padding:10px 12px;font-size:.85rem;transition:border-color .3s}.admin-input:focus,.admin-textarea:focus{border-color:var(--text-primary)}.admin-textarea{resize:vertical}.admin-input-file{font-family:var(--font-sans);color:#777;font-size:.8rem}.admin-error-text{color:#d32f2f;margin-bottom:16px;font-size:.75rem;font-weight:500}.admin-submit-btn{background-color:var(--text-primary);color:#fff;width:100%;font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;cursor:pointer;border:none;padding:12px;font-size:.75rem;font-weight:500;transition:opacity .3s}.admin-submit-btn:hover:not(:disabled){opacity:.9}.admin-submit-btn:disabled{cursor:not-allowed;background-color:#ccc}.admin-dashboard{width:100%}.admin-header-row{border-bottom:1px solid #e5e5e5;justify-content:space-between;align-items:center;margin-bottom:32px;padding-bottom:16px;display:flex}.admin-logout-btn{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.08em;cursor:pointer;background:0 0;border:1px solid #e5e5e5;padding:8px 16px;font-size:.75rem;font-weight:500;transition:border-color .3s,color .3s}.admin-logout-btn:hover{border-color:var(--text-primary);color:var(--text-primary)}.admin-tabs{gap:16px;margin-bottom:40px;display:flex}.admin-tab-btn{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.08em;color:#777;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;padding:8px 4px;font-size:.8rem;font-weight:500;transition:border-color .3s,color .3s}.admin-tab-btn:hover,.admin-tab-btn.active{color:var(--text-primary);border-color:var(--text-primary)}.admin-split-layout{grid-template-columns:1fr 1fr;gap:60px;display:grid}.admin-form-container h3,.admin-list-container h3{font-family:var(--font-serif);margin-bottom:24px;font-size:1.3rem;font-weight:400}.admin-crud-form{max-width:100%}.admin-progress-bar{background:#f0f0f0;border-radius:10px;width:100%;height:20px;margin-bottom:20px;overflow:hidden}.admin-progress-fill{color:#fff;height:100%;font-family:var(--font-sans);background:#4caf50;justify-content:center;align-items:center;font-size:.7rem;font-weight:700;transition:width .3s;display:flex}.admin-items-list{border:1px solid #e5e5e5;flex-direction:column;gap:16px;max-height:500px;padding:16px;display:flex;overflow-y:auto}.admin-item-row{border-bottom:1px solid #f0f0f0;align-items:center;gap:16px;padding-bottom:16px;display:flex}.admin-item-row:last-child{border-bottom:none;padding-bottom:0}.admin-item-thumb{object-fit:cover;border:1px solid #e5e5e5;width:50px;height:50px}.admin-item-info{flex-direction:column;flex:1;gap:4px;display:flex}.admin-item-info strong{font-family:var(--font-sans);color:var(--text-primary);font-size:.85rem;font-weight:600}.admin-item-meta{color:#777;font-size:.75rem}.admin-delete-btn{color:#d32f2f;font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.05em;cursor:pointer;background:0 0;border:1px solid #d32f2f;padding:6px 12px;font-size:.7rem;font-weight:500;transition:background-color .3s,color .3s}.admin-delete-btn:hover{color:#fff;background-color:#d32f2f}.admin-entry-link{color:inherit;text-decoration:none}.admin-entry-link:hover{text-decoration:underline}@media (width<=768px){.gallery-container.vertical-layout{padding:0}.clouds-banner{border-radius:12px;width:calc(100% - 32px);height:160px;margin:16px auto 0;box-shadow:0 2px 16px #00000014}.banner-title{margin-bottom:0;font-size:2rem;line-height:1.1}.sections-nav-container{padding:0 16px}.sections-nav{flex-direction:column;align-items:stretch;gap:16px;padding-bottom:12px}.nav-links{flex-wrap:wrap;justify-content:center;gap:8px 12px;padding-bottom:4px;display:flex}.nav-link-item{letter-spacing:.05em;white-space:nowrap;padding:4px 2px;font-size:.65rem}.search-box{width:100%}.search-input{width:100%!important}.gallery-grid{grid-template-columns:repeat(3,1fr);gap:12px;margin:32px auto 60px;padding:0 12px}.overlay-title{font-size:1rem}.overlay-meta{font-size:.5rem}.news-section{margin:60px auto;padding:0 16px}.news-grid{grid-template-columns:1fr;gap:20px}.news-card{padding:10px 0}.about-section{margin:60px auto;padding:0 24px}.about-text{margin-bottom:40px;font-size:.85rem;line-height:1.7}.admin-section{margin:60px auto;padding:0 16px}.admin-split-layout{grid-template-columns:1fr;gap:40px}}.breadcrumbs-container{box-sizing:border-box;width:100%;max-width:1050px;margin:32px auto 0;padding:0 32px}.breadcrumbs{font-family:var(--font-sans);letter-spacing:.15em;text-transform:uppercase;color:#789;align-items:center;gap:8px;font-size:.7rem;font-weight:500;display:flex}.breadcrumb-home-link{color:#789;font-weight:500;text-decoration:none;transition:color .2s}.breadcrumb-home-link:hover{color:var(--text-primary)}.breadcrumb-separator{color:#bbb;-webkit-user-select:none;user-select:none;font-weight:400}.breadcrumb-current{color:var(--text-primary);font-weight:600}.contact-section{box-sizing:border-box;width:100%;max-width:600px;margin:80px auto;padding:0 32px}.contact-title{font-family:var(--font-sans);letter-spacing:.2em;text-transform:uppercase;color:var(--text-primary);text-align:center;margin-bottom:40px;font-size:1.1rem;font-weight:500}.contact-container{background-color:#ffffffe6;border:1px solid #e3dfd5;border-radius:8px;padding:40px;box-shadow:0 4px 20px #00000005}.contact-form{flex-direction:column;display:flex}.contact-success-msg{text-align:center;font-family:var(--font-sans);color:#555;background-color:#fcfbf9;border:1px solid #e3dfd5;border-radius:6px;padding:24px;font-size:.85rem;line-height:1.6}@media (width<=768px){.breadcrumbs-container{margin:20px auto 0;padding:0 16px}.contact-section{margin:60px auto;padding:0 24px}.contact-container{padding:24px}}
