@charset "UTF-8";
:root{--ink:#171816;--paper:#eeeee7;--acid:#d8fc50;--line:#3a3b35;--muted:#a4a69a;--sans:Arial,Helvetica,sans-serif;--mono:'Courier New',monospace}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:96px}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--sans);-webkit-font-smoothing:antialiased}body.locked{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}button,a{-webkit-tap-highlight-color:transparent}button{border:0;background:none}button:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--acid);outline-offset:6px}::selection{background:var(--acid);color:var(--ink)}img{display:block;max-width:100%}h1,h2,h3,p{margin:0}h2{font-size:clamp(52px,6.2vw,100px);line-height:.97;font-weight:500;letter-spacing:-.065em}.mono{font:11px/1.5 var(--mono);letter-spacing:.05em}.eyebrow{margin-bottom:30px}.serif{font-family:Georgia,'Times New Roman',serif;font-weight:400;font-style:italic;letter-spacing:-.06em}.acid{color:var(--acid)}.section-pad{padding:100px 4.2%}.skip{position:fixed;z-index:100;left:20px;top:-100px;background:var(--acid);padding:15px;color:var(--ink)}.skip:focus{top:20px}.header{height:100px;padding:0 4.2%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);background:var(--ink);position:relative;z-index:15}.brand{display:flex;align-items:center;font-size:58px;font-weight:800;letter-spacing:-.09em;line-height:.8}.brand-star{font-size:44px;color:var(--acid);margin-left:4px;align-self:flex-start;line-height:1}.brand-name{font:9px/1.4 var(--mono);letter-spacing:.04em;margin-left:23px}.desktop-nav{display:flex;gap:36px;font-size:13px}.desktop-nav a{transition:color .2s}.desktop-nav a:hover{color:var(--acid)}sup{font:9px var(--mono);color:var(--acid);vertical-align:super;margin-left:4px}.contact-link{border-bottom:1px solid var(--paper);padding:9px 0;font-size:13px}.contact-link span{margin-left:28px;font-size:19px}.menu-toggle{display:none}.mobile-menu[hidden]{display:none}.hero{padding:25px 4.2% 35px;overflow:hidden;position:relative}.hero-top{display:flex;justify-content:space-between;color:var(--muted);font-size:10px}.hero-top>span:first-child{display:flex;align-items:center;gap:9px}.status-dot{width:6px;height:6px;background:var(--acid);border-radius:100%;display:inline-block;box-shadow:0 0 0 4px #d8fc5010}.hero-main{position:relative;min-height:560px;height:40vw;max-height:700px;display:flex;align-items:center}.hero-title-wrap{z-index:2;position:relative;pointer-events:none;width:73%;padding:55px 0}.hero-title-wrap .eyebrow{font-size:10px;margin-bottom:24px;color:var(--muted)}h1{font-size:clamp(76px,8.85vw,156px);font-weight:800;letter-spacing:-.075em;line-height:.88}h1>span{display:block}.period{color:inherit}.hero-art{position:absolute;right:-.5%;width:42%;height:95%;top:3%;perspective:1000px}.art-card{position:absolute;padding:0;display:block;overflow:hidden;background:#2b2c27;box-shadow:0 20px 50px #0006;transition:transform .6s cubic-bezier(.2,.8,.2,1);text-align:left}.art-card img{height:100%;width:100%;object-fit:cover;transition:transform .8s}.art-card:hover img{transform:scale(1.045)}.art-back{width:64%;height:67%;right:0;top:4%;transform:rotate(11deg);filter:saturate(.8)}.art-front{width:69%;height:68%;right:15%;top:25%;transform:rotate(-8deg)}.art-front:hover{transform:rotate(-3deg) translateY(-10px)}.art-back:hover{transform:rotate(6deg) translateY(-12px);z-index:3}.art-tag{position:absolute;bottom:0;left:0;right:0;display:flex;justify-content:space-between;background:var(--paper);color:var(--ink);padding:12px 15px;font-size:9px}.art-tag b{font-size:15px}.art-cross{position:absolute;color:var(--muted);font:20px var(--mono)}.cross-one{right:92%;top:8%}.cross-two{right:0;bottom:0}.hero-stamp{position:absolute;right:-1%;bottom:7%;width:110px;height:110px;border-radius:50%;background:var(--acid);color:var(--ink);font-size:21px;line-height:.85;font-weight:800;letter-spacing:-1px;display:flex;flex-direction:column;align-items:center;justify-content:center;transform:rotate(12deg);pointer-events:none}.hero-stamp span{position:absolute;right:13px;top:15px;font-size:22px}.art-coordinate{font-size:8px;position:absolute;bottom:-1%;left:0;color:var(--muted)}.hero-bottom{display:grid;grid-template-columns:1fr 1fr .45fr;gap:50px;align-items:end;padding-top:25px}.round-link{display:flex;align-items:center;gap:16px;font-size:12px;line-height:1.5}.round-link small{color:var(--muted);font-size:10px}.round-arrow{width:49px;height:49px;border:1px solid #73756a;display:grid;place-items:center;border-radius:100%;font-size:24px;transition:background .2s,color .2s}.round-link:hover .round-arrow{background:var(--acid);color:var(--ink)}.hero-bottom>p{font-size:14px;line-height:1.55;max-width:350px}.hero-index{text-align:right;color:var(--muted);font-size:9px}.ticker{padding:17px 0;background:var(--acid);color:var(--ink);overflow:hidden;margin-top:20px}.ticker>div{width:max-content;animation:ticker 40s linear infinite;font-weight:700;font-size:20px;letter-spacing:-.03em;white-space:nowrap}.ticker span{display:inline-block;margin:0 35px;font-size:22px}.section-heading{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:50px}.section-aside{font-size:13px;line-height:1.55;max-width:280px;margin-right:3%;color:var(--muted)}.work{background:var(--paper);color:var(--ink)}.work .eyebrow{color:#6a6c60}.work .section-aside{color:#65675e}.work-toolbar{display:flex;justify-content:space-between;gap:20px;padding-bottom:20px;border-bottom:1px solid #c7c8bd}.filters{display:flex;gap:7px;flex-wrap:wrap}.filters button{border:1px solid #c7c8bd;padding:10px 18px;border-radius:30px;font-size:11px;transition:background .2s,color .2s}.filters button:hover{border-color:var(--ink)}.filters button.active{background:var(--ink);color:var(--paper);border-color:var(--ink)}.view-switch{display:flex;gap:4px;flex-shrink:0}.view-switch button{font-size:23px;width:35px;border:1px solid transparent;opacity:.4}.view-switch button.active{border-color:#77796e;opacity:1}.results-line{display:flex;justify-content:space-between;padding:19px 0 26px;color:#6a6c60;font-size:9px}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:50px 28px}.project-card{min-width:0;transition:opacity .4s}.project-trigger{display:block;text-align:left;width:100%;padding:0}.project-image{height:auto;aspect-ratio:1.22;overflow:hidden;background:#dedfd4;position:relative}.project-card:nth-child(6n+3) .project-image,.project-card:nth-child(6n+4) .project-image{aspect-ratio:1.12}.project-image img{height:100%;width:100%;object-fit:cover;transition:transform .7s cubic-bezier(.2,.8,.2,1),filter .7s}.project-trigger:hover img{transform:scale(1.045)}.project-image::after{content:'';position:absolute;right:18px;top:18px;border-radius:50%;height:42px;width:42px;background:var(--acid);color:var(--ink);display:grid;place-items:center;font-size:23px;opacity:0;transform:translateY(8px);transition:.3s}.project-trigger:hover .project-image::after{opacity:1;transform:translateY(0)}.project-meta{display:flex;align-items:start;justify-content:space-between;padding-top:18px;gap:20px}.project-meta h3{font-size:23px;letter-spacing:-.05em;font-weight:500}.project-meta p{font-size:10px;color:#686a5f;margin-top:7px}.project-number{font:10px var(--mono);color:#77796c;padding-top:6px}.archive-button{margin-top:55px;padding:22px 0;border-top:1px solid #aaac9d;border-bottom:1px solid #aaac9d;display:flex;align-items:center;justify-content:space-between;width:100%;font-size:18px;letter-spacing:-.03em}.archive-button .mono{font-size:9px;color:#686a5f;margin-left:auto;margin-right:25px;letter-spacing:.02em}.archive-button>span:last-child{font-size:25px}.archive-button:hover>span:last-child{transform:translate(4px,-4px)}.project-grid.list-mode{display:block}.list-mode .project-card{border-top:1px solid #bbbdb0}.list-mode .project-trigger{display:flex;gap:25px;align-items:center;padding:16px 0}.list-mode .project-image{width:100px;aspect-ratio:1.3!important;flex-shrink:0}.list-mode .project-meta{width:100%;padding-top:0}.list-mode .project-image::after{display:none}.about{background:var(--acid);color:var(--ink);overflow:hidden}.about-top{display:flex;justify-content:space-between}.about-top .eyebrow{margin:0}.about-top>span{font-size:9px}.about-layout{display:grid;grid-template-columns:.8fr 1fr;gap:8%;padding:70px 0}.about-art{position:relative;display:flex;align-items:center;justify-content:center;min-width:0;align-self:start;aspect-ratio:1}.about-asterisk{font-size:clamp(250px,36vw,550px);line-height:1;display:block;animation:turn 45s linear infinite}.about-art>.mono{position:absolute;bottom:0;left:10px;font-size:10px}.about-copy h2{font-size:clamp(45px,5.2vw,85px);margin:10px 0 35px}.about-lead{font-size:18px;line-height:1.55;letter-spacing:-.02em;max-width:610px}.about-lead strong{font-weight:600}.about-facts{display:flex;justify-content:space-between;gap:12px;margin-top:40px;padding:30px 0;border-top:1px solid #a5bf42;border-bottom:1px solid #a5bf42}.about-facts b{font-size:39px;font-weight:500;letter-spacing:-.06em;display:block}.about-facts span{font-size:10px}.about-details{margin-top:25px}.about-details summary{font-size:12px;cursor:pointer;list-style:none;display:flex;justify-content:space-between;padding:10px 0}.about-details summary span{font-size:18px}.about-details[open] summary span{transform:rotate(45deg)}.original-copy{font-size:14px;line-height:1.75}.original-copy p{margin-bottom:18px}.original-copy ul{padding-left:20px}.original-copy li p{margin:0}.original-copy strong{font-weight:600}.original-copy img{margin-top:30px;width:100%}.about-details .original-copy{padding:25px 0 0;font-size:13px}.client-strip{border-top:1px solid #a5bf42;padding-top:25px}.client-strip>.mono{font-size:9px}.client-strip>div{display:flex;justify-content:space-between;gap:20px;align-items:center;font-weight:800;font-size:clamp(16px,2.2vw,34px);letter-spacing:-.06em;margin-top:35px;flex-wrap:wrap}.client-strip>div>span{font-family:Georgia,serif;font-weight:normal;font-style:italic;letter-spacing:-.03em}.services .section-heading{margin-bottom:40px}.services-intro{max-width:740px;margin-left:auto;margin-bottom:50px;color:#c1c3b7}.service-list{border-top:1px solid var(--line)}.service-item{border-bottom:1px solid var(--line)}.service-item summary{padding:28px 0;cursor:pointer;display:grid;grid-template-columns:70px 1fr 30px;align-items:center;list-style:none;gap:15px}.service-item summary::-webkit-details-marker,.about-details summary::-webkit-details-marker{display:none}.service-item summary .mono{color:var(--muted);font-size:10px}.service-item summary h3{font-size:clamp(21px,3vw,45px);font-weight:400;letter-spacing:-.045em}.service-item summary .plus{font-size:25px;font-weight:300;transition:transform .3s}.service-item[open] summary .plus{transform:rotate(45deg);color:var(--acid)}.service-item[open] summary h3{color:var(--acid)}.service-body{padding:0 65px 30px 85px;max-width:900px;color:#c1c3b7}.service-body ul{columns:2;column-gap:40px;font-size:13px;margin-bottom:20px}.services-outro{margin-top:45px;max-width:740px;margin-left:auto;color:#c1c3b7}.services-outro h3{font-size:20px;margin:25px 0 12px;color:var(--paper);font-weight:500;letter-spacing:-.025em}.services-outro hr{border:0;border-top:1px solid var(--line);margin:25px 0}.contact{background:var(--paper);color:var(--ink);position:relative}.contact-top{display:flex;justify-content:space-between;font-size:10px;border-bottom:1px solid #c7c8bd;padding-bottom:25px}.contact-pre{margin:45px 0 30px;font-size:17px}.contact-title{display:block;font-size:clamp(95px,16vw,260px);letter-spacing:-.075em;font-weight:700;line-height:.8;position:relative;padding-bottom:35px;width:100%}.contact-title>.serif{font-size:1.12em}.contact-arrow{position:absolute;right:4%;top:20%;font-size:1.1em;font-weight:400;transition:transform .5s}.contact-title:hover .contact-arrow{transform:translate(15px,-15px)}.contact-bottom{display:flex;gap:25px;justify-content:space-between;align-items:end;padding-top:40px;border-top:1px solid #c7c8bd}.contact-bottom>p{font-size:12px;line-height:1.7;max-width:350px}.phone{font-size:18px;letter-spacing:-.03em;border-bottom:1px solid #7c7e71;padding-bottom:6px;white-space:nowrap}.copy-button{font-size:10px;padding:10px 0;border-bottom:1px solid #c7c8bd;white-space:nowrap}.copy-button span{margin-left:20px}.copy-status{font-size:10px;position:absolute;bottom:50px;right:4.2%}footer{display:flex;align-items:center;justify-content:space-between;padding:40px 4.2%;gap:30px}.footer-logo{font-size:63px;letter-spacing:-.09em;font-weight:800;color:var(--acid)}footer p{font-size:9px;color:var(--muted);margin-left:auto;margin-right:12%}.back-top{font-size:9px}.scroll-progress{height:3px;background:var(--acid);position:fixed;top:0;left:0;width:0;z-index:100}.cursor-label{position:fixed;width:72px;height:72px;background:var(--acid);color:var(--ink);border-radius:50%;display:grid;place-items:center;font:10px var(--mono);pointer-events:none;z-index:50;transform:translate(-50%,-50%) scale(0);transition:transform .2s;will-change:left,top}.cursor-label.visible{transform:translate(-50%,-50%) scale(1)}.reveal{transition:opacity .8s,transform .8s}.js-motion .reveal:not(.visible){opacity:0;transform:translateY(30px)}.project-dialog{inset:0;width:100vw;max-width:none;height:100dvh;max-height:none;border:0;padding:0;background:var(--paper);color:var(--ink);overscroll-behavior:contain}.project-dialog::backdrop{background:#171816dd}.dialog-nav{padding:22px 4.2%;height:84px;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;background:var(--paper);z-index:4;border-bottom:1px solid #c7c8bd}.dialog-brand{font-size:40px;letter-spacing:-.09em;font-weight:800}.dialog-nav>.mono{font-size:9px;color:#6a6c60}.close-project{display:flex;align-items:center;gap:30px;font-size:12px}.close-project>span{font-size:30px;line-height:1}.detail-heading{padding:70px 8% 45px;display:grid;grid-template-columns:1fr 220px;gap:35px;align-items:end}.detail-heading h2{font-size:clamp(42px,6vw,100px);max-width:900px;overflow-wrap:anywhere}.detail-heading .eyebrow{font-size:10px;margin-bottom:25px;color:#6a6c60}.detail-heading>.mono{font-size:10px;color:#6a6c60}.detail-content{padding:0 8% 70px;max-width:1600px;margin:auto;line-height:1.7;font-size:15px}.detail-content img{margin:0 auto 25px;max-height:none;width:auto;max-width:100%;cursor:zoom-in}.detail-content>img:first-child{width:100%;max-height:1000px;object-fit:contain;background:#e5e5db}.detail-content p{margin-bottom:25px}.detail-content a{text-decoration:underline}.detail-content iframe{display:block;width:100%;height:min(75vh,780px);min-height:300px;border:0;margin:25px 0}.detail-content video{width:100%}.project-pagination{display:flex;align-items:center;justify-content:space-between;background:var(--acid);padding:35px 8%;gap:20px}.project-pagination button{padding:10px 0;font-size:16px;text-align:left}.project-pagination .mono{font-size:9px}.lightbox{border:0;background:#111e;inset:0;width:100vw;height:100dvh;max-width:none;max-height:none;padding:40px}.lightbox::backdrop{background:#000d}.lightbox img{width:100%;height:100%;object-fit:contain}.lightbox button{position:absolute;right:25px;top:10px;font-size:38px;color:white;background:#171816;width:48px;height:48px;border-radius:50%}@keyframes ticker{to{transform:translateX(-50%)}}@keyframes turn{to{transform:rotate(360deg)}}@keyframes enter{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.hero-title-wrap{animation:enter .9s both}.hero-art{animation:enter 1.1s .12s both}
@media(min-width:1700px){.hero-main{min-height:650px}.hero-title-wrap{width:70%}.section-pad{padding-left:7%;padding-right:7%}.hero,.header{padding-left:7%;padding-right:7%}}
@media(max-width:1050px){.brand-name{display:none}.hero-main{min-height:490px}.hero-art{height:85%;top:8%}.hero-stamp{width:85px;height:85px;font-size:17px}.hero-bottom{grid-template-columns:1fr 1fr;gap:30px}.hero-index{display:none}.section-pad{padding-top:80px;padding-bottom:80px}.about-layout{gap:5%;grid-template-columns:.65fr 1fr}.about-lead{font-size:16px}.contact-bottom{flex-wrap:wrap}.contact-bottom>p{max-width:none;width:100%}.phone{font-size:20px}.copy-button{margin-left:auto}}
@media(max-width:700px){html{scroll-padding-top:20px}.header{height:80px;padding:0 6%}.brand{font-size:47px}.brand-star{font-size:35px}.desktop-nav,.contact-link{display:none}.menu-toggle{display:flex;align-items:center;gap:20px;font-size:11px;padding:12px 0}.menu-toggle>span{font-size:22px}.mobile-menu{position:absolute;top:80px;left:0;width:100%;background:var(--acid);color:var(--ink);z-index:14;padding:20px 6% 35px;display:flex;flex-direction:column;box-shadow:0 25px 40px #0005}.mobile-menu a{font-size:40px;letter-spacing:-.06em;border-bottom:1px solid #a5bf42;padding:13px 0}.hero{padding:20px 6% 30px}.hero-top{font-size:8px;gap:15px}.hero-top>span:last-child{font-size:7px;white-space:nowrap}.hero-main{height:auto;min-height:0;display:flex;flex-direction:column;align-items:stretch}.hero-title-wrap{padding:45px 0 0;width:100%}.hero-title-wrap .eyebrow{font-size:8px;margin-bottom:20px}h1{font-size:clamp(45px,12.9vw,93px);letter-spacing:-.075em;line-height:.91}.hero-art{position:relative;width:85%;height:330px;right:auto;margin:0 0 0 auto;top:auto;margin-top:-6px}.art-front{width:60%;height:80%;right:26%;top:13%}.art-back{width:59%;height:79%;right:2%;top:5%}.hero-stamp{bottom:2%;right:0;width:79px;height:79px;font-size:15px}.hero-stamp span{font-size:17px;right:12px;top:10px}.art-coordinate{font-size:6px;left:8%;bottom:-3%}.cross-one{top:20%;right:96%}.cross-two{bottom:2%;right:92%}.art-tag{padding:8px 9px;font-size:6px}.art-tag b{font-size:11px}.hero-bottom{grid-template-columns:1fr;gap:23px;padding-top:30px}.hero-bottom>p{font-size:12px;max-width:85%;margin-left:65px;grid-row:1}.round-link{font-size:11px;gap:15px}.round-link small{font-size:9px}.round-arrow{width:49px;height:49px}.ticker{padding:12px 0;margin-top:0}.ticker>div{font-size:15px}.ticker span{margin:0 20px;font-size:17px}.section-pad{padding:65px 6%}.eyebrow{font-size:9px;margin-bottom:23px}h2{font-size:clamp(43px,11vw,72px)}.section-heading{display:block;margin-bottom:35px}.section-aside{font-size:11px;line-height:1.6;margin-top:25px}.work-toolbar{gap:10px;align-items:flex-start;padding-bottom:17px}.filters{gap:5px}.filters button{font-size:9px;padding:8px 10px}.view-switch{gap:0}.view-switch button{width:27px;font-size:21px;height:31px}.results-line{font-size:7px;padding:16px 0 20px}.project-grid{gap:28px;grid-template-columns:1fr}.project-image{aspect-ratio:1.15}.project-card:nth-child(6n+3) .project-image,.project-card:nth-child(6n+4) .project-image{aspect-ratio:1.15}.project-meta{padding-top:13px}.project-meta h3{font-size:22px}.project-meta p{font-size:9px}.project-number{font-size:8px}.project-image::after{opacity:1;width:32px;height:32px;font-size:18px;right:12px;top:12px;transform:none}.archive-button{margin-top:35px;font-size:14px}.archive-button .mono{font-size:7px;margin-right:12px}.list-mode .project-image{width:75px}.list-mode .project-meta h3{font-size:17px}.about-top>span{display:none}.about-layout{display:flex;flex-direction:column;padding:30px 0 45px;gap:30px}.about-art{width:57%;aspect-ratio:1;margin:auto}.about-asterisk{font-size:65vw}.about-art>.mono{font-size:7px;bottom:-5px;left:-30px}.about-copy h2{font-size:13vw;margin:25px 0}.about-lead{font-size:16px}.about-facts{margin-top:28px;padding:23px 0}.about-facts b{font-size:35px}.about-facts span{font-size:9px}.client-strip>div{display:grid;grid-template-columns:1fr 1fr;gap:20px;font-size:22px;margin-top:25px}.services-intro,.services-outro{font-size:12px}.services-intro{margin-bottom:30px}.service-item summary{grid-template-columns:28px 1fr 25px;gap:8px;padding:24px 0}.service-item summary .mono{font-size:8px}.service-item summary h3{font-size:24px;line-height:1.1}.service-item summary .plus{font-size:22px}.service-body{padding:0 0 20px 36px;font-size:12px}.service-body ul{columns:1;font-size:12px}.services-outro h3{font-size:19px}.contact-top{font-size:8px;padding-bottom:20px}.contact-pre{font-size:13px;margin:30px 0}.contact-title{font-size:23vw;padding-bottom:30px}.contact-arrow{font-size:.9em;right:0;top:20%}.contact-bottom{gap:22px;padding-top:25px}.contact-bottom>p{font-size:11px;max-width:300px}.phone{font-size:17px}.copy-button{font-size:9px}.copy-status{bottom:27px;font-size:8px}footer{flex-wrap:wrap;padding:30px 6%;gap:25px}.footer-logo{font-size:50px}footer p{margin:0 0 0 auto;font-size:7px}.back-top{font-size:8px;width:100%;border-top:1px solid var(--line);padding-top:20px}.cursor-label{display:none}.dialog-nav{height:75px;padding:18px 6%}.dialog-brand{font-size:33px}.dialog-nav>.mono{display:none}.close-project{font-size:10px;gap:15px}.detail-heading{padding:45px 6% 30px;grid-template-columns:1fr;gap:22px}.detail-heading h2{font-size:12vw}.detail-heading .eyebrow{font-size:8px}.detail-heading>.mono{font-size:9px}.detail-content{padding:0 6% 40px;font-size:13px}.detail-content img{margin-bottom:14px}.detail-content iframe{height:60vh;min-height:250px}.project-pagination{padding:25px 6%;gap:25px;flex-wrap:wrap}.project-pagination button{font-size:12px}.project-pagination .mono{order:3;width:100%;text-align:center;font-size:8px}.lightbox{padding:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.js-motion .reveal:not(.visible){opacity:1;transform:none}.cursor-label{display:none}}
[hidden]{display:none!important}
.work :focus-visible,.about :focus-visible,.contact :focus-visible,.project-dialog :focus-visible{outline-color:var(--ink)}

.archive-button{background:var(--acid);color:var(--ink);border:1px solid var(--acid);padding:25px 30px;font-weight:700;transition:background .2s,color .2s,border-color .2s}
.archive-button .mono{color:inherit;opacity:.7;font-weight:400}
.archive-button:hover{background:var(--ink);color:var(--acid);border-color:var(--ink)}
@media(min-width:1051px){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-card:nth-child(6n+3) .project-image,.project-card:nth-child(6n+4) .project-image{aspect-ratio:1.22}}
@media(max-width:700px){.archive-button{padding:20px 16px;font-size:13px}.archive-button .mono{font-size:7px;margin-right:12px}}

.archive-label{display:inline-flex;align-items:center;gap:14px}
.archive-asterisk{display:inline-grid;place-items:center;flex-shrink:0;width:32px;height:32px;font-size:32px;line-height:1;animation:turn 18s linear infinite}
.ticker .ticker-track{display:flex;align-items:center;gap:0;width:max-content;will-change:transform}
.ticker-group{display:flex;align-items:center;flex-shrink:0;white-space:nowrap}
@media(max-width:700px){.archive-label{gap:10px}.archive-asterisk{width:24px;height:24px;font-size:24px}}

.about-layout{column-gap:8%;row-gap:50px}
.about-lead{font-family:Georgia,'Times New Roman',serif;font-size:clamp(21px,1.8vw,28px);line-height:1.55;letter-spacing:-.035em}
.about-lead strong{font-weight:400}
.about-details{grid-column:1/-1;margin-top:0;border-top:1px solid #a5bf42}
.about-details summary{padding:24px 0;font-size:12px}
.about-details #about-original{padding:35px 0 10px;font-family:Georgia,'Times New Roman',serif;font-size:19px;line-height:1.7;letter-spacing:-.015em}
#about-original .story-kicker{font:10px/1.5 var(--mono);letter-spacing:.1em;margin-bottom:25px}
#about-original .story-kicker strong{font-weight:400}
.story-intro{max-width:1000px;font-size:clamp(25px,2.45vw,38px);line-height:1.4;letter-spacing:-.035em;text-wrap:pretty}
#about-original strong{font-weight:400}
.story-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4%;margin:45px 0}
.story-column{border-top:1px solid #a5bf42;padding-top:22px}
.story-column h3{font:11px/1.5 var(--mono);letter-spacing:.025em;text-transform:uppercase;margin-bottom:22px}
.story-paragraph{text-wrap:pretty}
.story-closing{max-width:950px;margin:0 0 0 auto;padding:32px 0 5px;border-top:1px solid #a5bf42;font-size:clamp(26px,2.7vw,42px);line-height:1.35;font-style:italic;letter-spacing:-.04em;text-wrap:pretty}
@media(max-width:1050px){.story-columns{grid-template-columns:1fr;gap:28px}.story-paragraph{max-width:70ch}.about-details #about-original{font-size:19px}.story-column h3{margin-bottom:14px}}
@media(max-width:700px){.about-layout{gap:30px}.about-lead{font-size:22px}.about-details summary{font-size:11px;padding:20px 0}.about-details #about-original{padding-top:20px;font-size:18px;line-height:1.65}.story-intro{font-size:25px}.story-columns{margin:30px 0;gap:25px}.story-column h3{font-size:10px}.story-closing{font-size:27px;padding-top:25px}}

.about-details{border-top:0}
.about-details summary{display:flex;align-items:center;justify-content:space-between;gap:24px;width:100%;padding:25px 30px;border:1px solid var(--ink);background:var(--ink);color:var(--acid);font-family:Georgia,'Times New Roman',serif;font-size:clamp(26px,2.5vw,38px);font-weight:400;line-height:1.2;letter-spacing:-.035em;transition:background .2s,color .2s}
.about-details summary:hover{background:transparent;color:var(--ink)}
.about-details summary:focus-visible{outline:2px solid var(--ink);outline-offset:5px}
.about-details summary span{display:grid;place-items:center;flex-shrink:0;width:40px;height:40px;border:1px solid currentColor;border-radius:50%;font-family:var(--sans);font-size:24px;line-height:1;transition:transform .25s}
@media(max-width:700px){.about-details summary{padding:22px 20px;font-size:26px;gap:18px}.about-details summary span{width:34px;height:34px;font-size:21px}}

.services .section-aside{max-width:300px;margin-right:0;padding-left:24px;border-left:1px solid var(--acid);font-family:Georgia,'Times New Roman',serif;font-size:clamp(20px,1.55vw,25px);font-style:italic;line-height:1.45;letter-spacing:-.025em;color:var(--paper);text-wrap:pretty}
.services-intro{display:grid;grid-template-columns:1.1fr 1fr;gap:7%;max-width:none;margin:40px 0 60px;padding-top:35px;border-top:1px solid var(--line);font-family:Georgia,'Times New Roman',serif;letter-spacing:-.025em}
.services-intro p{margin:0;font-size:clamp(21px,1.65vw,27px);line-height:1.6;color:#c1c3b7;text-wrap:pretty}
.services-intro p:first-child{font-size:clamp(25px,2.15vw,35px);line-height:1.45;color:var(--paper)}
.services-intro strong{font-weight:400;font-style:italic;color:var(--paper)}
@media(max-width:700px){.services .section-aside{max-width:320px;padding-left:18px;font-size:21px;margin-top:30px}.services-intro{grid-template-columns:1fr;gap:24px;margin:30px 0 40px;padding-top:28px}.services-intro p{font-size:21px}.services-intro p:first-child{font-size:26px}}

.project-card.card-pending{transition:opacity .8s ease var(--card-delay,0ms),transform .9s cubic-bezier(.2,.75,.25,1) var(--card-delay,0ms)}
.project-card.card-pending:not(.card-visible){opacity:0;transform:translate3d(0,32px,0)}
.project-card.card-pending:not(.card-visible) .project-image img{transform:scale(1.06)}
.project-card.card-pending:focus-within{opacity:1;transform:none;transition-delay:0s}
.project-card.card-pending:focus-within .project-image img{transform:none}
@media(prefers-reduced-motion:reduce){.project-card.card-pending:not(.card-visible){opacity:1;transform:none}.project-card.card-pending:not(.card-visible) .project-image img{transform:none}}

/* Geometric icons keep the same appearance on Safari, iOS and desktop. */
.icon{display:inline-block;width:1em;height:1em;vertical-align:-.1em;flex-shrink:0;pointer-events:none;overflow:visible}
.about-asterisk>.icon{display:block}
.brand-star>.icon{display:block;width:.9em;height:.9em}
.footer-logo,.dialog-brand{display:inline-flex;align-items:center;gap:.08em}
.footer-logo>.icon,.dialog-brand>.icon{width:.72em;height:.72em}
.phone,.project-pagination button{display:inline-flex;align-items:center;gap:.35em}
.cursor-label{display:flex;align-items:center;justify-content:center;gap:5px}
.project-image::after{content:none}
.project-image .project-open{position:absolute;right:18px;top:18px;z-index:1;display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--acid);color:var(--ink);font-size:23px;opacity:0;transform:translateY(8px);transition:opacity .3s,transform .3s}
.project-trigger:hover .project-open{opacity:1;transform:translateY(0)}
.list-mode .project-open{display:none}
@media(max-width:700px){.project-image .project-open{opacity:1;transform:none;width:32px;height:32px;font-size:18px;right:12px;top:12px}}

/* Portfolio: return to the preserved listing position. */
.detail-title-row{display:flex;align-items:center;gap:24px;flex-wrap:wrap}
.detail-title-row h2{flex:1 1 320px}
.project-back{display:inline-flex;align-items:center;justify-content:center;gap:12px;flex:0 0 auto;background:var(--acid);color:var(--ink);padding:15px 21px;font:12px/1.2 var(--mono);font-weight:bold;border:1px solid transparent;border-radius:2px;transition:background .2s,transform .2s}
.project-back:hover{background:#c7ee36;transform:translateY(-2px)}
.project-back .icon{width:19px;height:19px}
.detail-content figure{margin:0 0 25px}
.art-tag{gap:8px;align-items:center}.art-tag b{flex-shrink:0}
@media(max-width:700px){.detail-title-row{gap:18px;align-items:flex-start}.detail-title-row h2{flex-basis:100%}.project-back{padding:13px 18px;font-size:11px}.detail-content figure{margin-bottom:14px}}

/* Website project: complete page captures remain uncropped. */
.website-project-image img{width:100%;height:auto;max-height:none}
.website-project-image figcaption{padding:32px 0 18px;margin-top:20px;border-top:1px solid #c7c8bd;color:#6a6c60;font-size:11px;letter-spacing:.08em}

/* Alcom: consistent gallery width without cropping. */
.detail-content[data-project-content="alcom"] img{width:100%;height:auto;max-width:100%;max-height:none;object-fit:contain}

/* Sonnar Lab: uniform gallery at the smallest source width, never upscale. */
.detail-content[data-project-content="sonnar-lab"] img{width:100%;max-width:973px;height:auto;max-height:none;object-fit:contain;margin-left:auto;margin-right:auto}

/* Approved subtle SVG motion in the hero. */
.hero{isolation:isolate}.motion-background{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}.motion-background>svg{display:block;width:100%;height:100%}@media(max-width:700px){.motion-background{opacity:.65}}
