@font-face{font-family:Gilroy;src:url(/fonts/Gilroy-Light.woff2)format("woff2");font-weight:300;font-style:normal;font-display:swap}@font-face{font-family:Gilroy;src:url(/fonts/Gilroy-Medium.woff2)format("woff2");font-weight:400 500;font-style:normal;font-display:swap}@font-face{font-family:Gilroy;src:url(/fonts/Gilroy-ExtraBold.woff2)format("woff2");font-weight:600 800;font-style:normal;font-display:swap}:root{--bg:#f7f5f0;--soft:#ebe8e0;--ink:#1c1c19;--muted:#77736b;--line:#d9d5cc}*{box-sizing:border-box}html{scroll-behavior:smooth;background:var(--bg)}html,body{min-height:100%}body{background:var(--bg);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;margin:0;font-family:Gilroy,sans-serif}img{max-width:100%}a{color:inherit}button,input,textarea,select{font:inherit}button{cursor:pointer}::selection{color:#fff;background:#1b1b19}.siteHeader{z-index:50;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);border-bottom:1px solid var(--line);background:#f7f5f0f0;position:sticky;top:0}.nav{justify-content:space-between;align-items:center;height:82px;padding:0 5vw;display:flex}.brand{letter-spacing:.16em;white-space:nowrap;font-size:14px;font-weight:500;line-height:1;text-decoration:none}.desktopLinks{align-items:center;gap:27px;display:flex}.desktopLinks a{letter-spacing:.13em;color:#55524c;font-size:10px;text-decoration:none}.desktopLinks a:hover,.footer a:hover,.muted:hover,.textLink:hover{color:var(--ink)}.navCta{border:1px solid #aaa69e;padding:11px 14px;color:var(--ink)!important}.menuButton{background:0 0;border:0;width:42px;height:42px;padding:10px;display:none}.menuButton span{background:var(--ink);height:1px;margin:6px 0;display:block}.mobileMenu{display:none}.hero{grid-template-columns:.88fr 1.12fr;align-items:end;gap:5vw;min-height:calc(100vh - 82px);padding:5vw;display:grid}.heroCopy{padding-bottom:1vw}.eyebrow{letter-spacing:.17em;color:var(--muted);text-transform:uppercase;margin-bottom:22px;font-size:10px}.hero h1{letter-spacing:-.055em;max-width:760px;margin:0 0 30px;font-size:clamp(48px,6.7vw,100px);font-weight:400;line-height:.94}.hero p{color:#5e5a54;max-width:570px;margin:0;font-size:17px;line-height:1.65}.buttons{flex-wrap:wrap;gap:10px;margin-top:30px;display:flex}.btn{letter-spacing:.13em;border:1px solid #242421;justify-content:center;align-items:center;min-height:48px;padding:0 18px;font-size:10px;text-decoration:none;transition:background .2s,color .2s,border-color .2s;display:inline-flex}.btn:hover{background:#e8e5de}.btn.dark{color:#fff;background:#1b1b19}.btn.dark:hover{background:#343430}.heroVisual{min-width:0}.heroVisual img{object-fit:cover;width:100%;height:min(72vh,780px);display:block}.intro{max-width:1200px;padding-top:11vw;padding-bottom:10vw}.intro h2,.section h2,.about h2,.cta h2{letter-spacing:-.045em;margin:0;font-size:clamp(36px,4.5vw,64px);font-weight:400;line-height:.98}.intro>p{color:#5e5a54;max-width:780px;margin:30px 0 0;font-size:19px;line-height:1.65}.section,.about,.cta{padding:7vw 5vw}.sectionhead{justify-content:space-between;align-items:end;gap:30px;margin-bottom:40px;display:flex}.sectionhead .eyebrow{margin-bottom:13px}.sectionIntro{color:var(--muted);margin:15px 0 0;font-size:14px;line-height:1.6}.muted{letter-spacing:.13em;color:#69655e;white-space:nowrap;font-size:10px;text-decoration:none}.grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:68px 24px;display:grid}.card{text-decoration:none}.cardimg{aspect-ratio:1.4;object-fit:cover;width:100%;margin-bottom:17px;transition:transform .45s;display:block}.card:hover .cardimg{transform:scale(.985)}.cardtitle{margin-bottom:7px;font-size:18px;font-weight:500}.cardsmall{letter-spacing:.06em;color:var(--muted);font-size:11px}.serviceList{border-top:1px solid var(--line);grid-template-columns:repeat(2,1fr);display:grid}.service{border-bottom:1px solid var(--line);padding:28px 40px 30px 0}.service:nth-child(2n){border-left:1px solid var(--line);padding-left:40px}.service h3{letter-spacing:.09em;margin:0 0 13px;font-size:14px;font-weight:500}.service p{color:#69655e;max-width:540px;margin:0;font-size:14px;line-height:1.7}.homeGallery{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;display:grid}.galleryItem{cursor:zoom-in;background:0 0;border:0;padding:0;display:block;overflow:hidden}.galleryItem img{aspect-ratio:1/1.05;object-fit:cover;width:100%;transition:transform .5s;display:block}.galleryItem:hover img{transform:scale(1.025)}.drawingsPreview .galleryItem img{object-fit:contain;background:#ece9e2}.about{background:#eae7df;grid-template-columns:1fr 1fr;gap:9vw;display:grid}.about p{color:#625e57;max-width:650px;margin:0 0 20px;font-size:16px;line-height:1.75}.textLink{letter-spacing:.13em;font-size:10px;text-decoration:none}.cta{padding-top:11vw;padding-bottom:12vw}.cta h2{margin-bottom:25px}.cta p{color:#666158;max-width:560px;font-size:17px;line-height:1.7}.whatsapp{z-index:60;color:#fff;letter-spacing:.12em;background:#1b1b19;align-items:center;gap:9px;padding:10px 15px 10px 11px;font-size:10px;text-decoration:none;display:flex;position:fixed;bottom:22px;right:22px;box-shadow:0 10px 30px #00000021}.waDot{background:#6bbf72;border-radius:50%;width:8px;height:8px;display:block}.footer{border-top:1px solid var(--line);color:#6e6a63;grid-template-columns:1.4fr 1.6fr 1fr auto;align-items:start;gap:30px;padding:34px 5vw 30px;font-size:11px;display:grid}.footer strong{color:var(--ink);letter-spacing:.14em;margin-bottom:9px;font-weight:500;display:block}.footer span{display:block}.footerLinks,.footerSocial{flex-direction:column;gap:8px;display:flex}.footer a{text-decoration:none}.footer small{align-self:end;font-size:10px}.page{padding:0 5vw 8vw}.pageHero{max-width:850px;padding:9vw 0 6vw}.pageHero h1{letter-spacing:-.06em;margin:0 0 28px;font-size:clamp(56px,8vw,120px);font-weight:400;line-height:.9}.pageHero p{color:#656159;max-width:700px;margin:0;font-size:18px;line-height:1.7}.pageEmpty{padding:30px 0 120px}.emptyState{color:var(--muted);border-top:1px solid var(--line);padding-top:28px;font-size:14px}.drawingsHero{max-width:1050px}.drawingsHero h1{max-width:980px}.drawingServices{border-top:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));margin:0 0 8vw;display:grid}.drawingService{border-bottom:1px solid var(--line);padding:30px 45px 38px 0}.drawingService:nth-child(2n){border-left:1px solid var(--line);padding-left:45px}.drawingService>span{letter-spacing:.14em;color:var(--muted);font-size:10px}.drawingService h2{letter-spacing:-.02em;margin:20px 0 12px;font-size:21px;font-weight:500;line-height:1.05}.drawingService p{color:#69655e;max-width:520px;margin:0;font-size:14px;line-height:1.7}.drawingGallerySection{padding-bottom:2vw}.drawingEmpty{border-top:1px solid var(--line);padding:7vw 0 9vw}.drawingEmpty h2{letter-spacing:-.04em;margin:0 0 18px;font-size:clamp(32px,4vw,58px);font-weight:400}.drawingEmpty p{color:var(--muted);max-width:600px;font-size:15px;line-height:1.7}.drawingsCta{border-top:1px solid var(--line)}.projectGrid{grid-template-columns:repeat(2,minmax(0,1fr));gap:76px 24px;display:grid}.projectCard{text-decoration:none}.projectImage{overflow:hidden}.projectImage img{aspect-ratio:1.35;object-fit:cover;width:100%;transition:transform .5s;display:block}.projectCard:hover .projectImage img{transform:scale(1.02)}.projectMeta{justify-content:space-between;align-items:start;gap:25px;padding-top:16px;display:flex}.projectMeta h2{margin:0 0 7px;font-size:19px;font-weight:500}.projectMeta p{color:var(--muted);letter-spacing:.05em;margin:0;font-size:11px}.projectMeta span{letter-spacing:.13em;color:#68645d;white-space:nowrap;padding-top:4px;font-size:9px}.lightbox{z-index:100;background:#121210f5;justify-content:center;align-items:center;padding:5vw;display:flex;position:fixed;inset:0}.lightbox img{object-fit:contain;width:auto;max-width:92vw;height:auto;max-height:88vh}.lightbox button{color:#fff;background:0 0;border:0;padding:12px;font-size:30px;line-height:1;position:fixed}.lightboxClose{top:20px;right:24px}.lightboxPrev{top:50%;left:22px;transform:translateY(-50%)}.lightboxNext{top:50%;right:22px;transform:translateY(-50%)}.projectHero{padding:6vw 5vw 2vw}.projectHeading{max-width:900px;margin-bottom:45px}.projectHeading h1{letter-spacing:-.055em;margin:0 0 24px;font-size:clamp(50px,7vw,100px);font-weight:400;line-height:.92}.projectHeading p{color:#666159;max-width:700px;margin:0 0 13px;font-size:16px;line-height:1.7}.projectHeading>span{color:var(--muted);letter-spacing:.08em;font-size:11px}.projectHero>img{object-fit:cover;width:100%;max-height:78vh;display:block}.projectSection{padding:7vw 5vw 0}.projectSection .sectionhead{margin-bottom:30px}.projectGallery{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.projectGallery .galleryItem:nth-child(3n){grid-column:span 2}.projectGallery .galleryItem img{aspect-ratio:auto;object-fit:cover;max-height:85vh}.projectEnd{border-top:1px solid var(--line);justify-content:space-between;gap:15px;margin-top:8vw;padding:8vw 5vw;display:flex}.aboutPageHero{grid-template-columns:1fr .85fr;align-items:end;gap:8vw;padding:8vw 5vw 7vw;display:grid}.aboutPageHero h1{letter-spacing:-.055em;margin:0;font-size:clamp(50px,6.6vw,95px);font-weight:400;line-height:.93}.aboutPageHero img{object-fit:cover;width:100%;max-height:75vh}.aboutContent{border-top:1px solid var(--line);grid-template-columns:1fr 1fr;gap:8vw;padding:8vw 5vw;display:grid}.aboutContent h2{font-size:clamp(34px,4vw,56px)}.aboutContent>div:nth-child(2){color:#625e57;font-size:17px;line-height:1.75}.aboutContent p{margin:0 0 13px}.mutedSection{background:var(--soft)}.contactGrid{border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);margin-bottom:10vw;display:grid}.contactGrid a{border-bottom:1px solid var(--line);flex-direction:column;gap:18px;padding:30px 30px 40px 0;text-decoration:none;display:flex}.contactGrid a+a{border-left:1px solid var(--line);padding-left:30px}.contactGrid span{letter-spacing:.15em;color:var(--muted);font-size:10px}.contactGrid strong{font-size:18px;font-weight:400}.notFound{min-height:70vh}.admin{min-height:100vh;padding:60px 5vw;font-family:Gilroy,sans-serif}.adminbox{max-width:1100px;margin:auto}@media (max-width:900px){.desktopLinks{display:none}.menuButton{display:block}.mobileMenu{background:var(--bg);border-bottom:1px solid var(--line);flex-direction:column;padding:10px 5vw 25px;display:flex;position:absolute;top:82px;left:0;right:0}.mobileMenu a{letter-spacing:.12em;border-bottom:1px solid var(--line);padding:16px 0;font-size:13px;text-decoration:none}.hero{grid-template-columns:1fr;min-height:0;padding-top:12vw}.heroVisual{order:2}.heroVisual img{height:62vh}.heroCopy{padding-bottom:0}.homeGallery{grid-template-columns:repeat(2,1fr)}.footer{grid-template-columns:1fr 1fr}.footer small{grid-column:1/-1}.aboutPageHero,.aboutContent{grid-template-columns:1fr;gap:45px}.contactGrid{grid-template-columns:1fr}.contactGrid a+a{border-left:0;padding-left:0}}@media (max-width:650px){.nav{height:72px}.mobileMenu{top:72px}.brand{letter-spacing:.13em;font-size:11px}.hero{padding:16vw 5vw 7vw}.hero h1{font-size:48px}.hero p{font-size:16px}.heroVisual img{height:58vh}.section,.about,.cta{padding:18vw 5vw}.intro{padding-top:20vw}.sectionhead{margin-bottom:30px;display:block}.sectionhead>.muted{margin-top:20px;display:inline-block}.grid,.projectGrid,.serviceList,.projectGallery,.drawingServices{grid-template-columns:1fr}.service:nth-child(2n),.drawingService:nth-child(2n){border-left:0;padding-left:0}.homeGallery{grid-template-columns:1fr 1fr;gap:8px}.projectGallery .galleryItem:nth-child(3n){grid-column:auto}.projectMeta{display:block}.projectMeta span{margin-top:12px;display:block}.projectEnd{flex-direction:column}.whatsapp{bottom:12px;right:12px}.footer{grid-template-columns:1fr;gap:22px}.footer small{grid-column:auto}.page{padding-bottom:15vw}.pageHero{padding:20vw 0 13vw}.pageHero h1{font-size:56px}.aboutPageHero{padding:18vw 5vw 14vw}.aboutPageHero h1{font-size:52px}.lightboxPrev{left:5px}.lightboxNext{right:5px}.lightboxClose{right:8px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.cardimg,.projectImage img,.galleryItem img{transition:none}}.heroSubtitle{letter-spacing:.13em;text-transform:uppercase;color:var(--muted);margin:0 0 18px;font-size:12px}.adminLoading{color:#3c3934;letter-spacing:.08em;background:#f3f1eb;place-items:center;min-height:100vh;font-size:13px;display:grid}.adminLogin{background:#f3f1eb;place-items:center;min-height:100vh;padding:30px;font-family:Gilroy,sans-serif;display:grid}.adminLoginCard{background:#fff;border:1px solid #ddd9d0;width:min(430px,100%);padding:48px;box-shadow:0 20px 60px #1e1c1814}.adminBrand{letter-spacing:.14em;color:#1d1c19;font-size:13px;font-weight:600}.adminLabel,.adminKicker{letter-spacing:.18em;text-transform:uppercase;color:#8a857c;margin-top:8px;font-size:9px}.adminLoginCard h1{letter-spacing:-.04em;margin:50px 0 30px;font-size:42px;font-weight:400}.adminLoginCard label,.adminFormPanel label{letter-spacing:.08em;text-transform:uppercase;color:#656057;flex-direction:column;gap:8px;margin-bottom:22px;font-size:11px;display:flex}.adminLoginCard input,.adminFormPanel input,.adminFormPanel textarea,.adminToolbar input,.adminFormPanel select{color:#24221f;text-transform:none;letter-spacing:0;background:#fbfaf7;border:1px solid #d7d2c9;outline:none;width:100%;padding:13px 14px}.adminLoginCard input:focus,.adminFormPanel input:focus,.adminFormPanel textarea:focus,.adminToolbar input:focus,.adminFormPanel select:focus{border-color:#777168}.adminPrimary{color:#fff;letter-spacing:.14em;cursor:pointer;background:#1c1b18;border:0;width:100%;padding:15px;font-size:10px}.adminPrimary:disabled,.adminButton:disabled{opacity:.5;cursor:wait}.adminError,.adminSuccess{color:#743e32;background:#faf2ef;border:1px solid #d8bdb5;margin:18px 0;padding:13px 15px;font-size:12px}.adminSuccess{color:#3f6544;background:#f2f7f2;border-color:#c7d7c7}.adminApp{color:#25231f;background:#f5f3ee;grid-template-columns:250px 1fr;min-height:100vh;font-family:Gilroy,sans-serif;display:grid}.adminSidebar{color:#f4f1e9;background:#1d1c19;flex-direction:column;height:100vh;padding:30px 20px;display:flex;position:sticky;top:0}.adminSidebar .adminBrand{color:#fff}.adminSidebar .adminLabel{color:#969188}.adminSidebar nav{flex-direction:column;gap:3px;margin-top:55px;display:flex}.adminSidebar nav a{color:#bdb8ae;letter-spacing:.08em;padding:12px 13px;font-size:11px;text-decoration:none}.adminSidebar nav a:hover,.adminSidebar nav a.active{color:#fff;background:#302e29}.adminSideBottom{border-top:1px solid #393731;margin-top:auto;padding-top:18px}.adminEmail{color:#99948a;text-overflow:ellipsis;margin-bottom:14px;font-size:10px;overflow:hidden}.adminSideBottom button{color:#fff;letter-spacing:.13em;cursor:pointer;background:0 0;border:0;padding:0;font-size:10px}.adminMain{min-width:0;padding:42px 5vw 80px}.adminPageHead{justify-content:space-between;align-items:end;gap:25px;margin-bottom:35px;display:flex}.adminPageHead h1{letter-spacing:-.045em;margin:10px 0 0;font-size:50px;font-weight:400;line-height:1}.adminButton{color:#292722;letter-spacing:.12em;cursor:pointer;background:#fff;border:1px solid #cfcac0;justify-content:center;align-items:center;padding:12px 16px;font-size:10px;text-decoration:none;display:inline-flex}.adminButton.dark{color:#fff;background:#1c1b18;border-color:#1c1b18}.statGrid{grid-template-columns:repeat(5,1fr);gap:10px;margin-bottom:30px;display:grid}.statCard{background:#fff;border:1px solid #e0dcd4;padding:22px}.statCard span{letter-spacing:.15em;color:#8b867d;font-size:9px;display:block}.statCard strong{margin-top:20px;font-size:32px;font-weight:400;display:block}.adminPanel{background:#fff;border:1px solid #dfdbd3;margin-bottom:24px;padding:24px}.adminPanel h2{letter-spacing:.12em;margin:0;font-size:12px;font-weight:500}.adminPanelHead{justify-content:space-between;align-items:start;gap:20px;margin-bottom:20px;display:flex}.adminPanelHead a{letter-spacing:.13em;color:#5f5b53;font-size:9px;text-decoration:none}.adminMuted,.adminHint{color:#888279;font-size:12px;line-height:1.6}.adminToolbar{justify-content:space-between;gap:15px;margin-bottom:20px;display:flex}.adminToolbar input{max-width:380px}.adminFilters{gap:4px;display:flex}.adminFilters button{text-transform:uppercase;letter-spacing:.1em;cursor:pointer;background:#fff;border:1px solid #d6d1c8;padding:10px 13px;font-size:9px}.adminFilters button.selected{color:#fff;background:#1d1c19}.adminTable{overflow-x:auto}.adminTr{border-top:1px solid #e7e3dc;grid-template-columns:1.7fr 1.1fr .6fr .8fr 1fr;align-items:center;gap:16px;min-width:800px;padding:15px 0;font-size:11px;display:grid}.adminTr.adminTh{letter-spacing:.13em;color:#8a857d;font-size:8px}.adminTr strong{font-weight:500}.adminTr a{letter-spacing:.1em;color:#39362f;font-size:9px;text-decoration:none}.status{letter-spacing:.08em;text-transform:uppercase;padding:5px 7px;font-size:8px;font-weight:500;display:inline-block}.status.published{color:#466448;background:#e9f1e9}.status.draft{color:#766e62;background:#eeeae2}.adminActions{align-items:center;gap:12px;display:flex}.adminActions button{font:inherit;letter-spacing:.1em;cursor:pointer;color:#7a463d;background:0 0;border:0;padding:0;font-size:9px}.adminProjectCell{align-items:center;gap:12px;display:flex}.adminProjectCell img,.adminThumbEmpty{object-fit:cover;background:#ebe7df;width:58px;height:42px;display:block}.adminThumbEmpty{color:#aaa49a;place-items:center;display:grid}.adminFormPanel{max-width:1000px}.adminFormGrid{grid-template-columns:repeat(2,1fr);gap:0 20px;display:grid}.adminFormPanel textarea{resize:vertical;line-height:1.6}.adminToggleRow{gap:25px;margin:5px 0 25px;display:flex}.adminToggleRow label,.checkLabel{align-items:center;display:flex;text-transform:none!important;letter-spacing:0!important;flex-direction:row!important;gap:9px!important}.adminToggleRow input,.checkLabel input{width:auto!important}.coverUpload{background:#efede7;border:1px dashed #cfc9be;justify-content:center;align-items:center;min-height:220px;display:flex;position:relative;overflow:hidden}.coverUpload img{object-fit:cover;width:100%;height:360px}.uploadEmpty{color:#9b958b;letter-spacing:.15em;padding:35px;font-size:9px}.uploadEmpty.wide{border:1px dashed #d7d2c9;grid-column:1/-1;place-items:center;width:100%;min-height:140px;display:grid}.uploadButton{cursor:pointer;bottom:15px;left:15px;color:#fff!important;background:#1d1c19!important;flex-direction:row!important;margin:0!important;padding:12px 15px!important;display:inline-flex!important;position:absolute!important}.uploadButton input,.hiddenInput{display:none}.adminImageGrid{grid-template-columns:repeat(3,1fr);gap:14px;display:grid}.adminImageCard{background:#faf9f6;border:1px solid #dfdbd3;overflow:hidden}.adminImageCard img{object-fit:cover;width:100%;height:190px;display:block}.adminImageCard.new{border-style:dashed}.adminImageActions{justify-content:space-between;align-items:center;gap:5px;padding:9px;display:flex}.adminImageActions button{letter-spacing:.08em;cursor:pointer;background:#fff;border:1px solid #d6d1c8;padding:6px 8px;font-size:8px}.adminImageActions button:disabled{opacity:.35}.adminImageActions span{color:#7e786f;letter-spacing:.08em;font-size:8px}.adminSaveBar{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#f5f3eeeb;border:1px solid #ded9d0;justify-content:flex-end;gap:8px;padding:15px;display:flex;position:sticky;bottom:15px}.adminMediaGrid{grid-template-columns:repeat(3,1fr);gap:16px;display:grid}.adminMediaCard{background:#fff;border:1px solid #dfdbd3}.adminMediaCard>img{object-fit:cover;background:#ebe8e1;width:100%;height:230px;display:block}.adminMediaBody{padding:16px}.adminMediaBody strong,.adminMediaBody span{display:block}.adminMediaBody strong{margin-bottom:7px;font-size:14px;font-weight:500}.adminMediaBody span{color:#817b72;margin-bottom:13px;font-size:10px}.adminSinglePreview{object-fit:contain;background:#ece9e2;width:min(600px,100%);max-height:400px;margin:5px 0 12px;display:block}.checkLabel{margin:10px 0 25px!important}@media (max-width:1000px){.adminApp{grid-template-columns:1fr}.adminSidebar{height:auto;padding:20px;display:block;position:relative}.adminSidebar nav{grid-template-columns:repeat(2,1fr);margin-top:25px;display:grid}.adminSideBottom{margin-top:20px}.statGrid{grid-template-columns:repeat(3,1fr)}.adminMediaGrid{grid-template-columns:repeat(2,1fr)}}@media (max-width:650px){.adminMain{padding:25px 15px 60px}.adminPageHead{flex-direction:column;align-items:start}.adminPageHead h1{font-size:38px}.statGrid{grid-template-columns:1fr 1fr}.adminFormGrid{grid-template-columns:1fr}.adminToolbar{display:block}.adminFilters{margin-top:10px}.adminMediaGrid,.adminImageGrid,.adminSidebar nav{grid-template-columns:1fr}.adminLoginCard{padding:30px}.adminSaveBar{margin-top:20px;position:static}.adminPanel{padding:17px}}.uploadButtonRow{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.uploadButtonRow .adminButton{margin:0}
