:root{--ink:#26382f;--muted:#68716b;--green:#637d68;--line:#e7e9e5;--paper:#f5f5f0}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:120px}body{margin:0;color:var(--ink);background:white;font:15px/1.6 Arial,sans-serif}button,input,select,textarea{font:inherit}button,a,input,textarea,select{-webkit-tap-highlight-color:transparent}a{color:inherit;text-decoration:none}button{cursor:pointer}button:focus-visible,a:focus-visible{outline:3px solid #b79b72;outline-offset:4px}[hidden]{display:none!important}.topline{text-align:center;background:var(--paper);font-size:11px;letter-spacing:.08em;padding:9px 20px}.wrap{width:min(1320px,calc(100% - 96px));margin:auto}.site-header{position:sticky;top:0;z-index:10;background:#fffc;backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}.header-row{display:flex;align-items:center;justify-content:space-between;min-height:91px;gap:28px}.logo{font-family:Georgia,serif;font-size:30px;letter-spacing:-1px}.logo small{display:block;font:9px/1.3 Arial,sans-serif;letter-spacing:.24em;margin-top:1px}.main-nav{display:flex;gap:27px;align-items:center;font-size:13px}.btn{display:inline-flex;justify-content:center;align-items:center;border:1px solid var(--ink);padding:12px 23px;background:var(--ink);color:white;font-size:13px;gap:24px}.btn.light{color:var(--ink);background:white;border-color:#cbd1c9}.btn:hover{background:var(--green);color:white}.menu-toggle{display:none;background:none;border:0;font-size:23px}.hero{display:grid;grid-template-columns:.85fr 1.4fr;background:#f0f0e9;min-height:490px;margin-top:28px}.hero-copy{padding:64px 45px;align-self:center}.eyebrow{text-transform:uppercase;letter-spacing:.19em;font-size:10px;font-weight:600;color:var(--green)}h1,h2,h3,p{margin-top:0}h1{font:normal clamp(39px,4.2vw,63px)/1.08 Georgia,serif;letter-spacing:-1.5px;margin:20px 0 25px}h2{font:normal clamp(28px,3vw,39px)/1.2 Georgia,serif;letter-spacing:-.6px}h3{font-size:16px;font-weight:500}.hero-copy>p:not(.eyebrow){color:var(--muted);max-width:290px;margin-bottom:28px}.hero-visual{position:relative;min-height:490px}.hero-visual img{width:100%;height:100%;object-fit:cover;position:absolute}.caption{position:absolute;right:15px;bottom:12px;font-size:10px;background:#fffe;padding:3px 8px;color:#5e655f}.benefits{display:flex;justify-content:space-between;gap:20px;padding:25px 3px;border-bottom:1px solid var(--line);font-size:12px;color:var(--muted)}.benefits span::before{content:'✓';color:var(--green);margin-right:10px}.section{padding-top:65px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:26px}.section-heading h2{margin-bottom:0}.section-heading p{font-size:13px;color:var(--muted);margin:0;max-width:390px}.categories{display:grid;grid-template-columns:repeat(5,1fr);gap:17px}.category{border:0;background:transparent;padding:0;text-align:center;color:var(--ink)}.category .thumb{display:block;background:var(--paper);aspect-ratio:1.35;overflow:hidden;margin-bottom:12px}.category img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.category:hover img{transform:scale(1.04)}.category.active .thumb{outline:2px solid var(--green);outline-offset:3px}.category span:last-child{font-size:13px}.filter-row{display:flex;justify-content:space-between;align-items:center;border-top:1px solid var(--line);padding-top:22px;margin:30px 0 24px;gap:20px}.filters{display:flex;gap:8px;flex-wrap:wrap}.filter{border:1px solid var(--line);background:white;color:var(--muted);padding:7px 15px;border-radius:2px;font-size:12px}.filter[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.count{font-size:12px;color:var(--muted)}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:32px 24px}.project-photo{position:relative;aspect-ratio:1.18;background:var(--paper);overflow:hidden;display:block;width:100%;border:0;padding:0}.project-photo img{width:100%;height:100%;object-fit:contain;transition:transform .4s}.project-photo:hover img{transform:scale(1.03)}.badge{position:absolute;left:12px;top:12px;background:#fffffff0;padding:4px 8px;font-size:10px;letter-spacing:.04em;color:var(--muted)}.project-body{padding-top:16px}.project-body h3{margin-bottom:4px}.project-body p{font-size:12px;color:var(--muted);margin-bottom:14px}.project-actions{display:flex;justify-content:space-between;gap:12px;align-items:center}.text-button{padding:0;background:none;border:0;border-bottom:1px solid #bec8bd;color:var(--ink);font-size:12px}.text-button:hover{color:var(--green)}.empty{padding:40px;background:var(--paper);text-align:center;color:var(--muted)}.studio-promo{margin-top:76px;background:#e9ede6;display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center;padding:55px 60px}.studio-promo h2{margin:14px 0 20px}.studio-promo p{color:var(--muted);font-size:14px}.studio-preview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.studio-preview img{width:100%;background:#ffffff85;padding:8px;aspect-ratio:1;object-fit:contain}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:30px}.process article{border-top:1px solid var(--line);padding-top:20px}.process b{font:normal 27px Georgia,serif;color:#9caa99}.process h3{margin:18px 0 10px}.process p{font-size:13px;color:var(--muted)}.contact-banner{display:flex;justify-content:space-between;gap:35px;align-items:center;padding:42px 0;margin-top:55px;border-top:1px solid var(--line)}.contact-banner h2{font-size:29px;margin-bottom:8px}.contact-banner p{color:var(--muted);font-size:13px;margin-bottom:0}footer{background:#f6f6f2;padding:45px 0 25px;margin-top:20px}.footer-grid{display:grid;grid-template-columns:2fr 1fr 1fr;gap:45px}footer h3{font-size:12px;font-weight:bold}footer p,footer a:not(.logo){font-size:12px;color:var(--muted)}footer nav{display:grid;gap:8px}.legal{border-top:1px solid #ddd;padding-top:20px;margin-top:35px;font-size:10px;color:var(--muted)}dialog{border:0;padding:32px;width:min(650px,calc(100% - 30px));max-height:90dvh;color:var(--ink);box-shadow:0 15px 70px #0002}dialog::backdrop{background:#17231b88}.dialog-top{display:flex;align-items:start;justify-content:space-between;gap:20px}.dialog-top h2{font-size:30px}.close{border:0;background:none;font-size:26px;line-height:1;padding:0 5px}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.field-grid .wide{grid-column:1/-1}label{display:grid;gap:5px;font-size:12px}input,select,textarea{border:1px solid #d4d9d1;padding:11px;background:white;width:100%;color:var(--ink)}textarea{resize:vertical}input:focus,textarea:focus,select:focus{outline:2px solid #9aae97;outline-offset:1px}.check{display:flex;gap:10px;align-items:start;margin:20px 0;color:var(--muted);font-size:11px}.check input{width:auto;margin-top:4px}.form-actions{display:flex;gap:12px;flex-wrap:wrap}.form-note{font-size:11px;color:var(--muted);margin:16px 0}.detail-photo{width:100%;max-height:45dvh;object-fit:contain;background:var(--paper)}.detail-description{font-size:13px;color:var(--muted);margin:20px 0}.form-status{font-size:12px;color:var(--green)}@media(min-width:1500px){.hero{min-height:550px}.hero-visual{min-height:550px}}@media(max-width:950px){.wrap{width:calc(100% - 48px)}.main-nav{gap:15px}.header-row{gap:15px}.logo{font-size:26px}.hero-copy{padding:38px 28px}.hero,.hero-visual{min-height:430px}.projects{grid-template-columns:repeat(2,1fr)}.studio-promo{padding:38px;gap:30px}.categories{gap:10px}.benefits{font-size:11px}}@media(max-width:680px){.wrap{width:calc(100% - 32px)}.topline{font-size:9px}.header-row{min-height:75px}.logo{font-size:28px}.menu-toggle{display:block}.header-cta{padding:9px 12px;font-size:11px}.main-nav{display:none;position:absolute;left:0;right:0;top:75px;background:white;padding:24px;border-bottom:1px solid var(--line)}.main-nav.open{display:grid}.hero{display:flex;flex-direction:column-reverse;margin-top:16px}.hero-visual{min-height:265px}.hero-copy{padding:30px 25px}h1{font-size:43px;margin:15px 0 20px}.hero-copy>p:not(.eyebrow){max-width:none;font-size:13px}.benefits{overflow:auto;white-space:nowrap;gap:25px;padding:19px 0}.section{padding-top:43px}.section-heading{display:block}.section-heading p{margin-top:12px}.categories{grid-template-columns:repeat(5,115px);overflow:auto;padding:4px 4px 10px;gap:14px}.category .thumb{aspect-ratio:1}.category span:last-child{font-size:12px}.projects{gap:27px 14px}.project-body h3{font-size:14px}.project-actions{align-items:start;gap:9px;flex-direction:column}.project-body p{font-size:11px}.project-photo{aspect-ratio:.95}.badge{font-size:8px;left:6px;top:6px}.filter-row{display:block}.count{display:block;margin-top:13px}.filters{gap:6px}.filter{font-size:11px;padding:6px 12px}.studio-promo{padding:28px;display:block;margin-top:45px}.studio-preview{margin-top:25px}.process{gap:20px;grid-template-columns:1fr}.process article{padding-top:15px}.process b{float:left;margin-right:20px}.process h3{margin:4px 0 12px}.process p{margin-left:50px}.contact-banner{display:block}.contact-banner .btn{margin-top:24px}.footer-grid{grid-template-columns:1fr 1fr;gap:25px}.footer-grid>div:first-child{grid-column:1/-1}.field-grid{grid-template-columns:1fr;gap:12px}dialog{padding:23px}.form-actions .btn{flex:1}.section-heading h2{font-size:31px}}

.catalog-menu summary{cursor:pointer;list-style:none}.catalog-menu[open]>summary{color:var(--green)}.mega-menu{position:absolute;top:100%;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:30px max(32px,calc((100vw - 1320px)/2));box-shadow:0 15px 25px #0001;max-height:75dvh;overflow:auto}.mega-heading{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding-bottom:15px;margin-bottom:22px}.mega-heading span{color:var(--muted);font-size:12px}.mega-columns{display:grid;grid-template-columns:repeat(5,1fr);gap:28px}.mega-columns h3{font-size:13px;font-weight:bold;margin-bottom:12px}.mega-columns button{display:block;border:0;background:none;text-align:left;font-size:12px;padding:4px 0;color:var(--muted);line-height:1.4}.mega-columns button:hover{color:var(--green);text-decoration:underline}.accessory-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.accessory-card{display:flex;align-items:center;gap:16px;background:var(--paper);padding:25px 20px;min-height:90px}.accessory-card:hover{background:#e9ede6}.accessory-card small{color:#8e9c89;font-family:Georgia,serif;font-size:22px}.accessory-card span{font-size:13px}.accessory-card b{margin-left:auto;font-size:17px;font-weight:normal;color:var(--green)}.shop-bottom{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:25px}.shop-bottom p{font-size:12px;color:var(--muted);margin:0;max-width:550px}@media(max-width:950px){.mega-columns{grid-template-columns:repeat(3,1fr)}.accessory-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:680px){.catalog-menu summary{padding:4px 0}.mega-menu{position:static;padding:20px 0;box-shadow:none;max-height:55dvh}.mega-heading{display:block}.mega-heading span{display:block;margin-top:8px}.mega-columns{grid-template-columns:repeat(2,1fr);gap:20px}.accessory-grid{grid-template-columns:repeat(2,1fr);gap:10px}.accessory-card{padding:17px 12px;gap:10px;min-height:88px}.accessory-card span{font-size:12px}.accessory-card small{font-size:18px}.shop-bottom{display:block}.shop-bottom .btn{margin-top:20px}.main-nav.open{max-height:85dvh;overflow:auto}}

.project-stages{display:flex;justify-content:space-between;gap:10px;padding:12px 0;font-size:10px;color:var(--muted);border-bottom:1px solid var(--line)}.card-final-placeholder{background:#f5f5f0;border:1px dashed #d4d9cf;padding:24px 15px;margin-top:12px;text-align:center;font-size:11px;color:var(--muted)}.project-comparison{display:grid;grid-template-columns:1fr 1fr;gap:18px}.project-comparison figure{margin:0}.project-comparison figcaption{font-size:11px;color:var(--muted);padding:10px 0}.project-comparison .detail-photo{aspect-ratio:1.25;height:auto;object-fit:contain}.final-placeholder{aspect-ratio:1.25;display:flex;justify-content:center;align-items:center;flex-direction:column;text-align:center;padding:20px;background:var(--paper);border:1px dashed #d4d9cf;color:var(--muted);font-size:13px}.final-placeholder p{font-size:11px;margin:12px 0 0}#project-dialog{width:min(1000px,calc(100% - 30px))}@media(max-width:680px){.project-comparison{grid-template-columns:1fr}.project-stages{flex-direction:column;gap:3px}}
