.gallery-section{margin:60px 0}.gallery-section h2{text-align:center;font-size:1.6rem;letter-spacing:.1em;margin-bottom:10px}.gallery-section .gallery-subtitle{text-align:center;color:hsla(0,0%,100%,.6);font-size:.85rem;margin-bottom:40px;letter-spacing:.05em}.gallery-grid{display:grid;grid-template-columns:1fr;grid-gap:24px;gap:24px}@media screen and (min-width:640px){.gallery-grid{grid-template-columns:1fr 1fr}}@media screen and (min-width:1024px){.gallery-grid{grid-template-columns:1fr 1fr 1fr}}.gallery-card{background:hsla(0,0%,100%,.04);border:1px solid hsla(0,0%,100%,.1);border-radius:15px;cursor:pointer;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}.gallery-card:hover{transform:translateY(-4px);border-color:hotpink;box-shadow:0 8px 30px rgba(255,105,180,.2)}.gallery-card:focus-visible{outline:3px solid hotpink;outline-offset:4px}.card-preview{display:grid;grid-template-columns:1fr 1fr;aspect-ratio:1;position:relative;overflow:hidden;border-radius:15px 15px 0 0}.card-preview.single-image{grid-template-columns:1fr}.card-preview img{width:100%;height:100%;object-fit:cover;display:block}.card-preview .preview-label{position:absolute;bottom:8px;font-size:.65rem;letter-spacing:.12em;padding:3px 8px;border-radius:4px;font-weight:700;text-transform:uppercase}.card-preview .preview-label.before{left:8px;background:rgba(0,0,0,.75);color:#ccc}.card-preview .preview-label.after{right:8px;background:hotpink;color:#111}.card-preview .divider{position:absolute;top:0;bottom:0;left:50%;width:2px;background:hsla(0,0%,100%,.4);transform:translateX(-50%)}.gallery-section .card-info{padding:14px 16px}.gallery-section .card-info .car-name{font-size:.95rem;color:#fff;margin:0 0 4px;letter-spacing:.06em;line-height:1.4}.gallery-section .card-info .card-meta{display:flex;justify-content:space-between;align-items:center;font-size:.7rem;color:hsla(0,0%,100%,.5);letter-spacing:.05em;line-height:1.4}.gallery-section .card-info .card-meta .shot-count{color:hotpink}.lightbox-overlay{position:fixed;inset:0;background:rgba(6,9,18,.85);z-index:1000;display:flex;align-items:center;justify-content:center;padding:24px}.lightbox-modal{background:#0c1020;border:1px solid hsla(0,0%,100%,.1);border-radius:16px;width:100%;max-width:860px;max-height:85vh;display:flex;flex-direction:column;overflow:hidden}.lightbox-header{display:flex;align-items:center;justify-content:space-between;padding:16px 24px;border-bottom:1px solid hsla(0,0%,100%,.1);flex-shrink:0}.lightbox-header .lightbox-title{font-size:1rem;letter-spacing:.08em;color:#fff;margin:0}.lightbox-header .lightbox-date{font-size:.75rem;color:hsla(0,0%,100%,.5);margin-left:12px}.lightbox-header .lightbox-close{background:none;border:1px solid hsla(0,0%,100%,.2);color:#fff;font-size:1.2rem;width:36px;height:36px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:border-color .2s,color .2s;font-family:inherit}.lightbox-header .lightbox-close:hover{border-color:hotpink;color:hotpink}.lightbox-header .lightbox-close:focus-visible{outline:2px solid hotpink}.lightbox-tabs{display:flex;gap:8px;padding:12px 24px;border-bottom:1px solid hsla(0,0%,100%,.08);flex-shrink:0}.lightbox-tabs button{background:none;border:1px solid hsla(0,0%,100%,.2);color:hsla(0,0%,100%,.6);font-family:inherit;font-size:.75rem;letter-spacing:.1em;padding:6px 16px;border-radius:20px;cursor:pointer;transition:all .2s}.lightbox-tabs button.active{background:hotpink;border-color:hotpink;color:#111;font-weight:700}.lightbox-tabs button:hover:not(.active){border-color:hsla(0,0%,100%,.5);color:#fff}.lightbox-tabs button:focus-visible{outline:2px solid hotpink}.lightbox-photos{flex:1 1;overflow-y:auto;padding:20px 24px;display:grid;grid-template-columns:1fr 1fr;grid-gap:12px;gap:12px;align-content:start}@media screen and (min-width:768px){.lightbox-photos{grid-template-columns:1fr 1fr 1fr}}@media screen and (min-width:1200px){.lightbox-photos{grid-template-columns:1fr 1fr 1fr 1fr}}.lightbox-photo{position:relative;border-radius:10px;overflow:hidden;cursor:pointer}.lightbox-photo img{width:100%;aspect-ratio:1;object-fit:cover;display:block;transition:transform .2s}.lightbox-photo .photo-type-badge{position:absolute;top:8px;left:8px;font-size:.6rem;font-weight:700;letter-spacing:.1em;padding:3px 8px;border-radius:4px;text-transform:uppercase}.lightbox-photo .photo-type-badge.before{background:rgba(0,0,0,.75);color:#ccc}.lightbox-photo .photo-type-badge.after{background:hotpink;color:#111}.lightbox-photo:hover img{transform:scale(1.03)}.photo-viewer{position:fixed;inset:0;background:rgba(6,9,18,.99);z-index:1100;display:flex;align-items:center;justify-content:center;padding:80px 100px}@media screen and (max-width:640px){.photo-viewer{padding:64px 60px}}.photo-viewer img{max-width:100%;max-height:100%;object-fit:contain;border-radius:8px}.photo-viewer .viewer-close{position:absolute;top:16px;right:16px;background:none;border:1px solid hsla(0,0%,100%,.3);color:#fff;font-size:1.2rem;width:40px;height:40px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:inherit;transition:border-color .2s,color .2s}.photo-viewer .viewer-close:hover{border-color:hotpink;color:hotpink}.photo-viewer .viewer-nav{position:absolute;top:50%;transform:translateY(-50%);background:hsla(0,0%,100%,.12);border:1px solid hsla(0,0%,100%,.25);color:#fff;font-size:2rem;width:56px;height:56px;border-radius:50%;cursor:pointer;display:flex;align-items:center;justify-content:center;font-family:inherit;transition:background .2s,border-color .2s,transform .2s}.photo-viewer .viewer-nav:hover{background:rgba(255,105,180,.35);border-color:hotpink;transform:translateY(-50%) scale(1.1)}.photo-viewer .viewer-nav.prev{left:20px}.photo-viewer .viewer-nav.next{right:20px}.photo-viewer .viewer-nav:disabled{opacity:.15;cursor:default}.photo-viewer .viewer-nav:disabled:hover{background:hsla(0,0%,100%,.12);border-color:hsla(0,0%,100%,.25);transform:translateY(-50%) scale(1)}