:root{--paper:#f3f0e8;--paper-2:#e8e4d9;--ink:#14231e;--ink-soft:#415149;--muted:#68766d;--line:#d1d1c6;--lime:#d9ff73;--lime-dark:#b4dc55;--orange:#ee9d70;--blue:#8aa8a6;--display:'Space Grotesk',Arial,sans-serif;--body:'DM Sans',Arial,sans-serif;--serif:'Instrument Serif',Georgia,serif}
*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:86px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--body);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}
body.menu-open{overflow:hidden}
::selection{background:var(--lime);color:var(--ink)}
a{color:inherit;text-decoration:none}
button{font:inherit}
button,a{ -webkit-tap-highlight-color:transparent }
button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid #278563;outline-offset:4px}
button{cursor:pointer}
.skip-link{position:fixed;left:12px;top:-80px;z-index:100;background:var(--lime);padding:10px 14px;font-weight:700}
.skip-link:focus{top:12px}
.scroll-progress{position:fixed;z-index:90;top:0;left:0;width:100%;height:3px;background:var(--lime-dark);transform:scaleX(0);transform-origin:left}
.site-header{height:86px;padding:0 clamp(24px,4vw,76px);display:flex;align-items:center;justify-content:space-between;gap:30px;border-bottom:1px solid var(--line);background:rgba(243,240,232,.94);backdrop-filter:blur(16px);position:sticky;top:0;z-index:50}
.wordmark{display:inline-flex;align-items:center;gap:10px;min-width:215px}
.wordmark-icon{font:700 36px/.9 var(--display);letter-spacing:-.12em;display:inline-flex;align-items:flex-end}
.wordmark-dot{color:#56a76b;margin-left:1px}
.wordmark-name{font:700 12px/1.05 var(--display);letter-spacing:-.035em;text-transform:uppercase}
.desktop-nav{display:flex;gap:clamp(18px,2vw,36px);align-items:center;font:600 13px/1 var(--display)}
.desktop-nav a,.header-contact,.contact-bottom a,.contact-bottom button{transition:opacity .2s ease}
.desktop-nav a:hover,.header-contact:hover,.contact-bottom a:hover,.contact-bottom button:hover{opacity:.55}
.header-contact{border:1px solid var(--ink);padding:12px 15px;font:600 12px/1 var(--display);white-space:nowrap}
.header-contact span{font-size:17px;vertical-align:-1px;margin-left:16px}
.menu-toggle,.mobile-nav{display:none}
.section-pad{padding-left:clamp(24px,4vw,76px);padding-right:clamp(24px,4vw,76px)}
.hero{min-height:min(780px,calc(100svh - 86px));display:grid;grid-template-columns:minmax(0,1.2fr) minmax(360px,.8fr);grid-template-rows:1fr auto;column-gap:clamp(32px,5vw,90px);padding-top:clamp(60px,7vw,122px);border-bottom:1px solid var(--ink)}
.hero-copy{align-self:center;padding-bottom:68px}
.eyebrow,.section-number,.art-topline,.art-caption,.visual-kicker,.visual-foot,.project-meta,.stage,.timeline-year,.beyond-card>span,.recognition-row>span{font-family:var(--display);font-weight:600;letter-spacing:.13em;text-transform:uppercase}
.eyebrow{font-size:11px;display:flex;align-items:center;gap:10px;color:var(--ink-soft);margin-bottom:38px}
.status-pulse{height:7px;width:7px;border-radius:50%;background:#6cae4c;box-shadow:0 0 0 4px rgba(108,174,76,.12)}
.hero h1,.section-heading h2,.approach h2,.recognition h2,.contact h2{font-family:var(--display);letter-spacing:-.075em;font-weight:500;line-height:.99;margin:0}
.hero h1{font-size:clamp(66px,6.4vw,126px);max-width:1100px;white-space:nowrap}
.hero h1 em,.section-heading h2 em,.approach h2 em,.recognition h2 em,.contact h2 em{font-family:var(--serif);font-weight:400;letter-spacing:-.045em}
.hero h1 em{padding-right:.06em}
.period{color:#82a84e}
.hero-lede{font-size:clamp(17px,1.25vw,21px);max-width:530px;color:var(--ink-soft);line-height:1.55;margin:36px 0 32px}
.hero-actions{display:flex;align-items:center;gap:30px;flex-wrap:wrap}
.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:17px 18px;font:700 13px/1 var(--display);transition:transform .2s ease,background .2s ease,color .2s ease}
.button:hover{transform:translateY(-3px)}
.button span{font-size:18px;font-weight:400}
.button-dark{background:var(--ink);color:var(--paper);min-width:216px}
.button-dark:hover{background:#2a4338}
.text-link{font:600 13px/1 var(--display);border-bottom:1px solid var(--ink);padding-bottom:5px}
.text-link span{margin-left:15px;font-size:16px}
.hero-art{position:relative;align-self:center;aspect-ratio:1/1.06;max-height:580px;background:var(--ink);overflow:hidden;color:var(--lime);border-radius:50% 50% 0 0;margin-bottom:20px;isolation:isolate}
.hero-art:before{content:'';position:absolute;inset:0;background:radial-gradient(circle at 52% 50%,rgba(205,255,113,.11),transparent 35%),repeating-linear-gradient(0deg,transparent,transparent 37px,rgba(238,241,220,.025) 38px);opacity:.85}
.art-topline{position:absolute;top:30px;left:30px;right:30px;display:flex;justify-content:space-between;font-size:9px;color:rgba(233,248,215,.62);z-index:2}
.art-orbit{position:absolute;border:1px solid rgba(217,255,115,.24);border-radius:50%;left:50%;top:52%;transform:translate(-50%,-50%)}
.art-orbit-outer{width:82%;aspect-ratio:1}.art-orbit-middle{width:61%;aspect-ratio:1;border-color:rgba(217,255,115,.45)}.art-orbit-inner{width:40%;aspect-ratio:1;border-color:rgba(217,255,115,.22)}
.art-axis{position:absolute;background:rgba(217,255,115,.16)}.art-axis-h{height:1px;left:10%;right:10%;top:52%}.art-axis-v{width:1px;top:12%;bottom:7%;left:50%}
.art-point{position:absolute;border:1px solid rgba(217,255,115,.65);border-radius:50%;width:34px;height:34px;display:grid;place-items:center;font:600 10px var(--display);background:var(--ink);z-index:2}.point-a{left:10%;top:48%}.point-b{right:18%;top:24%}.point-c{right:14%;bottom:22%}
.art-center{position:absolute;left:50%;top:52%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center;z-index:3}.art-center>span{font:500 clamp(75px,9vw,150px)/1 var(--display);letter-spacing:-.18em;padding-right:.18em}.art-center small{font:600 9px var(--display);white-space:nowrap;letter-spacing:.2em;color:rgba(217,255,115,.7);margin-top:5px}
.art-caption{position:absolute;bottom:26px;left:25px;right:25px;display:flex;justify-content:center;gap:11px;align-items:center;font-size:9px;color:#d5e9ca}.art-arrow{color:var(--lime);font-size:14px}
.hero-bottom{grid-column:1/-1;display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding:18px 0;font:600 11px var(--display);letter-spacing:.07em;text-transform:uppercase;color:var(--ink-soft)}
.hero-bottom a span{margin-left:15px;font-size:16px}
.signal-strip{display:grid;grid-template-columns:repeat(4,1fr);padding:0 clamp(24px,4vw,76px);background:var(--lime);border-bottom:1px solid var(--ink)}
.signal-strip>div{min-height:150px;display:flex;align-items:center;gap:20px;padding:28px clamp(12px,2vw,32px);border-right:1px solid rgba(20,35,30,.26)}.signal-strip>div:first-child{padding-left:0}.signal-strip>div:last-child{border:0}
.signal-strip strong{font:500 clamp(36px,3.4vw,58px)/1 var(--display);letter-spacing:-.085em}.signal-strip span{font:600 11px/1.4 var(--display);text-transform:uppercase;letter-spacing:.05em}
.work{padding-top:clamp(100px,12vw,190px);padding-bottom:clamp(100px,11vw,175px)}
.section-heading{display:flex;align-items:end;justify-content:space-between;gap:40px;margin-bottom:48px}.section-number{display:block;font-size:10px;letter-spacing:.16em;margin-bottom:24px;color:#578567}.section-heading h2,.approach h2,.recognition h2{font-size:clamp(50px,6vw,102px)}.section-heading>p{max-width:290px;margin:0 0 7px;font-size:17px;color:var(--ink-soft)}
.filters{display:flex;gap:6px;margin-bottom:24px;border-bottom:1px solid var(--line);padding-bottom:18px}.filter{border:1px solid transparent;background:transparent;padding:9px 14px;color:var(--ink-soft);font:600 12px var(--display);transition:background .2s,color .2s}.filter span{font-size:10px;margin-left:8px;color:var(--muted)}.filter:hover{background:#e3e5d9}.filter.active{background:var(--ink);color:white}.filter.active span{color:var(--lime)}
.projects{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.project{border:1px solid var(--line);background:#f8f6f0;min-width:0;display:flex;flex-direction:column}.project[hidden]{display:none}.project-feature{grid-column:1/-1;display:grid;grid-template-columns:1.02fr .98fr}.project-feature .project-visual{min-height:520px}.project-feature .project-info{padding:clamp(28px,4vw,68px)}.project-feature .project-info h3{font-size:clamp(58px,6vw,104px)}
.project-visual{min-height:385px;position:relative;overflow:hidden;isolation:isolate}.project-info{padding:32px 33px 23px;display:flex;flex-direction:column;flex:1}.project-meta{display:flex;justify-content:space-between;gap:12px;font-size:9px;color:var(--muted)}.project-meta>span:first-child{color:var(--ink)}.stage{letter-spacing:.07em;font-size:9px;color:#286144;white-space:nowrap}.stage-wip{color:#985d25}.project-info h3{font:500 clamp(46px,4.5vw,74px)/1 var(--display);letter-spacing:-.075em;margin:27px 0 19px}.project-info>p{font-size:16px;max-width:620px;color:var(--ink-soft);margin:0 0 22px}.project-tags{display:flex;gap:7px;flex-wrap:wrap;margin-top:auto;margin-bottom:24px}.project-tags span{font:600 10px var(--display);border:1px solid var(--line);padding:7px 9px;color:var(--ink-soft)}.project details{border-top:1px solid var(--line)}.project summary{list-style:none;display:flex;align-items:center;justify-content:space-between;font:700 12px var(--display);cursor:pointer;padding:16px 0 5px}.project summary::-webkit-details-marker{display:none}.project summary span{font-size:18px;font-weight:400;transition:transform .2s}.project details[open] summary span{transform:rotate(90deg)}.project-detail{padding:9px 0 6px;font-size:14px;line-height:1.6;color:var(--ink-soft)}.project-detail p{margin:6px 0 11px}.project-detail b{color:var(--ink)}
.visual-kicker,.visual-foot{position:absolute;z-index:3;font-size:10px;left:25px}.visual-kicker{top:22px}.visual-foot{bottom:22px}
.visual-response{background:#19372d;color:#daff84}.visual-response:before{content:'';position:absolute;width:72%;aspect-ratio:1;left:14%;top:10%;border:1px solid rgba(217,255,115,.35);border-radius:50%;box-shadow:0 0 0 40px rgba(217,255,115,.025),0 0 0 80px rgba(217,255,115,.018)}.visual-response:after{content:'';position:absolute;left:0;right:0;top:50%;height:1px;background:rgba(217,255,115,.25)}.wave{position:absolute;left:12%;right:12%;top:47%;height:80px;transform:translateY(-50%);display:flex;justify-content:space-between;align-items:center;gap:5px}.wave i{width:5px;background:var(--lime);border-radius:6px;opacity:.9;animation:wave 2.5s ease-in-out infinite alternate}.wave i:nth-child(1),.wave i:nth-child(15){height:14px}.wave i:nth-child(2),.wave i:nth-child(14){height:35px}.wave i:nth-child(3),.wave i:nth-child(13){height:55px}.wave i:nth-child(4),.wave i:nth-child(12){height:23px}.wave i:nth-child(5),.wave i:nth-child(11){height:74px}.wave i:nth-child(6),.wave i:nth-child(10){height:38px}.wave i:nth-child(7),.wave i:nth-child(9){height:62px}.wave i:nth-child(8){height:96px}.wave i:nth-child(2n){animation-delay:.3s}.wave i:nth-child(3n){animation-delay:.65s}@keyframes wave{to{transform:scaleY(.48)}}.voice-nodes{position:absolute;bottom:76px;left:35px;right:35px;display:flex;gap:10px;justify-content:center;align-items:center;font:600 11px var(--display);text-transform:uppercase;letter-spacing:.12em}.voice-nodes span{padding:8px 11px;border:1px solid rgba(217,255,115,.42)}.voice-nodes b{font-size:20px;font-weight:400}
.visual-findia{background:#dbe9d9;color:#235646}.findia-shape{position:absolute;inset:0;display:grid;place-items:center}.findia-core{position:relative;z-index:3;width:118px;height:118px;background:#235646;border-radius:32px;display:grid;place-items:center;color:#e9f2cc;font:500 100px/1 var(--display);letter-spacing:-.1em;padding-right:.1em}.findia-circle{position:absolute;width:82px;height:82px;border-radius:50%;background:#8eb39a;border:14px solid #c0d4b4;z-index:2}.findia-circle.c1{left:18%;top:28%}.findia-circle.c2{right:15%;top:20%;width:62px;height:62px;background:#dedf93;border-color:#a9c7a2}.findia-circle.c3{right:18%;bottom:15%;width:98px;height:98px;background:#e6b8a2;border-color:#c8d5b1}.findia-circle.c4{left:22%;bottom:15%;width:48px;height:48px;background:#a5beb0;border-color:#6fae94}.findia-line{position:absolute;height:1px;background:#7ba58b;left:30%;top:48%;width:44%;transform-origin:left}.findia-line.l1{transform:rotate(-22deg)}.findia-line.l2{transform:rotate(28deg)}.findia-line.l3{transform:rotate(150deg)}
.visual-aegis{background:#e8dfce;color:#72593f}.aegis-ring{position:absolute;width:250px;aspect-ratio:1;border:1px solid #977c5d;border-radius:50%;top:50%;left:50%;transform:translate(-50%,-50%);display:grid;place-items:center;box-shadow:0 0 0 35px rgba(151,124,93,.075),0 0 0 70px rgba(151,124,93,.06)}.aegis-ring:before,.aegis-ring:after{content:'';position:absolute;border:1px dashed rgba(151,124,93,.48);inset:23px;border-radius:50%}.aegis-ring:after{inset:49px;border-style:solid}.aegis-core{font:500 90px/1 var(--display);letter-spacing:-.1em;z-index:1}.aegis-core span{color:#c65f3b}.aegis-grid{position:absolute;inset:0;background-image:linear-gradient(rgba(151,124,93,.09) 1px,transparent 1px),linear-gradient(90deg,rgba(151,124,93,.09) 1px,transparent 1px);background-size:25px 25px;mask-image:linear-gradient(to bottom,transparent,black 50%,transparent)}
.visual-data{background:#d5dfdc;color:#1b5650}.data-stack{position:absolute;left:10%;top:47%;transform:translateY(-50%);z-index:2}.data-stack span{font:500 clamp(95px,12vw,188px)/.8 var(--display);letter-spacing:-.11em;white-space:nowrap}.data-stack small{display:block;font:700 10px var(--display);letter-spacing:.14em;margin-top:18px}.data-bars{position:absolute;right:5%;top:12%;bottom:10%;width:34%;display:flex;gap:12px;align-items:end;opacity:.3}.data-bars i{background:#548f82;width:20%;height:40%}.data-bars i:nth-child(2){height:70%}.data-bars i:nth-child(3){height:55%}.data-bars i:nth-child(4){height:90%}.data-bars i:nth-child(5){height:63%}
.visual-phoqtek{background:#292d40;color:#d7c5ef}.phoqtek-form{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:245px;height:245px;transform-style:preserve-3d}.phoqtek-form span{position:absolute;inset:0;border:1px solid #be9bda;transform:rotate(45deg) skew(6deg,6deg)}.phoqtek-form span:nth-child(2){transform:rotate(68deg) skew(6deg,6deg);opacity:.62}.phoqtek-form span:nth-child(3){transform:rotate(23deg) skew(6deg,6deg);opacity:.37}.visual-phoqtek:after{content:'';position:absolute;width:260px;height:260px;background:#b28fc7;filter:blur(100px);opacity:.15;left:50%;top:50%;transform:translate(-50%,-50%)}
.approach{background:var(--ink);color:var(--paper);padding-top:clamp(100px,10vw,160px);padding-bottom:clamp(100px,10vw,150px)}.approach .section-number{color:var(--lime)}.approach-head{margin-bottom:80px}.approach h2{max-width:1100px}.approach h2 em{color:var(--lime)}.principles{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid rgba(243,240,232,.27)}.principles article{padding:24px 32px 10px 0;min-height:255px;border-right:1px solid rgba(243,240,232,.27)}.principles article+article{padding-left:32px}.principles article:last-child{border-right:0}.principles article>span{font:600 11px var(--display);letter-spacing:.14em;color:var(--lime)}.principles h3{font:500 clamp(25px,2.4vw,36px)/1.15 var(--display);letter-spacing:-.05em;margin:34px 0 13px;max-width:260px}.principles p{font-size:15px;color:#bdc5bd;max-width:310px;margin:0}.approach-note{border-top:1px solid rgba(243,240,232,.27);padding-top:44px;display:flex;gap:30px;align-items:start;max-width:890px}.asterisk{font-size:60px;line-height:.8;color:var(--lime)}.approach-note p{font:italic clamp(25px,2.8vw,43px)/1.2 var(--serif);margin:0}
.story{padding-top:clamp(100px,11vw,180px);padding-bottom:clamp(100px,10vw,150px)}.timeline{border-top:1px solid var(--ink);margin-top:65px}.timeline-row{display:grid;grid-template-columns:30% 70%;gap:0;padding:30px 0 38px;border-bottom:1px solid var(--line)}.timeline-year{font-size:11px;color:#578567;padding-top:9px}.timeline-row h3{font:500 clamp(27px,3.2vw,48px)/1.1 var(--display);letter-spacing:-.055em;margin:0 0 13px}.timeline-row p{margin:0;max-width:700px;font-size:16px;color:var(--ink-soft)}
.recognition{padding-top:100px;padding-bottom:110px;background:#e6e4db;display:grid;grid-template-columns:1fr 1fr;gap:50px}.recognition h2{font-size:clamp(48px,5vw,86px)}.recognition-list{border-top:1px solid var(--ink)}.recognition-row{padding:24px 0 25px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:35% 65%;gap:18px}.recognition-row>span{font-size:10px;color:#578567;padding-top:3px}.recognition-row p{margin:0;font-size:15px;line-height:1.6;color:var(--ink-soft)}.recognition-row strong{color:var(--ink)}
.beyond{padding-top:clamp(100px,10vw,160px);padding-bottom:clamp(100px,10vw,160px)}.beyond-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.beyond-card{position:relative;min-height:405px;padding:26px 28px 30px;overflow:hidden;display:flex;flex-direction:column;isolation:isolate}.beyond-card>span{font-size:10px;position:relative;z-index:2}.beyond-card h3{font:500 clamp(30px,3vw,46px)/1.05 var(--display);letter-spacing:-.06em;margin:auto 0 17px;position:relative;z-index:2;max-width:300px}.beyond-card p{margin:0;max-width:320px;font-size:14px;line-height:1.55;position:relative;z-index:2}.beyond-dance{background:#e1d2c4}.beyond-music{background:#d6ddc4}.beyond-motion{background:#c9d8d7}.beyond-decoration{position:absolute;right:-10px;top:25px;font-size:230px;line-height:1;color:#bb8c78;opacity:.45;transform:rotate(-14deg)}.music-lines{position:absolute;right:-80px;top:95px;width:380px;transform:rotate(-25deg);display:flex;flex-direction:column;gap:20px;opacity:.46}.music-lines i{height:1px;background:#819172;width:100%}.motion-ball{position:absolute;width:220px;height:220px;border-radius:50%;border:25px solid #739c9d;right:-30px;top:48px;opacity:.3;box-shadow:0 0 0 28px #9db9b8,0 0 0 58px #a9c3c1}
.contact{background:var(--lime);padding-top:clamp(80px,8vw,125px);padding-bottom:0}.contact .section-number{color:#47704c}.contact-body{display:grid;grid-template-columns:1.3fr .7fr;column-gap:60px;align-items:end;padding-bottom:95px}.contact h2{font-size:clamp(68px,8vw,145px);grid-row:1/3}.contact h2 em{color:#426c3d}.contact-body p{font-size:18px;max-width:340px;margin:0 0 23px}.button-light{background:var(--ink);color:white;justify-self:start;min-width:215px}.button-light:hover{background:#2a4338}.contact-bottom{display:flex;gap:28px;padding:17px 0;border-top:1px solid rgba(20,35,30,.32);font:700 12px var(--display)}.contact-bottom a span,.contact-bottom button span{margin-left:12px;font-size:16px}.copy-email{border:0;padding:0;background:transparent;color:var(--ink);font-weight:700}.site-footer{display:flex;justify-content:space-between;gap:20px;padding:23px clamp(24px,4vw,76px);background:var(--ink);color:#b9c7b7;font:600 11px var(--display);letter-spacing:.04em}.site-footer a{color:var(--lime)}
.reveal{opacity:0;transform:translateY(22px);transition:opacity .65s ease,transform .65s ease}.reveal.visible{opacity:1;transform:translateY(0)}
@media(max-width:1150px){.hero h1{font-size:clamp(58px,6.1vw,90px)}.hero{grid-template-columns:minmax(0,1.1fr) minmax(310px,.9fr)}.signal-strip>div{gap:12px}.signal-strip strong{font-size:39px}.signal-strip span{font-size:9px}.desktop-nav{gap:15px}.wordmark{min-width:150px}}
@media(max-width:900px){.header-contact{display:none}.hero{grid-template-columns:1fr;min-height:0;padding-top:65px}.hero-copy{padding-bottom:40px}.hero h1{font-size:clamp(66px,11vw,110px)}.hero-art{width:min(100%,650px);justify-self:center;min-height:420px;margin-bottom:35px}.hero-bottom{grid-column:1}.signal-strip{grid-template-columns:repeat(2,1fr)}.signal-strip>div{border-bottom:1px solid rgba(20,35,30,.26)}.signal-strip>div:nth-child(2){border-right:0}.signal-strip>div:nth-child(n+3){border-bottom:0}.project-feature{grid-template-columns:1fr}.project-feature .project-visual{min-height:400px}.project-feature .project-info{padding:34px}.recognition{grid-template-columns:1fr;gap:42px}.beyond-grid{grid-template-columns:1fr 1fr}.beyond-card:last-child{grid-column:1/-1;min-height:340px}.contact-body{grid-template-columns:1fr}.contact h2{grid-row:auto}.contact-body p{margin-top:34px}}
@media(max-width:760px){.site-header{height:70px}.wordmark{min-width:0}.desktop-nav{display:none}.menu-toggle{display:flex;width:42px;height:42px;border:1px solid var(--ink);background:transparent;flex-direction:column;align-items:center;justify-content:center;gap:5px;z-index:2}.menu-toggle span{width:17px;height:1.5px;background:var(--ink);transition:transform .2s}.menu-toggle[aria-expanded=true] span:first-child{transform:translateY(3.25px) rotate(45deg)}.menu-toggle[aria-expanded=true] span:last-child{transform:translateY(-3.25px) rotate(-45deg)}.mobile-nav:not([hidden]){display:flex;position:fixed;top:70px;left:0;right:0;height:calc(100svh - 70px);background:var(--paper);padding:36px 24px;flex-direction:column;gap:0;z-index:51}.mobile-nav a{font:500 clamp(38px,8vw,60px)/1 var(--display);letter-spacing:-.065em;padding:17px 0;border-bottom:1px solid var(--line)}.hero h1{font-size:clamp(56px,10.2vw,80px)}.hero-art{min-height:0}.hero-bottom span:first-child{max-width:50%}.section-heading{display:block}.section-heading>p{margin-top:28px}.projects{grid-template-columns:1fr}.project-feature{grid-column:auto}.project-visual,.project-feature .project-visual{min-height:360px}.project-info h3,.project-feature .project-info h3{font-size:58px}.principles{grid-template-columns:1fr}.principles article,.principles article+article{padding:23px 0 29px;min-height:0;border-right:0;border-bottom:1px solid rgba(243,240,232,.27)}.principles article:last-child{border-bottom:0}.principles h3{margin:18px 0 12px}.approach-note{margin-top:12px}.timeline-row{grid-template-columns:1fr;gap:15px}.recognition-row{grid-template-columns:1fr;gap:5px}.beyond-grid{grid-template-columns:1fr}.beyond-card,.beyond-card:last-child{grid-column:auto;min-height:340px}.contact h2{font-size:clamp(65px,10vw,90px)}.site-footer{flex-wrap:wrap}}
@media(max-width:520px){.hero{padding-top:48px}.eyebrow{font-size:9px;margin-bottom:28px;letter-spacing:.08em}.hero h1{font-size:clamp(51px,12vw,66px)}.hero-lede{font-size:16px;margin-top:26px}.hero-actions{gap:22px}.button-dark{width:100%}.hero-art{aspect-ratio:1/1.08}.art-topline{left:18px;right:18px;top:20px;font-size:7px}.art-caption{font-size:7px;gap:6px;bottom:18px}.art-center small{font-size:7px}.hero-bottom{font-size:9px}.signal-strip>div{min-height:120px;display:block;padding:22px 12px}.signal-strip>div:nth-child(3){padding-left:0}.signal-strip strong{display:block;font-size:38px;margin-bottom:8px}.signal-strip span{font-size:9px}.work,.story,.beyond{padding-top:95px;padding-bottom:95px}.section-heading h2,.approach h2,.recognition h2{font-size:clamp(47px,11vw,68px)}.filters{gap:0;justify-content:space-between}.filter{padding:9px 8px;font-size:11px}.filter span{margin-left:3px}.project-visual,.project-feature .project-visual{min-height:300px}.project-info,.project-feature .project-info{padding:26px 22px 20px}.project-meta{font-size:8px}.project-info h3,.project-feature .project-info h3{font-size:52px;margin:22px 0 16px}.project-info>p{font-size:14px}.visual-kicker,.visual-foot{font-size:8px;left:18px}.wave{height:65px}.voice-nodes{left:9px;right:9px;gap:6px;bottom:58px;font-size:8px}.voice-nodes span{padding:5px}.findia-core{width:90px;height:90px;font-size:75px}.findia-circle.c1{left:11%}.findia-circle.c2{right:9%}.findia-circle.c3{right:11%}.data-stack span{font-size:100px}.aegis-ring{width:190px}.recognition{padding-top:84px;padding-bottom:90px}.contact{padding-top:80px}.contact h2{font-size:clamp(54px,12vw,72px)}.contact-bottom{gap:16px;flex-wrap:wrap}.site-footer{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.wave i{animation:none}.button,.desktop-nav a,.header-contact,.project summary span{transition:none}}

/* Keep every section readable on first render, including full-page previews. */
.reveal{opacity:1;transform:none}
@media(max-width:520px){.hero h1{font-size:clamp(48px,11vw,66px);white-space:normal}}

/* Personal imagery and documentary moments */
.hero-portrait{display:block;width:clamp(185px,24vw,340px);height:clamp(185px,24vw,340px);border-radius:50%;object-fit:cover;object-position:center 28%;border:7px solid var(--ink);box-shadow:0 0 0 1px rgba(217,255,115,.58),0 22px 70px rgba(0,0,0,.22);filter:saturate(.84)}
.art-center{top:51%}.art-center small{background:var(--ink);padding:10px 14px;border:1px solid rgba(217,255,115,.35);margin-top:-11px;z-index:4}
.field-notes{background:#dfe6d7;padding-top:clamp(95px,9vw,150px);padding-bottom:clamp(95px,9vw,145px)}
.field-notes-intro{display:grid;grid-template-columns:1.12fr .65fr;gap:35px;align-items:end;margin-bottom:62px}.field-notes-intro .section-number{grid-column:1/-1;margin-bottom:-8px}.field-notes h2{font:500 clamp(52px,6vw,104px)/.98 var(--display);letter-spacing:-.075em;margin:0}.field-notes h2 em{font:italic 400 1em var(--serif);letter-spacing:-.045em}.field-notes-intro>p{font-size:18px;color:var(--ink-soft);max-width:370px;margin:0 0 8px}.field-notes-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-top:1px solid var(--ink);border-bottom:1px solid var(--ink)}.field-note{padding:28px 34px 34px 0;min-height:365px;border-right:1px solid rgba(20,35,30,.25)}.field-note+.field-note{padding-left:34px}.field-note:last-child{border-right:0}.field-note>span{font:700 10px var(--display);letter-spacing:.14em;color:#4d8056}.field-note h3{font:500 clamp(27px,2.5vw,40px)/1.1 var(--display);letter-spacing:-.055em;margin:38px 0 18px}.field-note p{font-size:15px;color:var(--ink-soft);line-height:1.63;margin:0}
.recognition{display:block}.recognition-main{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:56px}.recognition-main h2{flex:1}.recognition-intro{max-width:220px;color:var(--ink-soft);font-size:16px;margin:0 0 9px}.recognition-content{display:grid;grid-template-columns:minmax(0,.82fr) minmax(0,1.18fr);gap:clamp(30px,4vw,70px);align-items:start}.recognition-list{min-width:0}.recognition-row{grid-template-columns:32% 68%;gap:8px}.recognition-row a{border-bottom:1px solid #8aab85}.recognition-row a:hover{color:#3a8150}.recognition-gallery{min-width:0}.recognition-gallery figure{margin:0;overflow:hidden;background:#d3d7cb}.recognition-gallery img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .35s ease}.recognition-gallery figure:hover img{transform:scale(1.02)}.gallery-main img{aspect-ratio:1.8/1;object-position:center 45%}.recognition-gallery figcaption{padding:10px 12px;font:600 10px var(--display);letter-spacing:.05em;text-transform:uppercase;color:#405047;background:#e9e9df}.gallery-pair{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}.gallery-pair img{aspect-ratio:1.55/1}.gallery-pair figure:last-child img{object-fit:contain;background:#dcdcd3}.gallery-source{display:inline-block;margin-top:17px;font:700 11px var(--display);border-bottom:1px solid var(--ink);padding-bottom:4px}
@media(max-width:900px){.field-notes-grid{grid-template-columns:1fr}.field-note,.field-note+.field-note{padding:25px 0 29px;border-right:0;border-bottom:1px solid rgba(20,35,30,.25);min-height:0}.field-note:last-child{border-bottom:0}.field-note h3{margin:19px 0 11px}.recognition-content{grid-template-columns:1fr}.recognition-main{display:block}.recognition-intro{max-width:420px;margin-top:18px}.hero-portrait{width:clamp(210px,42vw,340px);height:clamp(210px,42vw,340px)}}
@media(max-width:600px){.field-notes-intro{display:block}.field-notes-intro .section-number{margin-bottom:23px}.field-notes-intro>p{margin-top:22px}.field-note h3{font-size:30px}.recognition-row{grid-template-columns:1fr;gap:4px}.gallery-pair{grid-template-columns:1fr}.gallery-main img{aspect-ratio:1.2/1}.hero-portrait{width:clamp(175px,51vw,270px);height:clamp(175px,51vw,270px)}}

/* Conversations and recent momentum */
.conversations{padding-top:clamp(96px,10vw,155px);padding-bottom:clamp(96px,10vw,145px);background:#ede9df}
.conversations-intro{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(250px,.5fr);gap:clamp(30px,6vw,100px);align-items:end;margin-bottom:56px}
.conversations-intro .section-number{grid-column:1/-1;margin-bottom:-14px}
.conversations h2{font:500 clamp(50px,5.5vw,94px)/.98 var(--display);letter-spacing:-.075em;margin:0}
.conversations h2 em{font:italic 400 1em var(--serif);letter-spacing:-.045em}
.conversations-intro>p{font-size:17px;color:var(--ink-soft);max-width:360px;margin:0 0 7px}
.conversation-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.conversation-card{position:relative;overflow:hidden;min-height:370px;padding:34px clamp(25px,3vw,50px) 30px;border:1px solid #c9c8bb;display:flex;flex-direction:column;background:#d9e3d8;isolation:isolate}
.conversation-card:nth-child(2){background:#eadfd0}
.conversation-card:before{content:'';position:absolute;right:-75px;top:-95px;width:250px;height:250px;border:1px solid rgba(20,35,30,.18);border-radius:50%;box-shadow:0 0 0 35px rgba(20,35,30,.035),0 0 0 70px rgba(20,35,30,.026);z-index:-1}
.conversation-index{font:700 10px var(--display);letter-spacing:.17em;color:#4e805a}
.conversation-card h3{font:500 clamp(35px,3.8vw,58px)/1 var(--display);letter-spacing:-.075em;margin:40px 0 9px}
.conversation-role{font:600 12px var(--display);letter-spacing:.035em;color:#4d6856;margin:0 0 23px}
.conversation-card>p:not(.conversation-role){max-width:550px;font-size:15px;line-height:1.63;color:var(--ink-soft);margin:0 0 32px}
.conversation-card>a{font:700 12px var(--display);border-bottom:1px solid var(--ink);align-self:flex-start;margin-top:auto;padding-bottom:5px;transition:opacity .2s}
.conversation-card>a:hover{opacity:.55}
.conversation-card>a span{margin-left:9px}
.project-detail a{border-bottom:1px solid #749076}
.recognition-feature p strong{display:block;font:500 clamp(22px,2vw,30px)/1.15 var(--display);letter-spacing:-.055em;margin-bottom:8px}
@media(max-width:900px){.conversations-intro{grid-template-columns:1fr;gap:18px}.conversations-intro .section-number{margin-bottom:8px}.conversation-card{min-height:400px}}
@media(max-width:680px){.conversation-grid{grid-template-columns:1fr}.conversation-card{min-height:0}.conversation-card h3{margin-top:35px}.conversations-intro>p{margin-top:10px}}

/* A small photo essay, with the BITSoM portrait anchored beside team moments. */
.moments{background:#f3f0e8;padding-top:clamp(95px,9vw,145px);padding-bottom:clamp(95px,9vw,145px)}
.moments-heading{display:flex;align-items:end;justify-content:space-between;gap:42px;margin-bottom:52px}
.moments-heading h2{font:500 clamp(55px,6vw,102px)/.98 var(--display);letter-spacing:-.075em;margin:24px 0 0}
.moments-heading h2 em{font:italic 400 1em var(--serif);letter-spacing:-.045em}
.moments-heading>p{max-width:350px;font-size:17px;color:var(--ink-soft);margin:0 0 8px}
.moments-grid{display:grid;grid-template-columns:.9fr 1fr 1fr;grid-template-rows:repeat(2,350px);gap:14px}
.moment{display:grid;grid-template-rows:minmax(0,1fr) auto;min-width:0;min-height:0;margin:0;overflow:hidden;background:#e2e2d8}
.moment-portrait{grid-row:1/3}
.moment-bitsom-team{grid-column:2/4}
.moment img{display:block;width:100%;height:100%;min-height:0;object-fit:cover;filter:saturate(.9)}
.moment-portrait img{object-position:center 38%}
.moment-bitsom-team img{object-position:center 44%}
.moment-findia img{object-position:center 49%}
.moment-datalabs img{object-position:center 50%}
.moment figcaption{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:67px;padding:12px 17px;background:#e6e4db}
.moment figcaption span{font:700 9px var(--display);letter-spacing:.11em;color:#527a57;white-space:nowrap}
.moment figcaption strong{font:500 14px var(--display);text-align:right;letter-spacing:-.025em}
.moment figcaption a{border-bottom:1px solid currentColor}
.moment figcaption a:hover{color:#477b51}
@media(max-width:1000px){.moments-grid{grid-template-columns:.9fr 1fr;grid-template-rows:repeat(2,320px) 290px}.moment-bitsom-team{grid-column:auto}.moment-datalabs{grid-column:1/-1}.moments-heading>p{max-width:300px}}
@media(max-width:650px){.moments-heading{display:block;margin-bottom:33px}.moments-heading>p{margin:24px 0 0}.moments-heading h2{font-size:clamp(51px,12vw,72px)}.moments-grid{grid-template-columns:1fr;grid-template-rows:420px 330px 310px 290px;gap:12px}.moment-portrait,.moment-bitsom-team,.moment-datalabs{grid-column:auto;grid-row:auto}.moment figcaption{min-height:60px}.moment figcaption strong{font-size:13px}}
