:root{--t-xs:.72rem;--t-sm:.82rem;--t-base:1rem;--t-md:clamp(1.05rem,2vw,1.45rem);--t-lg:clamp(2rem,3.5vw,4rem);--t-display:clamp(4rem,9vw,11rem);--v:#e34234;--v-og:#c23a28;--v-pale:#faf0ee;--black:#191614;--white:#fff;--off:#f5f5f5;--mid:#e0ddd8;--gray:#9a9490;--gray-d:#5c5450;--bg:#ffffff;--nav-bg:#ffffff8c;--nav-bg-blurred:#fffc;--overlay-bg:#ffffffc7;--logo-blend:multiply;--logo-sep:#0000002e}:root[data-theme=dark]{--v-pale:#1e1210;--black:#ede9e5;--white:#000000;--off:#000000;--mid:#2e2b28;--gray:#706a64;--gray-d:#9a9490;--bg:#000000;--nav-bg:#000000c7;--nav-bg-blurred:#000000f0;--overlay-bg:#000000e6;--logo-blend:screen;--logo-sep:#ffffff1f}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){--v-pale:#1e1210;--black:#ede9e5;--white:#000000;--off:#000000;--mid:#2e2b28;--gray:#706a64;--gray-d:#9a9490;--bg:#000000;--nav-bg:#000000c7;--nav-bg-blurred:#000000f0;--overlay-bg:#000000e6;--logo-blend:screen;--logo-sep:#ffffff1f}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-behavior:smooth;-webkit-text-size-adjust:100%;scrollbar-width:thin;scrollbar-color:#e3423459 transparent;overflow:hidden scroll}html::-webkit-scrollbar{background:0 0;width:3px}html::-webkit-scrollbar-track{background:0 0}html::-webkit-scrollbar-thumb{background:#e3423459;border-radius:2px}html::-webkit-scrollbar-thumb:hover{background:#e3423499}html::-webkit-scrollbar:horizontal,body::-webkit-scrollbar:horizontal,::-webkit-scrollbar:horizontal{height:0!important;display:none!important}.proj-detail,.cat-page,#admin-panel,.contact-madlib{scrollbar-width:none;-ms-overflow-style:none}.contact-madlib::-webkit-scrollbar{display:none}.proj-detail::-webkit-scrollbar,.cat-page::-webkit-scrollbar,#admin-panel::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}body{background:var(--bg);width:100vw;max-width:100%;color:var(--black);cursor:none;-webkit-overflow-scrolling:touch;font-family:DM Sans,sans-serif;overflow-x:hidden}.cursor{background:var(--v);pointer-events:none;z-index:10000;border-radius:50%;width:10px;height:10px;transition:width .15s,height .15s;position:fixed;transform:translate(-50%,-50%)}.cursor.active{opacity:.25;width:40px;height:40px}nav{z-index:500;background:var(--nav-bg);-webkit-backdrop-filter:blur(14px);justify-content:space-between;align-items:center;padding:1.4rem 3rem;transition:background .3s;display:flex;position:fixed;top:0;left:0;right:0}nav.blurred{background:var(--nav-bg-blurred);-webkit-backdrop-filter:blur(14px)}.hero-stack{z-index:9999;pointer-events:none;mix-blend-mode:difference;will-change:transform;padding:0 1.5rem;position:absolute;bottom:0;left:0;right:0}.hero-name{width:100%;overflow:hidden}.hero-name-text{white-space:nowrap;color:#fff;letter-spacing:-.03em;width:100%;font-family:DM Sans,sans-serif;font-size:20vw;font-weight:700;line-height:.82;display:block}.nav-logo{letter-spacing:.04em;color:var(--black);cursor:none;text-transform:uppercase;font-family:DM Sans,sans-serif;font-size:var(--t-sm);font-weight:500;text-decoration:none;position:absolute;left:50%;transform:translateX(-50%)}.nav-links{gap:1.2rem;list-style:none;display:flex}.nav-links a{letter-spacing:.04em;text-transform:uppercase;color:var(--gray-d);cursor:none;font-size:var(--t-sm);font-weight:500;text-decoration:none;transition:color .2s;position:relative}.nav-links a:after{content:"";background:var(--v);transform-origin:0;height:1px;transition:transform .3s;position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}.nav-links a:hover,.nav-links a.active{color:var(--v)}.nav-links a:hover:after,.nav-links a.active:after{transform:scaleX(1)}.page{min-height:100vh;display:none!important}.page.active{animation:.4s fadeUp;display:block!important}#page-home{max-width:100vw;overflow-x:hidden}@keyframes fadeUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.pond-hero{background:var(--white);height:100vh;position:relative;overflow:hidden}#pond-canvas{cursor:none;background:var(--white);width:100%;height:100%;position:absolute;inset:0}#page-trans{z-index:9996;background:var(--bg);opacity:0;pointer-events:none;transition:opacity .32s ease-in;position:fixed;inset:0}#page-trans.visible{opacity:1;pointer-events:auto;transition:opacity .16s ease-out}.hero-stack{z-index:9999;pointer-events:none;mix-blend-mode:difference;will-change:transform;padding:0 1.5rem;transition:transform 1.4s cubic-bezier(.16,.84,.44,1);position:absolute;bottom:0;left:0;right:0;transform:translateY(calc(50% - 50vh))}.hero-stack.settling{transform:translateY(0)}.hero-name{width:100%;overflow:hidden}.hero-name-text{white-space:nowrap;color:#fff;letter-spacing:-.03em;width:100%;font-family:DM Sans,sans-serif;font-size:20vw;font-weight:700;line-height:.82;display:block}@keyframes nameFade{0%{opacity:0}to{opacity:1}}.hero-typing-pos{z-index:9999;mix-blend-mode:difference;pointer-events:none;text-align:right;animation:1s .6s both nameFade;position:absolute;top:6.5rem;right:1.75rem}.hero-typing-text{letter-spacing:.14em;text-transform:uppercase;color:#fff;white-space:nowrap;font-family:DM Sans,sans-serif;font-size:var(--t-sm);font-weight:300}.hero-typing-cursor{color:#fff;margin-left:1px;font-family:DM Sans,sans-serif;font-size:var(--t-sm);font-weight:300;animation:.75s step-end infinite cursorBlink}@keyframes cursorBlink{0%,to{opacity:1}50%{opacity:0}}.nav-sub{letter-spacing:.12em;text-transform:uppercase;color:var(--gray);font-size:var(--t-xs);font-weight:400}.nav-sub span{color:var(--v);font-weight:500}.nav-cta{letter-spacing:.04em;text-transform:uppercase;color:var(--gray-d);cursor:none;font-size:var(--t-sm);font-weight:500;text-decoration:none;transition:color .2s;position:relative;display:inline-flex;align-items:center;gap:.25em}.nav-cta:after{content:"";background:var(--v);transform-origin:0;height:1px;transition:transform .3s;position:absolute;bottom:-3px;left:0;right:0;transform:scaleX(0)}.nav-cta:hover{color:var(--v)}.nav-cta:hover:after{transform:scaleX(1)}.pond-hint{z-index:5;text-align:center;pointer-events:none;transition:opacity .8s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pond-hint-text{letter-spacing:.2em;text-transform:uppercase;color:var(--gray);opacity:.5;font-size:.82rem}.pond-hint-ring{border:1px solid var(--mid);border-radius:50%;width:60px;height:60px;margin:0 auto 1rem;animation:2.5s ease-in-out infinite pulse-ring}@keyframes pulse-ring{0%,to{opacity:.4;transform:scale(1)}50%{opacity:.8;transform:scale(1.2)}}.works-section{background:var(--white);padding:7rem 1.25rem 5rem}.section-header{justify-content:space-between;align-items:baseline;margin-bottom:3rem;display:flex}.section-title{letter-spacing:.02em;font-family:Bebas Neue,sans-serif;font-size:2.2rem;line-height:1}.section-link{letter-spacing:.12em;text-transform:uppercase;color:var(--v);cursor:none;flex-direction:column;align-items:flex-start;gap:.15rem;font-size:var(--t-sm);text-decoration:none;transition:opacity .2s;display:inline-flex}.section-link-text{display:inline-block}.section-link-line{background:var(--v);width:1.6em;height:1px;display:block}.section-link:hover{opacity:.65}.works-grid{grid-template-columns:1fr 1fr;gap:1.25rem;display:grid}.work-card{background:var(--white);cursor:none;border-radius:6px;position:relative;overflow:hidden}.work-img{justify-content:center;align-items:center;width:100%;height:120vh;min-height:120vh;display:flex;position:relative;overflow:hidden;aspect-ratio:unset!important}.work-card:first-child .work-img,.work-card:nth-child(2) .work-img,.work-card:nth-child(3) .work-img,.work-card:nth-child(4) .work-img{background:var(--white)}.work-img svg{opacity:.22;width:45%;height:45%;stroke:var(--black);fill:none;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;transition:opacity .4s,transform .5s cubic-bezier(.16,1,.3,1)}.work-card:hover .work-img svg{opacity:.12;transform:scale(1.06)}.work-overlay{opacity:0;background:linear-gradient(#0000 0%,#1916142e 45%,#191614b8 100%);flex-direction:column;justify-content:flex-end;padding:1.75rem;transition:opacity .32s,transform .32s;display:flex;position:absolute;inset:0;transform:translateY(6px)}.work-card:hover .work-overlay{opacity:1;transform:translateY(0)}.work-overlay-desc{color:#ffffffd1;font-size:var(--t-sm);font-weight:300;line-height:1.6}.work-meta{padding:.9rem .1rem .5rem}.work-name{letter-spacing:.04em;color:var(--black);margin-bottom:.2rem;font-size:var(--t-sm);font-weight:500}.work-desc{color:var(--gray);font-size:var(--t-sm);font-weight:300;line-height:1.55}.practice-section{background:var(--white);padding:10rem 3rem 5rem;position:relative;z-index:1;overflow:hidden}.practice-section>.practice-list{z-index:1;position:relative}.practice-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--gray);font-size:17.6px;font-weight:500;position:absolute;top:11.5rem;left:3rem;z-index:2}#practice-dot-grid{-webkit-mask-image:linear-gradient(to bottom,transparent 0%,black 38%);mask-image:linear-gradient(to bottom,transparent 0%,black 38%)}.practice-list{list-style:none;grid-column:2;grid-row:1;margin-top:1.5rem;padding-left:10rem}.practice-item{border-top:none;padding:2.5rem 0 3rem;display:grid;grid-template-columns:var(--name-w,20rem) 1fr 1fr;column-gap:6rem;align-items:start;position:relative}.practice-item::before{content:"";position:absolute;top:0;left:16rem;right:2rem;border-top:1px solid var(--mid)}.practice-name{color:var(--black);font-family:DM Sans,sans-serif;font-size:var(--t-lg);line-height:1;letter-spacing:-.02em;grid-column:1;grid-row:1;padding-left:16rem}.practice-sub{display:none}.practice-detail-a{list-style:none;grid-column:2;grid-row:1;text-align:left}.practice-detail-b{list-style:none;grid-column:3;grid-row:1;text-align:left}.practice-detail-a li,.practice-detail-b li{color:var(--gray);font-size:.8rem;font-weight:300;line-height:1.8}#page-work{background:var(--white);padding-top:5rem}.projects-title em{color:var(--v);font-style:normal}.projects-grid{grid-template-columns:1fr 1fr;gap:1rem;padding:1rem;display:grid}.proj-tile{cursor:none;background:var(--off);aspect-ratio:unset;border-radius:6px;height:50vh;min-height:50vh;position:relative;overflow:hidden;display:flex;flex-direction:column}.proj-tile-img{object-fit:cover;justify-content:center;align-items:center;width:100%;height:100%;transition:transform .6s cubic-bezier(.16,1,.3,1);display:flex;position:relative;overflow:hidden}.proj-tile:hover .proj-tile-img{transform:scale(1.04)}.tile-rotator img{object-fit:cover;object-position:center center;opacity:0;width:100%;height:100%;transition:opacity 1.2s;display:block;position:absolute;inset:0}.tile-rotator img.tile-active{opacity:1}.tile-rotator-left img{object-position:22% center}.proj-tile svg{opacity:.18;fill:none;width:38%;height:38%;stroke:var(--black);stroke-width:1.2px;stroke-linecap:round;stroke-linejoin:round;transition:opacity .4s}.proj-tile:hover svg{opacity:.08}.proj-tile:after{content:"";opacity:0;background:linear-gradient(#0000 0%,#1916141a 50%,#191614c7 100%);transition:opacity .3s;position:absolute;inset:0}.proj-tile:hover:after{opacity:1}.proj-tile-label{z-index:2;background:none;border-top:1px solid rgba(255,255,255,0.18);flex-direction:column;align-items:flex-start;gap:.35rem;padding:1.25rem 1.5rem;display:flex;position:absolute;bottom:0;left:0;right:0}.proj-tile-name{letter-spacing:.02em;color:#fff;font-family:Bebas Neue,sans-serif;font-size:clamp(1.6rem,3vw,2.8rem);line-height:.9;transition:letter-spacing .3s}.proj-tile:hover .proj-tile-name{letter-spacing:.05em}.proj-tile-tag{letter-spacing:.12em;text-transform:uppercase;color:#fff9;border:1px solid #ffffff4d;flex-shrink:0;align-self:flex-start;padding:.2rem .55rem;font-size:var(--t-xs);transition:border-color .2s,color .2s}.proj-tile:hover .proj-tile-tag{border-color:var(--v);color:var(--v)}#page-about{background:var(--bg);padding-top:5rem;position:relative}.about-photo-strip{background:0 0;flex-direction:column;align-items:center;width:100%;padding:4rem 0 1.5rem;display:flex}.about-portrait-circle{border:2px solid var(--mid);border-radius:50%;flex-shrink:0;width:160px;height:160px;overflow:hidden}.about-portrait-circle img{object-fit:cover;object-position:center top;width:100%;height:100%;display:block}.about-hero{padding:5rem 3rem 3rem}.dot-grid-canvas{z-index:0;pointer-events:none;width:100%;height:100%;position:absolute;inset:0;-webkit-mask-image:linear-gradient(90deg,#0000 0%,#000 22% 88%,#0000 100%);mask-image:linear-gradient(90deg,#0000 0%,#000 22% 88%,#0000 100%)}.about-body{color:var(--black);max-width:none;font-size:var(--t-md);font-weight:300;line-height:1.45}.about-body strong{color:var(--black);font-weight:500}.about-body p+p{margin-top:1rem}.about-stat-line{letter-spacing:.18em;text-transform:uppercase;color:var(--gray);justify-content:space-between;align-items:center;gap:2rem;padding:1rem 3rem;font-size:var(--t-sm);font-weight:400;display:flex}.about-stat-item{white-space:nowrap;flex-shrink:0}.about-stat-line span{color:var(--gray-d);font-weight:500}.resume-dl-btn{letter-spacing:.15em;text-transform:uppercase;color:var(--white);background:var(--black);cursor:none;white-space:nowrap;flex-shrink:0;align-items:center;gap:.55rem;padding:.7rem 1.4rem;font-size:var(--t-sm);font-weight:700;text-decoration:none;transition:background .2s;display:inline-flex}.resume-dl-btn:hover{background:var(--v)}.resume-dl-btn svg{flex-shrink:0}.brand-marquee-wrap{background:var(--white);border-top:1px solid var(--mid);padding:1rem 0;position:relative;overflow:hidden}.brand-marquee-wrap:before,.brand-marquee-wrap:after{content:"";z-index:2;pointer-events:none;width:8rem;position:absolute;top:0;bottom:0}.brand-marquee-wrap:before{background:linear-gradient(to right,var(--white),transparent);left:0}.brand-marquee-wrap:after{background:linear-gradient(to left,var(--white),transparent);right:0}.brand-marquee-track{will-change:transform;align-items:center;gap:0;width:max-content;-webkit-animation:32s linear infinite marqueeScroll;animation:32s linear infinite marqueeScroll;display:flex}.brand-marquee-track-reverse{-webkit-animation:32s linear -16s infinite marqueeScrollReverse;animation:32s linear -16s infinite marqueeScrollReverse}@keyframes marqueeScroll{0%{transform:translate(0,0)}to{transform:translate(-50%)}}@keyframes marqueeScrollReverse{0%{transform:translate(-50%)}to{transform:translate(0,0)}}@-webkit-keyframes marqueeScroll{0%{-webkit-transform:translate(0,0)}to{-webkit-transform:translate(-50%)}}@-webkit-keyframes marqueeScrollReverse{0%{-webkit-transform:translate(-50%)}to{-webkit-transform:translate(0,0)}}.brand-marquee-wrap-reverse{border-top:none;border-bottom:1px solid var(--mid);display:none}.brand-marquee-item{white-space:nowrap;flex-shrink:0;align-items:center;gap:5rem;padding:0 5rem 0 0;display:flex}.brand-logo{opacity:.45;filter:grayscale();object-fit:contain;mix-blend-mode:var(--logo-blend);flex-shrink:0;width:auto;max-width:180px;height:48px;transition:opacity .3s,filter .3s;display:block}.brand-logo:hover{opacity:1;filter:grayscale(0)}.brand-sep{background:var(--logo-sep);border-radius:50%;flex-shrink:0;width:3px;height:3px;display:inline-block}.about-resume{border-top:1px solid var(--mid);grid-template-columns:1fr 22rem;display:grid}.about-exp{padding:1.25rem 3rem 4rem;position:relative}.about-exp>:not(.dot-grid-canvas){z-index:1;position:relative}.about-exp-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--gray);margin-bottom:1rem;font-size:var(--t-sm);font-weight:500}.about-exp-item{border-bottom:1px solid var(--mid);flex-direction:column;gap:.15rem;padding:1.4rem 0;display:flex}.about-exp-item:last-child{border-bottom:none}.about-exp-row{justify-content:space-between;align-items:baseline;gap:1rem;display:flex}.about-exp-role{color:var(--black);white-space:nowrap;font-family:Bebas Neue,sans-serif;font-size:clamp(1.2rem,1.8vw,1.8rem)}.about-exp-company{color:var(--gray-d);letter-spacing:.04em;text-align:left;font-size:var(--t-xs);font-weight:400}.about-exp-time{color:var(--gray);white-space:nowrap;text-align:right;font-size:var(--t-sm);font-weight:300}.about-sidebar{padding:1.25rem 2.5rem 4rem}.about-sidebar-block{margin-bottom:2.5rem}.about-sidebar-block:last-child{margin-bottom:0}.about-sidebar-label{letter-spacing:.2em;text-transform:uppercase;color:var(--gray);margin-bottom:.85rem;font-size:var(--t-sm);font-weight:500}.about-sidebar-item{color:var(--black);font-size:var(--t-sm);font-weight:400;line-height:1.9}.about-sidebar-sub{color:var(--gray);font-size:var(--t-sm);font-weight:300;line-height:1.6}#page-contact{background:var(--bg)}#page-contact.active{flex-direction:column;height:100vh;display:flex;overflow:hidden}@media (width<=768px){#page-contact.active{height:auto!important;overflow:visible!important}}.contact-wrap{flex:1;display:flex;flex-direction:row;align-items:stretch;gap:3rem;width:100%;min-height:0;margin:0;padding:1.5rem 3rem 2rem}.contact-left{flex:0 0 33%;min-width:0;flex-direction:column;min-height:0;display:flex}.contact-right{flex:1;min-width:0;flex-direction:column;gap:0;min-height:0;display:flex;overflow-y:auto;padding-top:1rem}.contact-hl{font-family:DM Sans,sans-serif;font-size:var(--t-lg);line-height:1;letter-spacing:-.02em;font-weight:300;white-space:nowrap;padding:0 0 1.5rem;color:var(--black)}.contact-hl em{color:var(--black);font-style:normal}.contact-desc{color:var(--gray-d);max-width:44ch;margin-bottom:0;font-size:var(--t-sm);font-weight:300;line-height:1.8}.contact-links{flex-direction:column;gap:0;margin-top:0;margin-bottom:1.5rem;display:flex}.contact-photo{flex:1;min-height:0;display:flex}.contact-photo img{object-fit:cover;object-position:center center;width:100%;height:100%;display:block}.contact-right .contact-links{margin-top:0;margin-bottom:0}.contact-cta-btn{letter-spacing:.08em;color:var(--black);border:1.5px solid var(--black);cursor:none;opacity:1;background:0 0;align-items:center;gap:.5rem;margin-top:2rem;padding:1rem 2.4rem;font-family:Bebas Neue,sans-serif;font-size:1.8rem;transition:background .2s,color .2s,border-color .2s,opacity .4s;display:inline-flex}.contact-cta-btn:hover{background:var(--black);color:var(--bg);border-color:var(--black)}.contact-cta-btn.fading{opacity:0;pointer-events:none}@media (width>=769px){.contact-madlib{opacity:0;pointer-events:none;max-height:0;margin:0;transition:opacity .5s,max-height .5s;overflow:hidden}.contact-madlib.revealed{opacity:1;pointer-events:auto;max-height:none;margin:0;overflow:visible}.contact-right .contact-madlib{opacity:1!important;pointer-events:auto!important;max-height:none!important;margin:0!important;overflow:visible!important;flex:1}.contact-cta-btn.hidden{display:none}}@media (width<=768px){.contact-cta-btn{display:none}}.contact-madlib{color:var(--black);flex:1;margin:1.5rem 0 .5rem;font-family:DM Sans,sans-serif;font-size:var(--t-md);font-weight:400;line-height:2.1;overflow:auto}.contact-madlib p{margin:0 0 .85rem}.cml-input,.cml-select{font-family:inherit;font-size:inherit;border:none;border-bottom:1.5px solid var(--black);color:var(--black);cursor:text;vertical-align:baseline;box-sizing:content-box;background:0 0;outline:none;margin:0 .15rem;padding:.05rem .4rem .18rem;line-height:1.4;transition:border-color .2s,color .2s}.cml-input::placeholder{color:var(--gray)}.cml-input:hover,.cml-select:hover{border-color:var(--black)}.cml-input:focus,.cml-select:focus{border-color:var(--black);color:var(--black)}.cml-input.tiny{width:7ch}.cml-input.short{width:14ch}.cml-input.med{width:18ch}.cml-input.long{width:26ch;max-width:100%}.cml-input.full{width:100%;max-width:540px;margin-top:.4rem;display:block}.cml-select{cursor:pointer;-webkit-appearance:none;-moz-appearance:none;appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--black)50%),linear-gradient(135deg,var(--black)50%,transparent 50%);background-position:calc(100% - 12px) 55%,calc(100% - 6px) 55%;background-repeat:no-repeat;background-size:6px 6px,6px 6px;padding-right:1.4rem}.cml-select:focus{background-image:linear-gradient(45deg,transparent 50%,var(--black)50%),linear-gradient(135deg,var(--black)50%,transparent 50%)}.cml-submit{letter-spacing:.14em;color:var(--black);border:1.5px solid var(--black);cursor:pointer;background:0 0;display:block;margin:1.5rem auto 0;padding:.8rem 2.2rem;font-family:Bebas Neue,sans-serif;font-size:1.35rem;transition:background .2s,color .2s,border-color .2s}.cml-submit:hover{background:var(--black);color:var(--bg);border-color:var(--black)}.cml-thanks{letter-spacing:.14em;color:var(--black);margin-top:1rem;font-family:Bebas Neue,sans-serif;font-size:1.1rem;display:none}@media (width<=768px){.contact-wrap{flex-direction:column!important;align-items:stretch!important;gap:2rem!important;padding:5rem 1.25rem 2.5rem!important}.contact-left{width:100%;max-width:100%}.contact-right{width:100%!important;flex:none!important;padding:1.5rem!important;margin-top:0;box-sizing:border-box}.contact-hl{white-space:normal;font-size:clamp(1.8rem,6vw,2.8rem)}.contact-desc{max-width:100%}.contact-clients-grid{grid-template-columns:repeat(3,1fr);gap:.85rem 1rem}.contact-madlib{font-size:1.05rem;line-height:1.9;overflow-x:hidden}.cml-input,.cml-select{max-width:100%}.cml-select{max-width:78%}.cml-input.long{width:82%;display:inline-block;max-width:100%}.cml-input.med{width:16ch}.cml-input.full{width:100%;max-width:100%}.contact-wrap-new{grid-template-columns:1fr}.pf-card{padding:1.5rem;border-radius:8px}.contact-form-hl{font-size:clamp(2.4rem,10vw,3.5rem)}}.contact-photo-placeholder{color:var(--gray);text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:.75rem;display:flex}.contact-photo-placeholder svg{opacity:.2}.contact-photo-placeholder span{letter-spacing:.18em;text-transform:uppercase;font-size:.85rem}.contact-link-row{border-top:1px solid var(--mid);cursor:none;justify-content:space-between;align-items:center;padding:.75rem 0;transition:padding-left .2s;display:flex}.contact-link-row:last-child{border-bottom:1px solid var(--mid)}.contact-link-row:hover{padding-left:.5rem}.contact-link-label{letter-spacing:.06em;color:var(--black);font-family:Bebas Neue,sans-serif;font-size:1.05rem}.contact-link-val{color:var(--black);letter-spacing:.05em;font-size:var(--t-sm);text-decoration:none}.contact-link-val:hover{text-decoration:underline}.contact-filler{border-top:1px solid var(--mid);flex-direction:column;flex:1;justify-content:center;gap:.75rem;padding:2rem 3rem;display:flex}.contact-filler-eyebrow{letter-spacing:.18em;text-transform:uppercase;color:var(--gray);margin-bottom:.25rem;font-size:.68rem}.contact-filler-tiles{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.contact-tile{aspect-ratio:1;background:var(--off);cursor:none;flex-direction:column;display:flex;position:relative;overflow:hidden}.contact-tile-img{flex:1;justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.contact-tile-img svg{fill:none;width:52%;height:52%;stroke:var(--gray);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;transition:transform .3s}.contact-tile:hover .contact-tile-img svg{transform:scale(1.07)}.contact-tile-meta{border-top:1px solid var(--mid);padding:.6rem .75rem .75rem}.contact-tile-name{color:var(--black);letter-spacing:.01em;font-size:var(--t-xs);font-weight:500}.contact-tile-sub{color:var(--gray);letter-spacing:.02em;margin-top:.15rem;font-size:.62rem}.contact-avail{letter-spacing:.18em;text-transform:uppercase;color:var(--gray);align-items:center;gap:.6rem;margin-top:.75rem;margin-bottom:1rem;font-size:var(--t-xs);font-weight:500;display:flex}.avail-dot{background:var(--gray);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite blink}@keyframes blink{0%,to{opacity:1}50%{opacity:.3}}@keyframes pondBlob1{0%,to{transform:translate(0)scale(1)}33%{transform:translate(12%,18%)scale(1.1)}66%{transform:translate(-8%,10%)scale(.9)}}@keyframes pondBlob2{0%,to{transform:translate(0)scale(1)}40%{transform:translate(-15%,-12%)scale(1.15)}70%{transform:translate(10%,-6%)scale(.95)}}@keyframes pondBlob3{0%,to{transform:translate(0)scale(1)}30%{transform:translate(8%,15%)scale(.85)}65%{transform:translate(-10%,8%)scale(1.2)}}.contact-detail{color:var(--gray-d);font-size:var(--t-sm);font-weight:300;line-height:1.85}.pond-tutorial{background:var(--overlay-bg);backdrop-filter:blur(8px);text-align:center;z-index:20;border:none;border-radius:6px;flex-direction:column;align-items:center;gap:1rem;max-width:560px;padding:1.5rem 2rem;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.pond-tutorial-text{color:var(--gray-d);font-size:var(--t-sm);font-weight:300;line-height:1.65}.pond-tutorial-text strong{color:var(--black);font-weight:500}.pond-tutorial-close{letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--mid);color:var(--black);cursor:none;white-space:nowrap;background:0 0;flex-shrink:0;padding:.5rem 1rem;font-size:var(--t-sm);transition:border-color .2s,color .2s}.pond-tutorial-close:hover{border-color:var(--v);color:var(--v)}.pond-page-hero{background:var(--white);height:100vh;position:relative;overflow:hidden}#pond-page-canvas{cursor:none;width:100%;height:100%;position:absolute;inset:0}.pond-page-label{z-index:10;pointer-events:none;position:absolute;bottom:3rem;left:3rem}.pond-page-title{letter-spacing:.05em;opacity:.15;font-family:Bebas Neue,sans-serif;font-size:1.8rem}.pond-page-sub{letter-spacing:.18em;text-transform:uppercase;color:var(--gray);margin-top:.3rem;font-size:.74rem}.home-footer{background:var(--bg);border-top:1px solid var(--mid);grid-template-columns:1fr 1fr;align-items:start;gap:4rem;padding:1rem 3rem 1.25rem;display:grid}.home-footer-nav{flex-direction:column;gap:.3rem;display:flex}.home-footer-nav-label{letter-spacing:.2em;text-transform:uppercase;color:var(--gray);font-size:var(--t-sm);font-weight:500}.home-footer-nav-links{flex-wrap:wrap;gap:0 1.25rem;display:flex}.home-footer-link{letter-spacing:.03em;color:var(--black);cursor:none;font-family:Bebas Neue,sans-serif;font-size:1.3rem;line-height:1.1;text-decoration:none;transition:color .2s}.home-footer-link:hover{color:var(--v)}.home-footer-form{border:1px solid var(--mid);gap:0;display:flex}.home-footer-input{color:var(--white);background:#ffffff14;border:none;outline:none;flex:1;padding:.5rem .75rem;font-family:DM Sans,sans-serif;font-size:.83rem}.home-footer-input::placeholder{color:var(--gray)}.home-footer-submit{letter-spacing:.1em;text-transform:uppercase;background:var(--black);color:#fff;cursor:none;border:none;padding:.5rem .9rem;font-family:DM Sans,sans-serif;font-size:var(--t-sm);transition:background .2s}.home-footer-submit:hover{background:var(--v)}.home-footer-thankyou{color:var(--v);letter-spacing:.08em;text-transform:uppercase;margin-top:.5rem;font-size:var(--t-sm);display:none}.proj-detail{background:var(--bg);min-height:100vh;display:none}.proj-detail.active{animation:.4s fadeUp;display:block}.cat-page{background:var(--bg);min-height:100vh;display:none;overflow-y:auto}@media (width>=769px){.cat-page{height:calc(100vh - 5.5rem)}.practice-item--web{display:none!important}}.cat-page.active{flex-direction:column;animation:.4s fadeUp;display:flex}.cat-header{border-bottom:1px solid var(--mid);flex-shrink:0;justify-content:space-between;align-items:flex-end;padding:2.25rem 3rem 1.25rem;display:flex}.cat-title{color:var(--black);font-family:Bebas Neue,sans-serif;font-size:clamp(3rem,7vw,7rem);line-height:.88}.cat-count{letter-spacing:.18em;text-transform:uppercase;color:var(--gray);font-size:.72rem}.cat-back{letter-spacing:.14em;text-transform:uppercase;color:var(--gray);cursor:none;padding:5.5rem 3rem 0;font-size:var(--t-xs);text-decoration:none;display:inline-block}.cat-back:hover{color:var(--v)}.pd-back{z-index:900;letter-spacing:.16em;text-transform:uppercase;color:var(--gray);cursor:none;font-size:var(--t-xs);text-decoration:none;transition:color .2s;position:fixed;top:5.5rem;left:1.75rem}.pd-back:hover{color:var(--v)}.cat-back.pd-back{position:static}.cat-grid{grid-template-columns:repeat(3,1fr);align-content:start;gap:1rem;padding:1rem 1rem 5.5rem;display:grid}.cat-grid.two-col{grid-template-columns:repeat(2,1fr)}.cat-grid.one-col{grid-template-columns:1fr}.cat-card{cursor:none;background:var(--off);border-radius:2px;flex-direction:column;display:flex;position:relative;overflow:hidden}.cat-card-img{aspect-ratio:4/3;background:var(--off);flex:1;justify-content:center;align-items:center;min-height:220px;display:flex;position:relative;overflow:hidden}.cat-card-img img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.16,1,.3,1);display:block}.cat-card-img.contain img{object-fit:contain}.cat-card:hover .cat-card-img img{transform:scale(1.04)}.cat-card-placeholder{justify-content:center;align-items:center;width:100%;height:100%;display:flex}.cat-card-placeholder svg{fill:none;width:30%;height:30%;stroke:var(--gray);stroke-width:1.5px;stroke-linecap:round;stroke-linejoin:round;opacity:.25}.cat-card-meta{border-top:1px solid var(--mid);padding:.85rem 1rem 1rem}.cat-card-name{color:var(--black);letter-spacing:.02em;font-size:var(--t-sm);font-weight:500}.cat-card-sub{color:var(--gray);letter-spacing:.03em;margin-top:.2rem;font-size:.72rem}.cat-card-tag{letter-spacing:.12em;text-transform:uppercase;color:var(--v);margin-top:.3rem;font-size:.66rem}.pd-title-strip{justify-content:space-between;align-items:flex-end;padding:6.5rem 3rem 1.75rem;display:flex}.pd-title-left{flex-direction:column;gap:.5rem;display:flex}.pd-service{letter-spacing:.28em;text-transform:uppercase;color:var(--v);font-size:var(--t-sm);font-weight:500;display:block}.pd-name{color:var(--black);font-family:Bebas Neue,sans-serif;font-size:var(--t-display);line-height:.82}.pd-meta-line{align-items:center;gap:1.25rem;margin-top:.5rem;display:flex}.pd-client{color:var(--gray);letter-spacing:.06em;font-size:var(--t-sm);font-weight:300}.pd-tag{letter-spacing:.14em;text-transform:uppercase;color:var(--gray);border:1px solid var(--mid);padding:.15rem .55rem;font-size:.82rem}.pd-hero{background:var(--off);justify-content:center;align-items:center;height:85vh;display:flex;position:relative;overflow:hidden}.pd-hero-bg{justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.pd-hero-bg svg{display:none}.pd-strip{flex-direction:column;margin-top:3rem;display:flex}.pd-strip-left{border-top:1px solid var(--mid);flex-direction:row;flex-wrap:wrap;gap:2rem;padding:3rem;display:flex;order:2}.pd-strip-right{flex-direction:column;gap:1rem;padding:3rem;display:flex;order:1}.pd-strip-item{flex-direction:column;gap:.3rem;display:flex}.pd-strip-item.statement{flex:1}.pd-strip-label{letter-spacing:.22em;text-transform:uppercase;color:var(--gray);font-size:var(--t-sm);font-weight:500}.pd-strip-val{color:var(--black);font-size:var(--t-sm);font-weight:400;line-height:1.3}.pd-tiles{gap:.75rem;padding:.75rem .75rem 0;display:grid}.proj-detail>.pd-tiles:last-of-type{padding-bottom:.75rem}.pd-tiles.two{grid-template-columns:1fr 1fr}.pd-tiles.three{grid-template-columns:1fr 1fr 1fr}.pd-tiles.asymL{grid-template-columns:2fr 1fr}.pd-tiles.asymR{grid-template-columns:1fr 2fr}.pd-tiles.asymL .pd-tile.wide,.pd-tiles.asymR .pd-tile.wide,.pd-tiles.asymL .pd-tile.square,.pd-tiles.asymR .pd-tile.square{aspect-ratio:unset;align-self:stretch}.pd-tile{background:var(--off);justify-content:center;align-items:center;display:flex;position:relative;overflow:hidden}.pd-tile.tall{aspect-ratio:3/4}.pd-tile.wide{aspect-ratio:16/9}.pd-tile.square{aspect-ratio:1}.pd-tile.hero{aspect-ratio:21/9}.pd-tile svg{display:none}.pd-tile img{object-fit:cover;width:100%;height:100%;display:block}.pd-more-section{background:var(--white);border-top:1px solid #0000001a;margin-top:0}.pd-more-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--black);padding:2.5rem 3rem 1.25rem;font-size:var(--t-xs);font-weight:600}.pd-more-grid{grid-template-columns:repeat(3,1fr);gap:1rem;padding:0 3rem 2rem;display:grid}.pd-more-tile{cursor:none;background:#1e1c1a;border-radius:2px;overflow:hidden}.pd-more-tile:hover .pd-more-tile-img img{transform:scale(1.04)}.pd-more-tile-img{aspect-ratio:4/3;background:#2a2724;position:relative;overflow:hidden}.pd-more-tile-img img{object-fit:cover;width:100%;height:100%;transition:transform .5s cubic-bezier(.16,1,.3,1);display:block}.pd-more-tile-img.contain img{object-fit:contain}.pd-more-tile-meta{border-top:1px solid #ffffff14;padding:.75rem 1rem .9rem}.pd-more-tile-name{color:#ffffffd9;letter-spacing:.01em;font-size:var(--t-sm);font-weight:500}.pd-more-tile-sub{color:#ffffff59;letter-spacing:.02em;margin-top:.15rem;font-size:.68rem}.pd-hero img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.work-img{position:relative}.work-img img,.proj-tile-img img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.pd-tile-cap{letter-spacing:.14em;text-transform:uppercase;color:#19161459;font-size:var(--t-sm);position:absolute;bottom:.75rem;left:1rem}.pd-statement-hl{color:var(--black);font-family:Bebas Neue,sans-serif;font-size:var(--t-lg);line-height:.9}.pd-statement-hl em{color:var(--v);font-style:normal}.pd-statement-body{color:var(--gray-d);max-width:52ch;margin-top:.5rem;font-size:var(--t-sm);font-weight:300;line-height:1.75}.pd-live-link{letter-spacing:.14em;text-transform:uppercase;color:var(--black);cursor:pointer;margin-top:1.25rem;font-size:var(--t-sm);text-decoration:none;transition:color .2s;display:inline-block}.pd-live-link:hover{color:var(--v)}.texture-break{background:var(--off);position:relative;overflow:hidden}.texture-break.dark{background:#2a2724}.texture-break>*{z-index:1;position:relative}.noise-canvas{pointer-events:none;z-index:0;width:100%;height:100%;position:absolute;inset:0}.texture-break.dark .home-footer-nav-label{color:#ffffff59}.texture-break.dark .home-footer-link{color:#ffffffd9}.texture-break.dark .home-footer-link:hover{color:var(--v)}.texture-break.dark .home-footer-form{border-color:#ffffff26}.texture-break.dark .home-footer-input{color:var(--white);background:0 0}.texture-break.dark .home-footer-input::placeholder{color:#ffffff4d}.texture-break.dark .home-footer-submit{background:#ffffff1f}.texture-break.dark .home-footer-submit:hover{background:var(--v)}.texture-break.dark .about-exp-eyebrow,.texture-break.dark .about-sidebar-label,.texture-break.dark .about-exp-meta,.texture-break.dark .about-sidebar-sub{color:#fff6}.texture-break.dark .about-exp-role,.texture-break.dark .about-sidebar-item{color:#ffffffe0}.texture-break.dark .about-exp-time{color:#ffffff73}.texture-break.dark .about-exp-item{border-bottom-color:#ffffff14}.texture-break.dark .about-resume{border-top-color:#ffffff14}.texture-break.dark .about-exp{border-right-color:#ffffff14}.texture-break.dark .practice-name,.texture-break.dark .practice-item{color:var(--white);border-top-color:#ffffff14}.texture-break.dark .practice-item:nth-child(n+3){border-bottom-color:#ffffff14}.texture-break.dark .practice-sub{color:#ffffff80}.texture-break.dark .practice-detail li{color:#fff6}.texture-break.dark .practice-eyebrow{color:#ffffff59}.texture-break.dark .section-title{color:var(--white)}#page-about{background:var(--bg);overflow:hidden}.mesh-zone{background:var(--white);position:relative}#admin-panel{z-index:9998;backdrop-filter:blur(12px);background:#191614f7;padding:4rem 3rem;font-family:DM Sans,sans-serif;display:none;position:fixed;inset:0;overflow-y:auto}#admin-panel.open{display:block}.admin-header{border-bottom:1px solid #ffffff1a;justify-content:space-between;align-items:baseline;margin-bottom:3rem;padding-bottom:1.5rem;display:flex}.admin-title{letter-spacing:.05em;color:#fff;font-family:Bebas Neue,sans-serif;font-size:2.5rem}.admin-close{letter-spacing:.15em;text-transform:uppercase;color:#fff6;cursor:pointer;background:0 0;border:1px solid #ffffff26;padding:.5rem 1rem;font-size:var(--t-sm);transition:all .2s}.admin-close:hover{border-color:var(--v);color:var(--v)}.admin-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:1.5rem;display:grid}.admin-slot{background:#ffffff0a;border:1px solid #ffffff14;border-radius:4px;padding:1.25rem;transition:border-color .2s}.admin-slot.drag-over{border-color:var(--v);background:#e3423414}.admin-slot-name{letter-spacing:.18em;text-transform:uppercase;color:#fff6;margin-bottom:.85rem;font-size:var(--t-xs);font-weight:500}.admin-slot-preview{aspect-ratio:4/3;cursor:pointer;background:#ffffff0f;border-radius:2px;justify-content:center;align-items:center;width:100%;margin-bottom:.85rem;display:flex;overflow:hidden}.admin-slot-preview img{object-fit:contain;width:100%;height:100%}.admin-drop-hint{letter-spacing:.12em;text-transform:uppercase;color:#fff3;text-align:center;font-size:var(--t-xs);line-height:1.8}.admin-slot-actions{gap:.5rem;display:flex}.admin-btn{letter-spacing:.12em;text-transform:uppercase;color:#ffffff80;cursor:pointer;background:0 0;border:1px solid #ffffff1f;border-radius:2px;flex:1;padding:.45rem 0;font-size:var(--t-sm);transition:all .2s}.admin-btn:hover{color:#fff;border-color:#fff6}.admin-btn.danger:hover{border-color:var(--v);color:var(--v)}#admin-login{flex-direction:column;justify-content:center;align-items:center;gap:1.5rem;min-height:60vh;display:flex}.admin-login-title{color:#fff;letter-spacing:.05em;font-family:Bebas Neue,sans-serif;font-size:2rem}.admin-login-sub{color:#ffffff4d;letter-spacing:.1em;text-transform:uppercase;font-size:.85rem}.admin-pw-input{color:#fff;text-align:center;letter-spacing:.2em;background:#ffffff0f;border:1px solid #ffffff26;border-radius:2px;outline:none;width:280px;padding:.75rem 1.25rem;font-family:DM Sans,sans-serif;font-size:.9rem}.admin-pw-input:focus{border-color:var(--v)}.admin-pw-btn{background:var(--v);color:#fff;letter-spacing:.15em;text-transform:uppercase;cursor:pointer;border:none;border-radius:2px;padding:.75rem 2.5rem;font-family:DM Sans,sans-serif;font-size:.85rem}.admin-pw-btn:hover{background:var(--v-og)}.admin-pw-error{color:var(--v);letter-spacing:.1em;text-transform:uppercase;font-size:var(--t-sm);display:none}@media (width<=768px){*{cursor:auto!important}#cursor,#cursor-dot{display:none!important}.nav-links,.nav-sub{display:none}.nav-hamburger{cursor:pointer;background:0 0;border:none;flex-direction:column;justify-content:center;align-items:center;gap:5px;width:36px;height:36px;padding:.4rem;display:flex}.nav-hamburger span{background:var(--black);width:22px;height:1.5px;transition:transform .25s,opacity .25s;display:block}.nav-hamburger.open span:first-child{transform:translateY(6.5px)rotate(45deg)}.nav-hamburger.open span:nth-child(2){opacity:0}.nav-hamburger.open span:nth-child(3){transform:translateY(-6.5px)rotate(-45deg)}.mobile-nav-overlay{-webkit-backdrop-filter:blur(18px);z-index:490;opacity:0;pointer-events:none;background:rgba(0,0,0,.92);flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:2.5rem;padding:6rem 2.5rem 3rem;transition:opacity .25s;display:flex;position:fixed;inset:0}.mobile-nav-overlay.open{opacity:1;pointer-events:all}.mobile-nav-brand{letter-spacing:.06em;text-transform:uppercase;color:rgba(255,255,255,.3);font-family:DM Sans,sans-serif;font-size:var(--t-sm);font-weight:500}.mobile-nav-section{display:flex;flex-direction:column;align-items:flex-start;gap:.6rem}.mobile-nav-label{letter-spacing:.2em;text-transform:uppercase;color:#fff;font-family:DM Sans,sans-serif;font-size:var(--t-xs);font-weight:700;margin-bottom:.3rem}.mobile-nav-overlay a{color:rgba(255,255,255,.78);cursor:pointer;font-family:DM Sans,sans-serif;font-size:1.6rem;font-weight:300;line-height:1.3;text-decoration:none;transition:color .2s}.mobile-nav-overlay a:hover{color:var(--v)}.pond-hint-text{display:none}.hero-name-text{white-space:normal;font-size:34vw;line-height:.88}.hero-name{padding:0 0 .4rem}.works-grid{grid-template-columns:1fr 1fr;gap:2px;display:grid}.work-img{height:auto!important;min-height:unset!important;aspect-ratio:1!important}.work-overlay{display:none}.work-meta{padding:.6rem .5rem .4rem}.work-name{font-size:.75rem}.work-desc{font-size:.68rem}.works-section{padding:0}.works-tile{zoom:1.2}.section-header{padding:1.5rem 1.25rem 1rem}#page-work.active{flex-direction:column;height:100vh;border-top:none!important;padding-top:0!important;display:flex!important}.projects-grid{background:var(--mid);flex:1;grid-template-columns:unset!important;flex-direction:column!important;gap:1px!important;padding:0!important;display:flex!important}#page-work{height:auto!important;min-height:unset!important}.projects-grid{background:var(--mid);flex:unset!important;flex-direction:column!important;gap:1px!important;padding:0!important;display:flex!important}@media (width<=768px){.proj-tile{background:var(--white);height:50vh!important;aspect-ratio:unset!important;flex-direction:column!important;flex:none!important;display:flex!important;position:relative!important}.proj-tile-img{background:var(--black);overflow:hidden;width:100%!important;height:auto!important;aspect-ratio:unset!important;flex:1!important;position:relative!important;transform:none!important}.proj-tile:hover .proj-tile-img{transform:none!important}.proj-tile .tile-rotator img{object-fit:cover!important;width:100%!important;height:100%!important;position:absolute!important;inset:0!important}.proj-tile-label{background:none!important;border-top:1px solid rgba(255,255,255,0.18)!important;align-items:flex-start;gap:.1rem;flex-direction:column!important;flex-shrink:0!important;height:auto!important;margin-left:0!important;padding:.55rem 1rem .65rem!important;display:flex!important;position:static!important}}.proj-tile-name{color:var(--black);text-transform:uppercase;letter-spacing:.06em;font-size:var(--t-sm);font-weight:500;line-height:1.2}.proj-tile-tag{display:none!important}.proj-tile-name{font-size:1.3rem;line-height:1.1}.proj-tile-blurb{color:var(--gray);font-size:var(--t-xs);font-weight:300;line-height:1.5}.proj-tile-tag{color:var(--gray);letter-spacing:.1em;text-transform:uppercase;margin-top:.2rem;font-size:.68rem}#page-work{padding-top:4rem}.cat-grid{background:var(--mid);grid-template-columns:unset!important;flex-direction:column!important;gap:1px!important;padding:0!important;display:flex!important}.cat-card{background:var(--white);height:50vh!important;aspect-ratio:unset!important;border-radius:0!important;flex-direction:column!important;flex:none!important;display:flex!important;position:relative!important}.cat-card-img{background:var(--black);overflow:hidden;width:100%!important;height:auto!important;aspect-ratio:unset!important;flex:1!important}.cat-card-img img{object-fit:cover!important;width:100%!important;height:100%!important}.cat-card-meta{background:var(--white);border-top:1px solid var(--mid);flex-shrink:0!important;padding:.7rem 1rem .85rem!important}.cat-card-name{color:var(--black);letter-spacing:.04em;font-family:Bebas Neue,sans-serif;font-size:1.3rem;font-weight:500;line-height:1.1}.cat-card-sub{color:var(--gray);margin-top:.25rem;font-size:var(--t-xs);font-weight:300;line-height:1.4}.cat-card-tag{display:none!important}.pd-more-grid{grid-template-columns:1fr!important;padding:0 1rem 1.5rem!important}.pd-title-strip{flex-direction:column;gap:1rem;padding:7.5rem 1.25rem 1.25rem}.pd-back{top:4.6rem!important;left:1.25rem!important}.cat-back{padding:5.5rem 1.25rem 0}.cat-header{padding:6.5rem 1.25rem 1.5rem}.pd-name{font-size:clamp(2.2rem,10vw,3rem)}.pd-strip{flex-direction:column;gap:1.5rem;padding:1.5rem 1.25rem}.pd-strip-left{flex-flow:wrap;gap:1.5rem}.pd-tiles{gap:2px}.pd-tiles.three{grid-template-columns:1fr 1fr 1fr}.pd-tiles.asymL{grid-template-rows:auto auto;grid-template-columns:1fr}.pd-tiles.asymL .pd-tile.wide,.pd-tiles.asymL .pd-tile.tall{grid-column:1}.pd-more-eyebrow{padding:1.5rem 1.25rem .75rem}.about-header,.about-body-section,.about-exp,.contact-header{padding-left:1.25rem;padding-right:1.25rem}.about-stat-line{flex-direction:column;align-items:flex-start;gap:1rem;padding:1rem 1.25rem}.about-stat-item{font-size:.72rem}.about-stat-line{display:flex!important}.resume-dl-btn{order:-1;align-self:flex-start}.about-resume{flex-direction:column!important;display:flex!important}.about-exp{order:1;padding:2rem 1.25rem;border-right:none!important}.about-sidebar{border-top:1px solid var(--mid);order:2;padding:2rem 1.25rem}.about-exp-row{gap:.5rem}.about-exp-company{min-width:unset;text-align:left;width:100%;font-size:.78rem}.brand-marquee-wrap-reverse{display:block}.home-footer{grid-template-columns:1fr;gap:1.5rem;padding:1.25rem}nav{-webkit-backdrop-filter:blur(14px);padding:1.2rem 1.25rem;background:var(--nav-bg)!important}.nav-logo{position:static!important;transform:none!important;left:auto!important;flex:1!important}.nav-sub{display:flex!important}.nav-cta{display:none!important}.page.active{animation:none!important;display:block!important}#page-home{padding-top:0}#page-work{border-top:1px solid var(--mid);padding-top:3rem}#page-about,#page-contact{border-top:1px solid var(--mid)}#page-pond{z-index:350;transition:transform .45s cubic-bezier(.16,1,.3,1);transform:translateY(100%);min-height:unset!important;border-top:none!important;display:none!important;position:fixed!important;inset:0!important}#page-pond.active{transform:translateY(0);display:block!important}.pond-mobile-back{z-index:20;color:#fff9;letter-spacing:.14em;text-transform:uppercase;cursor:pointer;background:0 0;border:none;padding:0;font-family:DM Sans,sans-serif;font-size:var(--t-xs);position:absolute;top:4.5rem;left:1.25rem}#pond-teaser{cursor:pointer;background:#0f0c0a;border-top:1px solid #ffffff0f;flex-direction:column;justify-content:flex-end;gap:.5rem;min-height:50vh;padding:1.25rem 1.5rem 6rem;display:flex;position:relative}.pond-teaser-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:#ffffff59;font-size:.68rem}.pond-teaser-title{letter-spacing:.04em;color:#fff;font-family:Bebas Neue,sans-serif;font-size:4.4rem;line-height:1}.pond-teaser-sub{color:#ffffff73;max-width:28ch;margin-top:.4rem;font-size:var(--t-sm);font-weight:300;line-height:1.6}.pond-teaser-arrow{color:#ffffff4d;font-size:2rem;position:absolute;bottom:1.75rem;right:1.5rem}#page-home .home-footer,#page-work .home-footer,#page-about .home-footer,#page-contact .home-footer{display:none}.proj-detail,.cat-page{z-index:300;-webkit-overflow-scrolling:touch;visibility:hidden;transition:transform .38s cubic-bezier(.16,1,.3,1);inset:0;overflow-y:auto;transform:translate(100%);min-height:unset!important;animation:none!important;display:block!important;position:fixed!important}.proj-detail.active,.cat-page.active{visibility:visible;transform:translate(0)}.ms-reveal{opacity:0;transition:opacity .65s,transform .65s cubic-bezier(.16,1,.3,1);transform:translateY(28px)}.ms-reveal.ms-in{opacity:1;transform:none}}.nav-hamburger,.mobile-nav-overlay,#pond-teaser{display:none}@media (width<=768px){.nav-hamburger,.mobile-nav-overlay{display:flex}#pond-teaser{display:none}}@media (width>=769px){.home-footer{display:none!important}}
/* ── Contact client grid ── */
.contact-clients-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--gray);font-size:var(--t-xs);font-weight:500;margin-bottom:1.75rem;margin-top:40px}.contact-clients-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem 2.5rem;align-items:center;justify-items:start;margin-bottom:2rem}.contact-clients-grid img{height:35px;width:auto;max-width:clamp(44px,6vw,112px);object-fit:contain;display:block;filter:grayscale(1) brightness(0) invert(0.55);opacity:1;transition:opacity .2s}.contact-clients-grid img:hover{opacity:.7}.contact-clients-grid img.hm-logo-warm{filter:none}[data-theme=dark] .contact-clients-grid img.hm-logo-warm{filter:grayscale(1) brightness(0) invert(0.55);opacity:1}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .contact-clients-grid img.hm-logo-warm{filter:grayscale(1) brightness(0) invert(0.55);opacity:1}}[data-theme=dark] .contact-clients-grid img{filter:grayscale(1) brightness(0) invert(0.55);opacity:1}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .contact-clients-grid img{filter:grayscale(1) brightness(0) invert(1);opacity:.45}}
/* ── Site footer contact info ── */
.site-footer-contact-info{display:flex;flex-direction:column;gap:.4rem;align-items:flex-start}.site-footer-contact-link{letter-spacing:.08em;color:var(--gray);font-size:var(--t-sm);transition:color .2s;text-decoration:none}.site-footer-contact-link:hover{color:var(--v)}
.site-footer-label{display:block;letter-spacing:.14em;text-transform:uppercase;color:var(--gray);font-family:DM Sans,sans-serif;font-size:var(--t-xs);font-weight:600;margin-bottom:.4rem}.site-footer-group{display:flex;flex-direction:column}.site-footer-groups{display:flex;gap:3rem}.site-footer-right{display:flex;flex-direction:column;align-items:flex-end;gap:1.25rem}.site-footer{z-index:1;background:var(--bg);border-top:1px solid var(--mid);padding:2.25rem 3rem;display:block;position:relative}.site-footer-inner{flex-flow:wrap;justify-content:space-between;align-items:flex-start;gap:2rem;max-width:1400px;margin:0 auto;display:flex}.site-footer-logo{letter-spacing:.12em;text-transform:uppercase;color:var(--gray);flex-shrink:0;font-family:DM Sans,sans-serif;font-size:1.35rem;font-weight:500}.site-footer-links{flex-wrap:wrap;gap:.4rem;display:flex;flex-direction:column}.site-footer-links a{letter-spacing:.14em;text-transform:uppercase;color:var(--gray-d);cursor:pointer;font-size:var(--t-sm);transition:color .2s}.site-footer-links a:hover{color:var(--v)}.site-footer-copy{color:var(--gray);letter-spacing:.06em;flex-shrink:0;font-size:.72rem;opacity:.5;text-align:right}.mali-hero-bg{background:radial-gradient(60% 70% at 78% 28%,#e3423452 0%,#e3423400 60%) 50%/100% 100% no-repeat,radial-gradient(55% 55% at 18% 82%,#e3423424 0%,#e3423400 55%) 50%/100% 100% no-repeat,url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='84' height='96' viewBox='0 0 84 96'><path d='M21 0 L63 0 L84 24 L84 72 L63 96 L21 96 L0 72 L0 24 Z M42 24 L63 36 L63 60 L42 72 L21 60 L21 36 Z' fill='none' stroke='rgba(255,255,255,0.07)' stroke-width='1'/></svg>") 50%/84px 96px,radial-gradient(100% 100%,#1c1815 0%,#0a0807 75%,#050403 100%) 50%/100% 100% no-repeat;position:relative;overflow:hidden}.mali-hero-bg:before{content:"";pointer-events:none;z-index:0;background:radial-gradient(circle,#0000 30%,#0000008c 100%);position:absolute;inset:0}.mali-hero-bg:after{content:"";pointer-events:none;mix-blend-mode:screen;z-index:0;background:linear-gradient(115deg,#0000 0% 45%,#e342340f 55%,#0000 70%);position:absolute;inset:0}.mali-hero-bg>img{z-index:1;filter:drop-shadow(0 30px 60px #000000a6)drop-shadow(0 0 40px #e342342e);position:relative}.work-card .work-img.mali-hero-bg>img{padding:8% 12%;object-fit:contain!important}#grain-overlay{pointer-events:none;z-index:9997;opacity:.038;filter:url(#grain-filter);background:#fff;position:fixed;inset:0}.dark-toggle{border:1px solid var(--mid);cursor:none;width:32px;height:32px;color:var(--gray-d);background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;margin-left:1rem;transition:border-color .2s,background .2s;display:flex}.dark-toggle:hover{border-color:var(--v);color:var(--v)}.dark-toggle svg{transition:opacity .2s;display:block}.dark-toggle .icon-moon,[data-theme=dark] .dark-toggle .icon-sun{display:none}[data-theme=dark] .dark-toggle .icon-moon{display:block}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .dark-toggle .icon-sun{display:none}:root:not([data-theme=light]) .dark-toggle .icon-moon{display:block}}[data-theme=dark] .cml-select,[data-theme=dark] .cml-input{color-scheme:dark}[data-theme=dark] #pond-canvas,[data-theme=dark] .pond-page-hero{background:#000000!important}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) #pond-canvas,:root:not([data-theme=light]) .pond-page-hero{background:#000000!important}}#landing-overlay{position:fixed;inset:0;z-index:9990;background:var(--bg);display:flex;align-items:center;justify-content:center;cursor:pointer}.lo-toggle{position:absolute;top:1.4rem;right:1.5rem;cursor:pointer;background:0 0;border:none;padding:.4rem;color:var(--gray);display:flex;align-items:center;z-index:1}#landing-overlay.lo-gone{opacity:0;pointer-events:none;transition:opacity .6s ease}body.lo-active #hero-stack{display:none}.lo-content{display:flex;flex-direction:column;align-items:center;gap:1.5rem;text-align:center;padding:2rem}.lo-greeting{font-family:Bebas Neue,sans-serif;font-size:clamp(2.4rem,5vw,4rem);letter-spacing:.04em;color:var(--black);opacity:0;animation:.7s .1s both nameFade}.lo-portrait{width:120px;height:120px;border-radius:50%;overflow:hidden;border:2px solid var(--mid);flex-shrink:0;opacity:0;animation:.7s .35s both nameFade}.lo-portrait img{width:100%;height:100%;object-fit:cover}.lo-typing-wrap{min-height:1.6rem;opacity:0;animation:.7s .6s both nameFade}.lo-typing-wrap .hero-typing-text{color:var(--black)!important}.lo-typing-wrap .hero-typing-cursor{color:var(--v)!important}.lo-hint{letter-spacing:.18em;text-transform:uppercase;font-size:var(--t-xs);color:var(--gray);white-space:nowrap;opacity:0;animation:.7s 1.6s both nameFade;margin-top:.25rem}.pd-strip-proj-name{color:var(--black);font-family:Bebas Neue,sans-serif;font-size:clamp(2.2rem,5vw,4.5rem);line-height:.88;margin-bottom:.25rem}.home-logo-strip{padding:5rem 3rem 1.5rem;display:flex;align-items:center;justify-content:center;gap:5rem;flex-wrap:wrap}.home-logo-strip img{height:64px;width:auto;max-width:260px;object-fit:contain;filter:grayscale(1) brightness(0) invert(0.55);opacity:1;display:block}.practice-mantra{position:sticky;top:4.2rem;height:calc(55vh - 4.2rem);display:flex;flex-direction:column;align-items:flex-end;justify-content:center;padding:3rem 6rem 3rem 3rem;overflow:hidden;background:var(--bg);z-index:2}.practice-mantra-inner{display:flex;flex-direction:column;align-items:flex-start;text-align:left;gap:2rem;width:66.67%;max-width:none}.works-center-text{position:sticky;top:38vh;text-align:center;font-family:DM Sans,sans-serif;font-size:clamp(3.5rem,7vw,8rem);font-weight:300;letter-spacing:-.03em;line-height:1.05;color:var(--black);z-index:2;pointer-events:none;padding:0 2rem;width:100%}.practice-mantra-body{font-size:var(--t-md);font-weight:300;line-height:1.6;color:var(--gray)}.practice-mantra-ko{font-size:var(--t-md);font-weight:300;line-height:1.6;color:var(--gray);will-change:opacity,transform;transition:opacity .1s linear,transform .1s linear}
.contact-wrap-new{grid-template-columns:1fr 1fr;align-items:start}
.contact-left-new{display:flex;flex-direction:column;gap:2.5rem}
.contact-eyebrow{letter-spacing:.2em;text-transform:uppercase;font-size:var(--t-sm);font-weight:500;color:var(--black);margin-bottom:.6rem}
.contact-form-hl{font-family:Bebas Neue,sans-serif;font-size:clamp(3rem,6vw,5.5rem);line-height:.9;color:var(--black)}
.pf-card{border:1px solid var(--mid);border-radius:12px;padding:2.5rem;display:flex;flex-direction:column;gap:2rem}
.pf-fields{display:flex;flex-direction:column;gap:1rem}
.pf-input,.pf-select,.pf-textarea{width:100%;background:var(--bg);border:1px solid var(--mid);border-radius:6px;color:var(--black);font-family:DM Sans,sans-serif;font-size:var(--t-sm);font-weight:400;padding:.85rem 1rem;transition:border-color .2s;outline:none;-webkit-appearance:none;appearance:none}
.pf-input::placeholder,.pf-textarea::placeholder{color:var(--gray)}
.pf-select{color:var(--gray);cursor:pointer}
.pf-select.filled{color:var(--black)}
.pf-input:focus,.pf-select:focus,.pf-textarea:focus{border-color:var(--black)}
.pf-textarea{resize:none;line-height:1.6}
.pf-submit{display:inline-flex;align-items:center;gap:.8rem;background:none;border:none;padding:0;font-family:DM Sans,sans-serif;font-size:var(--t-base);font-weight:500;color:var(--black);cursor:none;letter-spacing:.04em;transition:color .2s;margin-top:.5rem}
.pf-submit:hover{color:var(--v)}
.pf-submit svg{transition:transform .25s}
.pf-submit:hover svg{transform:translateX(4px)}
.pf-thanks{display:none;font-size:var(--t-sm);letter-spacing:.1em;text-transform:uppercase;color:var(--v);font-weight:500}
.lp-section-break{border-top:1px solid var(--mid);padding:4rem 4% 0;display:flex;align-items:baseline;gap:1.2rem;margin-top:0}.lp-section-break-num{font-size:var(--t-xs);font-family:DM Sans,sans-serif;letter-spacing:.2em;text-transform:uppercase;color:var(--gray);opacity:.4}.lp-section-break-name{font-family:'Bebas Neue',sans-serif;font-size:clamp(2rem,4vw,3.5rem);letter-spacing:.03em;color:var(--black);line-height:1}
/* ── Practice eyebrow desktop positioning ── */
@media (width>=769px){#page-home .practice-eyebrow{position:absolute!important;top:11.5rem!important;left:0!important;width:29rem!important;text-align:center!important}}
/* ── Home contact card ── */
.home-contact-card{margin:0 calc(8.5vw + 1rem) 1.5rem;height:63vh;border-radius:28px;overflow:hidden;cursor:none;background:#0d0b09;display:flex;flex-direction:column}
:root[data-theme=dark] .home-contact-card{background:#f0ece8}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .home-contact-card{background:#f0ece8}}
.contact-card-header{display:flex;align-items:flex-start;justify-content:space-between;padding:2.25rem 2.5rem 1.25rem;flex-shrink:0}
.contact-card-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:rgba(255,255,255,0.38);font-size:var(--t-xs);font-weight:500;margin-bottom:.4rem}
:root[data-theme=dark] .contact-card-eyebrow{color:rgba(0,0,0,0.38)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .contact-card-eyebrow{color:rgba(0,0,0,0.38)}}
.contact-card-title{font-family:Bebas Neue,sans-serif;font-size:clamp(2.8rem,5vw,5.5rem);line-height:.9;color:#fff;letter-spacing:.02em;transition:letter-spacing .3s,color .2s}
:root[data-theme=dark] .contact-card-title{color:#0a0806}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .contact-card-title{color:#0a0806}}
.home-contact-card:hover .contact-card-title{letter-spacing:.05em;color:var(--v)}
.contact-card-arrow{font-size:var(--t-lg);color:rgba(255,255,255,0.2);line-height:1;flex-shrink:0;transition:color .2s,transform .2s}
:root[data-theme=dark] .contact-card-arrow{color:rgba(0,0,0,0.2)}
@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .contact-card-arrow{color:rgba(0,0,0,0.2)}}
.home-contact-card:hover .contact-card-arrow{color:var(--v);transform:translate(3px,-3px)}
/* ── Contact card pond canvas ── */
#contact-pond-canvas{flex:1;width:100%;display:block;border-radius:0 0 28px 28px}
.contact-carousel-item{flex-shrink:0;width:calc((80vw - 2rem - 3 * .75rem) / 4);height:63vh;border-radius:14px;overflow:hidden;position:relative;box-shadow:0 6px 28px rgba(0,0,0,0.13);cursor:none}
.contact-carousel-item img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(0.16,1,0.3,1)}
.contact-carousel-item:hover img{transform:scale(1.04)}
.cc-label{position:absolute;bottom:0;left:0;right:0;padding:.7rem 1rem .85rem;background:linear-gradient(to top,rgba(0,0,0,0.65) 0%,transparent 100%);color:#fff;font-size:var(--t-xs);font-weight:500;letter-spacing:.06em;text-transform:uppercase}
@media(width<=768px){.home-contact-card{margin:0 .75rem 1rem;height:50vh;border-radius:18px}.contact-card-header{padding:1.75rem 1.5rem 1rem}}
.proj-tile--soon{cursor:default!important;pointer-events:none!important}.proj-tile-soon-overlay{position:absolute;inset:0;z-index:4;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);background:rgba(255,255,255,0.18);display:flex;align-items:center;justify-content:center}.proj-tile-soon-label{letter-spacing:.22em;text-transform:uppercase;color:var(--black);font-size:var(--t-xs);font-weight:600;background:rgba(255,255,255,0.75);border:1px solid rgba(0,0,0,0.12);padding:.45rem 1.1rem;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px)}[data-theme=dark] .proj-tile-soon-overlay{background:rgba(0,0,0,0.25)}[data-theme=dark] .proj-tile-soon-label{background:rgba(30,28,26,0.8);border-color:rgba(255,255,255,0.14);color:var(--black)}
.work-page-header{padding:7rem 3rem 2.5rem}.work-page-eyebrow{letter-spacing:.2em;text-transform:uppercase;color:var(--gray);font-size:14px;font-weight:500;margin-bottom:.75rem}.work-page-title{font-family:DM Sans,sans-serif;font-size:clamp(1.6rem,2.8vw,3.2rem);line-height:1;letter-spacing:-.02em;color:var(--black);font-weight:300}.about-scroll-zone{position:relative;height:180vh;margin-top:-30px}.sc-char{display:inline}.sc-hidden{opacity:0}.sc-revealed{opacity:1;transition:opacity .35s ease}.hm-marquee-row{padding:1.6rem 2.4rem;position:relative}.hm-marquee-row.hm-marquee-single::after{content:"";position:absolute;bottom:0;left:10%;width:80%;height:1px;background:var(--mid)}.hm-marquee-track{display:flex;align-items:center;justify-content:center;gap:clamp(.6rem,2.4vw,3.2rem);flex-wrap:nowrap;overflow:hidden}.hm-marquee-track img{height:35px;width:auto;max-width:clamp(44px,6vw,112px);object-fit:contain;display:block;filter:none;opacity:1;flex-shrink:1}.hm-marquee-track img.hm-logo-warm{filter:none}[data-theme=dark] .hm-marquee-track img{filter:grayscale(1) brightness(0) invert(0.55)}[data-theme=dark] .hm-marquee-track img.hm-logo-warm{filter:grayscale(1) brightness(0.6)}@media(prefers-color-scheme:dark){:root:not([data-theme=light]) .hm-marquee-track img{filter:grayscale(1) brightness(0) invert(0.55)}:root:not([data-theme=light]) .hm-marquee-track img.hm-logo-warm{filter:grayscale(1) brightness(0.6)}}
.hm-stats-bar{width:56vw;margin:0 auto;display:flex;align-items:flex-start;justify-content:space-between;padding:4.5rem 0 2rem;position:relative;z-index:10}
.hm-stat{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;flex:1;min-width:0}
.hm-stat-label{font-family:DM Sans,sans-serif;letter-spacing:.18em;text-transform:uppercase;color:var(--gray);font-size:var(--t-xs);font-weight:500;white-space:nowrap}
.hm-stat-num{font-family:Bebas Neue,sans-serif;font-size:clamp(4.3rem,7.2vw,9.4rem);line-height:.88;color:var(--black);letter-spacing:.01em;white-space:nowrap}
.hm-stat-unit{font-size:.6em;vertical-align:baseline}
.hm-stat-div{width:1px;background:var(--mid);flex-shrink:0;align-self:stretch;margin:0 2rem}
@media(width<=768px){.hm-stats-bar{width:92vw;padding:.75rem 0 1rem}.hm-stat-div{margin:0 .5rem}.hm-stat-num{font-size:clamp(2rem,9vw,3.5rem)}}/* ── Home stats bar ── */

/* ── Work page card grid (desktop) ────────────────────── */
@media (width > 768px) {
  /* Match home page background */
  #page-work { background: var(--bg) !important; }

  .work-page-header { padding: 5rem 2.5rem 1.5rem; }
  .work-page-eyebrow { color: var(--gray) !important; }
  .work-page-title   { color: var(--black) !important; }

  /* 4-col card grid */
  .projects-grid {
    display: grid !important;
    grid-template-columns: repeat(4, 1fr) !important;
    gap: 0.75rem !important;
    padding: 0 2.5rem 3rem !important;
    grid-template-rows: unset !important;
  }

  /* Card shell */
  .proj-tile {
    height: auto !important;
    min-height: unset !important;
    aspect-ratio: 4 / 3 !important;
    border-radius: 10px !important;
    flex-direction: column !important;
    background: #1c1916 !important;
    overflow: hidden !important;
    display: flex !important;
    position: relative !important;
    transition: transform 0.22s cubic-bezier(0.16,1,0.3,1), box-shadow 0.22s !important;
  }

  .proj-tile:hover {
    transform: translateY(-3px) !important;
    box-shadow: 0 12px 40px rgba(0,0,0,0.55) !important;
  }

  /* Gradient hover overlay — keep but tweak opacity */
  .proj-tile:after {
    display: block !important;
    opacity: 0;
    background: linear-gradient(#0000 30%, rgba(0,0,0,0.45) 100%) !important;
    transition: opacity 0.3s !important;
    position: absolute !important;
    inset: 0 !important;
    pointer-events: none !important;
  }
  .proj-tile:hover:after { opacity: 1 !important; }

  /* Image fills the entire card */
  .proj-tile-img {
    width: 100% !important;
    height: 100% !important;
    aspect-ratio: unset !important;
    flex-shrink: 0 !important;
    overflow: hidden !important;
    position: absolute !important;
    inset: 0 !important;
    display: block !important;
  }

  .proj-tile-img img {
    width: 100% !important;
    height: 100% !important;
    object-fit: cover !important;
    display: block !important;
    position: absolute !important;
    inset: 0 !important;
    transition: transform 0.55s cubic-bezier(0.16,1,0.3,1) !important;
  }

  .proj-tile:hover .proj-tile-img img { transform: scale(1.05) !important; }

  /* Frosted glass label overlaid at bottom of card */
  .proj-tile-label {
    position: absolute !important;
    bottom: 0 !important;
    left: 0 !important;
    right: 0 !important;
    top: unset !important;
    flex-direction: column !important;
    align-items: flex-start !important;
    gap: 0.3rem !important;
    padding: 1rem 1.25rem 1.25rem !important;
    border-top: 1px solid rgba(255,255,255,0.08) !important;
    background: rgba(14,12,10,0.52) !important;
    backdrop-filter: blur(14px) !important;
    -webkit-backdrop-filter: blur(14px) !important;
    display: flex !important;
    flex: unset !important;
    z-index: 2 !important;
  }

  .proj-tile-name {
    color: #fff !important;
    font-family: Bebas Neue, sans-serif !important;
    font-size: clamp(1.3rem, 1.9vw, 2.2rem) !important;
    line-height: 1 !important;
    letter-spacing: 0.03em !important;
    transition: color 0.2s !important;
  }

  .proj-tile:hover .proj-tile-name { color: var(--v) !important; }

  /* Product type — sits directly below the name */
  .proj-tile-tag {
    order: 1 !important;
    position: static !important;
    top: unset !important; right: unset !important;
    bottom: unset !important; left: unset !important;
    align-self: flex-start !important;
    background: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
    border: 1px solid rgba(255,255,255,0.18) !important;
    color: rgba(255,255,255,0.55) !important;
    font-size: 0.62rem !important;
    letter-spacing: 0.12em !important;
    text-transform: uppercase !important;
    padding: 0.22rem 0.55rem !important;
    border-radius: 3px !important;
    z-index: unset !important;
    transition: border-color 0.2s, color 0.2s !important;
  }

  .proj-tile:hover .proj-tile-tag {
    border-color: var(--v) !important;
    color: var(--v) !important;
  }


  /* Services — pushed to bottom of label area */
  .proj-tile-blurb {
    order: 2 !important;
    margin-top: auto !important;
    color: rgba(255,255,255,0.3) !important;
    font-size: 0.68rem !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
    display: block !important;
    padding-top: 0.5rem !important;
  }
}
/* ── Selected Works: scroll-driven parallax ── */
.works-tagline-ribbon{height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg);position:relative;z-index:1}.works-tagline-text{font-family:DM Sans,sans-serif;font-size:clamp(3.15rem,6.3vw,7.2rem);font-weight:300;letter-spacing:-.03em;line-height:1.05;color:var(--black);text-align:center}.works-section{background:transparent;position:relative;height:160vh;overflow:visible;margin-top:-160vh;pointer-events:none;z-index:5}
.works-stmt-sticky{position:sticky;top:0;height:100vh;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:10;pointer-events:none;text-align:center}
.works-stmt-eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--gray);font-size:var(--t-xs);font-weight:500;margin-bottom:.9rem}
.works-stmt-hl{font-family:DM Sans,sans-serif;font-size:clamp(2.2rem,4.5vw,5.5rem);color:var(--black);font-weight:300;line-height:1.05;letter-spacing:-.03em;margin-bottom:2rem}
.works-stmt-sticky .section-link{pointer-events:all;color:var(--gray)}
.works-stmt-sticky .section-link:hover{color:var(--v);opacity:1}
.works-stmt-sticky .section-link-line{background:var(--mid,rgba(0,0,0,0.2))}
.works-tile{position:absolute;border-radius:14px;overflow:hidden;box-shadow:0 8px 40px rgba(0,0,0,.18);cursor:pointer;opacity:0;will-change:transform;transition:opacity .8s ease;user-select:none;-webkit-user-select:none;pointer-events:all}
.works-tile.wt-in{opacity:1}
.works-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s cubic-bezier(.16,1,.3,1)}
.works-tile:hover img{transform:scale(1.04)}

/* ── Mobile: home works + practice sections ── */
@media (width<=768px){
  /* Un-hide these sections */
  #page-home .works-section,
  #page-home .practice-section { display:block !important; }

  /* Works tagline ribbon — 75% height */
  .works-tagline-ribbon {
    height:75vh !important;
  }

/* Works section: 75% height + matching negative margin */
  #page-home .works-section {
    height:120vh !important;
    margin-top:-120vh !important;
    overflow:visible !important;
    pointer-events:all !important;
  }

  /* Tiles — slightly larger on mobile, no overlaps */
  .works-tile {
    width:18vw !important;
  }
  /* Hide 4 even tiles, show 2, 4, 6 to add back 3 */
  #works-parallax-section .works-tile:nth-child(8),
  #works-parallax-section .works-tile:nth-child(10),
  #works-parallax-section .works-tile:nth-child(12),
  #works-parallax-section .works-tile:nth-child(14) {
    display:none !important;
  }

  /* Spread tiles around the tagline — clear the center so text breathes */
  #works-parallax-section .works-tile:nth-child(1)  { top:70% !important; }
  #works-parallax-section .works-tile:nth-child(2)  { top:95% !important; }
  #works-parallax-section .works-tile:nth-child(3)  { top:112% !important; }
  #works-parallax-section .works-tile:nth-child(4)  { top:76% !important; }
  #works-parallax-section .works-tile:nth-child(5)  { top:84% !important; }
  #works-parallax-section .works-tile:nth-child(6)  { top:96% !important; }
  #works-parallax-section .works-tile:nth-child(7)  { top:72% !important; }
  #works-parallax-section .works-tile:nth-child(9)  { top:112% !important; }
  #works-parallax-section .works-tile:nth-child(11) { top:106% !important; }
  #works-parallax-section .works-tile:nth-child(13) { top:88% !important; }

  /* Practice section — mobile reflow */
  #page-home .practice-section { padding-top:2rem !important; }

  .practice-section {
    padding:3rem 1.25rem 4rem !important;
    --name-w:0px !important;
  }
  .practice-eyebrow {
    position:relative !important;
    top:auto !important;
    left:auto !important;
    transform:none !important;
    margin-bottom:2rem !important;
    display:block !important;
  }
  .practice-list {
    padding-left:0 !important;
    grid-column:unset !important;
  }
  .practice-item {
    display:flex !important;
    flex-direction:column !important;
    gap:0 !important;
    padding:1.5rem 0 2rem !important;
    grid-template-columns:unset !important;
    column-gap:unset !important;
  }
  .practice-item::before {
    left:0 !important;
    right:0 !important;
  }
  .practice-name {
    font-size:clamp(2rem,8vw,3rem) !important;
    padding-left:0 !important;
    grid-column:unset !important;
    grid-row:unset !important;
    margin-bottom:.6rem !important;
  }
  .practice-detail-a,
  .practice-detail-b {
    display:block !important;
    grid-column:unset !important;
    grid-row:unset !important;
    list-style:none !important;
    padding:0 !important;
    margin:0 !important;
  }
  .practice-detail-a li,
  .practice-detail-b li {
    display:list-item !important;
    visibility:visible !important;
    opacity:1 !important;
  }

  /* Practice mantra — let it size to content */
  .practice-mantra {
    position:relative !important;
    top:auto !important;
    height:auto !important;
    min-height:unset !important;
    overflow:visible !important;
    padding:2rem 1.25rem !important;
  }
  .practice-mantra-inner {
    width:100% !important;
    max-width:100% !important;
  }

  /* Mantra text — scale down to fit */
  .practice-mantra-ko,
  .practice-mantra-body {
    font-size:.95rem !important;
    line-height:1.55 !important;
  }

  /* Collapse the scroll zone height so it doesn't leave a gap on mobile */
  .about-scroll-zone {
    height:auto !important;
    margin-top:0 !important;
    padding-bottom:2rem !important;
  }

  /* Site footer — mobile dark layout */
  .site-footer { background:#0a0807 !important; border-top-color:#ffffff14 !important; padding:2.5rem 1.5rem !important; }
  .site-footer-inner { flex-direction:row !important; flex-wrap:wrap !important; align-items:flex-start !important; gap:2rem !important; }
  .site-footer-logo { width:100% !important; }
  .site-footer-right { flex-direction:row !important; flex-wrap:wrap !important; align-items:flex-start !important; gap:2rem !important; width:100% !important; }
  .site-footer-groups { flex-direction:row !important; flex-wrap:wrap !important; width:100% !important; gap:2rem !important; }
  .site-footer-copy { width:100% !important; margin-top:0; text-align:left !important; }
  .site-footer-group { flex:1 !important; display:flex !important; flex-direction:column !important; gap:.5rem !important; }
  .site-footer-label { display:block !important; letter-spacing:.2em; text-transform:uppercase; color:#fff !important; font-family:DM Sans,sans-serif; font-size:var(--t-xs); font-weight:700; margin-bottom:.2rem; }
  .site-footer-logo { color:rgba(255,255,255,.3) !important; }
  .site-footer-links { flex-direction:column !important; gap:.3rem !important; }
  .site-footer-links a { color:rgba(255,255,255,.72) !important; font-family:DM Sans,sans-serif; font-size:var(--t-sm) !important; font-weight:400; line-height:1.8 !important; letter-spacing:.01em; }
  .site-footer-contact-info { flex-direction:column !important; align-items:flex-start !important; gap:.3rem !important; }
  .site-footer-contact-link { color:rgba(255,255,255,.72) !important; font-family:DM Sans,sans-serif; font-size:var(--t-sm) !important; font-weight:400; line-height:1.8 !important; text-align:left !important; }
  .site-footer-copy { color:rgba(255,255,255,.22) !important; margin-top:.5rem; }

  /* Hide the static home-footer nav bar (NAVIGATE / STAY IN TOUCH) on mobile */
  .home-footer {
    display:none !important;
  }

  /* Web practice item — hidden until launch. To re-enable: remove this rule and the practice-item--web class from index.html */
  .practice-item--web {
    display:none !important;
  }
}
