@font-face{font-family:Portfolio;src:url('assets/condensed.woff') format('woff');font-display:swap}*{box-sizing:border-box}html,body{height:100%;margin:0;background:#fff;color:#171717}body{font-family:Portfolio,'Arial Narrow',Arial,sans-serif}button,input,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a{color:inherit}button{cursor:pointer}.sidebar{position:fixed;inset:0 auto 0 0;width:255px;background:white;z-index:20;padding:44px 30px 26px 38px;display:flex;flex-direction:column}.logo{display:block;margin:0 -8px 65px -10px}.logo img{display:block;width:100%;height:auto}.sidebar nav{display:flex;flex-direction:column;align-items:flex-start;gap:19px}.sidebar nav a{font-size:18px;text-decoration:none;color:#7a7a7a;line-height:1.15;position:relative}.sidebar nav a:hover,.sidebar nav a.active{color:#111}.sidebar nav a.active:before{content:'';position:absolute;left:-15px;top:7px;width:4px;height:4px;border-radius:50%;background:#398920}.sidebar-bottom{margin-top:auto;padding-top:30px;font-size:11px;line-height:1.6;color:#777}.sidebar-bottom button{padding:0;border:0;background:none;color:#333;font-size:11px;border-bottom:1px solid #ccc}.copyright{margin-top:25px;color:#999;font-size:10px}.mobile-header{display:none}#canvas{margin-left:255px;height:100svh;outline:none}.gallery-shell{height:100%;position:relative;display:flex;flex-direction:column;padding:26px 28px 0 0}.gallery-top{display:flex;justify-content:space-between;align-items:center;height:40px;flex-shrink:0;margin-bottom:12px;font-size:11px;letter-spacing:.06em;color:#777}.gallery-top h1{font-size:12px;font-weight:400;margin:0;color:#222}.arrows{display:flex;gap:10px;align-items:center}.arrows button{background:none;border:1px solid #ddd;width:35px;height:29px;font-family:Arial;font-size:18px}.arrows button:disabled{color:#bbb;cursor:default}.track{display:flex;gap:16px;overflow-x:auto;overflow-y:hidden;flex:1;min-height:0;scroll-snap-type:x mandatory;overscroll-behavior-x:contain;scrollbar-width:thin;scrollbar-color:#bdbdbd #f8f8f8;padding-bottom:9px}.project{flex:0 0 min(67vw,820px);height:100%;scroll-snap-align:start;display:flex;flex-direction:column;min-width:0}.visual{flex:1;min-height:0;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#f5f4f1}.visual img{display:block;max-width:85%;max-height:75%;object-fit:contain;transition:transform .6s}.project a.visual:hover img{transform:scale(1.025)}.project a.visual{text-decoration:none}.project-info{height:83px;flex-shrink:0;display:flex;justify-content:space-between;align-items:center;gap:20px;padding:10px 4px}.project-info h2{font-weight:400;font-size:19px;margin:0 0 4px}.project-info p{font:10px Arial,sans-serif;color:#888;margin:0}.project-info>a{font-size:12px;text-decoration:none;border-bottom:1px solid #aaa;padding-bottom:4px;white-space:nowrap}.project-index{font:10px Arial;position:absolute;left:22px;top:21px;color:#777;z-index:2;letter-spacing:.1em}.gallery-footer{height:29px;flex-shrink:0;display:flex;align-items:center;justify-content:space-between;font:9px Arial;color:#999}.muse{background:#eceae7;display:grid;grid-template-columns:1fr 1fr;gap:9px;padding:12px}.muse img{height:100%;width:100%;max-width:none;max-height:none;object-fit:cover;min-height:0}.muse img:first-child{object-position:50% 35%}.visual.conants img{width:100%;height:100%;max-width:none;max-height:none;object-fit:cover}.conants .project-index,.rockfleet .project-index{color:#eee;text-shadow:0 1px 4px #111}.rockfleet{background:#003529}.rockfleet img{width:78%}.ours{background:#17482f}.ours img{max-width:70%;max-height:72%}.limitless{background:#f0edfa}.siw{background:#f4f7f8}.care{background:#d9dfe3}.marni{background:#edece4}.marni img{width:100%;height:100%;max-height:none;max-width:none;object-fit:cover}.knox{background:#f0f5f9;flex-direction:column;gap:35px;text-align:center;padding:40px}.knox img{max-height:24%;width:100px}.knox strong{font:400 clamp(26px,3vw,50px)/1.1 Georgia,serif;max-width:470px;color:#254b62}.knox span{font:10px Arial;letter-spacing:.15em;color:#647e8a}.info-page{height:100%;overflow:auto;padding:10vh clamp(30px,6vw,100px);max-width:1200px}.kicker{font:10px Arial,sans-serif;color:#888;letter-spacing:.15em;text-transform:uppercase}.info-page h1{font-weight:400;font-size:clamp(40px,5vw,76px);line-height:1.05;margin:28px 0 35px}.info-page p{max-width:650px;line-height:1.7;font-size:19px;color:#555}.info-page .kicker{font-size:10px}.studio-logo{max-width:600px;width:100%;margin:30px 0 60px}.service-list{border-top:1px solid #ddd;max-width:650px;margin-top:40px}.service-list div{padding:20px 0;border-bottom:1px solid #ddd;font-size:20px}.service-list span{font:10px Arial;color:#aaa;margin-right:25px}.text-link{display:inline-block;font-size:18px;margin:20px 0;text-underline-offset:8px}.motion-page{height:100%;display:flex;flex-direction:column;padding:40px 35px 35px 0}.motion-page .kicker{margin-bottom:20px}.motion-screen{flex:1;min-height:0;background:#fafafa;display:flex;align-items:center;justify-content:center}.motion-screen video{width:100%;max-height:100%;object-fit:contain}.motion-description{display:flex;justify-content:space-between;align-items:center;padding-top:24px}.motion-description h1{font-size:20px;font-weight:400;margin:0 0 5px}.motion-description p{font:10px Arial;color:#888}.motion-description button{border:1px solid #bbb;background:white;padding:11px 20px}.graphics-logo{background:#fff;border:1px solid #eee}.graphics-caption{position:absolute;bottom:25px;left:25px;font:10px Arial;color:#777}.contact-form{max-width:650px;margin-top:40px}.contact-form label{display:block;font-size:14px;margin-top:24px}.contact-form input,.contact-form textarea{display:block;width:100%;margin-top:8px;border:0;border-bottom:1px solid #bbb;padding:10px 0;font-family:Arial,sans-serif;font-size:14px;background:#fff;border-radius:0}.contact-form button{margin-top:25px;border:1px solid #222;background:#222;color:#fff;padding:14px 26px}.contact-form .status{font:11px/1.6 Arial;color:#777}.opening{position:fixed;inset:0;background:white;z-index:100;display:flex;align-items:center;justify-content:center}.opening[hidden]{display:none}.opening video{width:min(1050px,85vw)}.opening button{position:absolute;right:35px;top:30px;background:none;border:0;border-bottom:1px solid #aaa;font-size:12px;padding:4px 0}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid #429420;outline-offset:5px}@media(min-width:1600px){.sidebar{width:300px;padding-left:60px;padding-right:40px}#canvas{margin-left:300px}.logo{margin-bottom:85px}.sidebar nav{gap:24px}.sidebar nav a{font-size:21px}}@media(max-width:760px){.sidebar{display:none;top:92px;width:100%;padding:30px 35px}.sidebar.open{display:flex}.sidebar .logo{display:none}.sidebar nav{gap:25px}.sidebar nav a{font-size:25px}.sidebar-bottom{font-size:13px}.mobile-header{height:92px;position:fixed;inset:0 0 auto;z-index:30;background:white;display:flex;align-items:center;justify-content:space-between;padding:12px 22px;border-bottom:1px solid #eee}.mobile-header img{width:170px;display:block}.mobile-header button{background:none;border:0;width:30px;display:flex;flex-direction:column;gap:5px;padding:0}.mobile-header button span{height:1px;width:27px;background:#111}#canvas{margin:92px 0 0;height:calc(100svh - 92px)}.gallery-shell{padding:15px 12px 0}.gallery-top{height:30px;font-size:10px}.project{flex-basis:88vw}.project-info{height:85px;gap:10px}.project-info h2{font-size:17px}.project-info p{font-size:9px;line-height:1.4;max-width:200px}.project-info>a{font-size:11px}.muse{padding:7px;gap:6px}.muse img:nth-child(2){display:none}.muse{grid-template-columns:1fr}.gallery-footer{font-size:8px}.gallery-footer span:last-child{display:none}.visual img{max-width:88%}.info-page{padding:45px 26px}.info-page p{font-size:17px}.motion-page{padding:25px 16px}.motion-description{align-items:flex-start;gap:10px}.motion-description h1{font-size:17px}.motion-description button{font-size:13px;white-space:nowrap}.knox{padding:20px;gap:25px}.knox strong{font-size:29px}.opening video{width:94vw}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Website gallery: supplied screenshots shown in full. */
.project{flex-basis:min(78vw,1100px)}.visual.screenshot{display:flex;flex-direction:row;background:#f6f6f6;padding:14px;gap:0}.visual.screenshot img,.visual.screenshot.conants img,.visual.screenshot.marni img{display:block;width:100%;height:100%;max-width:100%;max-height:100%;object-fit:contain;object-position:center}.visual.screenshot .project-index{display:none}.project a.visual.screenshot:hover img{transform:none}@media(max-width:760px){.project{flex-basis:90vw}.visual.screenshot{padding:5px}.visual.screenshot img:nth-child(1){display:block}}
/* Graphic arts — a moving collection, framed with restraint. */
.graphics-page{height:100%;overflow:auto;padding:45px 35px 55px 12px;scrollbar-width:thin;scrollbar-color:#aaa #fafafa;container-type:inline-size}.graphics-heading{display:flex;justify-content:space-between;gap:25px;align-items:flex-end;padding:0 0 38px}.graphics-heading .kicker{margin:0 0 22px;font-size:9px}.graphics-heading h1{font-size:clamp(37px,4.1vw,66px);line-height:1.02;letter-spacing:-1.5px;font-weight:400;margin:0}.graphics-heading h1 em{font-family:Georgia,serif;font-weight:400;font-size:.82em;color:#626862}.graphics-heading-note{padding-bottom:3px}.graphics-heading-note p{font-size:12px;line-height:1.55;color:#777}.graphics-heading-note button{background:none;border:0;border-bottom:1px solid #aaa;padding:8px 0;font-size:11px}.graphics-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;border-top:1px solid #e9e9e9;border-bottom:1px solid #e9e9e9;padding:18px 0;margin-bottom:28px}.graphic-filters{display:flex;gap:22px;flex-wrap:wrap}.graphic-filters button{border:0;background:none;color:#8a8a8a;font-size:13px;padding:4px 0}.graphic-filters button.selected{color:#111;box-shadow:0 1px #458533}.graphics-toolbar>span{font:10px Arial;color:#999;white-space:nowrap}.graphics-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:35px 19px}.graphic-card{display:block;text-align:left;border:0;padding:0;background:none;color:inherit;min-width:0;opacity:0;transform:translateY(24px);transition:opacity .65s,transform .65s}.graphic-card[hidden]{display:none}.graphic-card.revealed{opacity:1;transform:translateY(0)}.graphic-mat{aspect-ratio:1/1.04;position:relative;padding:22px;display:flex;align-items:center;justify-content:center;background:#f4f4f1;overflow:hidden;transform:perspective(1000px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .25s ease,background .4s ease;isolation:isolate}.graphic-card:nth-child(4n+2) .graphic-mat{background:#f0f1f3}.graphic-card:nth-child(4n+3) .graphic-mat{background:#f6f3ef}.graphic-mat::before{content:'';position:absolute;inset:-90%;background:linear-gradient(115deg,transparent 40%,#fff7 50%,transparent 60%);transform:translateX(-60%);transition:transform .9s;z-index:1;pointer-events:none}.graphic-card:hover .graphic-mat::before{transform:translateX(60%)}.graphic-mat img{width:100%;height:100%;min-height:0;object-fit:contain;filter:drop-shadow(0 6px 10px #0000000b);animation:artFloat 7s var(--delay) ease-in-out infinite;transition:filter .4s}.graphic-card:nth-child(even) .graphic-mat img{animation-direction:reverse}.graphic-card:hover .graphic-mat img{filter:drop-shadow(0 12px 16px #00000016)}.graphic-open{position:absolute;right:14px;bottom:14px;width:30px;height:30px;background:#fffe;border-radius:50%;display:grid;place-items:center;font:18px Arial;opacity:0;transform:translate(-5px,5px);transition:opacity .25s,transform .25s;z-index:2}.graphic-card:hover .graphic-open,.graphic-card:focus-visible .graphic-open{opacity:1;transform:none}.graphic-label{display:flex;justify-content:space-between;gap:10px;padding:15px 1px 0}.graphic-label h2{font-size:16px;font-weight:400;margin:0 0 5px}.graphic-label p{font:9px Arial;color:#999;margin:0;line-height:1.5}.graphic-label>span{font:9px Arial;color:#aaa;padding-top:4px}.graphics-end{margin-top:65px;padding-top:25px;border-top:1px solid #ddd;display:flex;justify-content:space-between;gap:20px}.graphics-end p{font-size:14px;margin:0;color:#777}.graphics-end a{font-size:13px;text-decoration:none;border-bottom:1px solid #888}.motion-paused .graphic-mat img{animation-play-state:paused}.motion-paused .graphic-mat{transform:none!important}.motion-paused .graphic-card{transition:none}.motion-paused .graphic-mat::before{display:none}.art-viewer{position:fixed;inset:0;border:0;padding:25px 35px;width:96vw;max-width:1500px;height:94svh;max-height:94svh;background:#f9f9f7;color:#111;overflow:hidden}.art-viewer[open]{display:flex;flex-direction:column}.art-viewer::backdrop{background:#101412d9;backdrop-filter:blur(10px)}.viewer-top,.viewer-bottom{display:flex;align-items:center;justify-content:space-between;gap:20px;flex-shrink:0;font-size:13px}.viewer-top p{margin:0}.viewer-top button,.viewer-bottom button{background:none;border:0;padding:13px 0;font-size:13px}.viewer-bottom{padding-top:10px}.viewer-bottom span{font:10px Arial;color:#888}.viewer-image{flex:1;min-height:0;display:flex;align-items:center;justify-content:center;padding:22px}.viewer-image img{width:100%;height:100%;object-fit:contain}.viewer-image::selection{background:transparent}@keyframes artFloat{0%,100%{transform:translateY(3px)}50%{transform:translateY(-3px)}}@media(min-width:1600px){.graphics-page{padding-right:50px;padding-left:22px}.graphics-grid{gap:42px 25px}.graphic-mat{padding:30px}}@media(max-width:1100px){.graphics-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.graphics-heading-note p{display:none}.graphics-heading{align-items:center}.graphic-filters{gap:16px}}@media(max-width:760px){.graphics-page{padding:30px 17px 45px}.graphics-heading{padding-bottom:28px;align-items:flex-end}.graphics-heading h1{font-size:36px}.graphics-heading .kicker{font-size:8px;letter-spacing:.1em}.graphics-heading-note button{font-size:10px;white-space:nowrap}.graphics-toolbar{align-items:flex-start;padding:13px 0;margin-bottom:22px}.graphic-filters{gap:10px 15px}.graphic-filters button{font-size:12px}.graphics-toolbar>span{font-size:9px;padding-top:7px}.graphics-grid{gap:26px 12px}.graphic-mat{padding:10px;aspect-ratio:1/1.15}.graphic-label h2{font-size:14px}.graphic-label p{font-size:8px}.graphic-label>span{display:none}.graphic-open{width:23px;height:23px;right:7px;bottom:7px;font-size:14px;opacity:1;transform:none}.graphics-end{flex-direction:column;margin-top:40px;align-items:flex-start}.art-viewer{width:96vw;padding:15px;height:91svh}.viewer-top{font-size:12px}.viewer-image{padding:15px 0}.viewer-bottom button{font-size:12px}}@media(max-width:380px){.graphics-heading{display:block}.graphics-heading-note{margin-top:12px}.graphics-heading h1{font-size:34px}}@media(prefers-reduced-motion:reduce){.graphic-card{opacity:1;transform:none}.graphic-mat img{animation:none}.graphic-mat{transform:none!important}.graphic-mat::before{display:none}}

/* Browser-compatible opening film and explicit autoplay fallback. */
.opening{opacity:1;transition:opacity .4s ease}.opening.leaving{opacity:0;pointer-events:none}.opening video{display:block;width:min(1200px,94vw);height:auto;max-height:85svh;object-fit:contain}.opening-fallback{position:absolute;left:50%;bottom:12%;transform:translateX(-50%);text-align:center;width:min(90vw,460px);background:#fffffff0;padding:18px}.opening-fallback[hidden]{display:none}.opening-fallback p{font-size:13px;line-height:1.5;color:#666;margin:0 0 14px}.opening .opening-fallback button{position:static;display:inline-block;background:#171717;color:#fff;border:0;padding:13px 24px;font-size:14px}.opening #skipIntro{z-index:2;padding:9px 0}.opening[hidden]{display:none}@media(prefers-reduced-motion:reduce){.opening{transition:none}}

/* MUSE-style directional controls for the website portfolio. */
.website-gallery .project{flex:0 0 100%;scroll-snap-align:start}.website-gallery .gallery-top #position{font:10px Arial,sans-serif;letter-spacing:.08em;color:#888}.gallery-arrow{position:absolute;z-index:5;top:calc(50% - 30px);display:grid;place-items:center;width:44px;height:72px;padding:0;border:1px solid #e2e2e2;background:#fffffff0;color:#111;box-shadow:0 3px 15px #0000000d;transition:background .2s,color .2s,box-shadow .2s}.gallery-arrow span{font:300 43px/1 Arial,sans-serif;transform:translateY(-2px)}.gallery-arrow-left{left:12px}.gallery-arrow-right{right:40px}.gallery-arrow:hover:not(:disabled){background:#111;color:#fff;box-shadow:0 4px 18px #0002}.gallery-arrow:disabled{color:#bbb;background:#ffffffb8;cursor:default;box-shadow:none}.website-gallery .visual.screenshot{padding:20px 54px}@media(max-width:760px){.gallery-arrow{width:34px;height:58px;top:calc(50% - 25px)}.gallery-arrow span{font-size:34px}.gallery-arrow-left{left:16px}.gallery-arrow-right{right:16px}.website-gallery .visual.screenshot{padding:8px 12px}.website-gallery .gallery-footer{font-size:8px}}
/* Project inquiry */
.inquiry-page{max-width:1100px}.inquiry-page h1{margin-bottom:22px}.inquiry-page .inquiry-lead{font-size:20px;max-width:600px}.inquiry-page .form-meta{font:11px/1.6 Arial;color:#888}.project-inquiry{margin-top:30px;max-width:700px;padding-bottom:45px}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:26px}.project-inquiry label{font-size:15px;line-height:1.5}.project-inquiry input,.project-inquiry textarea,.project-inquiry select{font:14px/1.5 Arial,sans-serif;color:#222;background:#fafaf8;border:1px solid #ddd;padding:12px;width:100%;margin-top:8px}.project-inquiry textarea{resize:vertical}.project-inquiry select{min-height:47px;border-radius:0}.service-choices{border:0;padding:0;margin:30px 0 5px}.service-choices legend{font-size:15px}.project-inquiry .field-hint{font:11px Arial;color:#888;margin:8px 0 12px}.service-options{display:flex;flex-wrap:wrap;gap:9px}.project-inquiry .service-option{position:relative;margin:0;cursor:pointer}.service-option input{position:absolute;opacity:0;width:1px;height:1px;margin:0}.service-option span{display:block;padding:10px 15px;border:1px solid #ddd;font-size:13px;background:white}.service-option input:checked+span{background:#f0f5ed;border-color:#58864a;color:#294d22}.service-option input:focus-visible+span{outline:2px solid #458533;outline-offset:3px}.project-inquiry .field-error{color:#a33131;font:12px Arial;min-height:1em;margin:8px 0}.project-inquiry .privacy-note{font:11px/1.6 Arial;color:#888;margin:25px 0 0}.project-inquiry button{font-size:16px;padding:16px 26px;margin-top:18px}.project-inquiry button:disabled{opacity:.65;cursor:wait}.project-inquiry [hidden]{display:none}.inquiry-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.project-inquiry .status{color:#98412d;line-height:1.6}.inquiry-success{padding:35px 0;outline:none}.success-mark{display:grid;place-items:center;width:48px;height:48px;border-radius:50%;background:#eef5e9;color:#47822f;font:26px Arial;margin-bottom:28px}.inquiry-success h2{font-size:36px;line-height:1.1;font-weight:400;margin:18px 0}.inquiry-success p{font-size:17px}.inquiry-success .inquiry-reference{font:11px Arial;color:#888}.inquiry-success a{display:inline-block;margin-top:20px;font-size:17px;text-underline-offset:6px}.sidebar-bottom .inbox-link{display:block;margin-top:18px;font-size:10px;color:#888;text-decoration:none}@media(max-width:760px){.form-pair{grid-template-columns:1fr;gap:0}.inquiry-page .inquiry-lead{font-size:18px}.project-inquiry label{font-size:14px}.inquiry-success h2{font-size:30px}}

/* Expanding artwork panels — full artwork is preserved in the selected panel. */
.panel-group{margin-bottom:40px}.panel-group-heading{display:flex;justify-content:space-between;margin-bottom:13px;font:9px Arial,sans-serif;letter-spacing:.14em;color:#999}.expanding-row{display:flex;gap:10px;height:clamp(350px,48vw,530px);align-items:stretch}.expand-panel{position:relative;flex:1;min-width:0;overflow:hidden;border-radius:15px;background:#f1f0ed;transition:flex .65s cubic-bezier(.22,1,.36,1),background .4s;isolation:isolate}.expand-panel:nth-child(even){background:#edf0ed}.expand-panel.is-expanded{flex:6;background:#f6f5f1}.panel-select{position:absolute;inset:0;display:block;width:100%;height:100%;padding:0;background:none;border:0;overflow:hidden;cursor:pointer;color:#fff;text-align:left}.panel-art{display:block;width:100%;height:100%;object-fit:cover;object-position:center;opacity:.8;filter:saturate(.85);transition:opacity .45s,filter .45s}.is-expanded .panel-art{object-fit:contain;width:100%;height:calc(100% - 82px);padding:23px 22px 8px;opacity:1;filter:none;animation:panelBreath 8s ease-in-out infinite}.panel-select::after{content:'';position:absolute;inset:0;background:linear-gradient(0deg,#102014aa,transparent 70%);opacity:1;transition:opacity .4s;pointer-events:none}.is-expanded .panel-select::after{opacity:0}.panel-number{position:absolute;left:16px;top:18px;z-index:2;font:10px Arial,sans-serif;background:#fffdf5da;color:#333;padding:5px 7px;border-radius:20px}.panel-strip-title{position:absolute;left:50%;bottom:24px;transform:translateX(-50%) rotate(180deg);writing-mode:vertical-rl;white-space:nowrap;font-size:18px;letter-spacing:.025em;z-index:2;text-shadow:0 1px 8px #0008;transition:opacity .25s}.is-expanded .panel-strip-title{opacity:0}.panel-details{position:absolute;bottom:0;left:0;right:0;z-index:3;height:82px;display:flex;justify-content:space-between;align-items:center;gap:15px;padding:14px 20px;border-top:1px solid #ddd9;background:#ffffffc9;backdrop-filter:blur(12px)}.panel-details[hidden]{display:none}.panel-details h2{font-size:19px;font-weight:400;margin:0 0 5px;line-height:1.1}.panel-details p{font:9px Arial,sans-serif;color:#888;margin:0}.panel-enlarge{flex-shrink:0;border:1px solid #cad3c7;background:#fff8;padding:9px 14px;border-radius:25px;font-size:12px;color:#29472d;cursor:pointer}.panel-enlarge:hover{background:#29472d;color:white}.panel-select:focus-visible{outline:2px solid #4f8c40;outline-offset:-4px;border-radius:15px}.motion-paused .expand-panel,.motion-paused .panel-art{transition:none!important}.motion-paused .panel-art{animation:none}.expanding-graphics .graphics-end{margin-top:45px}@keyframes panelBreath{0%,100%{transform:translateY(0)}50%{transform:translateY(-3px)}}@media(max-width:1050px) and (min-width:761px){.expanding-row{gap:7px;height:400px}.expand-panel.is-expanded{flex:7}.panel-strip-title{font-size:15px}.panel-number{left:8px}.panel-details{padding:12px}.panel-details h2{font-size:16px}.is-expanded .panel-art{padding:35px 12px 8px}.panel-enlarge{padding:8px 10px}}@media(max-width:760px){.panel-group{margin-bottom:30px}.expanding-row{flex-direction:column;height:auto;gap:9px}.expand-panel{flex:none;min-height:58px;height:58px;transition:height .5s cubic-bezier(.22,1,.36,1);border-radius:12px}.expand-panel.is-expanded{flex:none;height:370px;min-height:370px}.panel-art{object-position:center 45%;opacity:.45}.panel-select::after{background:#172a20a8}.panel-strip-title{writing-mode:horizontal-tb;transform:none;left:52px;bottom:20px;font-size:16px}.panel-number{left:12px;top:16px}.is-expanded .panel-art{height:calc(100% - 76px);padding:26px 18px 7px}.panel-details{height:76px;padding:13px 17px}.panel-details h2{font-size:17px}.panel-details p{font-size:9px}.panel-enlarge{padding:9px 14px}.panel-group-heading{font-size:8px}}@media(prefers-reduced-motion:reduce){.expand-panel,.panel-art,.panel-select::after,.panel-strip-title{transition:none!important;animation:none!important}}

/* Then / Now: accessible portrait comparison with a true draggable reveal. */
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.studio-story{max-width:none;padding:6vh clamp(24px,5vw,85px) 70px}.studio-story>h1{font-size:clamp(42px,5vw,78px);margin:26px 0 22px;line-height:1.03}.studio-story>h1 em{font-family:Georgia,serif;font-weight:400;font-size:.84em;color:#656b63}.studio-story .portrait-intro{font-size:17px;margin-bottom:30px;color:#777}.portrait-section{max-width:1200px}.portrait-compare{position:relative;aspect-ratio:4/3;border-radius:20px;overflow:hidden;background:#242e29;isolation:isolate}.portrait-compare img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}.portrait-now{position:absolute;inset:0}.portrait-then{position:absolute;inset:0;clip-path:inset(0 calc(100% - var(--reveal)) 0 0);pointer-events:none}.portrait-then img{position:absolute;inset:0}.portrait-divider{position:absolute;left:var(--reveal);top:0;bottom:0;width:2px;background:#fff;transform:translateX(-50%);pointer-events:none;z-index:3;box-shadow:0 0 8px #0003}.portrait-divider span{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:49px;height:49px;border-radius:50%;background:white;color:#26402a;display:flex;align-items:center;justify-content:center;gap:10px;font:22px Arial;box-shadow:0 3px 18px #0003;white-space:pre}.portrait-badge{position:absolute;bottom:20px;background:#111b;backdrop-filter:blur(7px);border:1px solid #fff4;color:#fff;padding:8px 12px;border-radius:20px;font:10px Arial;letter-spacing:.15em;z-index:2;pointer-events:none}.portrait-badge-then{left:20px}.portrait-badge-now{right:20px}.portrait-range{position:absolute;inset:0;width:100%;height:100%;opacity:0;z-index:5;cursor:ew-resize;margin:0;touch-action:pan-y;appearance:none;-webkit-appearance:none;background:transparent}.portrait-range::-webkit-slider-thumb{appearance:none;-webkit-appearance:none;width:49px;height:100%;cursor:ew-resize;background:transparent}.portrait-range::-moz-range-thumb{width:49px;height:100%;border:0;background:transparent;cursor:ew-resize}.portrait-compare:focus-within{outline:3px solid #6d9c57;outline-offset:5px}.portrait-tools{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:15px 0 0}.studio-story .portrait-tools p{font:11px/1.5 Arial;color:#777;margin:0}.portrait-tools>div{display:flex;gap:6px}.portrait-tools button{border:1px solid #d5dbd1;background:#f6f7f3;color:#345235;font-size:12px;border-radius:25px;padding:8px 13px;cursor:pointer}.portrait-tools button:hover{background:#345235;color:white}.studio-story .portrait-note{font:10px/1.6 Arial;color:#999;margin-top:12px}.studio-copy{padding-top:45px;max-width:750px}.studio-copy h2{font-size:clamp(32px,4vw,48px);font-weight:400;line-height:1.05;margin:0 0 25px}.studio-copy p{font-size:18px}.studio-story .service-list{max-width:none}@media(max-width:760px){.studio-story{padding:35px 22px 50px}.portrait-compare{aspect-ratio:4/3;border-radius:14px}.portrait-badge{font-size:8px;padding:6px 9px;bottom:12px}.portrait-badge-then{left:12px}.portrait-badge-now{right:12px}.portrait-divider span{width:40px;height:40px;font-size:19px}.portrait-tools{align-items:flex-start;flex-direction:column;gap:12px}.studio-copy{padding-top:35px}.studio-story .portrait-intro{font-size:15px}}

/* About Me — personal editorial feature and interactive portrait. */
.about-page{max-width:none;padding:6vh clamp(25px,4.5vw,78px) 65px}.about-heading{padding-bottom:32px;border-bottom:1px solid #e5e5df;margin-bottom:38px}.about-heading h1{font-size:clamp(42px,5vw,75px);font-weight:400;letter-spacing:-1.7px;line-height:1;margin:22px 0 15px}.about-page .about-role{font:10px/1.6 Arial,sans-serif;color:#777;letter-spacing:.1em;text-transform:uppercase;margin:0}.about-layout{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,.92fr);gap:clamp(25px,4vw,65px);align-items:start}.about-portrait{position:sticky;top:20px;min-width:0}.about-portrait .portrait-compare{border-radius:16px;aspect-ratio:4/3}.about-page .portrait-tools{flex-direction:column;align-items:flex-start;gap:12px}.about-page .portrait-tools p{font:10px/1.5 Arial;color:#777;margin:0}.about-page .portrait-note{font:9px/1.6 Arial;color:#999;margin-top:13px}.about-page .about-eyebrow{font-size:clamp(25px,2.8vw,40px);font-weight:400;line-height:1.12;letter-spacing:-.6px;margin:0 0 25px;color:#222}.about-eyebrow em{font-family:Georgia,serif;font-size:.88em;color:#64715f;font-weight:400}.about-bio>p:not(.about-eyebrow){font-size:17px;line-height:1.65;color:#565c53;margin:0 0 20px;max-width:600px}.about-signature{font-size:21px;color:#354b30;padding:12px 0 25px;margin-top:5px}.about-actions{display:flex;gap:17px;align-items:flex-start;flex-wrap:wrap;border-top:1px solid #dedfd8;padding-top:20px}.about-actions a{text-decoration:none;font-size:13px;padding:11px 0;border-bottom:1px solid #8e9d87}.about-actions a:first-child{background:#263b24;color:white;border:0;padding:12px 16px}.about-actions a:hover{color:#527e3f}.about-actions a:first-child:hover{background:#41663a;color:white}@media(max-width:1100px){.about-layout{grid-template-columns:1fr;gap:35px}.about-portrait{position:static;max-width:800px}.about-bio{max-width:750px}.about-page .portrait-tools{flex-direction:row;align-items:center}}@media(max-width:760px){.about-page{padding:34px 22px 50px}.about-heading{padding-bottom:23px;margin-bottom:26px}.about-heading h1{font-size:43px}.about-page .about-role{font-size:9px;letter-spacing:.05em}.about-bio>p:not(.about-eyebrow){font-size:17px}.about-page .about-eyebrow{font-size:31px}.about-page .portrait-tools{flex-direction:column;align-items:flex-start}.about-layout{gap:30px}.about-signature{font-size:22px}}

.design-book-link{display:inline-block;margin:0 0 16px;padding:11px 16px;border:1px solid #345235;border-radius:24px;color:#345235;text-decoration:none;font-size:14px;transition:background .2s,color .2s}.design-book-link:hover{background:#345235;color:#fff}.sidebar nav{gap:17px}@media(max-width:760px){.sidebar nav{gap:20px}}

/* Approved head-matched then/now slider */
.about-portrait .portrait-compare{aspect-ratio:3/2}.portrait-compare .portrait-now{transform:scale(1.14);transform-origin:50% 0%}.portrait-tools button[aria-pressed="true"]{background:#345235;color:#fff}

.sidebar-bottom .brand-catchphrase{font-size:17px;line-height:1.3;color:#345235;margin:0 0 16px}.motion-description{gap:20px}.motion-description>div{min-width:0}.motion-description p{max-width:660px;line-height:1.6}.motion-description button{flex-shrink:0}@media(max-width:760px){.sidebar-bottom .brand-catchphrase{font-size:19px}.motion-description{align-items:flex-start;flex-wrap:wrap}}

.opening{background:#fff}.opening-page-label{position:absolute;bottom:25px;left:20px;right:20px;text-align:center;color:#294d35;font:15px/1.5 Arial,sans-serif;pointer-events:none}.opening-page-label span{display:block;text-transform:uppercase;letter-spacing:2px;font-size:10px;color:#53664d}.opening-page-label strong{font-weight:400;font-size:20px}.opening video{max-height:80svh;object-fit:contain}
/* Readability refinements within the established white, image-led portfolio. */
.info-page p,.info-page li,.contact-form label,.contact-form legend,.contact-form summary,.project-info p,.project-story,.portrait-tools p,.portrait-note{font-family:Arial,Helvetica,sans-serif}.info-page p{font-size:17px;line-height:1.7;color:#4c514b}.info-page .kicker{font-size:11px;color:#62695f}.sidebar nav a{color:#666}.sidebar nav a.active,.sidebar nav a:hover{color:#171717}.project-info p{font-size:12px;line-height:1.5;color:#62675f}.gallery-footer{font-size:11px;color:#62675f}.website-gallery .gallery-top #position{font-size:12px;color:#61685b}.gallery-top{height:auto;min-height:116px;gap:20px;align-items:center;padding:8px 0 18px;margin-bottom:10px}.gallery-introduction{max-width:620px}.gallery-introduction .kicker{font:10px/1.4 Arial,sans-serif;letter-spacing:.12em;text-transform:uppercase;color:#62695f;margin:0 0 7px}.gallery-top .gallery-introduction h1{font-size:29px;line-height:1.1;margin:0 0 7px;color:#294d35}.gallery-introduction p:not(.kicker){font:13px/1.5 Arial,sans-serif;color:#565e50;margin:0;max-width:620px}.refined-cta{display:inline-block;padding:11px 16px;background:#294d35;color:#fff;text-decoration:none;font-size:15px;white-space:nowrap}.refined-cta:hover{background:#3e613a}.project-story{flex-shrink:0;border-top:1px solid #dedfd9;margin:0 4px 7px;font-size:12px;color:#4c514b}.project-story summary{padding:10px 0;cursor:pointer;color:#294d35}.project-story>div{max-height:170px;overflow:auto;padding-bottom:12px}.project-story p{font:13px/1.6 Arial,sans-serif;margin:0 0 8px;max-width:850px}.project-story strong{display:inline-block;min-width:85px;color:#2f442c;font-size:12px}.project-story a{font-size:13px;text-underline-offset:4px}.website-gallery .visual.screenshot.muse{display:flex;align-items:center;justify-content:center}.muse-crop{position:relative;display:block;width:min(100%,720px);height:auto;aspect-ratio:1100/840;max-height:100%;overflow:hidden;background:#fff;flex-shrink:1}.visual.screenshot.muse .muse-crop img{position:absolute;max-width:none;max-height:none;width:174.3636%;height:108.3333%;left:-34.5455%;top:-3.5714%;object-fit:fill}.project a.visual.screenshot:hover .muse-crop img{transform:none}.about-portrait .portrait-compare{aspect-ratio:4/3}.portrait-compare .portrait-now{transform:none;object-fit:contain}.portrait-current .portrait-then,.portrait-current .portrait-divider,.portrait-current .portrait-badge,.portrait-current .portrait-range{display:none}.portrait-mode{margin-top:15px}.portrait-mode button{background:#fff;border:1px solid #b5c2af;padding:10px 15px;color:#294d35;font-size:14px}.portrait-mode button[aria-expanded=true]{background:#294d35;color:#fff}.about-page .portrait-tools p{font-size:12px;color:#62695f}.about-page .portrait-note{font:11px/1.6 Arial,sans-serif;color:#6a7165}.about-page .about-role{font-size:11px;color:#62695f}.about-bio>p:not(.about-eyebrow){font:17px/1.7 Arial,sans-serif;color:#4c514b}.panel-details p,.panel-group-heading,.graphics-heading-note p{font-family:Arial,sans-serif}.panel-details p{font-size:11px;color:#5c6555}.graphics-heading-note p{font-size:12px;line-height:1.6;color:#5c6555}.optional-inquiry{border-top:1px solid #d6dcd0;border-bottom:1px solid #d6dcd0;margin:25px 0;padding:18px 0}.optional-inquiry summary{font:14px/1.6 Arial,sans-serif;color:#294d35;cursor:pointer}.optional-inquiry>div{padding-top:5px}.info-page .form-meta,.info-page .privacy-note{font:12px/1.6 Arial,sans-serif;color:#60685a}.services-page .service-list>div{display:flex;gap:12px;align-items:baseline}.services-page .service-list>div>span{margin-right:8px;flex-shrink:0}.services-page .service-list h2{font-size:25px;font-weight:400;margin:0 0 7px}.services-page .service-list p{font:15px/1.65 Arial,sans-serif;margin:0;max-width:620px}.service-actions{display:flex;align-items:center;flex-wrap:wrap;gap:20px;margin-top:30px}.service-actions .text-link{margin:0}.opening-page-label strong{font-size:22px}
@media(max-width:1050px){.gallery-top{flex-wrap:wrap;gap:10px;min-height:125px}.gallery-introduction{flex:1 1 100%}.gallery-top #position{margin-left:auto}.gallery-top .refined-cta{font-size:14px;padding:8px 12px}.gallery-top .gallery-introduction h1{font-size:27px}}
@media(max-width:760px){.gallery-top{padding-top:0;min-height:138px;padding-bottom:10px}.gallery-top .gallery-introduction h1{font-size:26px}.gallery-introduction p:not(.kicker){font-size:12px}.gallery-introduction .kicker{font-size:10px}.project-info{height:78px}.project-info p{font-size:11px}.project-story summary{padding:8px 0}.project-story>div{max-height:150px}.gallery-footer{font-size:10px}.muse-crop{max-width:100%;max-height:100%;width:auto;height:100%;aspect-ratio:1100/840}.about-bio>p:not(.about-eyebrow){font-size:16px}.contact-form label{font-size:14px}}
.website-gallery .visual.screenshot.muse .muse-crop{width:auto;height:100%;max-width:100%;aspect-ratio:1100/840;flex:0 1 auto}
/* Concept Lab: the existing portfolio identity, with a clearly marked exploration collection. */
.portfolio-switch{display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin:0 0 18px;font:12px/1.4 Arial,sans-serif;flex-shrink:0}.portfolio-switch a,.portfolio-switch>span{padding:9px 14px;border:1px solid #d7ded3;text-decoration:none;color:#4f5e49}.portfolio-switch [aria-current=page]{background:#294d35;color:#fff;border-color:#294d35}.portfolio-switch small{font-size:10px;margin-left:8px;opacity:.8}.concept-page{max-width:none;width:100%;padding:55px clamp(24px,5vw,80px) 60px;scroll-behavior:smooth}.lab-heading{max-width:900px}.lab-heading h1{margin:18px 0 20px}.lab-heading h1>span{color:#398920}.lab-heading>p:not(.kicker){max-width:690px}.lab-heading .portfolio-switch{margin:26px 0 36px}.lab-feature{max-width:1300px}.lab-visual{min-height:450px;position:relative;overflow:hidden;background:#e7e4d9}.lab-visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.lab-visual:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#15281ede,transparent 90%);pointer-events:none}.concept-badge{position:absolute;top:22px;left:25px;z-index:2;border:1px solid #ffffffa6;background:#294d35de;color:#fff;padding:9px 12px;font:9px/1.5 Arial,sans-serif;letter-spacing:.1em}.lab-visual-copy{position:relative;z-index:2;color:white;padding:125px 40px 45px}.lab-visual-copy>span{font:10px Arial,sans-serif;letter-spacing:.15em}.lab-visual-copy strong{display:block;font-weight:400;font-size:clamp(42px,5vw,74px);line-height:1.05;margin:22px 0 28px}.lab-visual-copy a{font:13px Arial,sans-serif;text-underline-offset:6px}.lab-feature-info{display:flex;align-items:center;justify-content:space-between;gap:35px;padding:30px 0 10px}.lab-feature-info h2,.rethink>h2,.lab-invitation h2{font-size:clamp(30px,4vw,49px);line-height:1.12;font-weight:400;margin:12px 0 18px}.lab-feature-info p:not(.kicker){font-size:15px;max-width:700px}.lab-feature-info .refined-cta{flex-shrink:0}.info-page .lab-disclosure{font:12px/1.65 Arial,sans-serif;color:#62695f;max-width:none;padding:14px 0;border-block:1px solid #dce2d7}.rethink{scroll-margin-top:30px;margin-top:65px;max-width:1300px}.lab-comparison{display:grid;grid-template-columns:1fr 1fr;gap:22px;margin-top:30px}.lab-comparison>article{background:#f5f5f0;padding:22px}.lab-comparison .lab-proposed{background:#eef3e9}.lab-tag{font:10px Arial,sans-serif;letter-spacing:.1em;color:#42583b;display:block;margin-bottom:17px}.lab-comparison img{width:100%;height:245px;object-fit:contain;background:#e8e7df}.lab-comparison h3{font-size:26px;font-weight:400;margin:24px 0 12px}.lab-comparison p{font-size:15px;line-height:1.7}.lab-comparison a{font:13px Arial,sans-serif;text-underline-offset:5px}.info-page .lab-image-note{font:11px/1.6 Arial,sans-serif;color:#68705f;max-width:none}.lab-opportunities{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin:45px 0}.lab-opportunities article{border-top:1px solid #bac8b1;padding-top:20px}.lab-opportunities span{font:10px Arial,sans-serif;letter-spacing:.08em;color:#547047}.lab-opportunities h3{font-size:25px;font-weight:400;line-height:1.2}.lab-opportunities p{font-size:14px}.lab-live{border-block:1px solid #d6dfd0;padding:18px 0}.lab-live summary{cursor:pointer;font-size:19px;color:#294d35}.lab-live p{font-size:13px}.lab-live-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.lab-live-grid h3{font-weight:400;font-size:23px;margin-bottom:12px}.lab-live-grid a{font:12px Arial,sans-serif;display:inline-block;margin-bottom:15px}.lab-live iframe{width:100%;height:550px;border:1px solid #d6dfd0;display:block;background:#fafaf6}.lab-invitation{margin-top:65px;padding:40px;background:#f1f4ed;max-width:1300px}.lab-invitation p{font-size:15px}.lab-return{display:inline-block;margin-left:20px;font:13px Arial,sans-serif;text-underline-offset:5px}.concept-page a:focus-visible,.portfolio-switch a:focus-visible{outline:2px solid #398920;outline-offset:5px}@media(max-width:1050px){.lab-feature-info{align-items:start;flex-direction:column;gap:6px}.lab-feature-info .refined-cta{margin-bottom:20px}.lab-opportunities{gap:18px}.sidebar nav{gap:16px}}@media(max-width:760px){.concept-page{padding:28px 22px 45px}.lab-visual{min-height:360px}.lab-visual-copy{padding:110px 22px 30px}.concept-badge{left:15px;right:15px;top:15px;font-size:8px;width:fit-content}.lab-comparison,.lab-opportunities,.lab-live-grid{grid-template-columns:1fr}.lab-comparison>article{padding:18px}.lab-comparison img{height:230px}.lab-opportunities{gap:15px}.lab-opportunities h3{margin:12px 0}.rethink{margin-top:45px}.lab-invitation{padding:25px;margin-top:40px}.lab-return{display:block;margin:22px 0 0}.lab-live iframe{height:460px}.portfolio-switch{margin-bottom:12px;font-size:11px}.gallery-top{min-height:125px}.sidebar nav{gap:17px}}@media(prefers-reduced-motion:reduce){.concept-page{scroll-behavior:auto}}
.concept-index{display:flex;gap:10px 20px;flex-wrap:wrap;margin:0 0 28px;font:12px/1.5 Arial,sans-serif}.concept-index a{color:#294d35;text-underline-offset:5px}.additional-studies{max-width:1300px;margin-top:65px}.additional-studies>header h2{font-size:38px;font-weight:400;margin:15px 0}.additional-studies>header p:not(.kicker){font-size:15px}.concept-study{display:grid;grid-template-columns:1fr 1fr;gap:30px;border-top:1px solid #d5dfce;padding-top:35px;margin-top:40px;scroll-margin-top:30px}.study-image{position:relative;display:flex;align-items:center;justify-content:center;background:#f1f2ec;min-height:330px;align-self:start;padding:60px 16px 25px}.study-image img{width:100%;max-height:380px;object-fit:contain}.study-image .concept-badge{font-size:8px;left:15px;top:15px}.study-content>h2{font-size:34px;font-weight:400;line-height:1.1;margin:12px 0 20px}.study-content>h3{font-size:24px;font-weight:400;line-height:1.2}.study-content p{font-size:15px}.study-actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap;margin:25px 0}.study-actions>a:not(.refined-cta){font:12px/1.5 Arial,sans-serif;text-underline-offset:5px}.study-rethink{border-top:1px solid #d5dfce;padding-top:15px}.study-rethink summary{font-size:19px;cursor:pointer;color:#294d35}.study-rethink>div{margin:20px 0}.study-rethink span{font:11px Arial,sans-serif;color:#517343}.study-rethink h4{font-size:21px;font-weight:400;margin:8px 0}.study-rethink p{font-size:14px;margin:10px 0}.study-original{padding:15px;background:#f2f4ee;font:13px/1.6 Arial,sans-serif}.study-original a{font-size:12px}.study-content .lab-disclosure{font-size:11px}@media(max-width:1000px){.concept-study{grid-template-columns:1fr;gap:25px}.study-image{min-height:270px}.study-image img{max-height:350px}}@media(max-width:760px){.concept-index{font-size:11px;gap:10px 15px}.study-content>h2{font-size:30px}.study-image{padding-top:65px}.study-image .concept-badge{font-size:7px}.additional-studies{margin-top:45px}}
/* Centered, image-led carousel; complete screenshots remain visible. */
.website-gallery{--slide-width:min(78%,1000px);padding-right:24px;overflow:hidden}.website-gallery .track{position:relative;gap:24px;padding-inline:calc((100% - var(--slide-width))/2);scroll-padding-inline:calc((100% - var(--slide-width))/2);padding-bottom:10px;scroll-snap-type:x mandatory;align-items:stretch}.website-gallery .project{flex:0 0 var(--slide-width);scroll-snap-align:center;scroll-snap-stop:always;opacity:.52;transform:scale(.93);transition:opacity .35s ease,transform .5s ease;transform-origin:center center}.website-gallery .project.is-centered{opacity:1;transform:scale(1)}.website-gallery .visual.screenshot{background:#f4f5f1;border:1px solid #e6e9e2;padding:22px 16px}.website-gallery .visual.screenshot img{max-width:100%;max-height:100%;width:100%;height:100%;object-fit:contain;transform:none}.website-gallery .project a.visual:hover img{transform:none}.website-gallery .project-index{background:#ffffffed;color:#35523b;padding:7px 9px;left:12px;top:12px;text-shadow:none}.website-gallery .gallery-arrow{z-index:5;top:50%;border:1px solid #d4dbce;background:#ffffffed;box-shadow:0 3px 16px #203b2010}.website-gallery .gallery-arrow:disabled{opacity:.25}.website-gallery .gallery-arrow-left{left:12px}.website-gallery .gallery-arrow-right{right:30px}.website-gallery .project-info{padding-inline:5px}.website-gallery .project-story{margin-inline:5px}@media(max-width:1050px){.website-gallery{--slide-width:86%}.website-gallery .track{gap:18px}}@media(max-width:760px){.website-gallery{--slide-width:90%;padding-right:0}.website-gallery .track{gap:12px}.website-gallery .project{transform:scale(.96)}.website-gallery .project.is-centered{transform:scale(1)}.website-gallery .visual.screenshot{padding:30px 8px 12px}.website-gallery .gallery-arrow{width:31px;height:48px}.website-gallery .gallery-arrow-left{left:4px}.website-gallery .gallery-arrow-right{right:4px}.website-gallery .project-index{font-size:8px;top:8px;left:8px}.website-gallery .project-info{gap:10px}.website-gallery .project-info h2{font-size:18px}.website-gallery .project-info>a{font-size:11px}.website-gallery .gallery-footer{font-size:9px;gap:10px}}@media(prefers-reduced-motion:reduce){.website-gallery .project{transition:none;transform:none}}

#concept-maxie-redesign .study-image{background:#292c2d;padding:56px 10px 14px;}#concept-maxie-redesign .study-image img{height:auto;max-height:none;object-fit:contain;padding:0;}

/* Shared page footer, reserved space keeps it clear of portfolio content. */
#canvas{height:calc(100svh - 72px)}.site-footer{height:72px;margin-left:255px;padding:12px 28px 12px 0;border-top:1px solid #dfe5d9;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#fff;color:#53604e;font:11px/1.5 Arial,sans-serif}.site-footer>div{display:flex;flex-direction:column;gap:3px}.site-footer .footer-brand{font-family:Portfolio,'Arial Narrow',Arial,sans-serif;font-size:19px;color:#294d35;text-decoration:none}.footer-tagline{font-size:10px}.site-footer nav{display:flex;gap:18px}.site-footer nav a{text-decoration:none;color:#294d35;white-space:nowrap}.site-footer a:hover{text-decoration:underline;text-underline-offset:4px}.site-footer small{font-size:9px;text-align:right;max-width:180px}.site-footer a:focus-visible{outline:2px solid #398920;outline-offset:4px}@media(max-width:1050px){.site-footer{gap:10px;padding-right:20px}.site-footer nav{gap:12px}.footer-tagline{font-size:9px}.site-footer small{max-width:120px;font-size:8px}}@media(max-width:760px){#canvas{height:calc(100svh - 180px)}.site-footer{height:88px;margin-left:0;padding:10px 18px;display:grid;grid-template-columns:1fr auto;gap:4px 10px}.site-footer>div{grid-row:1 / 3}.site-footer nav{justify-content:flex-end;gap:12px;font-size:10px}.site-footer small{max-width:none;font-size:8px;grid-column:2}.site-footer .footer-brand{font-size:19px}.footer-tagline{font-size:9px}}@media(max-width:370px){.site-footer nav{gap:8px;font-size:9px}.site-footer{padding-inline:12px;gap:4px 6px}}

.site-footer small{max-width:280px;line-height:1.6}.site-footer small a{color:inherit;text-underline-offset:3px}@media(max-width:1050px){.site-footer small{max-width:190px}}@media(max-width:760px){.site-footer small{max-width:210px;font-size:8px;justify-self:end}}

/* Updated MMG website preview: display the complete supplied screenshot. */
.visual.screenshot.maxie img{width:100%;height:100%;object-fit:contain;object-position:center;transform:none;clip-path:none;}

.multimedia-intro{max-width:650px;font-size:17px;line-height:1.8}.multimedia-feature{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:48px;margin-top:45px;align-items:center}.multimedia-portrait{position:relative;display:block;background:#e8eee5}.multimedia-portrait img{width:100%;height:480px;object-fit:cover;object-position:center 30%;display:block}.multimedia-portrait span{position:absolute;left:18px;bottom:18px;background:white;padding:12px;font:10px Arial;letter-spacing:.1em}.multimedia-feature-copy h2{font-size:clamp(35px,4vw,65px);line-height:1.05;margin:20px 0}.multimedia-feature-copy>p{line-height:1.8}.multimedia-tags{list-style:none;padding:0;display:flex;flex-wrap:wrap;gap:8px;margin:25px 0}.multimedia-tags li{border:1px solid #d6dfd3;padding:7px 10px;font-size:11px}.multimedia-note{font-size:11px;color:#667064;margin-top:20px}.multimedia-next{border-top:1px solid #dde3d8;margin-top:60px;padding-top:30px}.multimedia-next p{line-height:1.8}.sidebar nav a{padding-top:8px;padding-bottom:8px}@media(max-width:760px){.multimedia-feature{grid-template-columns:1fr;gap:25px}.multimedia-portrait img{height:350px}.multimedia-intro{font-size:15px}}

/* One-time page-title entrance: 400ms in, 700ms hold, 400ms out. */
.page-title-entrance{position:fixed;z-index:80;inset:0 0 0 255px;display:flex;align-items:center;justify-content:center;background:#fffffff5;color:#284c30;padding:30px;text-align:center;font-family:inherit;font-size:clamp(32px,4vw,58px);font-weight:400;pointer-events:none;opacity:0}.page-title-entrance[hidden]{display:none!important}.page-title-entrance.is-playing{animation:pageTitleEntrance 1.5s ease-in-out both}@keyframes pageTitleEntrance{0%{opacity:0}26.667%,73.333%{opacity:1}100%{opacity:0}}@media(max-width:760px){.page-title-entrance{inset:70px 0 0;font-size:34px}}@media(prefers-reduced-motion:reduce){.page-title-entrance{display:none!important}}
