*,:before,:after{box-sizing:border-box;margin:0;padding:0}:root{--color-bg:#f9f8f4;--color-bg-warm:#ede8e0;--color-text:#2c2118;--color-text-light:#8a7e72;--color-accent:#4a3f35;--color-border:#d4ccc2;--color-dot:#c5bdb3;--color-cream:#faf8f5;--font-serif:"Montserrat", -apple-system, sans-serif;--font-sans:"General Sans", -apple-system, sans-serif;--font-mono:"General Sans", -apple-system, sans-serif;--nav-height:57px;--page-pad:clamp(20px, 4vw, 60px)}html{scroll-behavior:smooth;-webkit-font-smoothing:antialiased;font-size:16px}body{font-family:var(--font-sans);background:var(--color-bg);color:var(--color-text);line-height:1.6;overflow-x:hidden}a{color:inherit;text-decoration:none}img{max-width:100%;display:block}button{cursor:pointer;color:inherit;background:0 0;border:none}::selection{background:var(--color-text);color:var(--color-bg)}.page-transition{background:var(--color-text);z-index:9999;transform-origin:bottom;pointer-events:none;width:100%;height:100%;position:fixed;top:0;left:0;transform:scaleY(0)}.page-transition.active{animation:.6s cubic-bezier(.76,0,.24,1) forwards pageIn,.6s cubic-bezier(.76,0,.24,1) .6s forwards pageOut}@keyframes pageIn{0%{transform-origin:bottom;transform:scaleY(0)}to{transform-origin:bottom;transform:scaleY(1)}}@keyframes pageOut{0%{transform-origin:top;transform:scaleY(1)}to{transform-origin:top;transform:scaleY(0)}}.nav{height:var(--nav-height);padding:0 var(--page-pad);z-index:100;background:var(--color-bg);justify-content:space-between;align-items:center;display:flex;position:fixed;top:0;left:0;right:0}.nav-brand{align-items:center;transition:opacity .4s;display:flex}.nav-brand:hover{opacity:.5}.nav-logo{width:auto;height:16px}.nav-center{align-items:center;gap:1.5rem;display:flex;position:absolute;left:50%;transform:translate(-50%)}.nav-right{align-items:center;gap:1.2rem;display:flex}.nav-clock{font-family:var(--font-sans);color:var(--color-text-light);letter-spacing:.02em;font-size:12px;font-weight:400}.nav-link{font-family:var(--font-sans);letter-spacing:.01em;color:var(--color-text);font-size:14px;font-weight:500;transition:opacity .4s}.nav-link:hover,.nav-link.active{opacity:.35}.nav-menu-btn{z-index:101;flex-direction:column;gap:6px;padding:4px;display:none}.nav-menu-btn span{background:var(--color-text);width:20px;height:1px;transition:transform .4s,opacity .4s;display:block}.nav-menu-btn.active span:first-child{transform:rotate(45deg)translate(2px,2px)}.nav-menu-btn.active span:last-child{transform:rotate(-45deg)translate(2px,-2px)}.mobile-menu{background:var(--color-bg);z-index:99;opacity:0;pointer-events:none;justify-content:center;align-items:center;width:100%;height:100dvh;transition:opacity .5s;display:flex;position:fixed;top:0;left:0}.mobile-menu.active{opacity:1;pointer-events:all}.mobile-menu-inner{text-align:center;flex-direction:column;gap:.5rem;display:flex}.mobile-menu-link{font-family:var(--font-sans);letter-spacing:.01em;opacity:0;padding:.75rem 0;font-size:1.1rem;font-weight:300;transition:opacity .4s,transform .4s;display:block;transform:translateY(12px)}.mobile-menu-link:hover{opacity:.35}.mobile-menu.active .mobile-menu-link{opacity:1;transform:translateY(0)}.mobile-menu.active .mobile-menu-link:first-child{transition-delay:.1s}.mobile-menu.active .mobile-menu-link:nth-child(2){transition-delay:.15s}.mobile-menu.active .mobile-menu-link:nth-child(3){transition-delay:.2s}.mobile-menu.active .mobile-menu-link:nth-child(4){transition-delay:.25s}#app{min-height:100vh;padding-top:var(--nav-height)}.dot-grid{background-image:radial-gradient(circle, var(--color-dot) 1px, transparent 1px);opacity:.4;pointer-events:none;background-size:28px 28px;width:100%;height:100%;position:absolute;top:0;left:0}.home{position:relative}.hero-bg{height:calc(100vh - var(--nav-height));z-index:3;background:var(--color-bg);align-items:flex-end;display:flex;position:relative}.hero-bg.pinned{top:var(--nav-height);position:fixed;left:0;right:0}.hero-bg .hero-images{padding:0 var(--page-pad);width:100%}.hero-images{grid-template-columns:1fr 1fr 1fr;gap:10px;display:grid}.hero-img-col{flex-direction:column;display:flex}.hero-img-col .hero-img-wrapper{margin-top:auto}.hero-img-wrapper{border-radius:2px;width:100%;position:relative;overflow:hidden}.hero-img-col:first-child .hero-img-wrapper{aspect-ratio:437/534}.hero-img-col:first-child .hero-img{object-position:center 35%}.hero-img-col:nth-child(2) .hero-img-wrapper{aspect-ratio:437/400}.hero-img-col:nth-child(3) .hero-img-wrapper{aspect-ratio:437/450}.hero-img-placeholder{background:var(--color-bg-warm);justify-content:center;align-items:center;width:100%;height:100%;display:flex}.hero-video,.hero-img{object-fit:cover;width:100%;height:100%;display:block}.hero-img-placeholder span{font-family:var(--font-mono);color:var(--color-dot);text-transform:uppercase;letter-spacing:.1em;font-size:.6rem}.hero-img-caption{font-family:var(--font-sans);color:var(--color-text-light);justify-content:space-between;align-items:baseline;gap:1rem;min-height:4.2rem;padding:.5rem 0 1.5rem;font-size:12px;font-weight:400;line-height:1.4;display:flex}.hero-img-num{flex-shrink:0}.hero-img-label{text-align:right}.home-hero{z-index:4;-webkit-backdrop-filter:blur(.8px);backdrop-filter:blur(.8px);background:#f9f8f4d6;height:100vh;position:relative}.hero-content{width:100%;padding:2.5rem var(--page-pad);min-height:calc(100vh - var(--nav-height));justify-content:space-between;align-items:flex-start;display:flex}.hero-text{max-width:480px;font-family:var(--font-sans);color:var(--color-text);font-size:14px;font-weight:500;line-height:1.75}.hero-text p{margin-bottom:1em}.hero-text p:last-child{margin-bottom:0}.hero-services{text-align:right;flex-direction:column;align-self:flex-end;align-items:flex-end;gap:0;display:flex}.hero-service-item{font-family:var(--font-serif);color:var(--color-text);font-size:20px;font-weight:500;line-height:1.4}.home-archive{padding:6rem var(--page-pad);z-index:2;background:var(--color-bg);position:relative}.section-header{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:baseline;margin-bottom:3rem;padding-bottom:1rem;display:flex}.section-title{font-family:var(--font-serif);font-size:1rem;font-style:italic;font-weight:400}.section-count{font-family:var(--font-mono);color:var(--color-text-light);letter-spacing:.1em;text-transform:uppercase;font-size:.65rem}.archive-list{flex-direction:column;display:flex}.archive-item{border-bottom:1px solid var(--color-border);cursor:pointer;grid-template-columns:60px 1fr 200px 100px;align-items:center;gap:2rem;padding:1.25rem 0;transition:background .3s,padding .3s,margin .3s;display:grid;position:relative}.archive-item:hover{background:var(--color-bg-warm);margin-left:-1rem;margin-right:-1rem;padding-left:1rem;padding-right:1rem}.archive-item-num{font-family:var(--font-mono);color:var(--color-text-light);font-size:.7rem}.archive-item-title{font-family:var(--font-serif);font-size:1.35rem;font-weight:400}.archive-item-cat{font-family:var(--font-mono);color:var(--color-text-light);text-transform:uppercase;letter-spacing:.06em;font-size:.7rem}.archive-item-year{font-family:var(--font-mono);color:var(--color-text-light);text-align:right;font-size:.7rem}.home-marquee{border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);white-space:nowrap;padding:2rem 0;overflow:hidden}.marquee-track{animation:30s linear infinite marquee;display:inline-flex}.marquee-item{font-family:var(--font-serif);color:var(--color-text-light);padding:0 3rem;font-size:1.1rem;font-style:italic}.marquee-item:after{content:"  • ";margin-left:3rem}@keyframes marquee{0%{transform:translate(0)}to{transform:translate(-50%)}}.home-intro{padding:6rem var(--page-pad);z-index:2;background:var(--color-bg);grid-template-columns:200px 1fr;gap:4rem;display:grid;position:relative}.home-intro-label{font-family:var(--font-mono);color:var(--color-text-light);text-transform:uppercase;letter-spacing:.1em;padding-top:.5rem;font-size:.7rem}.home-intro-text{max-width:600px}.home-intro-text p{font-family:var(--font-serif);margin-bottom:1.5rem;font-size:1.5rem;font-weight:400;line-height:1.6}.home-intro-text p em{font-style:italic}.home-intro-link{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.06em;border-bottom:1px solid var(--color-text);align-items:center;gap:.5rem;margin-top:1rem;padding-bottom:2px;font-size:.75rem;transition:gap .3s;display:inline-flex}.home-intro-link:hover{gap:1rem}.work-page{padding:4rem 100px 6rem}.work-filter{padding:1.25rem var(--page-padding);border-bottom:1px solid var(--color-border);align-items:center;gap:1.5rem;display:flex}.work-filter-tag{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-light);cursor:pointer;background:0 0;border:none;padding:0;font-size:.65rem;font-weight:500;transition:color .2s}.work-filter-tag:hover,.work-filter-tag.active{color:var(--color-text)}.work-editorial{flex-direction:column;display:flex}.work-ed-item{cursor:pointer;grid-template-columns:1fr 300px 1fr;align-items:center;gap:0;transition:opacity .4s;display:grid}.work-ed-item:hover{opacity:.6}.work-ed-title{font-family:var(--font-sans);color:var(--color-text);justify-self:start;padding-right:2rem;font-size:15px;font-weight:400}.work-ed-image{width:100%}.work-ed-image-inner{background:var(--color-bg-warm);width:100%;overflow:hidden}.work-ed-image-placeholder{font-family:var(--font-sans);color:var(--color-dot);text-transform:uppercase;letter-spacing:.1em;font-size:.65rem}.work-ed-image-inner img{width:100%;height:auto;display:block}a.work-ed-item{color:inherit;text-decoration:none}.work-ed-meta{font-family:var(--font-sans);color:var(--color-text);justify-self:end;padding-left:2rem;font-size:14px;font-weight:400}.work-ed-meta em{font-style:italic}.playground-page{padding:4rem var(--page-pad) 6rem}.pg-glossary{grid-template-rows:repeat(12,minmax(80px,auto));grid-template-columns:repeat(8,1fr);gap:0;min-height:80vh;display:grid;position:relative}.pg-grid{pointer-events:none;z-index:0;grid-template-rows:repeat(12,minmax(80px,auto));grid-template-columns:repeat(8,1fr);width:100%;height:100%;display:grid;position:absolute;top:0;left:0}.pg-grid-num{font-family:var(--font-mono);color:var(--color-dot);-webkit-user-select:none;user-select:none;padding:4px 0 0 4px;font-size:.55rem;line-height:1}.pg-header{z-index:2;align-items:flex-start;padding:0 .5rem;display:flex;position:relative}.pg-header-label{font-family:var(--font-serif);letter-spacing:.02em;text-transform:uppercase;font-size:1rem;font-weight:500}.pg-entry{z-index:2;align-self:start;padding:.75rem;position:relative}.pg-entry-title{font-family:var(--font-serif);text-transform:uppercase;letter-spacing:.02em;margin-bottom:.5rem;font-size:1.05rem;font-weight:600}.pg-entry-desc{font-family:var(--font-sans);color:var(--color-text-light);max-width:220px;font-size:.75rem;line-height:1.65}.pg-entry[style*=text-align\:center] .pg-entry-desc{margin:0 auto}.pg-image{z-index:2;padding:.5rem;position:relative}.pg-image-inner{background:var(--color-bg-warm);border:1px solid var(--color-border);cursor:pointer;justify-content:center;align-items:center;width:100%;height:100%;min-height:120px;transition:transform .4s;display:flex;overflow:hidden}.pg-image-inner:hover{transform:scale(1.02)}.pg-image-placeholder{font-family:var(--font-mono);color:var(--color-dot);text-transform:uppercase;letter-spacing:.1em;font-size:.6rem}.pg-image-sm .pg-image-inner{min-height:140px}.pg-image-md .pg-image-inner{min-height:200px}.pg-image-lg .pg-image-inner{min-height:280px}.contact-page{padding:4rem var(--page-pad) 8rem}.contact-hero{border-bottom:1px solid var(--color-border);grid-template-columns:1fr 1fr;align-items:end;gap:4rem;margin-bottom:6rem;padding-bottom:4rem;display:grid}.contact-title{font-family:var(--font-serif);font-size:clamp(2.5rem,5vw,4.5rem);font-weight:400;line-height:1.1}.contact-title em{font-style:italic}.contact-intro{font-family:var(--font-sans);color:var(--color-text-light);align-self:end;max-width:340px;font-size:.9rem;line-height:1.8}.contact-body{grid-template-columns:1fr 1fr;gap:6rem;display:grid}.contact-col{flex-direction:column;gap:3.5rem;display:flex}.contact-block{flex-direction:column;gap:1rem;display:flex}.contact-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-light);font-size:.65rem}.contact-email{font-family:var(--font-serif);color:var(--color-text);font-size:clamp(1.2rem,2.5vw,1.75rem);text-decoration:none;transition:opacity .3s;display:inline-block}.contact-email:hover{opacity:.5}.contact-links{flex-direction:column;gap:0;list-style:none;display:flex}.contact-link{font-family:var(--font-serif);color:var(--color-text);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;padding:.75rem 0;font-size:1rem;text-decoration:none;transition:opacity .3s;display:flex}.contact-links li:first-child .contact-link{border-top:1px solid var(--color-border)}.contact-link:hover{opacity:.5}.contact-link-arrow{color:var(--color-text-light);font-size:.85rem;font-style:normal}.contact-value{font-family:var(--font-serif);font-size:1rem;line-height:1.6}.contact-value-secondary{font-family:var(--font-mono);color:var(--color-text-light);letter-spacing:.06em;font-size:.7rem}.contact-services{flex-direction:column;gap:0;list-style:none;display:flex}.contact-services li{font-family:var(--font-serif);border-bottom:1px solid var(--color-border);align-items:center;gap:1.25rem;padding:.75rem 0;font-size:1rem;display:flex}.contact-services li:first-child{border-top:1px solid var(--color-border)}.contact-service-num{font-family:var(--font-mono);color:var(--color-text-light);letter-spacing:.06em;font-size:.65rem}.contact-availability{align-items:center;gap:.75rem;display:flex}.contact-availability-dot{background:#4caf50;border-radius:50%;flex-shrink:0;width:7px;height:7px}.contact-form-section{border-top:1px solid var(--color-border);margin-top:6rem;padding-top:4rem}.contact-form-header{margin-bottom:2.5rem}.contact-form{flex-direction:column;gap:0;display:flex}.contact-form-row{grid-template-columns:1fr 1fr;gap:0;display:grid}.contact-field{border-bottom:1px solid var(--color-border);flex-direction:column;gap:.5rem;padding:1.5rem 3rem 1.5rem 0;display:flex}.contact-form-row .contact-field:last-child{border-left:1px solid var(--color-border);padding-left:3rem;padding-right:0}.contact-field-full{padding-right:0}.contact-field-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-light);font-size:.65rem}.contact-field-input{font-family:var(--font-serif);color:var(--color-text);background:0 0;border:none;outline:none;width:100%;padding:.25rem 0;font-size:1rem}.contact-field-input::placeholder{color:var(--color-border)}.contact-select{appearance:none;cursor:pointer}.contact-textarea{resize:none;line-height:1.7}.contact-form-footer{padding-top:2.5rem}.contact-submit{font-family:var(--font-sans);letter-spacing:.05em;color:var(--color-text);border:1px solid var(--color-text);cursor:pointer;background:0 0;align-items:center;gap:.75rem;padding:.9rem 2.5rem;font-size:.85rem;transition:background .3s,color .3s;display:inline-flex}.contact-submit:hover{background:var(--color-text);color:var(--color-bg)}.contact-submit-arrow{transition:transform .3s}.contact-submit:hover .contact-submit-arrow{transform:translate(4px)}.contact-submit:disabled{opacity:.5;cursor:not-allowed}.contact-submit:disabled:hover{color:var(--color-text);background:0 0}.contact-form-error{font-family:var(--font-mono);color:#b94040;letter-spacing:.04em;margin-top:1rem;font-size:.7rem}.contact-success{padding:6rem var(--page-pad);justify-content:center;align-items:center;display:flex}.contact-success-inner{text-align:center;flex-direction:column;align-items:center;gap:1.25rem;display:flex}.contact-success-icon{color:#4caf50;font-size:2rem}.contact-success-title{font-family:var(--font-serif);font-size:clamp(1.75rem,3vw,2.5rem);font-weight:400}.contact-success-body{font-family:var(--font-sans);color:var(--color-text-light);font-size:.9rem;line-height:1.8}.about-page{padding:4rem var(--page-pad) 6rem}.about-hero{grid-template-columns:1fr 1fr;align-items:center;gap:4rem;min-height:60vh;margin-bottom:6rem;display:grid}.about-hero-text{max-width:480px}.about-hero-title{font-family:var(--font-serif);margin-bottom:2rem;font-size:clamp(2.2rem,4vw,3.5rem);font-weight:400;line-height:1.15}.about-hero-title em{font-style:italic}.about-hero-body p{font-family:var(--font-sans);color:var(--color-text-light);margin-bottom:1rem;font-size:.9rem;line-height:1.8}.about-hero-portrait{aspect-ratio:3/4;background:var(--color-bg-warm);border:1px solid var(--color-border);justify-content:center;align-items:center;width:100%;display:flex;position:relative}.about-hero-portrait-label{font-family:var(--font-mono);color:var(--color-dot);text-transform:uppercase;letter-spacing:.1em;font-size:.65rem}.about-details{border-top:1px solid var(--color-border);grid-template-columns:repeat(3,1fr);gap:3rem;padding:4rem 0;display:grid}.about-detail-block{padding-right:2rem}.about-detail-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.12em;color:var(--color-text-light);border-bottom:1px solid var(--color-border);margin-bottom:1.25rem;padding-bottom:.75rem;font-size:.65rem}.about-detail-list{list-style:none}.about-detail-list li{font-family:var(--font-serif);justify-content:space-between;align-items:baseline;padding:.4rem 0;font-size:1rem;display:flex}.about-detail-list li span{font-family:var(--font-mono);color:var(--color-text-light);font-size:.65rem}.about-experience{border-top:1px solid var(--color-border);padding:4rem 0}.about-experience-header{margin-bottom:2rem}.about-exp-item{border-bottom:1px solid var(--color-border);grid-template-columns:200px 1fr 150px;gap:2rem;padding:1.25rem 0;display:grid}.about-exp-year{font-family:var(--font-mono);color:var(--color-text-light);padding-top:.3rem;font-size:.7rem}.about-exp-role{font-family:var(--font-serif);margin-bottom:.25rem;font-size:1.1rem;font-weight:400}.about-exp-company{font-family:var(--font-sans);color:var(--color-text-light);font-size:.8rem}.about-exp-location{font-family:var(--font-mono);color:var(--color-text-light);text-align:right;padding-top:.3rem;font-size:.7rem}.about-contact{text-align:center;padding:6rem 0}.about-contact-title{font-family:var(--font-serif);margin-bottom:1.5rem;font-size:clamp(1.8rem,3.5vw,2.8rem);font-style:italic;font-weight:400}.about-contact-email{font-family:var(--font-mono);letter-spacing:.05em;border-bottom:1px solid var(--color-text);padding-bottom:4px;font-size:.85rem;transition:letter-spacing .3s}.about-contact-email:hover{letter-spacing:.12em}.footer{padding:2.5rem var(--page-pad);z-index:2;background:var(--color-bg);position:relative}.footer-inner{justify-content:space-between;align-items:center;display:flex}.footer-brand{font-family:var(--font-sans);color:var(--color-text-light);letter-spacing:.01em;font-size:.75rem;font-weight:300}.footer-links{align-items:center;gap:2rem;display:flex}.footer-link{font-family:var(--font-sans);color:var(--color-text-light);font-size:.75rem;font-weight:300;transition:opacity .4s}.footer-link:hover{opacity:.4}.fade-in{opacity:0;animation:.7s forwards fadeIn;transform:translateY(16px)}.fade-in-delay-1{animation-delay:.1s}.fade-in-delay-2{animation-delay:.2s}.fade-in-delay-3{animation-delay:.3s}.fade-in-delay-4{animation-delay:.4s}.fade-in-delay-5{animation-delay:.5s}@keyframes fadeIn{to{opacity:1;transform:translateY(0)}}.stagger-children>*{opacity:0;animation:.5s forwards fadeIn;transform:translateY(12px)}.stagger-children>:first-child{animation-delay:50ms}.stagger-children>:nth-child(2){animation-delay:.1s}.stagger-children>:nth-child(3){animation-delay:.15s}.stagger-children>:nth-child(4){animation-delay:.2s}.stagger-children>:nth-child(5){animation-delay:.25s}.stagger-children>:nth-child(6){animation-delay:.3s}.stagger-children>:nth-child(7){animation-delay:.35s}.stagger-children>:nth-child(8){animation-delay:.4s}.cs-page{padding:3rem var(--page-pad) 0}.cs-header{margin-bottom:2.5rem;padding-bottom:2.5rem}.cs-summary{font-family:var(--font-sans);letter-spacing:-.01em;max-width:1060px;margin-bottom:1.5rem;font-size:clamp(1.5rem,2.5vw,36px);font-weight:400;line-height:1.35}.cs-client{color:var(--color-text-light)}.cs-tags{flex-wrap:wrap;align-items:center;gap:1.5rem;display:flex}.cs-paren{font-family:var(--font-mono);color:var(--color-text-light);font-size:.75rem}.cs-tag{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text-light);font-size:.65rem;font-weight:500}.cs-body{grid-template-columns:1fr 280px;align-items:start;gap:2rem;display:grid;position:relative}.cs-gallery{grid-template-columns:repeat(12,1fr);gap:8px;display:grid}.cs-media-full{grid-column:span 12}.cs-media-half{grid-column:span 6}.cs-media-third{grid-column:span 4}.cs-gallery-text{grid-column:span 12;padding:2.5rem 0 1.5rem}.cs-gallery-heading{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text);margin-bottom:.75rem;font-size:.7rem;font-weight:600}.cs-gallery-body{font-family:var(--font-sans);color:var(--color-text-light);max-width:640px;font-size:.9rem;font-weight:400;line-height:1.7}.cs-gallery-list{font-family:var(--font-sans);color:var(--color-text-light);max-width:640px;margin-top:.5rem;padding-left:1.25rem;font-size:.9rem;font-weight:400;line-height:1.7}.cs-gallery-list li{margin-bottom:.4rem}.cs-media-full figure,.cs-media-half figure,.cs-media-third figure{background:var(--color-bg-warm);border-radius:0;position:relative;overflow:hidden}.cs-media-full img,.cs-media-half img,.cs-media-third img{width:100%;height:auto;display:block}.cs-sidebar{top:calc(var(--nav-height) + 1.5rem);flex-direction:column;gap:0;display:flex;position:sticky}.cs-accordion{border-top:1px solid var(--color-border)}.cs-accordion:last-child{border-bottom:1px solid var(--color-border)}.cs-accordion-trigger{width:100%;font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.08em;color:var(--color-text);cursor:pointer;justify-content:space-between;align-items:center;padding:.9rem 0;font-size:.75rem;font-weight:500;transition:color .3s;display:flex}.cs-accordion-trigger:hover{color:var(--color-text-light)}.cs-accordion-icon{flex-shrink:0;width:10px;height:10px;position:relative}.cs-accordion-icon:before,.cs-accordion-icon:after{content:"";background:var(--color-text-light);transition:transform .3s;position:absolute}.cs-accordion-icon:before{width:10px;height:1px;top:50%;left:0}.cs-accordion-icon:after{width:1px;height:10px;top:0;left:50%}.cs-accordion.open .cs-accordion-icon:after{transform:rotate(90deg)}.cs-accordion-panel{max-height:0;transition:max-height .4s;overflow:hidden}.cs-accordion.open .cs-accordion-panel{max-height:800px}.cs-accordion-content{padding:0 0 1.25rem}.cs-info-table{width:100%}.cs-info-row{justify-content:space-between;align-items:baseline;padding:.3rem 0;display:flex}.cs-info-label{font-family:var(--font-mono);color:var(--color-text-light);text-transform:uppercase;letter-spacing:.06em;flex-shrink:0;font-size:.65rem}.cs-info-value{font-family:var(--font-sans);color:var(--color-text);text-align:right;font-size:.8rem}.cs-sidebar-list{padding:0;list-style:none}.cs-sidebar-list li{font-family:var(--font-sans);color:var(--color-text);padding:.2rem 0 .2rem .9rem;font-size:.8rem;position:relative}.cs-sidebar-list li:before{content:"";background:var(--color-dot);border-radius:50%;width:4px;height:4px;position:absolute;top:.65rem;left:0}.cs-sidebar-text{font-family:var(--font-sans);color:var(--color-text-light);font-size:.8rem;line-height:1.65}.cs-nav{border-top:1px solid var(--color-border);align-items:stretch;margin-top:4rem;display:flex}.cs-prev{padding:3rem var(--page-pad);border-right:1px solid var(--color-border);color:inherit;flex:1;align-items:center;gap:1.5rem;text-decoration:none;transition:background .3s;display:flex}.cs-prev:hover{background:var(--color-bg-warm)}.cs-prev-arrow{color:var(--color-text-light);font-size:1.5rem;transition:transform .3s}.cs-prev:hover .cs-prev-arrow{transform:translate(-6px)}.cs-next{padding:3rem var(--page-pad);cursor:pointer;flex:1;justify-content:space-between;align-items:center;transition:background .3s,padding .3s;display:flex}.cs-next:hover{background:var(--color-bg-warm)}.cs-next-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.1em;color:var(--color-text-light);margin-bottom:.5rem;font-size:.65rem}.cs-next-title{font-family:var(--font-serif);font-size:1.5rem;font-weight:400}.cs-next-arrow{color:var(--color-text-light);font-size:1.5rem;transition:transform .3s}.cs-next:hover .cs-next-arrow{transform:translate(6px)}@media (width<=900px){.nav-center,.nav-right{display:none}.nav-menu-btn{display:flex}.hero-bg{padding:0 var(--page-pad);height:auto}.hero-images{grid-template-columns:1fr;gap:12px}.hero-img-col:first-child .hero-img-wrapper,.hero-img-col:nth-child(2) .hero-img-wrapper,.hero-img-col:nth-child(3) .hero-img-wrapper{aspect-ratio:4/3}.home-hero{height:100svh}.hero-content{min-height:calc(100vh - var(--nav-height));min-height:calc(100svh - var(--nav-height));padding:2rem var(--page-pad);flex-direction:column}.hero-text{max-width:100%;margin-bottom:2rem;font-size:14px}.hero-services{text-align:left;align-self:flex-start;align-items:flex-start}.hero-service-item{font-size:1.3rem}.info-tag-row{grid-template-columns:120px 1fr;gap:1rem}.archive-item{grid-template-columns:40px 1fr 80px;gap:1rem}.archive-item-cat{display:none}.work-page{padding:4rem var(--page-pad) 6rem}.work-ed-item{grid-template-columns:1fr 200px 1fr}.work-ed-title{padding-right:1rem;font-size:13px}.work-ed-meta{padding-left:1rem;font-size:12px}.pg-glossary{grid-template-rows:auto;grid-template-columns:repeat(4,1fr)}.pg-grid{display:none}.pg-glossary>*{grid-area:auto!important}.about-hero{grid-template-columns:1fr;gap:2rem}.about-hero-portrait{max-height:400px}.about-details{grid-template-columns:1fr;gap:2rem}.about-exp-item{grid-template-columns:1fr;gap:.5rem}.about-exp-location{text-align:left}.home-intro{grid-template-columns:1fr;gap:1.5rem}.footer-inner{text-align:center;flex-direction:column;gap:1rem}.cs-body{grid-template-columns:1fr}.cs-sidebar{border-bottom:1px solid var(--color-border);order:-1;margin-bottom:1rem;padding-bottom:1.5rem;position:relative;top:0}.cs-gallery{gap:6px}.cs-media-half{grid-column:span 12}.cs-media-third{grid-column:span 6}.cs-next,.cs-prev{padding:2rem var(--page-pad)}}@media (width<=600px){.pg-glossary{grid-template-columns:repeat(2,1fr)}}
