:root{--ink:#191919;--paper:#f4f4f0;--lime:#dfff00}
[hidden]{display:none!important}.sr-only,.honeypot{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}.filters{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 32px}.filters button,.share-button{background:transparent;border:1px solid #b7b7b0;border-radius:30px;padding:12px 20px;font:inherit;cursor:pointer}.filters button[aria-pressed=true]{background:var(--ink);color:white;border-color:var(--ink)}.project-button{display:block;color:inherit;text-decoration:none}.project[hidden]{display:none}.feature-actions{display:flex;gap:16px;flex-wrap:wrap;margin:28px 0}.feature-button{display:inline-flex;align-items:center;justify-content:center;gap:20px;padding:18px 26px;border:1px solid var(--ink);background:var(--lime);color:var(--ink);border-radius:4px;font:inherit;font-weight:650;text-decoration:none;cursor:pointer}.feature-button:hover{background:var(--ink);color:var(--lime)}.secondary-feature{background:transparent}.detail-page{padding-top:64px;padding-bottom:100px;min-height:70vh}.detail-back{display:inline-block;margin-bottom:48px}.detail-heading{max-width:1000px;margin-bottom:48px}.detail-page h1{font-size:clamp(42px,7.5vw,100px);line-height:1.03;letter-spacing:-.055em;margin:18px 0 26px;overflow-wrap:anywhere}.detail-intro{font-size:clamp(18px,2vw,23px);line-height:1.65;max-width:740px;overflow-wrap:anywhere}.share-button{margin-top:24px}.detail-hero{background:#e7e7e1;border-radius:8px;overflow:hidden}.detail-hero img,.detail-hero video{display:block;width:100%;max-height:85vh;object-fit:contain}.detail-hero .motion-stage{min-height:600px;position:relative}.detail-gallery{display:grid;grid-template-columns:1fr 1fr;gap:36px;margin-top:36px}.detail-gallery figure{margin:0}.detail-gallery img{width:100%;border-radius:6px;display:block}.detail-gallery figcaption{padding-top:12px;color:#595955}.zoom-image{cursor:zoom-in}.process-section{padding:90px 0 30px}.process-section h2,.detail-cta h2{font-size:clamp(32px,4vw,56px);letter-spacing:-.045em;margin:16px 0 40px}.process-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px}.process-grid article{border-top:1px solid #b9b9b1;padding-top:24px}.step-number{font-size:40px;color:#74746b}.process-grid h3{font-size:25px;margin:15px 0}.process-grid img{width:100%;border-radius:5px}.process-grid p{line-height:1.7;overflow-wrap:anywhere}.detail-cta{border-top:1px solid #b9b9b1;margin-top:60px;padding-top:36px}.sketch-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px 28px}.sketch-grid img,.sketch-grid video{width:100%;aspect-ratio:4/5;object-fit:cover;border-radius:5px}.sketch-grid a{color:inherit;text-decoration:none}.sketch-grid h2{font-size:23px;margin:15px 0 8px;overflow-wrap:anywhere}.sketch-grid p{color:#65655e}.sketch-placeholder{display:grid;place-items:center;aspect-ratio:4/5;background:#b4a4f8;font-size:120px}#image-viewer{background:#181818;color:#fff;border:0;width:96vw;max-width:1500px;padding:20px;max-height:96vh}#image-viewer::backdrop{background:#000b}#image-viewer img{display:block;max-width:100%;max-height:82vh;object-fit:contain;margin:16px auto 0}#close-viewer{display:block;margin-left:auto;background:transparent;border:1px solid #aaa;border-radius:24px;padding:10px 20px;color:white;font:inherit;cursor:pointer}#share-url{width:100%;padding:12px;margin-top:12px}.request-layout{display:grid;grid-template-columns:1fr 1fr;gap:80px}.request-layout h1 em{font-family:Georgia,serif;font-weight:normal}.inquiry-form{padding:36px;background:#fff;border:1px solid #dddcd5;border-radius:8px}.inquiry-form label{display:block;font-size:14px;font-weight:650;margin-bottom:22px}.inquiry-form input,.inquiry-form textarea,.inquiry-form select{display:block;width:100%;min-width:0;margin-top:9px;padding:13px;border:1px solid #b9b9b1;border-radius:4px;background:#fafaf7;color:var(--ink);font:inherit;box-sizing:border-box}.inquiry-form textarea{resize:vertical}.form-pair{display:grid;grid-template-columns:1fr 1fr;gap:16px}.inquiry-form small{font-size:11px;font-weight:normal}.form-note{font-size:13px;line-height:1.6;color:#666}.form-success{padding:44px;background:var(--lime);border-radius:8px}.form-success>span{font-size:72px}.form-success h2{font-size:36px}.form-success p{line-height:1.7}.form-error{background:#ffe1da;padding:18px;border-left:3px solid #a32913}.header nav{flex-wrap:wrap}.gallery-editor{border-top:1px solid #ddd;padding:20px 0}.inquiry-message{overflow-wrap:anywhere}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #7351c5;outline-offset:4px}
@media(max-width:800px){.request-layout{grid-template-columns:1fr;gap:30px}.process-grid{grid-template-columns:1fr}.sketch-grid{grid-template-columns:1fr 1fr}.detail-page{padding-top:36px}.detail-hero .motion-stage{min-height:420px}.header{gap:15px;flex-wrap:wrap}.header nav{gap:15px}.header nav a{font-size:12px}.detail-heading{margin-bottom:30px}}
@media(max-width:500px){.detail-gallery,.sketch-grid,.form-pair{grid-template-columns:1fr}.inquiry-form{padding:22px}.detail-page h1{font-size:44px}.feature-actions{flex-direction:column}.detail-hero .motion-stage{min-height:350px}.header nav{justify-content:space-between;width:100%}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;scroll-behavior:auto!important;transition:none!important}}

@media(max-width:800px){.header .nav-contact{display:inline-flex;padding:8px 10px}}
