:root{--swarm-bg:#090c0b;--swarm-accent:#a0f4cf;--swarm-ink:#f5f6f4}html{scroll-behavior:smooth;scroll-padding-top:100px}.swarm-site{background:var(--swarm-bg);color:var(--swarm-ink);font-weight:400}.swarm-site h1,.swarm-site h2,.swarm-site h3{letter-spacing:-.045em;font-weight:400}.swarm-nav{position:fixed;z-index:30;inset:0 0 auto;display:flex;justify-content:space-between;align-items:center;padding:24px 4%;background:linear-gradient(#090c0bea,#090c0b00);border:0;color:#fff;gap:24px}.swarm-brand{font-size:1.6rem;font-weight:800;letter-spacing:-.07em;line-height:1}.swarm-brand span{display:block;font-size:.6rem;letter-spacing:.14em;font-weight:400;margin-top:8px}.swarm-nav nav{display:flex;gap:32px;font-size:.9rem}.swarm-nav a{text-decoration:none;transition:color .2s}.swarm-nav nav a:hover{color:var(--swarm-accent)}.motion-control{border:1px solid #ffffff66;padding:8px 13px;border-radius:30px;font-size:.8rem;min-height:44px;color:white;background:#090c0b}.swarm-site a:focus-visible,.swarm-site button:focus-visible{outline:2px solid var(--swarm-accent);outline-offset:7px}.swarm-backdrop{position:fixed;inset:0;z-index:0;pointer-events:none}#swarm-canvas{width:100%;height:100%;display:block}.swarm-fallback{position:absolute;width:min(70vw,760px);left:50%;top:50%;transform:translate(-50%,-50%)}.swarm-fallback img{width:100%;mix-blend-mode:screen}.swarm-ready .swarm-fallback{display:none}.swarm-site.home main{position:relative;z-index:1}.swarm-hero{height:100svh;min-height:650px;position:relative;text-align:center;display:flex;align-items:center;flex-direction:column;justify-content:space-between;padding:145px 5% 75px}.hero-topline{letter-spacing:.27em;font-size:.85rem}.swarm-hero-bottom{margin-top:auto}.swarm-hero-bottom p{font-size:clamp(1.8rem,3.3vw,3.5rem);letter-spacing:-.04em}.swarm-site em{font-family:Georgia,serif;font-style:italic;font-weight:400;color:var(--swarm-accent)}.interaction-hint{display:block;margin-top:16px;font-size:.85rem;color:#eef4f1}.scroll-cue{position:absolute;bottom:20px;font-size:1.7rem;padding:5px 20px}.kicker{font-size:.8rem;letter-spacing:.15em;margin-bottom:30px;text-transform:uppercase}.swarm-about{position:relative;min-height:150vh;padding:20vh 7% 15vh}.swarm-about h2,.swarm-work-title h2,.swarm-expertise h2{font-size:clamp(2.8rem,6vw,6.5rem);line-height:1.12;max-width:1000px}.about-body{max-width:420px;margin:15vh 0 0 auto;font-size:1.15rem}.about-body p+p{margin-top:25px}.fine-link{display:inline-block;border-bottom:1px solid var(--swarm-accent);padding:12px 0;margin-top:25px}.orbit-labels{display:flex;gap:8%;margin-top:18vh;font:italic clamp(1.5rem,3vw,3rem) Georgia,serif;color:var(--swarm-accent)}.orbit-labels span:nth-child(2){transform:translateY(60px)}.swarm-work-title{padding:15vh 7%;min-height:60vh}.swarm-work-title>p:last-child{margin-top:35px}.swarm-project{min-height:110vh;position:relative;padding:12vh 7%;display:flex;flex-direction:column;justify-content:center}.project-counter{font-size:.8rem;letter-spacing:.2em;margin-bottom:22px}.swarm-project-card{width:53%;display:block;border:1px solid var(--swarm-accent);position:relative;background:#090c0bf2;transition:transform .45s,box-shadow .45s;text-decoration:none}.swarm-project-card:hover{transform:translateY(-8px);box-shadow:0 15px 60px #0005}.swarm-project-image{aspect-ratio:1.65;overflow:hidden;position:relative}.swarm-project-image img{width:100%;height:100%;object-fit:cover;transition:transform .7s}.swarm-project-card[href*="shefit"] img{object-fit:contain;background:white}.swarm-project-card:hover img{transform:scale(1.04)}.card-action{position:absolute;bottom:15px;right:15px;background:#090c0b;color:#fff;border-radius:25px;padding:10px 15px;font-size:.8rem}.swarm-project-copy{padding:25px 28px 30px}.swarm-project-copy .kicker{font-size:.75rem;margin-bottom:12px;color:var(--swarm-accent)}.swarm-project-copy h3{font-size:clamp(2rem,3.5vw,3.6rem);line-height:1.08;margin-bottom:20px}.swarm-project-copy>p:last-child{font-size:.95rem}.project-thought{position:absolute;left:66%;right:6%;bottom:19%;font:italic clamp(1.6rem,2.6vw,3rem)/1.2 Georgia,serif;color:var(--swarm-accent)}.swarm-expertise{padding:20vh 7%;min-height:110vh}.swarm-service-links{margin:70px 0 0 auto;max-width:700px;background:#090c0bdd;padding:0 24px}.swarm-service-links a{display:flex;justify-content:space-between;gap:25px;padding:28px 0;border-bottom:1px solid #ffffff4a;font-size:clamp(1.2rem,2.3vw,2rem);text-decoration:none}.swarm-service-links a span{font-size:.8rem;white-space:nowrap}.swarm-contact{position:relative;z-index:1;background:transparent!important;color:#fff!important;padding:20vh 7% 35px;min-height:95vh;border:0;overflow:visible}.swarm-contact h2{font-size:clamp(4rem,10vw,10rem);line-height:1.05;margin-bottom:50px}.swarm-contact .email-link{font-size:clamp(1.2rem,3vw,3rem);border-bottom:1px solid var(--swarm-accent);padding-bottom:10px}.swarm-contact a,.swarm-contact p,.swarm-contact span{color:#fff!important}.swarm-footer-meta{margin-top:18vh;border-top:1px solid #ffffff50;padding-top:25px;display:flex;justify-content:space-between;gap:25px;font-size:.85rem}.swarm-site:not(.home) main{padding-top:110px}.swarm-site .index-heading,.swarm-site .case-opening,.swarm-site .contact-opening,.swarm-site .about-opening,.swarm-site .engagement,.swarm-site .brand-website,.swarm-site .case-note,.swarm-site .next-case,.swarm-site .about-story{background:transparent;color:#f5f6f4}.swarm-site .case-story,.swarm-site .reading,.swarm-site .selected,.swarm-site .gallery-section,.swarm-site .service-stories,.swarm-site .principles,.swarm-site .contact-details{color:#f5f6f4;background:transparent}.swarm-site .project-status,.swarm-site .artwork figcaption,.swarm-site .section-bar>span,.swarm-site .tile-caption .eyebrow,.swarm-site .service-stories .number,.swarm-site .principles article>span{color:#f5f6f4}.swarm-site .artwork .art-frame{background:#151918}.swarm-site .case-cover figcaption{color:#f5f6f4}.swarm-site .tile-caption,.swarm-site .small{color:#f5f6f4}.swarm-site .pill{color:#fff;background:#171c19;border:1px solid #a0f4cf}.swarm-site .case-note{border-top:1px solid #ffffff4a;border-bottom:1px solid #ffffff4a}.swarm-site .case-opening h1{color:#f5f6f4}.swarm-site .skip:focus{color:black;background:white;z-index:100}.swarm-site .outline-word{color:var(--swarm-accent);-webkit-text-stroke:0}@media(max-width:750px){.swarm-nav{padding:18px 20px;gap:12px;flex-wrap:wrap}.swarm-brand{font-size:1.4rem}.swarm-nav nav{order:3;justify-content:space-between;width:100%;gap:18px;font-size:.85rem}.motion-control{margin-left:auto;font-size:.75rem}.swarm-hero{min-height:650px;padding:160px 20px 85px}.hero-topline{font-size:.7rem;letter-spacing:.13em}.swarm-hero-bottom p{font-size:1.8rem}.swarm-about{padding:150px 24px 100px;min-height:110vh}.swarm-about h2,.swarm-work-title h2,.swarm-expertise h2{font-size:clamp(2.3rem,8.5vw,4rem)}.about-body{margin-top:65vh;font-size:1rem;background:#090c0bdd;padding:20px}.orbit-labels{gap:25px;flex-wrap:wrap;margin-top:70px}.orbit-labels span:nth-child(2){transform:none}.swarm-work-title{padding:100px 24px 40px;min-height:50vh}.swarm-project{padding:65px 24px;min-height:90vh}.swarm-project-card{width:100%}.swarm-project-copy{padding:22px}.project-thought{position:static;margin-top:28px;font-size:1.7rem;max-width:85%;background:#090c0bbb;padding:12px}.swarm-expertise{padding:100px 24px}.swarm-service-links{padding:0 15px}.swarm-contact{padding:120px 24px 30px;min-height:80vh}.swarm-footer-meta{flex-wrap:wrap;margin-top:100px}.swarm-footer-meta>span{width:100%}.swarm-site:not(.home) main{padding-top:150px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.swarm-project-card,.swarm-project-image img{transition:none}.interaction-hint{display:none}}

/* Keep the original portfolio imagery and type readable against the new dark surfaces. */
.swarm-site .case-line{color:var(--swarm-accent)}
@media(min-width:1000px){.swarm-project{display:block;min-height:125vh;padding-top:15vh}.swarm-project-card{position:sticky;top:18vh}.project-counter{display:block}.project-thought{bottom:22%}}
@media(pointer:coarse){.interaction-hint{font-size:0}.interaction-hint::after{content:"Tap to scatter. Scroll to explore.";font-size:.85rem}}
