:root{--ink:#f6f3ee;--muted:#aaa6ae;--line:#302d35;--surface:#111016;--niche-accent:#ff7a3d;--ease:cubic-bezier(.2,.8,.2,1)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#09090d;color:var(--ink);font-family:"DM Sans",sans-serif}.shell{width:min(94vw,1480px);margin-inline:auto}.skip-link{position:fixed;z-index:100;left:16px;top:12px;padding:10px 14px;background:#fff;color:#000;transform:translateY(-150%)}.skip-link:focus{transform:none}.page-noise{position:fixed;inset:0;z-index:20;pointer-events:none;opacity:.035;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E")}.logo-nav{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:92px;border-bottom:1px solid var(--line)}.studio-mark{display:flex;flex-direction:column;gap:8px;color:#fff;text-decoration:none}.studio-mark small{color:#7ee7ff;font:700 .58rem/1 "IBM Plex Mono",monospace;letter-spacing:.13em;text-transform:uppercase}.studio-mark strong{font-size:.92rem}.back-link{min-height:44px;display:inline-flex;align-items:center;color:#b9b4be;font-size:.75rem;text-decoration:none;transition:.22s ease}.back-link:hover{color:var(--niche-accent)}
.logo-hero{position:relative;display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);min-height:620px;overflow:hidden;border-bottom:1px solid var(--line)}.hero-copy{display:flex;flex-direction:column;justify-content:center;padding:80px 4vw 80px 0}.hero-copy>p{display:flex;align-items:center;gap:12px;margin:0 0 30px;color:#aaa6ae;font:700 .58rem/1 "IBM Plex Mono",monospace;letter-spacing:.1em;text-transform:uppercase}.hero-copy>p i{width:28px;height:1px;background:var(--niche-accent)}.hero-copy>p b{color:var(--niche-accent)}h1{max-width:820px;margin:0;font:800 clamp(4.4rem,8vw,9rem)/.78 "Manrope",sans-serif;letter-spacing:-.085em}h1 em{display:block;color:#66636b;font-style:normal}.hero-meta{display:flex;gap:32px;align-items:flex-start;margin-top:54px}.hero-meta>span{flex:0 0 auto;color:var(--niche-accent);font:700 .58rem/1.4 "IBM Plex Mono",monospace;text-transform:uppercase}.hero-meta p{max-width:450px;margin:0;color:#aaa6ae;font-size:.9rem;line-height:1.65}.hero-art{position:relative;min-height:540px;background:radial-gradient(circle at 55% 46%,color-mix(in srgb,var(--niche-accent) 22%,transparent),transparent 55%)}.hero-disc{position:absolute;left:50%;top:50%;width:70%;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--niche-accent) 42%,transparent);border-radius:50%;transform:translate(-50%,-50%)}.hero-disc::before,.hero-disc::after{content:"";position:absolute;inset:16%;border:1px solid color-mix(in srgb,var(--niche-accent) 22%,transparent);border-radius:50%}.hero-disc::after{inset:35%}.hero-card{position:absolute;width:52%;aspect-ratio:4/3;margin:0;overflow:hidden;border:5px solid #dadbe0;border-radius:18px;background:#fff;box-shadow:0 30px 80px #0009}.hero-card img{width:100%;height:100%;object-fit:cover}.hero-card-a{left:8%;top:17%;transform:rotate(-7deg)}.hero-card-b{right:4%;bottom:13%;transform:rotate(8deg)}.hero-art>b{position:absolute;right:3%;top:12%;color:var(--niche-accent);font:800 clamp(3rem,5vw,6rem)/1 "Manrope",sans-serif;letter-spacing:-.08em}
.niche-nav{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding-block:42px}.niche-nav a{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center;min-height:64px;padding:0 18px;border:1px solid var(--line);border-radius:999px;background:#0e0d12;color:#aaa6ae;text-decoration:none;transition:.22s ease}.niche-nav a span,.niche-nav a small{font:700 .5rem/1 "IBM Plex Mono",monospace}.niche-nav a small{color:#625e67}.niche-nav a strong{font-size:.76rem}.niche-nav a:hover,.niche-nav a.is-active{border-color:var(--niche-accent);color:#fff;background:color-mix(in srgb,var(--niche-accent) 9%,#0e0d12)}.niche-nav a.is-active span,.niche-nav a.is-active small{color:var(--niche-accent)}
.gallery{padding:72px 0 120px}.gallery-heading{display:grid;grid-template-columns:200px 1fr;gap:32px;align-items:start;margin-bottom:54px}.gallery-heading>div{display:flex;align-items:center;gap:12px;color:#88838c;font:700 .58rem/1 "IBM Plex Mono",monospace;text-transform:uppercase}.gallery-heading>div span{color:var(--niche-accent)}.gallery-heading>div p{margin:0}.gallery-heading h2{margin:0;font:800 clamp(3.3rem,6vw,7.2rem)/.88 "Manrope",sans-serif;letter-spacing:-.07em}.gallery-heading h2 em{color:#6b6770;font-style:normal}.logo-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.logo-card{padding:0;border:1px solid var(--line);background:#121117;color:#fff;text-align:left;cursor:pointer;overflow:hidden;animation:cardIn .65s var(--ease) both;animation-delay:var(--delay)}.logo-image{display:block;aspect-ratio:16/11;overflow:hidden;background:#efefef}.logo-image img{display:block;width:100%;height:100%;object-fit:contain;transition:transform .55s var(--ease)}.logo-card-meta{display:grid;grid-template-columns:44px 1fr auto;align-items:center;min-height:72px;padding:0 20px;border-top:1px solid var(--line)}.logo-card-meta small{color:var(--niche-accent);font:700 .58rem/1 "IBM Plex Mono",monospace}.logo-card-meta strong{font-size:.88rem}.logo-card-meta i{font-style:normal;color:#77727b;transition:.22s ease}.logo-card:hover{border-color:var(--niche-accent)}.logo-card:hover img{transform:scale(1.025)}.logo-card:hover i{color:var(--niche-accent);transform:translate(3px,-3px)}
.logo-contact{position:relative;min-height:560px;overflow:hidden;border-top:1px solid var(--line);background:radial-gradient(circle at 80% 50%,color-mix(in srgb,var(--niche-accent) 12%,transparent),transparent 34%)}.contact-shell{position:relative;z-index:2;padding:110px 0}.contact-shell>p{color:#aaa6ae;font:700 .6rem/1 "IBM Plex Mono",monospace;text-transform:uppercase}.contact-shell h2{margin:20px 0 50px;font:800 clamp(4rem,7vw,8rem)/.84 "Manrope",sans-serif;letter-spacing:-.075em}.contact-shell h2 em{color:#66636b;font-style:normal}.contact-shell>a{display:inline-flex;gap:24px;padding-bottom:10px;border-bottom:2px solid var(--niche-accent);color:var(--niche-accent);font-weight:700;text-decoration:none}.contact-orbit{position:absolute;right:-8vw;top:50%;width:min(55vw,760px);aspect-ratio:1;transform:translateY(-50%)}.contact-orbit i{position:absolute;inset:8%;border:1px solid color-mix(in srgb,var(--niche-accent) 25%,transparent);border-radius:50%}.contact-orbit i:nth-child(2){inset:25%}.contact-orbit i:nth-child(3){inset:42%}.contact-orbit i::after{content:"";position:absolute;left:50%;top:-5px;width:9px;height:9px;border-radius:50%;background:var(--niche-accent)}.logo-footer{display:grid;grid-template-columns:1fr auto auto;gap:60px;align-items:end;padding:36px max(3vw,24px);border-top:1px solid var(--line);color:#aaa6ae}.logo-footer a{display:flex;flex-direction:column;gap:6px;color:#fff;text-decoration:none}.logo-footer small{color:#7ee7ff;font:700 .58rem/1 "IBM Plex Mono",monospace;text-transform:uppercase}.logo-footer p{margin:0;font-size:.72rem}
.logo-lightbox{width:min(92vw,1400px);height:min(90vh,1000px);padding:0;border:1px solid #4b4750;background:#0c0b10;color:#fff}.logo-lightbox::backdrop{background:#050507e8;backdrop-filter:blur(10px)}.logo-lightbox button{position:absolute;z-index:2;right:16px;top:16px;width:48px;height:48px;border:1px solid #ffffff4d;border-radius:50%;background:#0b0a0fd9;color:#fff;font-size:1.6rem;cursor:pointer}.logo-lightbox figure{display:grid;grid-template-rows:minmax(0,1fr) auto;width:100%;height:100%;margin:0}.logo-lightbox img{width:100%;height:100%;min-height:0;object-fit:contain;background:#ececec}.logo-lightbox figcaption{padding:18px 22px;font:700 .65rem/1 "IBM Plex Mono",monospace;text-transform:uppercase}.logo-lightbox:focus-visible,.logo-card:focus-visible,.niche-nav a:focus-visible,.back-link:focus-visible,.contact-shell>a:focus-visible{outline:3px solid var(--niche-accent);outline-offset:3px}@keyframes cardIn{from{opacity:0;transform:translateY(24px)}to{opacity:1;transform:none}}
@media(max-width:980px){.logo-hero{grid-template-columns:1fr;min-height:0}.hero-copy{padding:80px 0 40px}.hero-art{min-height:500px}.niche-nav{grid-template-columns:repeat(2,1fr)}.gallery-heading{grid-template-columns:1fr}.logo-footer{grid-template-columns:1fr 1fr}.logo-footer p:nth-child(2){grid-column:1/-1;grid-row:2}.logo-footer p:last-child{text-align:right}}
@media(max-width:640px){.shell{width:min(92vw,620px)}.logo-nav{min-height:78px}.studio-mark strong{font-size:.78rem}.back-link{font-size:.68rem}h1{font-size:clamp(3.5rem,18vw,5.3rem)}.hero-copy{padding-top:60px}.hero-meta{flex-direction:column;gap:14px;margin-top:36px}.hero-art{min-height:380px}.hero-card{width:62%;border-width:3px}.niche-nav{grid-template-columns:1fr;padding-block:28px}.niche-nav a{min-height:54px}.gallery{padding:48px 0 80px}.gallery-heading h2{font-size:clamp(3rem,14vw,4.7rem)}.logo-grid{grid-template-columns:1fr;gap:14px}.logo-card-meta{min-height:64px}.contact-shell{padding:86px 0}.contact-shell h2{font-size:clamp(3.25rem,16vw,5.3rem)}.contact-orbit{width:110vw;right:-55vw}.logo-footer{grid-template-columns:1fr;gap:20px}.logo-footer p:nth-child(2){grid-column:auto;grid-row:auto}.logo-footer p:last-child{text-align:left}.logo-lightbox{width:96vw;height:84vh}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.logo-card{animation:none}.logo-image img,.logo-card-meta i{transition:none}}

/* Animated logo archive entrance and motion system */
.page-reveal{position:fixed;z-index:90;inset:0;display:grid;place-items:center;overflow:hidden;background:#0b0a0f;pointer-events:none;animation:logoRevealAway 1s .18s cubic-bezier(.76,0,.24,1) both}.page-reveal i{position:absolute;width:54vmin;aspect-ratio:1;border:1px solid color-mix(in srgb,var(--niche-accent) 60%,transparent);border-radius:50%;animation:logoRevealRing .9s var(--ease) both}.page-reveal i:nth-child(2){width:28vmin;animation-delay:.08s}.page-reveal span{color:var(--niche-accent);font:800 clamp(1.2rem,3vw,2.4rem)/1 "Manrope",sans-serif;letter-spacing:-.05em;text-transform:uppercase;animation:logoRevealWord .72s var(--ease) both}.logo-nav{animation:logoNavIn .62s 1s var(--ease) both}.hero-copy{animation:logoCopyIn .72s 1.02s var(--ease) both}.hero-disc{animation:logoOrbitTurn 18s 1.1s linear infinite}.hero-card-a{animation:logoFloatA 5.6s 1s ease-in-out infinite}.hero-card-b{animation:logoFloatB 6.3s 1.15s ease-in-out infinite}.hero-art>b{animation:logoBadgePulse 3.2s 1.1s ease-in-out infinite}.niche-nav a{animation:logoChipIn .55s var(--ease) both}.niche-nav a:nth-child(1){animation-delay:1.05s}.niche-nav a:nth-child(2){animation-delay:1.1s}.niche-nav a:nth-child(3){animation-delay:1.15s}.niche-nav a:nth-child(4){animation-delay:1.2s}.niche-nav a:nth-child(5){animation-delay:1.25s}.niche-nav a:nth-child(6){animation-delay:1.3s}.niche-nav a:nth-child(7){animation-delay:1.35s}.niche-nav a:nth-child(8){animation-delay:1.4s}.logo-card{display:block;text-decoration:none}.logo-card:nth-child(4n+2){border-radius:34px}.logo-card:nth-child(4n+3){border-radius:90px 20px 90px 20px}.logo-card:nth-child(4n){border-radius:20px 90px 20px 90px}.logo-card:nth-child(4n+2) .logo-image{border-radius:0 0 34px 34px}.logo-card:nth-child(4n+3) .logo-image{border-radius:90px 20px 0 0}.logo-card:nth-child(4n) .logo-image{border-radius:20px 90px 0 0}@keyframes logoRevealAway{0%,58%{clip-path:circle(150% at 50% 50%);opacity:1}100%{clip-path:circle(0 at 50% 50%);opacity:0}}@keyframes logoRevealRing{from{transform:scale(.12);opacity:0}to{transform:scale(1);opacity:1}}@keyframes logoRevealWord{from{opacity:0;transform:scale(.7)}to{opacity:1;transform:none}}@keyframes logoNavIn{from{opacity:0;transform:translateY(-18px)}to{opacity:1;transform:none}}@keyframes logoCopyIn{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:none}}@keyframes logoOrbitTurn{to{rotate:360deg}}@keyframes logoFloatA{0%,100%{transform:rotate(-7deg) translateY(0)}50%{transform:rotate(-3deg) translateY(-14px)}}@keyframes logoFloatB{0%,100%{transform:rotate(8deg) translateY(0)}50%{transform:rotate(4deg) translateY(16px)}}@keyframes logoBadgePulse{0%,100%{transform:scale(1);filter:none}50%{transform:scale(1.07);filter:drop-shadow(0 0 18px color-mix(in srgb,var(--niche-accent) 55%,transparent))}}@keyframes logoChipIn{from{opacity:0;transform:translateY(16px)}to{opacity:1;transform:none}}@media(prefers-reduced-motion:reduce){.page-reveal{display:none}.logo-nav,.hero-copy,.hero-disc,.hero-card-a,.hero-card-b,.hero-art>b,.niche-nav a{animation:none}.hero-disc{rotate:none}}

/* Editorial gallery + same-page high-resolution viewer */
.logo-grid{grid-template-columns:repeat(12,minmax(0,1fr));gap:12px}
.logo-card,.logo-card:nth-child(n){position:relative;grid-column:span 6;border-radius:0;background:#111016;font:inherit;appearance:none}
.logo-card:nth-child(n) .logo-image{border-radius:0}
.logo-card .logo-image{background:linear-gradient(135deg,rgb(var(--card-rgb,126 231 255)/.24),#f4efe7 48%,rgb(var(--card-rgb,126 231 255)/.34))}
.logo-card.has-card-palette .logo-image img{background:transparent;mix-blend-mode:multiply;filter:saturate(1.04) contrast(1.02)}
.logo-card::after{content:"";position:absolute;z-index:2;top:-1px;left:-1px;width:0;height:2px;background:var(--niche-accent);transition:width .45s var(--ease)}
.logo-card:hover::after,.logo-card:focus-visible::after{width:calc(100% + 2px)}
.logo-card-meta{position:relative}.logo-card-meta i{display:grid;place-items:center;width:32px;height:32px;border:1px solid #ffffff24;font-size:1rem}
.logo-card:hover .logo-card-meta i,.logo-card:focus-visible .logo-card-meta i{border-color:var(--niche-accent);color:var(--niche-accent);transform:rotate(90deg)}
.logo-viewer{width:100vw;height:100dvh;max-width:none;max-height:none;margin:0;padding:0;border:0;background:transparent;color:#fff;opacity:0;transition:opacity .24s ease}
.logo-viewer[open].is-visible{opacity:1}.logo-viewer::backdrop{background:rgba(3,3,5,.94);backdrop-filter:blur(16px)}
.viewer-shell{display:grid;grid-template-rows:74px minmax(0,1fr) 3px;width:100%;height:100%;background:radial-gradient(circle at 50% 45%,rgb(var(--viewer-rgb,126 231 255)/.18) 0,rgba(10,9,13,.96) 54%,#060608 100%);transform:scale(.985);transition:transform .5s var(--ease),background .45s ease}
.logo-viewer.is-visible .viewer-shell{transform:none}
.viewer-bar{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:0 clamp(18px,3vw,46px);border-bottom:1px solid #ffffff1f;background:#09080cb3;backdrop-filter:blur(14px)}
.viewer-identity{display:flex;align-items:center;gap:18px;min-width:0}.viewer-identity small{color:var(--niche-accent);font:700 .62rem/1 "IBM Plex Mono",monospace}.viewer-identity strong{overflow:hidden;font:700 clamp(.8rem,1.2vw,1rem)/1 "Manrope",sans-serif;text-overflow:ellipsis;white-space:nowrap}
.viewer-actions{display:flex;align-items:center}.viewer-zoom,.viewer-close{display:flex;align-items:center;justify-content:center;gap:12px;min-height:44px;padding:0 18px;border:1px solid #ffffff29;border-radius:0;background:#100f14e8;color:#fff;font:700 .61rem/1 "IBM Plex Mono",monospace;text-transform:uppercase;letter-spacing:.05em;cursor:pointer;backdrop-filter:blur(12px);transition:border-color .2s ease,color .2s ease,background .2s ease}.viewer-zoom:hover,.viewer-close:hover,.viewer-zoom[aria-pressed="true"]{border-color:var(--niche-accent);color:var(--niche-accent);background:#17141bf2}.viewer-zoom span,.viewer-close span{font-size:1.1rem}
.viewer-stage{position:relative;display:grid;grid-template-columns:minmax(0,1fr);align-items:center;min-height:0;padding:clamp(10px,1.5vw,22px)}
.viewer-stage>.viewer-zoom{position:absolute;z-index:5;top:clamp(20px,2.5vw,36px);right:clamp(20px,2.5vw,36px);box-shadow:0 12px 38px #0007}
.viewer-stage figure{display:grid;grid-template-rows:minmax(0,1fr);min-width:0;width:100%;height:100%;max-height:calc(100dvh - 100px);margin:0;border:1px solid rgb(var(--viewer-rgb,126 231 255)/.42);background:linear-gradient(135deg,rgb(var(--viewer-rgb,126 231 255)/.24),#f4efe7 48%,rgb(var(--viewer-rgb,126 231 255)/.32));box-shadow:0 32px 90px #0009;overflow:hidden}
.viewer-stage img{display:block;width:100%;height:100%;min-height:0;object-fit:contain;background:transparent;mix-blend-mode:multiply;filter:saturate(1.035) contrast(1.02);cursor:zoom-in;transform:scale(.92);transition:transform .38s var(--ease)}
.logo-viewer.has-light-canvas .viewer-stage figure{background:linear-gradient(135deg,rgb(var(--viewer-rgb,126 231 255)/.32),#f3eee5 48%,rgb(var(--viewer-rgb,126 231 255)/.42));border-color:rgb(var(--viewer-rgb,126 231 255)/.58)}
.logo-viewer.has-light-canvas .viewer-stage img{filter:saturate(1.06) contrast(1.035)}
.logo-viewer.is-zoomed .viewer-stage figure{display:grid;overflow:hidden}
.logo-viewer.is-zoomed .viewer-stage img{width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;cursor:zoom-out;transform:scale(1)}
.viewer-arrow{position:absolute;z-index:3;top:50%;display:grid;place-items:center;width:52px;height:52px;border:1px solid #ffffff38;border-radius:0;background:#0e0d12e6;color:#fff;font-size:1.2rem;cursor:pointer;transform:translateY(-50%);transition:background .2s ease,border-color .2s ease,color .2s ease}.viewer-prev{left:clamp(18px,2.2vw,34px)}.viewer-next{right:clamp(18px,2.2vw,34px)}.viewer-arrow:hover{border-color:var(--niche-accent);background:var(--niche-accent);color:#08070a}
.viewer-progress{overflow:hidden;background:#ffffff14}.viewer-progress i{display:block;width:var(--progress,10%);height:100%;background:var(--niche-accent);transition:width .35s var(--ease)}
.logo-viewer :is(a,button):focus-visible{outline:3px solid var(--niche-accent);outline-offset:3px}
@media(max-width:780px){.logo-grid{grid-template-columns:1fr;gap:12px}.logo-card,.logo-card:nth-child(n){grid-column:auto}.viewer-bar{height:auto;min-height:68px;padding:10px 8px}.viewer-identity{gap:8px}.viewer-identity strong{display:none}.viewer-close{gap:7px;padding:0 10px;font-size:.54rem}.viewer-stage{grid-template-columns:1fr 1fr;grid-template-rows:minmax(0,1fr) 48px;gap:8px;padding:10px}.viewer-stage>.viewer-zoom{top:18px;right:18px;min-height:42px;gap:7px;padding:0 11px;font-size:.54rem}.viewer-stage figure{grid-column:1/-1;grid-row:1;max-height:calc(100dvh - 106px)}.viewer-arrow{position:relative;top:auto;left:auto;right:auto;grid-row:2;width:100%;height:44px;transform:none}.viewer-prev{grid-column:1}.viewer-next{grid-column:2}}
@media(prefers-reduced-motion:reduce){.logo-viewer,.viewer-shell,.viewer-progress i,.logo-card::after,.viewer-arrow,.viewer-stage img{transition:none}}

/* Animated pre-footer showcase shared by every active logo niche */
.logo-contact::before{content:"";position:absolute;inset:-30%;background:conic-gradient(from 180deg at 70% 50%,transparent 0 35%,color-mix(in srgb,var(--niche-accent) 13%,transparent) 48%,transparent 62% 100%);animation:contactGlowTurn 16s linear infinite}
.logo-contact .contact-shell{opacity:0;transform:translateY(42px);transition:opacity .8s var(--ease),transform .8s var(--ease)}
.logo-contact.is-in-view .contact-shell{opacity:1;transform:none}
.logo-contact .contact-orbit i{animation:contactRingTurn 18s linear infinite,contactRingBreathe 5s ease-in-out infinite}
.logo-contact .contact-orbit i:nth-child(2){animation-duration:22s,6s;animation-direction:reverse,normal}
.logo-contact .contact-orbit i:nth-child(3){animation-duration:13s,4s}
.logo-contact .contact-orbit::after{content:"↗";position:absolute;left:50%;top:50%;color:color-mix(in srgb,var(--niche-accent) 24%,transparent);font:500 clamp(7rem,12vw,12rem)/1 "Manrope",sans-serif;transform:translate(-50%,-50%);animation:contactArrowFloat 3s ease-in-out infinite}
.logo-contact .contact-shell>a span{display:inline-block;animation:contactLinkArrow 1.8s ease-in-out infinite}
@keyframes contactGlowTurn{to{transform:rotate(360deg)}}
@keyframes contactRingTurn{to{rotate:360deg}}
@keyframes contactRingBreathe{50%{opacity:.45;scale:1.04}}
@keyframes contactArrowFloat{50%{transform:translate(-42%,-58%)}}
@keyframes contactLinkArrow{50%{transform:translate(4px,-4px)}}
@media(prefers-reduced-motion:reduce){.logo-contact::before,.logo-contact .contact-orbit i,.logo-contact .contact-orbit::after,.logo-contact .contact-shell>a span{animation:none}.logo-contact .contact-shell{opacity:1;transform:none;transition:none}}

/* Clean reference-style logo grid: original image backgrounds, no captions or zoom interaction. */
.logo-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:24px}
.niche-nav a{display:flex;align-items:center;justify-content:flex-start;padding-inline:22px}
.niche-nav a strong{font-size:.8rem}
.logo-card,.logo-card:nth-child(n){display:block;grid-column:auto;width:100%;aspect-ratio:1;margin:0;overflow:hidden;border:1px solid #ffffff25;border-radius:14px;background:transparent;box-shadow:none;cursor:default;appearance:none}
.logo-card:nth-child(n) .logo-image,.logo-card .logo-image{display:block;width:100%;height:100%;aspect-ratio:1;border-radius:14px;background:transparent}
.logo-card .logo-image img,.logo-card.has-card-palette .logo-image img{display:block;width:100%;height:100%;object-fit:cover;background:transparent;mix-blend-mode:normal;filter:grayscale(1) saturate(.15) contrast(1.05);transform:none;transition:filter .3s ease}
.logo-card::after,.logo-card-meta{display:none}
.logo-card:hover,.logo-card:focus-visible{border-color:#ffffff38;outline:none}
.logo-card:hover img,.logo-card:focus-visible img{filter:none;transform:none}
@media(max-width:1050px){.logo-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}}
@media(max-width:760px){.logo-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}}
@media(max-width:460px){.logo-grid{grid-template-columns:1fr}}
@media(hover:none){.logo-card .logo-image img,.logo-card.has-card-palette .logo-image img{filter:none}}
