.project-cq{--ink:#3a3938;--page:#f7f2ea;--ivory:#eadfd0;--gold:#ac8660;--muted:#6e6963;--muted-2:#7a756e;--rule:#3a393829;--on-dark:#f7f2ea;--on-dark-2:#bdb5a9;--serif:var(--font-serif);--sans:var(--font-sans);--pad:clamp(22px,5.5vw,88px);--max:1280px;--sy:clamp(48px,5.5vw,88px);--ease:cubic-bezier(.2,.7,.2,1);background:var(--page);color:var(--ink)}.project-cq :where(h1,h2,h3,p,ul,ol,figure,dl,dd){margin:0}.project-cq ul,.project-cq ol{padding:0;list-style:none}.project-cq img{max-width:100%;display:block}.project-cq a{color:inherit;text-decoration:none}.project-cq a:hover{color:var(--gold)}.project-cq :focus-visible{outline:1px solid var(--gold);outline-offset:4px}.project-cq a.cq-btn{color:var(--page);background:var(--ink);border-color:var(--ink)}.project-cq a.cq-btn:hover{color:var(--ink);background:0 0}.project-cq .cq-gal button img{object-fit:cover;width:100%;height:100%}.project-cq .contact-form{grid-template-columns:1fr;gap:26px 28px;display:grid}@media (width>=640px){.project-cq .contact-form{grid-template-columns:1fr 1fr}.project-cq .contact-form .full,.project-cq .contact-form .cq-full,.project-cq .contact-form .intro,.project-cq .contact-form .check,.project-cq .contact-form button,.project-cq .contact-form .note,.project-cq .contact-form .error{grid-column:1/-1}}.cq-wrap{max-width:var(--max);padding:0 var(--pad);margin:0 auto}.cq-sec{padding:var(--sy) 0;position:relative}.cq-sec--flush{padding-top:0}.cq-kicker{font:500 10.5px/1.5 var(--sans);letter-spacing:.24em;text-transform:uppercase;color:var(--muted);align-items:baseline;gap:14px;display:flex}.cq-no{font:400 13px/1 var(--serif);letter-spacing:.04em;color:var(--gold);border-right:1px solid var(--gold);padding-right:14px}.cq-h2{font:300 clamp(30px,3.6vw,50px)/1.18 var(--serif);letter-spacing:-.005em;text-wrap:balance;max-width:22ch;padding-bottom:clamp(18px,2.2vw,28px)}.cq-kicker+.cq-h2{margin-top:24px}.cq-body{color:var(--muted);text-wrap:pretty;max-width:62ch;font-size:clamp(16px,1.1vw,17px)}.cq-link{min-height:44px;font:400 13px/1.3 var(--sans);letter-spacing:.14em;text-transform:uppercase;border-bottom:1px solid var(--gold);align-items:center;gap:14px;padding-bottom:8px;display:inline-flex}.cq-link svg{width:20px;height:10px;transition:transform .35s var(--ease)}.cq-link:hover svg{transform:translate(4px)}.cq-btn{border:1px solid var(--ink);background:var(--ink);min-height:56px;color:var(--page);font:500 11.5px/1.3 var(--sans);letter-spacing:.2em;text-transform:uppercase;cursor:pointer;justify-content:center;align-items:center;gap:14px;padding:16px 32px;transition:background .35s,color .35s;display:inline-flex}.cq-btn:hover{color:var(--ink);background:0 0}.cq-split{gap:22px;display:grid}@media (width>=1024px){.cq-split{grid-template-columns:7fr 5fr;align-items:end;gap:80px}}.cq-hero{min-height:100svh;color:var(--on-dark);background:#2a2927;align-items:flex-end;display:flex;position:relative;overflow:hidden}.cq-hero__img{object-fit:cover;width:100%;height:100%;transition:transform 2.4s var(--ease);position:absolute;inset:0;transform:scale(1.04)}.cq-hero.is-in .cq-hero__img{transform:scale(1)}.cq-hero__scrim{background:linear-gradient(#1e1d1c33 0%,#1e1d1c80 58%,#1e1d1ce0 100%);position:absolute;inset:0}.cq-hero__in{width:100%;padding-top:112px;padding-bottom:clamp(48px,7vw,96px);position:relative}.cq-hero .cq-kicker{color:#d8cfc2}.cq-hero h1{font:300 clamp(44px,7vw,104px)/1.02 var(--serif);letter-spacing:-.015em;text-wrap:balance;max-width:13ch;margin-top:24px}.cq-hero h1 span{font:300 clamp(18px,1.8vw,26px)/1.3 var(--serif);letter-spacing:0;color:#ddd5c9;margin-top:.35em;font-style:italic;display:block}.cq-hero__lead{color:#ddd5c9;text-wrap:pretty;max-width:46ch;margin-top:26px;font-size:clamp(16px,1.25vw,18px)}.cq-facts{border-top:1px solid #f7f2ea42;grid-template-columns:1fr;gap:18px;margin-top:clamp(40px,5vw,64px);padding-top:26px;display:grid}.cq-facts dt{font:500 10px/1.4 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:#c9c0b3}.cq-facts dd{font:300 clamp(17px,1.4vw,20px)/1.35 var(--serif);margin-top:6px}.cq-hero__cta{margin-top:36px}.cq-hero__cta .cq-link{color:var(--on-dark)}@media (width>=768px){.cq-facts{grid-template-columns:repeat(3,auto);justify-content:start;column-gap:clamp(40px,6vw,96px)}}.cq-quote{font:300 clamp(26px,3vw,42px)/1.32 var(--serif);text-wrap:balance;max-width:26ch}.cq-quote em{color:var(--gold);font-style:italic}.cq-sheet{border-top:1px solid var(--ink);margin-top:clamp(64px,8vw,112px)}.project-cq ul.cq-sheet,.project-cq .cq-specs{margin-top:clamp(24px,3vw,40px)}.cq-sheet ul{grid-template-columns:1fr 1fr;display:grid}.cq-sheet li{border-bottom:1px solid var(--rule);padding:28px 20px 30px 0}.cq-sheet li:nth-child(2n){border-left:1px solid var(--rule);padding-left:22px}.cq-fig{font:300 clamp(40px,5.4vw,76px)/1 var(--serif);letter-spacing:-.02em;font-variant-numeric:lining-nums tabular-nums;align-items:baseline;gap:6px;display:flex}.cq-fig small{font:300 .38em/1 var(--sans);letter-spacing:0;color:var(--muted)}.cq-fig--t{letter-spacing:-.005em;align-items:flex-end;min-height:clamp(40px,5.4vw,76px);font-size:clamp(22px,2.4vw,34px);line-height:1.1}.cq-fig-lab{font:400 12.5px/1.5 var(--sans);color:var(--muted);max-width:26ch;margin-top:14px}@media (width>=900px){.cq-sheet ul{grid-template-columns:repeat(var(--n,4),1fr)}.cq-sheet li{border-left:1px solid var(--rule);padding:34px 28px 36px!important}.cq-sheet li:first-child{border-left:0;padding-left:0!important}}.cq-xr{touch-action:pan-y;-webkit-user-select:none;user-select:none;cursor:ew-resize;--x:50%;background:#2a2927;margin-top:clamp(40px,5vw,64px);position:relative;overflow:hidden}.cq-xr img{object-fit:cover;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.cq-xr__tech{clip-path:inset(0 calc(100% - var(--x)) 0 0);position:absolute;inset:0}.cq-xr__tech img{filter:grayscale()brightness(.36)contrast(1.1)}.cq-xr__grid{background-image:linear-gradient(#ac866029 1px,#0000 1px),linear-gradient(90deg,#ac866029 1px,#0000 1px);background-size:48px 48px;position:absolute;inset:0}.cq-xr__tag{font:500 10px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--on-dark);background:#1e1d1c8c;padding:8px 10px;position:absolute;top:18px}.cq-xr__tag--l{left:18px}.cq-xr__tag--r{right:18px}.cq-pin{left:var(--px);top:var(--py);position:absolute;transform:translate(-50%,-50%)}.cq-pin__dot{border:1px solid var(--gold);width:26px;height:26px;font:500 10.5px/1 var(--sans);color:var(--on-dark);background:#1e1d1c99;border-radius:50%;place-items:center;display:grid}.cq-pin__dot:after{content:"";animation:cq-ping 2.8s var(--ease) infinite;border:1px solid #ac866080;border-radius:50%;position:absolute;inset:-7px}.cq-pin__lab{border-left:1px solid var(--gold);width:max-content;max-width:230px;font:400 11.5px/1.45 var(--sans);color:var(--on-dark);background:#1e1d1cb8;padding:10px 12px;display:none;position:absolute;top:50%;left:38px;transform:translateY(-50%)}.cq-pin__lab b{font:400 14px/1.3 var(--serif);margin-bottom:3px;display:block}.cq-pin--l .cq-pin__lab{border-left:0;border-right:1px solid var(--gold);text-align:right;left:auto;right:38px}.cq-pin--b .cq-pin__lab{top:38px;left:50%;transform:translate(-50%)}@media (width>=1024px){.cq-pin__lab{display:block}}.cq-xr__handle{top:0;bottom:0;left:var(--x);border-left:1px solid var(--on-dark);width:0;position:absolute}.cq-xr__knob{border:1px solid var(--on-dark);width:52px;height:52px;color:var(--on-dark);cursor:grab;background:#1e1d1c8c;border-radius:50%;place-items:center;display:grid;position:absolute;top:50%;left:0;transform:translate(-50%,-50%)}.cq-xr__knob svg{width:22px;height:12px}.cq-legend{counter-reset:l;margin-top:20px}.cq-legend li{border-top:1px solid var(--rule);color:var(--muted);grid-template-columns:32px 1fr;gap:12px;padding:14px 0;font-size:14.5px;display:grid}.cq-legend li b{font:400 16px/1.35 var(--serif);color:var(--ink);display:block}.cq-legend li:before{counter-increment:l;content:counter(l,decimal-leading-zero);font:400 14px/1.6 var(--serif);color:var(--gold)}@media (width>=1024px){.cq-legend{clip:rect(0 0 0 0);width:1px;height:1px;position:absolute;overflow:hidden}}.cq-xr-hint{color:var(--muted-2);margin-top:14px;font-size:12px}@media (width>=1024px){.cq-xr-hint{display:none}}.cq-layers-grid{gap:clamp(48px,6vw,88px);display:grid}@media (width>=1024px){.cq-layers-grid{grid-template-columns:5fr 7fr;align-items:start}.cq-layers-grid>:first-child{position:sticky;top:140px}}.cq-stack{--p:0;padding-bottom:calc(var(--p) * 110px)}.cq-layer{transform:translateY(calc(var(--p) * var(--k) * 22px));will-change:transform;grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:center;gap:20px;display:grid}.cq-strip{height:var(--h);border-top:1px solid #3a393859}.cq-layer:last-child .cq-strip{border-bottom:1px solid #3a393859}.cq-lab{opacity:calc(var(--p) * 1.6 - var(--k) * .12);padding-left:26px;position:relative}.cq-lab:before{content:"";background:var(--gold);width:16px;height:1px;position:absolute;top:50%;left:0}.cq-lab b{font:400 clamp(15px,1.25vw,17px)/1.3 var(--serif);display:block}.cq-lab span{color:var(--muted);font-size:12.5px;line-height:1.5;display:block}.p-render{background:radial-gradient(#3a393838 .8px,#0000 1.2px) 0 0/7px 7px,#e4d9c7}.p-mason{background:repeating-linear-gradient(45deg,#3a39384d 0 1px,#0000 1px 9px),#d8ccb9}.p-wool{background:repeating-linear-gradient(60deg,#ac866080 0 1px,#0000 1px 8px),repeating-linear-gradient(-60deg,#ac866080 0 1px,#0000 1px 8px),#efe3cf}.p-frame{background:repeating-linear-gradient(90deg,#8f887e 0 3px,#0000 3px 64px),#f1ebe0}.p-board{background:linear-gradient(#0000 49%,#3a393826 49% 51%,#0000 51%),#f4eee4}.p-skim{background:#fbf8f2}.p-membrane{background:repeating-linear-gradient(90deg,#f7f2ea40 0 1px,#0000 1px 12px),#4a4845}.p-tile{background:repeating-linear-gradient(90deg,#3a393859 0 1px,#0000 1px 22px),#e9e1d2}.p-stone{background:linear-gradient(115deg,#0000 40%,#3a39382e 41%,#0000 43%),linear-gradient(70deg,#0000 62%,#ac866059 63%,#0000 64%),#f3eee6}.cq-gal{grid-template-columns:1fr;gap:clamp(10px,1.4vw,14px);margin-top:clamp(32px,4vw,56px);display:grid}.cq-gal figure{min-width:0;min-height:0;margin:0;position:relative}.cq-gal .g1,.cq-gal .g2,.cq-gal .g3,.cq-gal .g4,.cq-gal .g5,.cq-gal .g6{grid-area:auto;align-self:stretch;margin-top:0}.cq-gal button{cursor:zoom-in;aspect-ratio:4/3;background:#e4dccb;border:0;width:100%;height:100%;padding:0;display:block;position:relative;overflow:hidden}.cq-gal button:after{content:"";pointer-events:none;z-index:1;opacity:0;height:38%;transition:opacity .45s var(--ease);background:linear-gradient(#0000,#3a393880);position:absolute;inset:auto 0 0}.cq-gal img{object-fit:cover;object-position:center;width:100%;height:100%;transition:transform 1.4s var(--ease);position:absolute;inset:0}.cq-gal button:hover img{transform:scale(1.035)}.cq-gal figcaption{font:400 11px/1.45 var(--sans);letter-spacing:.1em;color:var(--muted-2);margin-top:8px}@media (width>=720px){.cq-gal{grid-template-rows:minmax(160px,20vw) minmax(160px,20vw) minmax(200px,24vw);grid-template-columns:repeat(12,1fr);gap:clamp(10px,1.1vw,14px)}.cq-gal figure{height:100%}.cq-gal button{aspect-ratio:auto;min-height:100%}.cq-gal button:after{opacity:1}.cq-gal figcaption{z-index:2;color:#f7f2ea;font:500 10.5px/1.4 var(--sans);letter-spacing:.14em;text-transform:uppercase;text-shadow:0 1px 14px #3a393873;pointer-events:none;margin:0;position:absolute;bottom:clamp(10px,1vw,16px);left:clamp(12px,1.2vw,20px);right:clamp(12px,1.2vw,20px)}.cq-gal .g1{grid-area:1/1/3/9}.cq-gal .g2{grid-area:1/9/2/13}.cq-gal .g3{grid-area:2/9/3/13}.cq-gal .g4{grid-area:3/1/4/5}.cq-gal .g5{grid-area:3/5/4/9}.cq-gal .g6{grid-area:3/9/4/13}}@media (width>=1200px){.cq-gal{grid-template-rows:minmax(200px,18vw) minmax(200px,18vw) minmax(240px,22vw)}}.cq-specs{border-top:1px solid var(--ink);margin-top:clamp(48px,6vw,80px)}.cq-sg{border-bottom:1px solid var(--rule);gap:4px;padding:28px 0;display:grid}.cq-sg h3{font:500 10.5px/1.5 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--gold);padding-bottom:16px}.cq-row{gap:4px;padding:12px 0;display:grid}.cq-row+.cq-row{border-top:1px dashed var(--rule)}.cq-row b{font:400 17px/1.35 var(--serif)}.cq-row span{color:var(--muted);font-size:14.5px}.cq-row i{font:500 10px/1.5 var(--sans);letter-spacing:.18em;text-transform:uppercase;color:var(--muted-2);font-style:normal}@media (width>=900px){.cq-sg{grid-template-columns:3fr 9fr;gap:40px;padding:32px 0}.cq-sg h3{padding:14px 0 0}.cq-row{grid-template-columns:4fr 5fr 3fr;align-items:baseline;gap:24px;padding:14px 0}.cq-row i{text-align:right}}.cq-dark{background:var(--ink);color:var(--on-dark)}.cq-dark .cq-kicker{color:var(--gold)}.cq-dark .cq-no{border-color:#ac866099}.cq-dark .cq-body{color:var(--on-dark-2)}.cq-exec{gap:clamp(56px,7vw,96px);display:grid}@media (width>=1024px){.cq-exec{grid-template-columns:1fr 1fr;gap:96px}}.cq-list{border-top:1px solid #f7f2ea2e;margin-top:36px}.cq-list li{border-bottom:1px solid #f7f2ea2e;grid-template-columns:40px 1fr;gap:10px;padding:18px 0;font-size:15.5px;line-height:1.6;display:grid}.cq-list li span{font:400 13px/1.9 var(--serif);color:var(--gold)}.cq-problem .cq-quote{color:var(--on-dark);margin-top:28px}.cq-problem .cq-body{margin-top:26px}.cq-problem__img{aspect-ratio:3/2;background:#2a2927;margin-top:40px;overflow:hidden}.cq-problem__img img{object-fit:cover;width:100%;height:100%}.cq-form-sec{background:var(--ivory)}.cq-form-grid{gap:clamp(48px,6vw,80px);display:grid}@media (width>=1024px){.cq-form-grid{grid-template-columns:5fr 7fr;gap:96px}}.cq-direct{border-top:1px solid #3a393833;margin-top:40px}.cq-direct a{border-bottom:1px solid #3a393833;justify-content:space-between;align-items:center;gap:16px;min-height:56px;font-size:15px;display:flex}.cq-direct a span{font:500 10px/1 var(--sans);letter-spacing:.2em;text-transform:uppercase;color:var(--muted)}.cq-form{grid-template-columns:1fr;gap:26px 28px;display:grid}@media (width>=640px){.cq-form{grid-template-columns:1fr 1fr}.cq-full{grid-column:1/-1}}.cq-field label,.cq-field legend{font:500 10.5px/1.4 var(--sans);letter-spacing:.2em;text-transform:uppercase;margin-bottom:8px;display:block}.cq-field label i,.cq-field legend i{color:var(--muted);letter-spacing:.1em;text-transform:none;font-style:normal}.cq-field input,.cq-field select,.cq-field textarea{width:100%;min-height:52px;font:300 16px/1.5 var(--sans);-webkit-appearance:none;appearance:none;background:0 0;border:0;border-bottom:1px solid #3a39386b;border-radius:0;padding:12px 0;transition:border-color .3s}.cq-field select{background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' fill='none' stroke='%233A3938'/%3E%3C/svg%3E") right 4px center/12px no-repeat;padding-right:28px}.cq-field textarea{resize:vertical;min-height:110px}.cq-field input:focus,.cq-field select:focus,.cq-field textarea:focus{border-bottom-color:var(--gold);outline:0}fieldset.cq-field{border:0;min-width:0;margin:0;padding:0}.cq-seg{flex-wrap:wrap;gap:8px;display:flex}.cq-seg label{margin:0;position:relative}.cq-seg input{opacity:0;width:1px;height:1px;position:absolute}.cq-seg span{min-height:44px;font:400 13px/1.2 var(--sans);letter-spacing:.02em;text-transform:none;cursor:pointer;border:1px solid #3a39384d;align-items:center;padding:0 16px;transition:background .25s,color .25s,border-color .25s;display:inline-flex}.cq-seg input:checked+span{background:var(--ink);color:var(--page);border-color:var(--ink)}.cq-seg input:focus-visible+span{outline:1px solid var(--gold);outline-offset:3px}.cq-consent{color:var(--muted);align-items:flex-start;gap:12px;font-size:13px;line-height:1.6;display:flex}.cq-consent input{width:18px;height:18px;accent-color:var(--ink);flex:none;margin-top:2px}.cq-consent a{border-bottom:1px solid var(--gold)}.cq-submit{flex-wrap:wrap;align-items:center;gap:16px 28px;display:flex}.cq-submit p{color:var(--muted);font-size:12.5px}.cq-ok{border-top:1px solid var(--ink);padding:40px 0;display:none}.cq-ok h3{font:300 clamp(26px,2.6vw,34px)/1.25 var(--serif)}.cq-ok p{color:var(--muted);margin-top:14px}.is-sent .cq-form{display:none}.is-sent .cq-ok{display:block}.cq-pn{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);display:grid}.cq-pn a{flex-direction:column;gap:12px;padding:clamp(36px,4vw,56px) 0;display:flex}.cq-pn a+a{border-top:1px solid var(--rule)}.cq-pn small{font:500 10.5px/1 var(--sans);letter-spacing:.22em;text-transform:uppercase;color:var(--muted)}.cq-pn strong{font:300 clamp(26px,3vw,40px)/1.15 var(--serif);transition:transform .45s var(--ease)}.cq-pn a:hover strong{color:var(--ink);transform:translate(8px)}.cq-pn a:last-child{text-align:right;align-items:flex-end}.cq-pn a:last-child:hover strong{transform:translate(-8px)}@media (width>=768px){.cq-pn{grid-template-columns:1fr 1fr}.cq-pn a+a{border-top:0;border-left:1px solid var(--rule);padding-left:40px}.cq-pn a:first-child{padding-right:40px}}.cq-related{color:var(--muted);flex-wrap:wrap;gap:10px 28px;margin-top:32px;font-size:14px;display:flex}.cq-related a{border-bottom:1px solid var(--gold)}.cq-lb{width:100vw;max-width:none;height:100vh;max-height:none;color:var(--on-dark);background:#1e1d1cf5;border:0;margin:0;padding:0}.cq-lb::backdrop{background:0 0}.cq-lb[open]{grid-template-rows:auto 1fr auto auto;display:grid}.cq-lb__bar{padding:16px var(--pad);font:400 12px/1 var(--sans);letter-spacing:.14em;justify-content:space-between;align-items:center;display:flex}.cq-lb__stage{padding:0 var(--pad);place-items:center;min-height:0;display:grid}.cq-lb__stage img{object-fit:contain;max-width:100%;max-height:100%}.cq-lb__cap{padding:4px var(--pad) 24px;color:var(--on-dark-2);text-align:center;font-size:13px}.cq-lb button{min-width:48px;min-height:48px;color:var(--on-dark);cursor:pointer;background:0 0;border:1px solid #f7f2ea4d}.cq-sticky{z-index:40;padding:10px 14px calc(10px + env(safe-area-inset-bottom));background:var(--page);border-top:1px solid var(--rule);transition:transform .45s var(--ease);gap:10px;display:flex;position:fixed;bottom:0;left:0;right:0;transform:translateY(110%)}.cq-sticky.is-on{transform:none}.cq-sticky .cq-btn{flex:1;min-height:50px;padding:12px 16px}.cq-sticky .cq-wa{border:1px solid var(--rule);min-width:50px;font:500 10px/1 var(--sans);letter-spacing:.14em;place-items:center;display:grid}@media (width>=900px){.cq-sticky{display:none}}.js .rv{opacity:0;transition:opacity .9s var(--ease),transform .9s var(--ease);transition-delay:calc(var(--d,0) * 90ms);transform:translateY(10px)}.js .rv.in{opacity:1;transform:none}@keyframes cq-ping{0%{opacity:.9;transform:scale(.7)}70%,to{opacity:0;transform:scale(1.35)}}@media (prefers-reduced-motion:reduce){.js .rv{opacity:1;transition:none;transform:none}.cq-hero__img{transition:none;transform:none}.cq-pin__dot:after{animation:none}.cq-stack{--p:1!important}}
