
:root{font-family:Arial,Helvetica,sans-serif;color:#161616;background:#f6f6f3}*{box-sizing:border-box}body{margin:0}button{font:inherit}header{padding:27px 4vw 23px;display:flex;align-items:end;justify-content:space-between;gap:24px;border-bottom:1px solid #d7d7d3}.logo{font-size:clamp(2rem,5vw,4.6rem);font-weight:900;letter-spacing:-.095em;line-height:.85}.logo span{color:#f05b34}nav{display:flex;gap:8px;flex-wrap:wrap}nav button{border:0;background:transparent;padding:9px 12px;text-transform:uppercase;font-size:.82rem;letter-spacing:.08em;cursor:pointer;color:#5b5b59}nav button:hover,nav button.active{background:#171717;color:#fff}.intro{padding:22px 4vw;display:flex;justify-content:space-between;gap:20px;align-items:baseline}.intro h1{margin:0;font-size:1rem;font-weight:500}.intro p{margin:0;color:#767672;font-size:.88rem}.grid{padding:0 4vw 5vw;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.card{position:relative;padding:0;border:0;background:#ddd;cursor:pointer;overflow:hidden;aspect-ratio:3/4;text-align:left}.card:nth-child(7n+2),.card:nth-child(7n+5){aspect-ratio:4/5}.card img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .5s,filter .4s}.card:hover img{transform:scale(1.045);filter:brightness(.75)}.caption{position:absolute;inset:auto 0 0;padding:42px 16px 16px;background:linear-gradient(transparent,rgba(0,0,0,.65));color:#fff;display:flex;justify-content:space-between;align-items:end;gap:10px}.caption strong{font-size:1.05rem;font-weight:600}.caption small{font-size:.7rem;letter-spacing:.1em;text-transform:uppercase}.card[hidden]{display:none}footer{padding:24px 4vw 40px;border-top:1px solid #ddd;color:#777;font-size:.8rem;display:flex;justify-content:space-between}.overlay{position:fixed;inset:0;background:rgba(9,9,9,.97);z-index:10;display:none;color:#fff}.overlay.open{display:flex;flex-direction:column}.viewerbar{height:68px;display:flex;align-items:center;justify-content:space-between;padding:0 22px;gap:15px}.viewerbar strong{font-size:.9rem}.viewerbar span{color:#aaa;font-size:.8rem}.icon{color:#fff;background:transparent;border:1px solid #666;width:42px;height:42px;cursor:pointer;font-size:1.5rem}.viewerbody{flex:1;min-height:0;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 22px 20px}.viewerbody img{width:auto;max-width:calc(100% - 110px);height:auto;max-height:calc(100vh - 116px);object-fit:contain}.icon:hover{background:#fff;color:#111}@media(max-width:900px){.grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){header{align-items:start;flex-direction:column;padding:23px 18px}.logo{font-size:3.5rem}nav{gap:2px}nav button{padding:9px 10px}.intro{padding:19px 18px}.intro p{display:none}.grid{padding:0 8px 30px;grid-template-columns:repeat(2,1fr);gap:8px}.caption{padding:35px 10px 10px}.caption strong{font-size:.88rem}.caption small{display:none}.viewerbody{padding:0 7px 15px;gap:4px}.viewerbody img{max-width:calc(100% - 76px)}.icon{width:36px;height:38px}footer{padding:20px 18px}}

a.logo{color:inherit;text-decoration:none}.card{display:block;text-decoration:none;color:inherit}.caption small{font-size:.75rem}nav a{display:inline-block;text-decoration:none;padding:9px 12px;text-transform:uppercase;font-size:.875rem;letter-spacing:.08em;color:#5b5b59}nav a:hover,nav a.active{background:#171717;color:#fff}.album-intro{padding:28px 4vw}.album-intro a{color:#555;font-size:.875rem}.album-intro h1{font-size:clamp(1.8rem,4vw,3rem);margin:18px 0 8px;letter-spacing:-.035em}.album-intro p{color:#666;margin:0;font-size:.95rem}.photo-grid .card,.photo-grid .card:nth-child(n){aspect-ratio:3/4}.photo-grid .caption{justify-content:flex-end}.album-nav{display:flex;justify-content:space-between;gap:20px;padding:0 4vw 36px}.album-nav a{color:inherit}.overlay{padding:0;border:0;max-width:none;max-height:none;width:100%;height:100%;margin:0}.overlay[open]{display:flex;flex-direction:column}.overlay::backdrop{background:#090909}.viewerbar{flex-shrink:0}.viewer-status{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);text-align:center;background:#111;padding:12px;color:#ddd}.viewer-status[hidden]{display:none}.error-caption{position:absolute;inset:30% 12px auto;text-align:center;color:#333;font-size:.9rem}.card:focus-visible,nav a:focus-visible{outline:3px solid #f05b34;outline-offset:3px}@media(max-width:620px){.album-intro{padding:22px 18px}.album-nav{padding:0 18px 28px;flex-wrap:wrap}nav a{padding:9px 10px}.viewerbar strong{font-size:.85rem}}
.brand{display:flex;align-items:center;gap:26px;color:inherit;text-decoration:none}.brand-name{font-size:clamp(1rem,2vw,1.35rem);font-weight:500;letter-spacing:-.02em}.caption{align-items:start;flex-direction:column;gap:7px}.caption small{font-size:.8rem;letter-spacing:.01em;text-transform:none}.card:nth-child(n){aspect-ratio:3/4}.photo-grid .caption{align-items:end}.intro p{display:block}.brand .logo{font-style:italic;letter-spacing:-.07em}@media(max-width:620px){.brand{align-items:start;flex-direction:column;gap:16px}.intro{align-items:start;flex-direction:column;gap:7px}.caption small{display:block;font-size:.75rem}.intro p{font-size:.8rem}}

.viewer-actions{display:flex;gap:14px;align-items:center}.download-photo{color:#fff;border:1px solid #666;padding:10px 14px;text-decoration:none;font-size:.875rem}.download-photo[hidden]{display:none}.download-photo:hover{background:#fff;color:#111}@media(max-width:620px){.viewerbar{height:auto;min-height:68px;flex-wrap:wrap;padding:10px 14px}.viewer-actions{gap:8px}}

footer{display:block;color:#555;font-size:.875rem;line-height:1.65}.usage-terms{max-width:900px;margin-bottom:28px}.usage-terms h2{font-size:1rem;color:#161616;margin:0 0 12px}.usage-terms p{margin:0 0 10px}.footer-bottom{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.footer-bottom a{color:#161616;text-underline-offset:4px}.removal-hint{margin:10px 0 0}.footer-bottom a:focus-visible{outline:3px solid #f05b34;outline-offset:4px}

/* SPRT homepage and album: six responsive columns */
.grid{grid-template-columns:repeat(6,minmax(0,400px));justify-content:center;gap:16px}
.grid .card{min-width:0;width:100%;max-width:400px}
.grid .caption strong{overflow-wrap:anywhere}
@media(max-width:1279px){.grid{grid-template-columns:repeat(4,minmax(0,400px))}}
@media(max-width:999px){.grid{grid-template-columns:repeat(3,minmax(0,400px))}}
@media(max-width:759px){.grid{grid-template-columns:repeat(2,minmax(0,400px));gap:10px}}
@media(max-width:359px){.grid{grid-template-columns:minmax(0,400px)}}

/* SPRT dark theme and compact footer */
:root{color-scheme:dark;color:#F4F4F5;background:#18181B}
body{background:#18181B;color:#F4F4F5}
header{border-bottom-color:#343438}
.intro p,.album-intro p{color:#A1A1AA}
.album-intro a,.album-nav a{color:#F4F4F5}
.card{background:#27272A}
.error-caption{color:#F4F4F5}
footer{padding:18px 4vw 20px;border-top-color:#343438;color:#A1A1AA;font-size:.78rem;line-height:1.5}
.usage-terms{max-width:none;margin-bottom:10px}
.usage-terms h2{color:#F4F4F5;font-size:.82rem;margin:0 0 5px}
.usage-terms p{margin:0}
.usage-terms strong{color:#F4F4F5}
.footer-bottom{justify-content:flex-start;align-items:baseline;gap:6px 22px}
.footer-bottom a{color:#F4F4F5}
.removal-hint{margin:0;font-size:.75rem}
@media(max-width:620px){footer{padding:16px 18px 18px}.footer-bottom{gap:6px 16px}.removal-hint{flex-basis:100%}}
