/* UX148 — six photographic identities. Local concept imagery; no canvas loops. */
body.photo148{font-family:Arial,sans-serif;overflow-x:hidden}.photo148 *{box-sizing:border-box}.photo148 header{position:relative;z-index:10;padding:24px 5vw;background:var(--bg);color:var(--fg)}.photo148 .wordmark{font-size:20px!important}.photo148.animated .hero{position:relative;isolation:isolate;display:grid!important;grid-template-columns:42% 58%!important;padding:0!important;gap:0!important;background:none!important;min-height:800px!important;text-align:left!important}.photo148.animated .hero-copy{position:relative!important;z-index:3!important;width:100%!important;max-width:100%!important;padding:70px 5vw!important;margin:0!important;align-self:center;display:flex!important;flex-direction:column;align-items:flex-start!important;text-align:left!important;gap:24px;rotate:0deg!important;transform:none!important}.photo148.animated h1{font-size:clamp(54px,6.4vw,100px)!important;line-height:.98!important;letter-spacing:-.055em!important;max-width:100%!important;margin:0!important;transform:none!important;animation:none!important}.photo148 .hero .intro{font:16px/1.85 Arial,sans-serif;max-width:40ch;margin:0}.photo148 .eyebrow{font:10px/1.6 monospace;letter-spacing:.15em}.photo148 .hero .cta{display:inline-flex;gap:20px;align-items:center;min-height:48px;padding:15px 22px;border:1px solid currentColor;background:var(--accent);color:var(--bg);font:700 11px/1.5 Arial,sans-serif;text-transform:uppercase;letter-spacing:.08em}.photo148.animated .hero .stage{position:relative!important;inset:auto!important;width:100%!important;height:800px!important;min-height:0!important;z-index:0!important;padding:0!important;margin:0!important;clip-path:none!important;transform:none!important;rotate:0deg!important;border:0!important;border-radius:0!important;order:initial!important;overflow:hidden;background:var(--bg)!important}.photo148 .stage-photo{display:none!important}.photo148 .stage-art{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important}.photo148.animated .stage .art-shape{display:block!important;position:absolute!important;inset:0!important;width:100%!important;height:100%!important;min-height:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;outline:0!important;background:none!important;transform:none!important;filter:none!important;rotate:0deg!important;opacity:1!important;scale:1!important;animation:none!important}.photo148 .stage .art-shape:before,.photo148 .stage .art-shape:after{display:none!important}.photo148 .hero-image148{display:block;width:100%;height:100%;object-fit:cover;object-position:var(--image-x,50%) 50%;transform:scale(var(--zoom,1.025));animation:photo148-breathe 24s ease-in-out infinite;transition:object-position 1.2s ease,filter 1.2s ease}.photo148[data-state='1'] .hero-image148{--image-x:65%;--zoom:1.14}.photo148[data-state='2'] .hero-image148{--image-x:35%;--zoom:1.04;filter:saturate(.85) brightness(.92)}.photo148 .stage-art:after{content:'';position:absolute;inset:65% 0 0;background:linear-gradient(transparent,#0009)}.photo148 .stage-meta{position:absolute;z-index:4;left:24px;right:24px;bottom:24px;top:auto;font:10px/1.6 monospace;color:#fff!important;text-shadow:0 1px 8px #000;display:flex;justify-content:space-between;gap:20px}.photo148 .hero .pause{position:absolute!important;z-index:6!important;display:block!important;top:20px!important;right:20px!important;left:auto!important;background:#121a1dcc!important;color:#fff!important;border:1px solid #ffffff80!important;border-radius:30px!important;min-height:40px;padding:10px 16px;font:11px Arial,sans-serif;cursor:pointer;backdrop-filter:blur(8px)}.photo148 .ticker{font:700 14px/1.5 Arial,sans-serif;padding:18px 0;border-block:1px solid currentColor}.photo148 .motion-story{padding:100px 6vw}.photo148 .motion-story h2{font:inherit;font-size:clamp(40px,5.2vw,80px);line-height:1.08;letter-spacing:-.04em}.photo148 .motion-points h3{font-size:20px;letter-spacing:.04em}.photo148 .motion-points p{font:15px/1.8 Arial,sans-serif}.photo148 .instrument{padding:80px 6vw}.photo148 .instrument h2{font-size:clamp(32px,3.6vw,55px);line-height:1.1}.photo148 .mode{font:700 11px/1.5 Arial,sans-serif;letter-spacing:.05em;min-height:48px;padding:14px 18px}.photo148 .selection{min-height:195px}.photo148 .selection h3{font-size:24px}.photo148 .selection p{font:16px/1.8 Arial,sans-serif;max-width:55ch}.photo148 .editorial{padding:90px 6vw;gap:7vw}.photo148 .editorial .image{height:560px;overflow:hidden;border-radius:0}.photo148 .editorial .image img{width:100%;height:100%;object-fit:cover;transform:scale(1.12)}.photo148 .editorial h2{font-size:clamp(36px,4vw,64px);line-height:1.1}.photo148 .editorial p{font:16px/1.8 Arial,sans-serif}.photo148 .closing{padding:85px 6vw}.photo148 .footer{gap:25px;flex-wrap:wrap}.photo148 .photo-note148{font:10px/1.7 monospace;max-width:50ch;opacity:.7}
/* ALTITUDE RUSH — vast landscape, compressed outdoor typography. */
body.photo148.kind-athlete{--bg:#172126!important;--fg:#f2eee2!important;--accent:#ff6e36!important}.photo148.kind-athlete .wordmark{font-family:Impact,sans-serif!important;font-style:italic}.photo148.animated.kind-athlete .hero{display:flex!important;align-items:flex-end;min-height:950px!important;padding:110px 0 60px!important}.photo148.animated.kind-athlete .hero .stage{position:absolute!important;inset:0!important;height:100%!important}.photo148.animated.kind-athlete .hero:after{content:'';position:absolute;inset:0;z-index:1;background:linear-gradient(90deg,#0e1b24aa,transparent 85%),linear-gradient(0deg,#0e1b24b0,transparent 70%);pointer-events:none}.photo148.animated.kind-athlete .hero-copy{align-self:flex-end;max-width:900px!important;padding:0 6vw!important;color:#fff5e9}.photo148.animated.kind-athlete h1{font:italic 900 clamp(75px,10vw,155px)/.9 Impact,sans-serif!important;letter-spacing:-.025em!important}.photo148.kind-athlete .hero-image148{--image-x:60%}.photo148.kind-athlete .motion-story{background:#ff6e36;color:#172126}.photo148.kind-athlete .hero .stage-meta{top:25px;bottom:auto;left:30px;right:220px}.photo148.kind-athlete .instrument{border-block:1px solid #ffffff40}
/* SUNDAY GROOVE — warm listening journal, image left, serif rhythm. */
body.photo148.kind-vinyl{--bg:#eee5d4!important;--fg:#354637!important;--accent:#87503a!important}.photo148.kind-vinyl .wordmark{font-family:Georgia,serif!important}.photo148.animated.kind-vinyl .hero{grid-template-columns:58% 42%!important}.photo148.animated.kind-vinyl .hero-copy{grid-column:2;grid-row:1}.photo148.animated.kind-vinyl .hero .stage{grid-column:1;grid-row:1;height:850px!important}.photo148.animated.kind-vinyl h1{font:400 clamp(55px,5.5vw,87px)/1.05 Georgia,serif!important;letter-spacing:-.05em!important}.photo148.kind-vinyl .motion-story{background:#354637;color:#eee5d4}.photo148.kind-vinyl .motion-story h2{font-family:Georgia,serif;font-weight:400}.photo148.kind-vinyl .ticker{background:#d2bc99}.photo148.kind-vinyl[data-state='2'] .hero-image148{filter:sepia(.15) saturate(1.1)}.photo148.kind-vinyl .editorial .image{border-radius:45% 45% 0 0}
/* FLUX MOVEMENT — cobalt editorial, oversized type against moving fabric. */
body.photo148.kind-street{--bg:#1734cc!important;--fg:#f0f0e7!important;--accent:#cbef6b!important}.photo148.kind-street .wordmark{font:900 20px Arial,sans-serif!important;letter-spacing:-.05em!important}.photo148.animated.kind-street .hero{grid-template-columns:45% 55%!important}.photo148.animated.kind-street h1{font:900 clamp(58px,7vw,110px)/.95 Arial,sans-serif!important;letter-spacing:-.075em!important}.photo148.kind-street .hero-image148{--image-x:54%}.photo148.kind-street .motion-story{background:#f0f0e7;color:#1734cc}.photo148.kind-street .motion-story h2{font-weight:900}.photo148.kind-street .editorial{grid-template-columns:1.2fr .8fr}.photo148.kind-street .ticker{background:#cbef6b;color:#1734cc}
/* DAYPLAY — sunny festival poster, broad image below an open headline. */
body.photo148.kind-festival{--bg:#f7e6ad!important;--fg:#603e80!important;--accent:#fb7751!important}.photo148.kind-festival .wordmark{font:900 20px 'Trebuchet MS',sans-serif!important}.photo148.animated.kind-festival .hero{display:flex!important;flex-direction:column!important;gap:30px!important;min-height:0!important;padding:50px 5vw 0!important}.photo148.animated.kind-festival .hero-copy{display:grid!important;grid-template-columns:1.3fr .7fr!important;gap:20px 5vw!important;padding:0!important}.photo148.kind-festival .eyebrow{grid-column:1/-1}.photo148.animated.kind-festival h1{grid-column:1;grid-row:2/4;font:900 clamp(60px,7.2vw,112px)/.98 'Trebuchet MS',sans-serif!important;letter-spacing:-.06em!important}.photo148.kind-festival .intro,.photo148.kind-festival .hero .cta{grid-column:2}.photo148.kind-festival .hero .cta{justify-self:start;color:#603e80!important;border:0;border-radius:40px}.photo148.animated.kind-festival .hero .stage{height:590px!important}.photo148.kind-festival .motion-story{background:#603e80;color:#f7e6ad}.photo148.kind-festival .motion-points article{border-top:0;border-radius:25px;padding:30px;background:#f7e6ad;color:#603e80}.photo148.kind-festival .ticker{background:#fb7751}.photo148.kind-festival[data-state='2'] .hero-image148{filter:saturate(1.12) sepia(.1)}
/* VOLTAGE — studio console, emerald, amber and technical labels. */
body.photo148.kind-type{--bg:#0c2824!important;--fg:#dce7cb!important;--accent:#f8af52!important}.photo148.kind-type .wordmark{font:700 20px Consolas,monospace!important}.photo148.animated.kind-type .hero{grid-template-columns:38% 62%!important;padding:35px 3vw!important;gap:3vw!important}.photo148.animated.kind-type .hero-copy{padding:30px 2vw!important}.photo148.animated.kind-type h1{font:700 clamp(44px,5.4vw,84px)/1.05 Consolas,monospace!important;letter-spacing:-.075em!important;overflow-wrap:anywhere}.photo148.animated.kind-type .hero .stage{height:730px!important;border:1px solid #dce7cb40!important}.photo148.kind-type .hero-image148{--image-x:60%}.photo148.kind-type .motion-story{border-block:1px solid #dce7cb40;background:#153b33}.photo148.kind-type .motion-story h2{font-family:Consolas,monospace}.photo148.kind-type .instrument{background:#f8af52;color:#0c2824}.photo148.kind-type .mode{color:#0c2824;border-color:#0c2824}.photo148.kind-type .mode[aria-pressed=true]{background:#0c2824;color:#f8af52}.photo148.kind-type .closing{background:#153b33}
/* AEROLINE — cinematic coastal speed and a precise glass timetable. */
body.photo148.kind-network{--bg:#102a3d!important;--fg:#e2f1f3!important;--accent:#8ee7e4!important}.photo148.kind-network .wordmark{font:700 20px Arial,sans-serif!important;letter-spacing:.09em!important}.photo148.animated.kind-network .hero{display:flex!important;min-height:950px!important;padding:80px 6vw!important;align-items:flex-end;justify-content:flex-end}.photo148.animated.kind-network .hero .stage{position:absolute!important;inset:0!important;height:100%!important}.photo148.animated.kind-network .hero-copy{width:min(720px,100%)!important;max-width:720px!important;padding:36px!important;background:#102a3dd9;backdrop-filter:blur(12px);border:1px solid #ffffff50;color:#e2f1f3;align-self:flex-end!important}.photo148.animated.kind-network h1{font:400 clamp(54px,6.4vw,100px)/.98 Arial,sans-serif!important;letter-spacing:-.07em!important}.photo148.kind-network .stage-meta{top:26px;bottom:auto;left:30px;right:220px}.photo148.kind-network .motion-story{background:#e2f1f3;color:#102a3d}.photo148.kind-network .hero-image148{--image-x:38%}.photo148.kind-network .ticker{background:#8ee7e4;color:#102a3d}.photo148.kind-network .motion-points article{border-top-width:1px}
@keyframes photo148-breathe{0%,100%{transform:scale(var(--zoom,1.025))}50%{transform:scale(calc(var(--zoom,1.025) + .025))}}
.photo148.paused *,.photo148.paused *:before,.photo148.paused *:after{animation-play-state:paused!important}
@media(max-width:900px){.photo148.animated .hero,.photo148.animated.kind-vinyl .hero,.photo148.animated.kind-street .hero,.photo148.animated.kind-festival .hero,.photo148.animated.kind-type .hero{display:flex!important;flex-direction:column!important;padding:0!important;gap:0!important;min-height:0!important}.photo148.animated .hero-copy,.photo148.animated.kind-festival .hero-copy,.photo148.animated.kind-type .hero-copy{display:flex!important;flex-direction:column!important;padding:50px 6vw!important;width:100%!important;max-width:100%!important;order:0}.photo148.animated .hero .stage,.photo148.animated.kind-vinyl .hero .stage,.photo148.animated.kind-type .hero .stage,.photo148.animated.kind-festival .hero .stage{position:relative!important;inset:auto!important;grid-column:auto!important;grid-row:auto!important;height:560px!important;width:100%!important;order:1}.photo148.animated .hero h1{font-size:clamp(52px,9vw,85px)!important}.photo148.animated.kind-athlete .hero,.photo148.animated.kind-network .hero{display:flex!important;min-height:900px!important;padding:80px 0 0!important;justify-content:flex-end}.photo148.animated.kind-athlete .hero .stage,.photo148.animated.kind-network .hero .stage{position:absolute!important;inset:0!important;height:100%!important;order:0}.photo148.animated.kind-network .hero-copy{width:88%!important;margin:0 6vw 45px!important;padding:28px!important}.photo148.animated.kind-athlete .hero-copy{padding:50px 6vw!important}.photo148 .motion-points{grid-template-columns:1fr}.photo148 .motion-story,.photo148 .instrument,.photo148 .editorial,.photo148 .closing{padding:60px 6vw}.photo148 .editorial{grid-template-columns:1fr!important}.photo148 .editorial .image{height:460px}.photo148 .selection{min-height:230px}.photo148 .hero .intro{max-width:45ch}.photo148 .motion-story h2{font-size:45px}}
@media(max-width:480px){.photo148.animated .hero h1{font-size:clamp(45px,11vw,60px)!important}.photo148.animated.kind-type h1{font-size:clamp(36px,9vw,47px)!important}.photo148.animated .hero .stage,.photo148.animated.kind-vinyl .hero .stage,.photo148.animated.kind-type .hero .stage,.photo148.animated.kind-festival .hero .stage{height:430px!important}.photo148.animated.kind-athlete .hero,.photo148.animated.kind-network .hero{min-height:830px!important}.photo148.animated.kind-athlete .hero .stage,.photo148.animated.kind-network .hero .stage{height:100%!important}.photo148 .stage-meta{font-size:9px;gap:12px;left:18px;right:18px}.photo148.kind-athlete .hero .stage-meta,.photo148.kind-network .stage-meta{right:18px;top:76px}.photo148 .editorial .image{height:340px}.photo148 .mode{padding:12px;font-size:10px}.photo148 .selection{min-height:280px}.photo148 .wordmark{font-size:17px!important}.photo148 header{padding:20px 6vw}.photo148 .motion-story h2{font-size:38px}}
@media(prefers-reduced-motion:reduce){.photo148 *,.photo148 *:before,.photo148 *:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.photo148 .hero-image148{transform:scale(1)!important}.photo148 .hero-copy{backdrop-filter:none!important}}
