.tattoo-slider{max-width:100%;overflow:hidden;margin:40px auto;position:relative}.marquee-track{display:flex;width:max-content;animation:marquee 40s linear infinite}.tattoo-slider:hover .marquee-track{animation-play-state:paused}.slide{flex:0 0 auto;width:280px;padding:0 10px;box-sizing:border-box}.slide-image img{width:100%;height:250px;object-fit:cover;border-radius:12px;display:block;box-shadow:0 4px 12px rgba(0,0,0,.1);transition:transform .3s ease}.slide-image img:hover{transform:scale(1.05)}@media (min-width:768px){.slide{width:320px}}@media (min-width:1024px){.slide{width:350px}}@keyframes marquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}.slider-view-portfolio{text-align:center;margin-top:25px;margin-bottom:40px}.portfolio-button{display:inline-block;padding:12px 30px;background:#3c4a42;color:#fff;text-decoration:none;border-radius:30px;font-weight:600;transition:background .3s}.portfolio-button:hover{background:#2d3a33;color:#fff}.tattoo-portfolio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:20px;margin:20px 0}.portfolio-grid-item{position:relative;cursor:zoom-in;overflow:hidden;border-radius:12px;aspect-ratio:1;background:#f4f4f4}.portfolio-grid-item img{width:100%;height:100%;object-fit:cover;transition:transform .5s cubic-bezier(.25,.46,.45,.94);display:block}.portfolio-grid-item:hover img{transform:scale(1.08)}.portfolio-modal{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,.95);display:flex;align-items:center;justify-content:center;z-index:99999;animation:fadeIn .3s ease}.modal-close-btn{position:absolute;top:20px;right:30px;color:#fff;font-size:48px;font-weight:300;cursor:pointer;line-height:1;transition:color .3s,transform .3s;z-index:100000}.modal-close-btn:hover{color:#ccc;transform:rotate(90deg)}.modal-image{max-width:90%;max-height:90vh;object-fit:contain;border-radius:8px;box-shadow:0 20px 60px rgba(0,0,0,.5);cursor:zoom-out}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.portfolio-empty{text-align:center;color:#777;padding:40px;font-size:18px}