.artist-page-main{flex-grow:1;display:flex;flex-direction:column;min-height:calc(100vh - 150px)}.artist-profile-box{display:grid;gap:20px;margin:35px auto 20px;padding:0 40px;align-items:start;width:100%;max-width:1400px;box-sizing:border-box;grid-template-columns:1fr}.artist-info{text-align:left}.artist-info h1{font-family:var(--font-sacred, "Cinzel", serif);font-size:2.25rem;font-weight:600;margin:0 0 8px;letter-spacing:.5px;color:#111;line-height:1.25;text-transform:none}.artist-meta-count{font-family:var(--font-sans, system-ui, sans-serif);font-size:.75rem;font-weight:600;color:#888;text-transform:uppercase;letter-spacing:1.5px;display:block;margin-bottom:18px}.artist-bio-wrapper{position:relative;max-width:1200px}.artist-bio-content{font-family:var(--font-body, "Georgia", serif);font-size:.98rem;line-height:1.65;color:#444;max-height:76px;overflow:hidden;transition:max-height .5s cubic-bezier(.4,0,.2,1);position:relative}.artist-bio-content p{margin:0 0 10px}.artist-bio-content p:last-child{margin-bottom:0}.artist-bio-content.has-overflow:after{content:"";position:absolute;bottom:0;left:0;right:0;height:42px;background:linear-gradient(to bottom,#fff0,#fff);pointer-events:none;transition:opacity .3s ease}.artist-bio-content.expanded:after{opacity:0;pointer-events:none}.read-more-btn{background:none;border:none;color:#111;font-family:var(--font-sans, system-ui, sans-serif);font-size:.8rem;font-weight:600;padding:0;cursor:pointer;display:inline-flex;align-items:center;gap:5px;margin-top:10px;transition:color .3s}.read-more-btn:hover{color:#666}.read-more-btn svg{width:14px;height:14px;fill:currentColor;transition:transform .3s cubic-bezier(.4,0,.2,1)}.artist-bio-content.expanded+.read-more-btn svg{transform:rotate(180deg)}.section-separator{max-width:1400px;margin:25px auto 0;padding:0 40px;width:100%;box-sizing:border-box}.section-separator-line{border-bottom:1px solid #eaeaea;width:100%}.section-title-wrapper{text-align:center;margin:25px auto 30px;padding:0 20px}.section-title{font-family:var(--font-serif, "Playfair Display", serif);font-style:italic;font-size:1.05rem;color:#999;margin:0;font-weight:400;letter-spacing:.5px}.masonry-gallery{max-width:1400px;margin:0 auto 30px;padding:0 40px;column-count:4;column-gap:25px;width:100%;box-sizing:border-box}.masonry-gallery.has-few-items,.masonry-gallery:has(>.painting-item:only-child),.masonry-gallery:has(>.painting-item:first-child:nth-last-child(2)),.masonry-gallery:has(>.painting-item:first-child:nth-last-child(3)){display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,320px));gap:25px}.painting-item{break-inside:avoid-column;-webkit-column-break-inside:avoid;page-break-inside:avoid;margin-bottom:25px;display:inline-block;width:100%;text-decoration:none;transition:transform .3s}.painting-item:hover{transform:translateY(-4px)}.painting-image-wrapper{position:relative;width:100%;border-radius:4px;overflow:hidden;box-shadow:0 3px 12px #0000000a;margin-bottom:10px;background-color:#f4f4f4;transform:translateZ(0)}.painting-image-wrapper img{width:100%;height:100%;object-fit:cover;display:block;transition:opacity .3s,filter .5s,transform .5s}.painting-item:hover .painting-image-wrapper img{opacity:.9}.is-nsfw img.nsfw-image{filter:blur(25px) brightness(.9);transform:scale(1.1)}.is-nsfw.unlocked img.nsfw-image,.nsfw-global-unlocked .is-nsfw img.nsfw-image{filter:blur(0) brightness(1);transform:scale(1)}.nsfw-overlay{position:absolute;inset:0;background:#141414bf;display:flex;flex-direction:column;justify-content:center;align-items:center;color:#fff;z-index:10;cursor:pointer;transition:opacity .4s ease;text-align:center}.nsfw-overlay svg{width:28px;height:28px;fill:#fff;margin-bottom:8px}.nsfw-overlay .nsfw-title{font-family:var(--font-sans, system-ui, sans-serif);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:1.2px;color:#fff;margin-bottom:4px;text-shadow:0 1px 3px rgba(0,0,0,.6);line-height:1.2}.nsfw-overlay .nsfw-action{font-family:var(--font-sans, system-ui, sans-serif);font-size:.68rem;font-weight:500;letter-spacing:.8px;color:#ffffffd1;text-decoration:underline;text-underline-offset:3px;text-shadow:0 1px 2px rgba(0,0,0,.6);transition:color .2s ease;line-height:1.2}.nsfw-overlay:hover .nsfw-action{color:#fff}.nsfw-overlay span:not(.nsfw-title):not(.nsfw-action){font-family:var(--font-sans, system-ui, sans-serif);font-size:.8rem;font-weight:600;text-transform:uppercase;letter-spacing:2px;color:#fff}.is-nsfw.unlocked .nsfw-overlay{opacity:0;pointer-events:none}.nsfw-global-unlocked .nsfw-overlay{display:none!important}.painting-item-meta{padding:0 2px}.painting-item-title{font-family:var(--font-sans, system-ui, sans-serif);font-size:.85rem;font-weight:600;color:#111;margin:0 0 3px;line-height:1.3}.painting-item-artist{font-family:var(--font-serif, "Playfair Display", serif);font-size:.85rem;font-style:italic;color:#666;display:block}.pagination-shell{max-width:1400px;margin:0 auto;padding:0 40px;width:100%;box-sizing:border-box}.elegant-pagination{display:flex;justify-content:center;align-items:center;gap:8px;margin-bottom:30px;border-top:1px solid #eeeeee;padding-top:30px;font-family:var(--font-sans, system-ui, sans-serif);font-size:.9rem;font-weight:600}.elegant-pagination a,.elegant-pagination span{display:inline-flex;justify-content:center;align-items:center;min-width:40px;height:40px;color:#555;text-decoration:none;transition:all .2s ease;border-radius:2px}.elegant-pagination a:hover{background-color:#f0f0f0;color:#111}.elegant-pagination span.current{background-color:#111;color:#fff}.elegant-pagination .dots{color:#999}.elegant-pagination .next,.elegant-pagination .prev{font-family:Georgia,serif;font-size:1.2rem}@media(max-width:1100px){.masonry-gallery{column-count:3;column-gap:20px;padding:0 25px}.artist-profile-box,.section-separator,.pagination-shell{padding:0 25px}}@media(max-width:768px){.masonry-gallery{column-count:2;column-gap:16px;padding:0 20px}.masonry-gallery.has-few-items,.masonry-gallery:has(>.painting-item:only-child),.masonry-gallery:has(>.painting-item:first-child:nth-last-child(2)),.masonry-gallery:has(>.painting-item:first-child:nth-last-child(3)){grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.artist-profile-box,.section-separator,.pagination-shell{padding:0 20px}.artist-info h1{font-size:1.85rem}}@media(max-width:480px){.masonry-gallery{column-count:1;padding:0 16px}.masonry-gallery.has-few-items,.masonry-gallery:has(>.painting-item:only-child),.masonry-gallery:has(>.painting-item:first-child:nth-last-child(2)),.masonry-gallery:has(>.painting-item:first-child:nth-last-child(3)){grid-template-columns:1fr}.artist-profile-box,.section-separator,.pagination-shell{padding:0 16px}.artist-info h1{font-size:1.5rem}}
