*{margin:0;padding:0;box-sizing:border-box}:root{font-family:Open Sans,serif;line-height:1.5;font-weight:400;color-scheme:light;color:#1a1a1a;background-color:#fff;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{margin:0;min-width:320px;min-height:100vh}#root{width:100%}h1,h2,h3,h4,h5,h6{line-height:1.2}button{font-family:inherit}.sidebar{position:fixed;left:0;top:0;height:100vh;width:280px;background:#223943;box-shadow:2px 0 12px #0000001a;overflow-y:auto;z-index:1001}.sidebar-content{padding:32px 24px;display:flex;flex-direction:column;gap:32px}.profile-section{text-align:center}.profile-photo{width:200px;height:200px;margin:0 auto 16px;border-radius:20%;overflow:hidden;box-shadow:0 4px 8px #0000001a}.profile-photo img{width:100%;height:100%;object-fit:cover}.profile-name{font-size:1.75rem;font-weight:700;color:#fff;margin:0 0 8px;letter-spacing:-.5px}.profile-location{display:flex;align-items:center;justify-content:center;gap:6px;font-size:.95rem;color:#708090;margin:0}.location-icon{color:#708090}.social-links{display:flex;flex-direction:column;gap:12px}.social-link{display:flex;align-items:center;gap:12px;padding:4px 10px;text-decoration:none;color:#708090;font-size:1rem;font-weight:500;transition:all .2s ease}.social-link:hover,.social-link:focus-visible{border-color:#223943;color:#fff;transform:translate(4px)}.social-link.instagram:hover,.social-link.instagram:focus-visible{border-color:#e1306c;color:#e1306c}.social-link.etsy:hover,.social-link.etsy:focus-visible{border-color:#f1641e;color:#f1641e}.social-icon{flex-shrink:0}.message-button{display:flex;align-items:center;justify-content:center;gap:10px;padding:14px 24px;background:#708090;color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;text-decoration:none;transition:all .2s ease;cursor:pointer;box-shadow:0 2px 6px #2c5f2d33}.message-button:hover,.message-button:focus-visible{background:#56636d;transform:translateY(-2px);box-shadow:0 4px 12px #2c5f2d4d}.message-icon{flex-shrink:0}.sidebar-nav{display:flex;flex-direction:column;gap:8px;padding-top:16px;border-top:1px solid #e0e0e0}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 16px;color:#708090;text-decoration:none;font-size:1rem;font-weight:500;border-radius:8px;transition:all .2s ease}.nav-item:hover,.nav-item:focus-visible{background:#708090;color:#fff;transform:translate(4px)}.nav-item-sub{padding-left:32px;font-size:.9rem}.nav-item-group{cursor:default}.nav-item-group:hover,.nav-item-group:focus-visible{background:transparent;color:#708090;transform:none}.nav-icon{flex-shrink:0;color:inherit}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-track{background:#f1f1f1}.sidebar::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}.sidebar::-webkit-scrollbar-thumb:hover{background:#a1a1a1}@media(max-width:1024px){.sidebar{width:240px}.profile-photo{width:120px;height:120px}.profile-name{font-size:1.5rem}}@media(max-width:768px){.sidebar{position:fixed;width:100%;height:auto;bottom:0;top:auto;box-shadow:0 -2px 12px #0000001a;overflow-x:auto}.sidebar-content{flex-direction:row;padding:16px;gap:16px;align-items:center;overflow-x:auto}.profile-section{flex-shrink:0}.profile-photo{width:60px;height:60px;margin:0 auto 8px}.profile-name{font-size:.95rem}.profile-location{font-size:.8rem}.social-links{flex-direction:row;flex-shrink:0}.social-link{padding:10px;min-width:auto}.social-link span{display:none}.message-button{padding:10px 16px;font-size:.9rem;flex-shrink:0}.sidebar-nav{flex-direction:row;border-top:none;border-left:1px solid #e0e0e0;padding-top:0;padding-left:16px;gap:8px;flex-shrink:0}.nav-item{padding:10px 12px;white-space:nowrap}}.painting-card{background:transparent;border-radius:12px;cursor:pointer;position:relative}.painting-card:nth-child(6n+1){grid-row:span 7}.painting-card:nth-child(6n+2){grid-row:span 5}.painting-card:nth-child(6n+3){grid-row:span 8}.painting-card:nth-child(6n+4){grid-row:span 6}.painting-card:nth-child(6n+5){grid-row:span 7}.painting-card:nth-child(6n+6){grid-row:span 6}.painting-details-band{position:absolute;top:50%;left:0;right:0;transform:translateY(-50%);background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);opacity:0;transition:opacity .3s ease-in-out;pointer-events:none;z-index:10;box-shadow:0 4px 12px #00000026}.painting-card:hover .painting-details-band{opacity:1}.painting-image-container{position:relative;width:100%;height:100%;min-height:200px;overflow:hidden;background:#f0f0f0;border-radius:12px;box-shadow:0 4px 6px #0000001a}.painting-image{width:100%;height:100%;object-fit:cover}.sold-badge{position:absolute;top:16px;right:16px;background:#dc3545f2;color:#fff;padding:8px 16px;border-radius:6px;font-weight:600;font-size:.875rem;letter-spacing:.5px}.painting-info{padding:20px;display:flex;flex-direction:column;justify-content:center;text-align:center;max-height:80%;overflow-y:auto;scrollbar-width:thin;scrollbar-color:#888 #f0f0f0}.painting-info::-webkit-scrollbar{width:6px}.painting-info::-webkit-scrollbar-track{background:#f0f0f0;border-radius:3px}.painting-info::-webkit-scrollbar-thumb{background:#888;border-radius:3px}.painting-info::-webkit-scrollbar-thumb:hover{background:#666}.painting-name{margin:0 0 8px;font-size:1rem;font-weight:600;color:#1a1a1a}.painting-artist{margin:0 0 12px;font-size:.95rem;color:#666;font-style:italic}.painting-description{margin:0 0 8px;font-size:.9rem;color:#555;line-height:1.5}.painting-details{display:flex;gap:16px;margin-bottom:12px;font-size:.875rem;color:#888;justify-content:center}.painting-size,.painting-year{display:inline-block}.painting-price{font-size:1rem;font-weight:700;color:#223943}@media(max-width:768px){.painting-card:nth-child(6n+1){grid-row:span 6}.painting-card:nth-child(6n+2){grid-row:span 5}.painting-card:nth-child(6n+3){grid-row:span 7}.painting-card:nth-child(6n+4){grid-row:span 5}.painting-card:nth-child(6n+5){grid-row:span 6}.painting-card:nth-child(6n+6){grid-row:span 5}.painting-image-container{min-height:180px}}.carousel-container{position:relative;width:100%;max-width:750px;margin:0 auto;overflow:hidden;background:#000;border-radius:20px}.carousel-wrapper{position:relative;width:100%;padding-top:56.25%;overflow:hidden}.carousel-slides{position:absolute;top:0;left:0;display:flex;width:100%;height:100%;transition:transform .5s ease-in-out}.carousel-slide{flex:0 0 100%;width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.carousel-image-wrapper{width:100%;height:100%;display:flex;align-items:center;justify-content:center;overflow:hidden}.carousel-image-wrapper.zoomed{cursor:grab}.carousel-image-wrapper.dragging{cursor:grabbing}.carousel-image{width:100%;height:100%;object-fit:scale-down;-webkit-user-select:none;user-select:none;transition:transform .2s ease-out}.carousel-control{position:absolute;top:50%;transform:translateY(-50%);background:#00000080;color:#fff;border:none;font-size:3rem;padding:1rem 1.5rem;cursor:pointer;transition:all .3s ease;z-index:10;border-radius:4px;line-height:1}.carousel-control:hover{background:#000c;transform:translateY(-50%) scale(1.1)}.carousel-control:active{transform:translateY(-50%) scale(.95)}.carousel-control-prev{left:1rem}.carousel-control-next{right:1rem}.carousel-play-pause{position:absolute;top:1rem;right:1rem;background:#00000080;color:#fff;border:none;font-size:1.2rem;padding:.5rem .75rem;cursor:pointer;transition:all .3s ease;z-index:10;border-radius:4px}.carousel-play-pause:hover{background:#000c;transform:scale(1.1)}.carousel-zoom-reset{position:absolute;top:1rem;left:50%;transform:translate(-50%);background:#000000b3;color:#fff;border:none;font-size:.9rem;padding:.5rem 1rem;cursor:pointer;transition:all .3s ease;z-index:10;border-radius:4px;font-weight:500}.carousel-zoom-reset:hover{background:#000000e6;transform:translate(-50%) scale(1.05)}.carousel-indicators{position:absolute;bottom:1rem;left:50%;transform:translate(-50%);display:flex;gap:.5rem;z-index:10}.carousel-indicator{width:12px;height:12px;border-radius:50%;border:2px solid white;background:#ffffff4d;cursor:pointer;padding:0;transition:all .3s ease}.carousel-indicator:hover{background:#fff9;transform:scale(1.2)}.carousel-indicator.active{background:#fff;transform:scale(1.3)}.carousel-empty{padding:3rem;text-align:center;color:#666;font-size:1.2rem}@media(max-width:768px){.carousel-control{font-size:2rem;padding:.5rem 1rem}.carousel-control-prev{left:.5rem}.carousel-control-next{right:.5rem}.carousel-play-pause{font-size:1rem;padding:.4rem .6rem}.carousel-indicator{width:10px;height:10px}}@media(max-width:480px){.carousel-control{font-size:1.5rem;padding:.3rem .7rem}.carousel-indicators{gap:.3rem}.carousel-indicator{width:8px;height:8px}}.modal-backdrop{position:fixed;inset:0;background:#000000d9;display:flex;align-items:center;justify-content:center;z-index:1000;padding:20px;animation:fadeIn .2s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.modal-content{background:#fff;border-radius:16px;max-width:1000px;width:100%;max-height:90vh;overflow-y:auto;position:relative;animation:slideUp .3s ease}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.modal-close{position:absolute;top:16px;right:16px;width:40px;height:40px;border:none;background:#ffffffe6;border-radius:50%;font-size:2rem;line-height:1;cursor:pointer;z-index:10;display:flex;align-items:center;justify-content:center;transition:all .2s ease;color:#333}.modal-close:hover{background:#fff;transform:rotate(90deg)}.modal-body{display:flex;flex-direction:row;gap:20px;padding:20px}.modal-image-container{display:flex;position:relative;width:100%;overflow:hidden;border-radius:12px;background:#f0f0f0;align-content:center}.modal-single-image-wrapper{width:100%;height:600px;display:flex;align-items:center;justify-content:center;overflow:hidden;position:relative}.modal-single-image-wrapper.zoomed{cursor:grab}.modal-single-image-wrapper.dragging{cursor:grabbing}.modal-image{width:100%;height:600px;object-fit:contain;-webkit-user-select:none;user-select:none;transition:transform .2s ease-out}.modal-image-container .carousel-container{height:100%;max-width:none;border-radius:12px;background:#f0f0f0}.modal-image-container .carousel-wrapper{padding-top:0;height:100%}.modal-zoom-reset{position:absolute;top:1rem;left:50%;transform:translate(-50%);background:#000000b3;color:#fff;border:none;font-size:.9rem;padding:.5rem 1rem;cursor:pointer;transition:all .3s ease;z-index:10;border-radius:4px;font-weight:500}.modal-zoom-reset:hover{background:#000000e6;transform:translate(-50%) scale(1.05)}.modal-sold-badge{position:absolute;top:20px;right:20px;background:#dc3545f2;color:#fff;padding:12px 24px;border-radius:8px;font-weight:600;font-size:1rem;letter-spacing:.5px}.modal-info{display:flex;flex-direction:column}.modal-title{font-size:1.5rem;font-weight:700;margin:0 0 12px;color:#1a1a1a}.modal-artist{font-size:1.125rem;color:#666;font-style:italic;margin:0 0 24px}.modal-details{display:flex;flex-direction:column;margin-bottom:20px;padding-bottom:20px;border-bottom:1px solid #e0e0e0}.detail-item{display:flex;align-items:center;gap:12px;font-size:14px}.detail-label{font-weight:600;color:#666;min-width:80px}.detail-value{color:#1a1a1a}.available-status{color:#223943;font-weight:600}.sold-status{color:#dc3545;font-weight:600}.modal-description{margin-bottom:24px}.modal-description p{font-size:14px}.modal-description h3{font-weight:600;margin:0 0 12px;color:#1a1a1a}.modal-description p{color:#666;line-height:1.6;margin:0}.modal-price{padding:15px;background:#f8f9fa;border-radius:12px;margin-bottom:20px;display:flex;align-items:center;gap:12px}.price-label{font-size:1.125rem;color:#666;font-weight:500}.price-value{font-size:1rem;font-weight:700;color:#223943}.price-sold{font-size:1.125rem;color:#dc3545;font-weight:600}.inquire-button{width:100%;padding:16px 32px;background:#223943;color:#fff;border:none;border-radius:8px;font-size:.8rem;font-weight:600;cursor:pointer;transition:all .2s ease;display:flex;align-items:center;justify-content:center;text-decoration:none;gap:10px}.inquire-button:hover{background:#223943;transform:translateY(-2px);box-shadow:0 4px 12px #2c5f2d4d}@media(max-width:968px){.modal-body{grid-template-columns:1fr;gap:32px;padding:32px 24px}.modal-title{font-size:1.2rem}.modal-close{top:12px;right:12px}}.gallery{max-width:1400px;margin:0 auto;padding:40px 20px}.gallery-header{text-align:center;margin-bottom:48px}.gallery-title{font-size:3rem;font-weight:700;margin:0 0 16px;color:#1a1a1a;letter-spacing:-.5px}.gallery-subtitle{font-size:1.25rem;color:#666;margin:0 0 32px}.featured-carousel-section{margin-bottom:64px;padding:0}.section-title{font-size:2rem;font-weight:600;color:#1a1a1a;margin:0 0 24px;text-align:center}.gallery-filters{margin-bottom:32px;text-align:center}.filter-buttons{display:flex;gap:12px;justify-content:center;flex-wrap:wrap}.filter-btn{padding:12px 24px;border:2px solid #e0e0e0;background:#fff;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;color:#666}.filter-btn:hover{border-color:#223943;color:#223943}.filter-btn.active{background:#223943;border-color:#223943;color:#fff}.gallery-controls{display:flex;gap:20px;margin-bottom:48px;flex-wrap:wrap;justify-content:end;align-items:center}.search-container{flex:1;min-width:280px;max-width:300px}.search-input{width:100%;padding:12px 20px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;transition:all .2s ease;box-sizing:border-box}.search-input:focus{outline:none;border-color:#223943;box-shadow:0 0 0 3px #2c5f2d1a}.search-input::placeholder{color:#999}.sort-container{display:flex;align-items:center;gap:12px}.sort-label{font-size:1rem;font-weight:500;color:#333;white-space:nowrap}.sort-select{padding:12px 16px;border:2px solid #e0e0e0;border-radius:8px;font-size:1rem;cursor:pointer;background:#fff;transition:all .2s ease;min-width:200px}.sort-select:hover{border-color:#223943}.sort-select:focus{outline:none;border-color:#223943;box-shadow:0 0 0 3px #2c5f2d1a}.gallery-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));grid-auto-rows:50px;gap:32px;margin-bottom:40px}.no-results{text-align:center;padding:60px 20px;color:#999;font-size:1.125rem}.pagination{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:48px;padding:20px 0}.pagination-btn{padding:10px 20px;border:2px solid #e0e0e0;background:#fff;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;color:#666}.pagination-btn:hover:not(:disabled){border-color:#223943;color:#223943}.pagination-btn:disabled{opacity:.4;cursor:not-allowed}.pagination-pages{display:flex;gap:8px}.pagination-page{width:40px;height:40px;border:2px solid #e0e0e0;background:#fff;border-radius:8px;font-size:1rem;font-weight:500;cursor:pointer;transition:all .2s ease;color:#666}.pagination-page:hover{border-color:#223943;color:#223943}.pagination-page.active{background:#223943;border-color:#223943;color:#fff}@media(max-width:768px){.gallery{padding:24px 16px}.gallery-title{font-size:2rem}.gallery-subtitle{font-size:1rem}.gallery-controls{flex-direction:column;gap:16px}.search-container{max-width:100%}.sort-container{width:100%}.sort-select{flex:1}.gallery-grid{grid-template-columns:repeat(auto-fill,minmax(250px,1fr));grid-auto-rows:40px;gap:24px}.pagination{flex-wrap:wrap;gap:8px}.pagination-btn{padding:8px 16px;font-size:.9rem}.pagination-page{width:36px;height:36px;font-size:.9rem}}.about{max-width:1400px;margin:0 auto;padding:40px 20px}.about-header{text-align:center;margin-bottom:48px}.about-title{font-size:3rem;font-weight:700;margin:0 0 16px;color:#1a1a1a;letter-spacing:-.5px}.about-section,.statement-section{background:#fff;border-radius:12px;padding:40px;margin-bottom:32px;box-shadow:0 2px 8px #00000014;transition:transform .3s ease,box-shadow .3s ease}.about-section:hover,.statement-section:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001f}@media(max-width:768px){.about{padding:24px 16px}.about-title{font-size:2rem}.section-title{font-size:1.5rem}.about-section,.statement-section{padding:24px}.section-content p{font-size:1rem}}@media(max-width:480px){.about-title{font-size:1.75rem}.section-title{font-size:1.25rem}.about-section,.statement-section{padding:20px}}.commission-details{max-width:1400px;margin:0 auto;padding:40px 20px}.commission-section{background:#fff;border-radius:12px;padding:40px;margin-bottom:32px;box-shadow:0 2px 8px #00000014;transition:transform .3s ease,box-shadow .3s ease}.commission-section:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001f}.section-title{font-size:2rem;font-weight:600;color:#1a1a1a;margin:0 0 24px;padding-bottom:16px}.section-content{line-height:1.8;color:#333}.section-content p{margin:0 0 20px;font-size:1.1rem;text-align:left}.section-content p:last-child{margin-bottom:0}.section-content a{color:#223943;text-decoration:underline}.section-content a:hover{color:#708090}.commission-steps{margin:0 0 20px;padding-left:24px;font-size:1.1rem}.commission-steps li{margin-bottom:12px;line-height:1.7}.commission-steps li:last-child{margin-bottom:0}.pricing-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin:24px 0}.pricing-card{display:flex;flex-direction:column;align-items:center;gap:6px;background:#f7f9fb;border:1px solid #e0e6eb;border-radius:10px;padding:24px 16px;text-align:center}.pricing-size{font-size:1.15rem;font-weight:700;color:#1a1a1a}.pricing-dims{font-size:.95rem;color:#708090}.pricing-price{font-size:1.25rem;font-weight:600;color:#223943;margin-top:8px}.commission-faq{margin:0}.commission-faq dt{font-size:1.05rem;font-weight:600;color:#1a1a1a;margin-top:24px}.commission-faq dt:first-child{margin-top:0}.commission-faq dd{margin:8px 0 0;font-size:1.05rem;line-height:1.7;color:#444}@media(max-width:768px){.commission-details{padding:24px 16px}.commission-section{padding:24px}.section-title{font-size:1.5rem}.section-content p,.commission-steps,.commission-faq dt,.commission-faq dd{font-size:1rem}.pricing-grid{grid-template-columns:1fr}}@media(max-width:480px){.section-title{font-size:1.25rem}.commission-section{padding:20px}}.footer{background:#1a1a1a;color:#fff;padding:32px 20px;margin-top:64px}.footer-content{max-width:1400px;margin:0 auto;text-align:center}.copyright-text{font-size:.95rem;line-height:1.6;margin:0;color:#e0e0e0;font-weight:400}@media(max-width:768px){.footer{padding:24px 16px;margin-top:48px}.copyright-text{font-size:.875rem}}.app{min-height:100vh;background:linear-gradient(135deg,#f5f7fa,#e8ecf1);display:flex}.main-content{flex:1;margin-left:280px;min-height:100vh}@media(max-width:1024px){.main-content{margin-left:240px}}@media(max-width:768px){.main-content{margin-left:0;margin-bottom:80px}}
