:root{--green:#102d28;--deep:#0b211d;--wine:#672b3b;--ivory:#efe2cf;--paper:#f5f1e9;--ink:#1a302a;--muted:#69746b;--line:#d7d8cc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Manrope,Arial,sans-serif}button,input,select,textarea{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a{color:inherit;text-decoration:none}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid #b48756;outline-offset:5px}[hidden]{display:none!important}h1,h2,h3,p{margin:0}h2{font-size:clamp(30px,3.6vw,51px);line-height:1.2;letter-spacing:-1.8px;font-weight:500}em{font-family:Prata,Georgia,serif;font-weight:400;font-style:normal}p{font-size:14px;line-height:1.85}.header{position:relative;z-index:10;display:flex;align-items:center;justify-content:space-between;background:var(--green);color:var(--ivory);padding:23px 4.5%;border-bottom:1px solid #ffffff30;gap:25px}.logo{display:block;flex-shrink:0;width:210px;background:var(--paper);padding:10px 12px}.logo img{display:block;width:100%;height:auto}.header nav{display:flex;gap:26px;font-size:13px}.header nav a{padding:10px 0}.header nav a:hover{color:#fff}.header-contact a{font-size:15px;white-space:nowrap}.header-contact small{display:block;font-size:10px;color:#c4cabe;margin-top:6px}.menu-button{display:none;background:none;border:0;color:var(--ivory);font-size:26px}.hero{position:relative;min-height:685px;background:var(--deep);color:var(--ivory);overflow:hidden}.hero-image{position:absolute;width:100%;height:100%;object-fit:cover;object-position:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#0b211df7 0%,#0b211de8 24%,#0b211d65 62%,#0b211d10 100%)}.hero-inner{position:relative;padding:58px 5% 26px;max-width:1560px;margin:auto}.eyebrow{font-size:10px;letter-spacing:2px;line-height:1.7;font-weight:600;margin-bottom:24px}.eyebrow>span{display:inline-block;width:6px;height:6px;background:#d6b48c;border-radius:50%;margin-right:7px}.hero h1{font-size:clamp(55px,6.6vw,96px);line-height:1.01;font-weight:400;letter-spacing:-4.5px;margin-bottom:28px}.hero h1 em{font-size:.86em}.hero p{font-size:14px;color:#e2dfd2}.hero-actions{display:flex;gap:30px;align-items:center;margin-top:32px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:35px;padding:20px 25px;border:0;font-size:13px;font-weight:600;transition:background .18s,transform .18s}.button:hover{transform:translateY(-2px)}.ivory{color:var(--green);background:var(--ivory)}.ivory:hover{background:#fff0dc}.green{color:var(--paper);background:var(--green)}.green:hover{background:#224d40}.text-link{font-size:12px;border-bottom:1px solid currentColor;padding:9px 0}.hero-bottom{display:flex;justify-content:space-between;border-top:1px solid #ffffff35;margin-top:60px;padding-top:21px;font-size:10px;letter-spacing:.5px;gap:15px}.hero-bottom span:last-child{color:#c7c9ba}.ribbon{padding:40px 5%;display:grid;grid-template-columns:1.35fr 1fr 1.25fr 1fr;gap:30px;background:var(--wine);color:var(--ivory);align-items:center}.ribbon h2{font-size:33px;line-height:1.2;letter-spacing:-1px}.ribbon a{border-left:1px solid #ffffff35;padding:10px 0 10px 25px;font-family:Prata,Georgia,serif;font-size:19px}.ribbon small{font:9px Manrope,Arial;letter-spacing:1.3px;display:block;margin-bottom:18px}.ribbon a>span{float:right;font-size:24px}.section{padding:95px 5%;max-width:1560px;margin:auto}.estimate{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.estimate-copy p{color:var(--muted);max-width:390px;margin-top:24px}.estimate-copy h2 em{font-size:.88em}.estimate-note{margin-top:35px;display:flex;flex-direction:column;gap:9px;font-size:11px}.estimate-note span:first-child{font-size:18px;font-family:Prata,Georgia,serif}.quiz{background:#fffdfa;border:1px solid #dfded5;padding:32px;min-height:395px}.quiz-top{display:flex;justify-content:space-between;font-size:9px;letter-spacing:1px;color:var(--muted);gap:10px}.quiz-track{height:2px;background:#e5e4db;margin-top:16px;margin-bottom:28px}.quiz-track>div{height:2px;background:var(--wine);width:25%;transition:width .25s}#quiz-body h3{font-size:21px;font-weight:500;letter-spacing:-.5px;margin-bottom:20px}.quiz-options{display:grid;grid-template-columns:1fr 1fr;gap:10px}.quiz-option{padding:16px 12px;text-align:left;background:transparent;border:1px solid #d5dacf;color:var(--ink);font-size:12px;min-height:52px}.quiz-option[aria-pressed=true]{background:var(--green);color:var(--ivory);border-color:var(--green)}.quiz-nav{display:flex;justify-content:space-between;margin-top:25px;gap:15px}.quiz-nav .button{margin-left:auto;padding:15px 22px}.text-button{border:0;background:none;padding:8px 0;font-size:12px;color:inherit;text-align:left}.quiz label{font-size:12px;display:block;margin:17px 0 8px}.quiz input,.quiz select,.quiz textarea{width:100%;padding:13px;border:1px solid #cdd3c8;background:#fffefa;color:var(--ink);font-size:14px;border-radius:0}.quiz textarea{min-height:95px;resize:vertical}.quiz .summary{font-size:12px;line-height:1.8;padding:18px;background:#eeefe7;margin-bottom:18px}.quiz .hint{font-size:11px;line-height:1.6;color:var(--muted);margin:12px 0}.quiz .send-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}.quiz .send-links .button{gap:12px;padding:14px 18px;font-size:11px}.quiz .error{color:#9b2637;font-size:12px;margin-top:10px}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:38px}.section-head p{color:var(--muted);font-size:12px;max-width:380px}.services{padding-top:30px}.service-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:36px 0 28px}.filters{display:flex;gap:6px;flex-wrap:wrap}.filters button{border:1px solid var(--line);background:transparent;padding:11px 15px;color:var(--ink);font-size:11px}.filters button.active{background:var(--green);color:var(--paper);border-color:var(--green)}.search span{display:block;font-size:9px;margin-bottom:6px;color:var(--muted)}.search input{border:0;border-bottom:1px solid #9aa69b;background:transparent;padding:8px 0;width:180px;font-size:12px;color:var(--ink)}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-left:1px solid var(--line)}.service-item{padding:25px;border:0;border-bottom:1px solid var(--line);border-right:1px solid var(--line);text-align:left;color:var(--ink);background:transparent;min-height:170px;display:flex;flex-direction:column;align-items:start;transition:background .2s}.service-item:hover{background:#e9e9df}.service-item small{font-size:9px;color:var(--muted);letter-spacing:1px}.service-item h3{font-size:18px;line-height:1.4;font-weight:500;margin:15px 0}.service-item p{font-size:11px;color:var(--muted);margin-bottom:15px}.service-item>span{font-size:12px;margin-top:auto}.service-item>span b{font-weight:400;margin-left:12px}.spaces{background:var(--green);padding:80px 5% 35px;color:var(--ivory)}.spaces-title{max-width:1560px;margin:auto}.spaces-title p{margin:22px 0 40px;color:#bbc5ba;font-size:13px}.space-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;max-width:1560px;margin:auto}.space-grid h3{font-size:25px;line-height:1.3;font-weight:400;letter-spacing:-.7px;margin:26px 0 17px}.space-grid p{color:#c5cdbf;font-size:12px;max-width:370px}.space-grid .text-button{margin-top:20px;border-bottom:1px solid #ffffff60;padding-bottom:12px}.space-photo{height:270px;position:relative}.space-photo img{width:100%;height:100%;object-fit:cover;object-position:75% center}.space-photo>span,.space-art>span{position:absolute;top:15px;left:15px;background:var(--paper);color:var(--ink);border-radius:50%;width:28px;height:28px;display:grid;place-items:center;font-size:9px;z-index:2}.space-art{position:relative;height:270px;overflow:hidden;background:#c9bdac}.art-window{position:absolute;left:8%;top:0;bottom:35px;width:35%;background:repeating-linear-gradient(90deg,transparent 0,transparent 28%,#595c54 30%,#595c54 33%),linear-gradient(#a6b7ae,#d9d8c0);border:7px solid #6a6a5d}.art-wall{position:absolute;right:0;top:0;bottom:0;width:40%;background:repeating-linear-gradient(90deg,#67543f 0,#67543f 8px,#78624a 9px,#78624a 15px)}.art-sofa{position:absolute;bottom:25px;left:20%;width:70%;height:80px;border-radius:18px 18px 0 0;background:#dfd6c7;box-shadow:inset 0 -14px #c5bba9,0 10px 20px #44342144}.art-sofa:before{content:'';position:absolute;top:-15px;left:10%;width:80%;height:42px;border-radius:15px;background:#ece4d8}.commercial{background:#9e9b8c}.commercial .art-wall{width:55%;background:repeating-linear-gradient(90deg,#534a39 0,#534a39 7px,#665944 9px,#665944 13px)}.art-counter{position:absolute;left:15%;right:5%;bottom:20px;height:95px;background:linear-gradient(110deg,#2f5246,#719183 45%,#1e3c31);border-top:8px solid #c8b99b;box-shadow:0 15px 20px #171f1a44}.concept-note{max-width:1560px;margin:40px auto 0;font-size:10px;color:#b4bfae;border-top:1px solid #ffffff20;padding-top:18px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:50px}.steps article{border-top:1px solid #b5bdb1;padding-top:20px}.steps article>span{font-family:Prata,Georgia,serif;font-size:30px;color:#897052}.steps h3{font-size:20px;line-height:1.4;margin:24px 0 15px;font-weight:500}.steps p{font-size:12px;color:var(--muted)}.project-cta{background:var(--wine);color:var(--ivory);padding:65px 5%;text-align:center}.project-cta h2{font-size:clamp(37px,5vw,68px);letter-spacing:-2px}.project-cta p{margin:25px auto;color:#e0ceca;font-size:13px}.cta-row{display:flex;justify-content:center;align-items:center;gap:30px;margin-top:35px}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:10%}.faq details{border-top:1px solid var(--line);padding:20px 0}.faq details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;font-size:14px;display:flex;align-items:center;justify-content:space-between;gap:22px}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:25px;font-weight:400}details[open] summary:after{content:'−'}.faq details p{font-size:12px;margin-top:15px;color:var(--muted)}.contacts{border-top:1px solid var(--line);padding-top:65px;padding-bottom:75px}.contacts h2{font-size:clamp(40px,6vw,78px);margin-bottom:45px}.contacts-grid{display:grid;grid-template-columns:1fr 1fr;gap:10%}.phone{font-size:clamp(24px,3vw,42px);letter-spacing:-1px}.contacts p{color:var(--muted);margin-top:16px;font-size:12px}.contact-links a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:17px 0;font-size:14px}footer{background:var(--deep);color:var(--ivory);padding:35px 5% 75px;display:flex;justify-content:space-between;align-items:center;gap:25px}footer .logo{width:185px}footer p,footer small,footer>a:not(.logo){font-size:10px;line-height:1.7}.messenger{position:fixed;bottom:20px;right:22px;z-index:20}.messenger>button{border:1px solid #ffffff55;background:var(--wine);color:var(--paper);padding:17px 22px;font-size:11px;box-shadow:0 5px 25px #0002}.messenger>button span{margin-left:20px}.messenger>div{position:absolute;bottom:65px;right:0;background:var(--paper);color:var(--ink);padding:10px 20px;width:220px;box-shadow:0 5px 30px #0002;border:1px solid var(--line)}.messenger a{display:block;padding:13px 0;font-size:13px;border-bottom:1px solid var(--line)}dialog{border:0;max-width:600px;width:calc(100% - 36px);padding:45px;background:var(--paper);color:var(--ink);max-height:90dvh;overflow:auto}dialog::backdrop{background:#061c16bb;backdrop-filter:blur(4px)}dialog h2{font-size:32px;margin-bottom:25px}dialog h3{font-size:15px;margin-top:25px}dialog p,dialog li{font-size:13px;line-height:1.8}dialog ul{padding-left:20px;margin-bottom:30px}.dialog-close{position:absolute;right:18px;top:10px;border:0;background:none;font-size:30px;color:var(--ink)}
@media(min-width:1600px){.hero{min-height:780px}.hero-inner{padding-top:80px}.ribbon{padding-left:max(5%,calc((100% - 1400px)/2));padding-right:max(5%,calc((100% - 1400px)/2))}}
@media(max-width:1000px){.header nav{gap:15px;font-size:11px}.header .logo{width:175px}.header-contact a{font-size:12px}.hero h1{font-size:74px}.ribbon{gap:20px}.ribbon h2{font-size:27px}.ribbon a{font-size:16px;padding-left:18px}.service-toolbar{align-items:start;flex-direction:column}.estimate{gap:5%}.quiz{padding:24px}.section{padding-top:70px;padding-bottom:70px}.spaces{padding-top:65px}.space-grid{gap:20px}.space-grid h3{font-size:22px}.space-photo,.space-art{height:220px}}
@media(max-width:720px){html{scroll-padding-top:20px}.header{padding:18px 6%;gap:15px;flex-wrap:wrap}.header .logo{width:165px}.header-contact{margin-left:auto}.header-contact small{display:none}.header-contact a{font-size:11px}.menu-button{display:block}.header nav{display:none;width:100%;flex-direction:column;font-size:14px;order:4}.header nav.open{display:flex}.hero{min-height:620px}.hero-inner{padding:45px 6% 25px}.hero h1{font-size:clamp(49px,10.5vw,74px);letter-spacing:-2.8px}.hero p{font-size:12px;max-width:320px}.hero-image{object-position:67%}.hero-shade{background:linear-gradient(90deg,#0b211df5,#0b211d85),linear-gradient(0deg,#0b211d88,transparent)}.hero-actions{align-items:start;gap:15px;flex-direction:column}.hero-bottom{margin-top:45px;flex-direction:column;font-size:9px}.eyebrow{font-size:9px;letter-spacing:1.5px}.ribbon{padding:30px 6%;grid-template-columns:1fr;gap:15px}.ribbon h2 br{display:none}.ribbon h2{font-size:27px}.ribbon a{border-left:0;border-top:1px solid #ffffff30;padding:16px 0 0;display:block;font-size:20px}.ribbon a br{display:none}.ribbon small{font-size:9px;margin-bottom:9px}.section{padding:55px 6%}.estimate,.faq{grid-template-columns:1fr;gap:32px}.estimate-copy p{margin-top:18px}.estimate-note{margin-top:20px}.quiz{padding:23px;min-height:390px}.section-head{align-items:start;flex-direction:column;gap:20px}h2{font-size:34px;letter-spacing:-1.3px}.services{padding-top:20px}.filters{gap:5px}.filters button{font-size:10px;padding:10px 12px}.service-toolbar{margin-top:25px}.search{width:100%}.search input{width:100%}.service-grid{grid-template-columns:1fr 1fr}.service-item{padding:18px 15px;min-height:190px}.service-item h3{font-size:15px}.service-item p{font-size:10px}.spaces{padding:55px 6% 25px}.space-grid{grid-template-columns:1fr;gap:40px}.space-photo,.space-art{height:280px}.space-grid h3{font-size:27px;margin-top:20px}.space-grid h3 br{display:none}.space-grid p{max-width:none}.steps{grid-template-columns:1fr 1fr;gap:30px 25px;margin-top:32px}.steps h3{font-size:18px;margin-top:15px}.steps p{font-size:11px}.project-cta{padding:55px 6%}.project-cta h2{font-size:42px}.cta-row{flex-direction:column;gap:16px}.contacts-grid{grid-template-columns:1fr;gap:30px}.contacts h2{font-size:47px}.phone{font-size:30px}footer{flex-wrap:wrap;align-items:start;padding:30px 6% 100px}footer .logo{width:160px}footer p{width:40%}footer small{margin-left:auto}.messenger{right:15px;bottom:15px}.messenger>button{padding:15px 18px}dialog{padding:35px 25px}.hero .button{padding:18px 22px}.quiz-options{gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

.business-art{position:relative;height:270px;background:var(--wine);padding:25px;color:var(--ivory);overflow:hidden}.business-art>span:first-child{font-size:9px;letter-spacing:1px}.business-art strong{display:block;font-size:39px;line-height:1.1;font-weight:400;letter-spacing:-1.5px;margin-top:25px}.business-arrow{position:absolute;bottom:20px;right:25px;font-size:55px;font-weight:400}@media(max-width:1000px){.business-art{height:220px}.business-art strong{font-size:32px;margin-top:20px}}@media(max-width:720px){.business-art{height:280px}.business-art strong{font-size:44px;margin-top:30px}}

/* Customer feedback */
.reviews{padding-bottom:0}.reviews .section-head{align-items:center;margin-bottom:0}.reviews .section-head>p{font-size:14px;line-height:1.9;max-width:360px}.published-reviews-title{font-size:18px;font-weight:500;margin:40px 0 22px}.review-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.review-card{background:#fffdfa;border:1px solid var(--line);padding:30px;min-width:0}.review-card-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}.review-service{font-size:11px;line-height:1.6;color:var(--muted)}.review-stars{font-size:16px;letter-spacing:2px;color:#7e5d30;white-space:nowrap}.review-card blockquote{margin:0 0 28px;font-size:14px;line-height:1.9;white-space:pre-line;overflow-wrap:anywhere}.review-person{display:flex;gap:13px;align-items:center;border-top:1px solid var(--line);padding-top:20px}.review-initial{width:44px;height:44px;border-radius:50%;background:var(--green);color:var(--ivory);display:grid;place-items:center;flex-shrink:0;font-family:Prata,Georgia,serif;font-size:20px}.review-person strong{display:block;font-size:13px;font-weight:600;overflow-wrap:anywhere}.review-person small{display:block;margin-top:4px;font-size:11px;color:var(--muted);overflow-wrap:anywhere}.reviews-load-error{padding:20px 0;color:var(--muted)}.reviews-load-error p{font-size:13px}.reviews-load-error button{text-decoration:underline}.review-contact{display:block;border-top:1px solid var(--line);padding-top:25px;margin-top:30px;font-size:12px;line-height:1.9}.review-contact strong{font-size:20px;font-weight:500;white-space:nowrap}.skip-link{position:fixed;z-index:100;left:16px;top:16px;transform:translateY(-200%);background:var(--ivory);color:var(--green);padding:14px 20px}.skip-link:focus{transform:none}
@media(max-width:720px){.review-grid{grid-template-columns:1fr}.review-card{padding:24px}.reviews .section-head{align-items:start}.reviews .section-head>p{font-size:14px;max-width:none}.review-card-top{align-items:start;flex-wrap:wrap;gap:12px}}

.leave-review{display:grid;grid-template-columns:1fr 1.4fr;gap:8%;border-top:1px solid var(--line);margin-top:60px}.leave-review>div>p{margin:25px 0 18px;max-width:350px;color:var(--muted)}.leave-review>div>small{display:block;font-size:11px;line-height:1.8;max-width:350px;color:var(--muted)}#review-form{background:#fffdfa;border:1px solid var(--line);padding:30px}#review-form h3{font-size:26px;font-weight:500;margin-bottom:26px}.review-form-row{display:grid;grid-template-columns:1fr 1fr;gap:20px}#review-form label{display:block;font-size:11px;margin-bottom:20px}#review-form input:not([type=checkbox]):not([type=radio]),#review-form select,#review-form textarea{display:block;width:100%;padding:12px;margin-top:8px;border:1px solid #cdd3c8;background:#fffefa;color:var(--ink);font-size:14px;border-radius:0}#review-form textarea{resize:vertical;min-height:120px}.rating-field{border:0;margin:0 0 20px;padding:0;min-width:0}.rating-field legend{font-size:11px;margin-bottom:8px}.rating-input{display:flex;gap:5px;flex-wrap:wrap}#review-form .rating-input label{margin:0;position:relative}.rating-input input{position:absolute;opacity:0;width:100%;height:100%;inset:0;cursor:pointer;margin:0}.rating-input span{display:block;padding:12px 8px;border:1px solid #cdd3c8;font-size:11px;white-space:nowrap}.rating-input input:checked+span{background:var(--green);color:var(--ivory)}.rating-input input:focus-visible+span{outline:2px solid #b48756;outline-offset:3px}#review-form .review-consent{display:flex;align-items:start;gap:10px;font-size:10px;line-height:1.7}.review-consent input{margin:3px 0 0;width:16px;height:16px;flex-shrink:0;accent-color:var(--green)}.review-trap{display:none!important}#review-status{font-size:12px;line-height:1.8;margin-top:18px}#review-status:empty{display:none}#review-form button:disabled{opacity:.6;cursor:wait}@media(max-width:720px){.leave-review{grid-template-columns:1fr;gap:30px;margin-top:25px}.review-form-row{grid-template-columns:1fr;gap:0}#review-form{padding:24px}.rating-input span{padding:12px 15px}#review-form input:not([type=checkbox]):not([type=radio]),#review-form select,#review-form textarea{font-size:16px}}

/* Text-only actions and responsive typography */
.button{justify-content:center;gap:0;line-height:1.5}.text-link,.text-button,.contact-links a,.service-item>span{text-decoration-thickness:1px;text-underline-offset:5px}.space-grid .text-button{line-height:1.6}.space-grid h3{overflow-wrap:break-word}.ribbon a{line-height:1.5}.ribbon a:hover,.contact-links a:hover{text-decoration:underline;text-underline-offset:6px}.service-item>span{text-decoration:underline}.messenger>button{line-height:1.5}.menu-button{font-size:12px;border:1px solid #ffffff40;padding:9px 12px;line-height:1.4}.space-photo{overflow:hidden}.space-photo img{object-position:center}.hero h1{overflow-wrap:normal}
@media(max-width:720px){
  html{-webkit-text-size-adjust:100%;text-size-adjust:100%}
  .hero h1{font-size:clamp(40px,10.5vw,64px);line-height:1.1;letter-spacing:-1.8px}
  .hero p{font-size:14px;line-height:1.8}
  .button{font-size:14px;min-height:48px;padding:15px 20px}
  .text-link,.text-button{font-size:13px}
  .ribbon h2{line-height:1.35}
  .ribbon a{font-size:21px;letter-spacing:-.3px;overflow-wrap:normal}
  .ribbon small{font-size:10px;letter-spacing:1px;line-height:1.6}
  .space-grid h3{font-size:27px;line-height:1.35;letter-spacing:-.5px}
  .space-grid p{font-size:13px;line-height:1.85}
  .space-grid .text-button{margin-top:16px}
  .space-photo{height:auto;aspect-ratio:4/3}
  .space-photo img{display:block;height:100%;width:100%;object-fit:cover}
  .contact-links a{font-size:16px;min-height:56px;align-items:center}
  .filters button{font-size:12px;line-height:1.5;padding:10px 13px}
  .search input{font-size:16px;padding:12px 0}
  .service-item h3{font-size:17px;line-height:1.45;letter-spacing:-.2px}
  .service-item p{font-size:12px;line-height:1.8}
  .service-item>span{font-size:13px;line-height:1.5}
  .messenger{right:12px;bottom:calc(12px + env(safe-area-inset-bottom,0px))}
  .messenger>button{padding:13px 18px;font-size:12px}
  .messenger>div{bottom:60px}
  footer>a:not(.logo),footer p,footer small{font-size:11px;line-height:1.8}
}
@media(max-width:600px){
  .service-grid{grid-template-columns:1fr}
  .service-item{min-height:0;padding:22px;gap:12px}
  .service-item h3{font-size:19px;margin:0}
  .service-item small{font-size:10px;letter-spacing:1.1px}
  .service-item p{font-size:13px;margin:0}
  .service-item>span{margin-top:5px}
  .header{gap:12px;padding:17px 6%}
  .header-contact{order:3;width:100%;margin:0}
  .header-contact a{font-size:13px;letter-spacing:.2px}
  .menu-button{margin-left:auto}
  .header nav{order:4}
}

/* Client-facing details */
.leave-review{margin-top:36px;border-top:0;padding-top:25px}#review-form label,.rating-field legend{font-size:13px}#review-form .review-consent{font-size:11px;line-height:1.8}.review-consent span{max-width:100%}.messenger>button{min-height:46px;min-width:112px;font-size:13px}.quiz .summary{overflow-wrap:anywhere}.header nav{gap:22px}
@media(max-width:900px) and (min-width:721px){.header{flex-wrap:wrap;gap:14px}.header nav{order:3;width:100%;justify-content:center}}
@media(max-width:720px){.leave-review{margin-top:24px;padding-top:0}.review-form-row{grid-template-columns:minmax(0,1fr)}.rating-input span{padding:12px 13px}.leave-review>div>small{font-size:12px;line-height:1.9}.review-contact{margin-top:24px}#review-form .review-consent{font-size:12px}.quiz-options{grid-template-columns:1fr}.quiz-option{font-size:14px;min-height:48px;padding:14px 16px}.quiz label{font-size:13px}.quiz input,.quiz select,.quiz textarea{font-size:16px}.quiz .summary{font-size:13px}.quiz .hint{font-size:12px}.quiz .send-links .button{font-size:13px}.messenger>button{font-size:13px;min-height:44px;padding:11px 17px}.menu-button{font-size:13px;min-height:44px;min-width:70px}}

.feedback-help>h3{font-size:21px;font-weight:500;line-height:1.5}.feedback-help>p{margin-top:20px}@media(max-width:720px){.feedback-help{order:2}#review-form{order:1}.leave-review{padding-top:10px}.reviews .section-head{gap:18px}}

/* Customer projects and photo galleries */
.customer-projects{display:grid;gap:28px;margin-top:40px}.project-review{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:34px;padding:25px;background:#fffdfa;border:1px solid var(--line);align-items:center;scroll-margin-top:30px}.project-review:nth-child(even){grid-template-columns:minmax(0,1fr) minmax(0,1.45fr)}.project-review:nth-child(even) .project-gallery{order:2}.project-gallery,.project-review-copy{min-width:0}.project-cover{position:relative;display:block;width:100%;padding:0;border:0;background:var(--green);color:var(--ink);overflow:hidden}.project-cover>img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.project-cover>span,.project-photo-pair button>span{position:absolute;right:12px;bottom:12px;background:var(--paper);padding:8px 11px;color:var(--ink);font-size:11px;line-height:1.5}.project-photo-caption{display:flex;justify-content:space-between;gap:15px;font-size:11px;line-height:1.7;color:var(--muted);padding:12px 0}.project-photo-caption>span:last-child{white-space:nowrap}.project-thumbs{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:8px}.project-thumb{border:2px solid transparent;padding:2px;background:transparent;min-width:0;min-height:44px}.project-thumb[aria-pressed=true]{border-color:var(--wine)}.project-thumb img{display:block;width:100%;aspect-ratio:3/2;object-fit:cover}.project-author{font-size:18px;font-weight:600;line-height:1.5}.project-location{font-size:12px;line-height:1.8;color:var(--muted);margin-top:7px}.project-review-copy h3{font-family:Prata,Georgia,serif;font-size:29px;line-height:1.4;letter-spacing:-.6px;font-weight:400;margin-top:26px}.project-review-copy blockquote{margin:27px 0 0;padding-top:24px;border-top:1px solid var(--line)}.project-review-copy blockquote p{font-size:15px;line-height:1.9}.project-review-copy blockquote p+p{margin-top:15px}.project-photo-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.project-photo-pair button{position:relative;padding:0;border:0;background:var(--green);color:var(--ink);min-width:0}.project-photo-pair img{display:block;aspect-ratio:3/4;object-fit:cover;width:100%}.project-photo-pair button>span{font-size:10px;padding:7px 9px;right:8px;bottom:8px}#project-photo-dialog{width:calc(100% - 32px);max-width:1080px;padding:22px;max-height:94dvh;overflow:auto}.photo-dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:18px}#project-photo-dialog h2{font-family:Manrope,Arial,sans-serif;font-size:18px;line-height:1.5;margin:0;letter-spacing:0}.photo-dialog-close,.photo-dialog-nav button{background:transparent;border:1px solid var(--line);color:var(--ink);padding:10px 15px;font-size:12px;min-height:44px}.photo-dialog-close{flex-shrink:0}#project-photo-image{display:block;width:100%;height:64dvh;object-fit:contain;background:#e9e5dd}#project-photo-caption{font-size:13px;line-height:1.7;margin:13px 0}.photo-dialog-nav{display:flex;justify-content:space-between;align-items:center;gap:12px}.photo-dialog-nav span{font-size:12px;white-space:nowrap}
@media(max-width:1000px){.project-review{gap:24px;padding:22px}.project-review-copy h3{font-size:25px}.project-review-copy blockquote p{font-size:14px}}
@media(max-width:720px){.customer-projects{gap:24px;margin-top:28px}.project-review,.project-review:nth-child(even){grid-template-columns:minmax(0,1fr);gap:25px;padding:20px}.project-review-copy{order:-1}.project-review:nth-child(even) .project-gallery{order:0}.project-author{font-size:17px}.project-location{font-size:12px}.project-review-copy h3{font-size:25px;line-height:1.4;margin-top:20px}.project-review-copy blockquote{margin-top:20px;padding-top:20px}.project-review-copy blockquote p{font-size:15px;line-height:1.85}.project-thumbs{grid-template-columns:repeat(3,minmax(0,1fr))}.project-photo-caption{font-size:10px}.project-cover>span{font-size:11px}.project-photo-pair button>span{font-size:9px;padding:6px;right:5px;bottom:5px}#project-photo-dialog{padding:16px;width:calc(100% - 20px)}#project-photo-dialog h2{font-size:15px}.photo-dialog-top{gap:12px}.photo-dialog-close{font-size:12px;padding:9px 12px}#project-photo-image{height:57dvh}.photo-dialog-nav{gap:8px}.photo-dialog-nav button{font-size:11px;padding:10px 8px}.photo-dialog-nav span{font-size:11px}}

/* Direct enquiry delivery */
.lead-contact-fields{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:16px}.quiz .lead-contact-fields label{margin-top:5px}.lead-consent{display:flex!important;align-items:flex-start;gap:10px;line-height:1.7}.quiz .lead-consent input{width:17px;height:17px;min-width:17px;margin:3px 0 0;accent-color:var(--green)}.lead-trap{display:none!important}.lead-privacy{border:0!important;padding:0 0 18px!important}.lead-privacy summary{font-size:12px;text-decoration:underline;text-underline-offset:4px;justify-content:start}.lead-privacy summary:after{content:none}.lead-privacy p{font-size:11px;line-height:1.8;margin-top:12px;color:var(--muted)}#lead-form>.button{width:100%;min-height:48px}#lead-form>.button:disabled{opacity:.65;cursor:wait}.quiz .lead-status{font-size:13px;line-height:1.8;margin-top:16px;overflow-wrap:anywhere}.lead-status:empty{display:none}.lead-status[data-state=success]{border-left:3px solid var(--green);padding-left:12px}.lead-status[data-state=error]{color:#8d2436}.quiz .send-links{gap:10px}.quiz .send-links .text-button{width:100%}@media(max-width:720px){.lead-contact-fields{grid-template-columns:minmax(0,1fr);gap:5px}.lead-privacy summary{font-size:13px}.lead-privacy p{font-size:12px}.quiz .lead-consent{font-size:12px}.quiz .send-links .button{flex:1}.quiz .lead-status{font-size:14px}}

/* Service pages */
footer{flex-wrap:wrap}.footer-service-links{display:grid;gap:8px}.footer-service-links a{font-size:11px;line-height:1.7}.footer-service-links a:hover{text-decoration:underline;text-underline-offset:4px}.breadcrumbs{display:flex;gap:14px;align-items:center;flex-wrap:wrap;font-size:11px;line-height:1.7;color:var(--muted);max-width:1560px;margin:30px auto 0;padding:0 5%}.breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.service-page figure{margin:0;min-width:0}.service-hero{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:6%;align-items:center;padding-top:35px;padding-bottom:75px}.service-hero h1{font-size:clamp(38px,4.3vw,64px);line-height:1.18;font-weight:500;letter-spacing:-2.1px;margin:0 0 30px;overflow-wrap:break-word}.service-hero h1 em{font-size:.86em}.service-hero p{color:var(--muted);font-size:14px;line-height:1.9;margin-top:18px;max-width:550px}.service-hero .service-intro{font-size:17px;color:var(--ink)}.service-hero figure img{display:block;width:100%;height:500px;object-fit:cover}.service-hero figcaption{font-size:10px;line-height:1.7;color:var(--muted);margin-top:12px}.service-actions{display:flex;gap:24px;align-items:center;flex-wrap:wrap;margin-top:30px}.service-primary{background:var(--wine);color:var(--paper)}.service-primary:hover{background:#793247}.service-scope{padding-top:35px}.service-scope-grid{list-style:none;padding:0;margin:35px 0 0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid var(--line);border-top:1px solid var(--line)}.service-scope-grid li{padding:28px;border-right:1px solid var(--line);border-bottom:1px solid var(--line)}.service-scope-grid h3{font-size:19px;font-weight:500;line-height:1.4;margin-bottom:15px}.service-scope-grid p{font-size:13px;color:var(--muted)}.service-cost{background:var(--green);color:var(--ivory)}.service-cost>.section{display:grid;grid-template-columns:1fr 1.25fr;gap:10%;align-items:start;padding-top:70px;padding-bottom:70px}.service-cost p{color:#d7ddcf;font-size:15px;line-height:1.9}.service-cost p+p{margin-top:20px}.service-cost .button{margin-top:30px}.service-workflow .steps{grid-template-columns:repeat(3,minmax(0,1fr))}.service-case{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr);gap:7%;align-items:center;padding-top:10px}.service-case img{display:block;width:100%;height:440px;object-fit:cover}.service-case p{font-size:13px;color:var(--muted);margin-top:20px}.service-case blockquote{font-size:17px;line-height:1.9;margin:25px 0}.service-final{background:var(--wine);color:var(--ivory);text-align:center}.service-final .section{padding-top:70px;padding-bottom:70px}.service-final p{color:#e4d3ce;margin-top:24px}.related-services{display:flex;gap:25px;flex-wrap:wrap;align-items:center;padding-top:35px;padding-bottom:35px}.related-services>span{color:var(--muted);font-size:11px;margin-right:auto}.related-services a{font-size:13px;text-decoration:underline;text-underline-offset:6px}.service-item>a{font-size:12px;text-decoration:underline;text-underline-offset:4px;margin-top:auto}#service-page-link{display:inline-block;margin-top:12px}.service-page .header .logo{width:195px}
@media(max-width:1000px){.service-scope-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.service-hero h1{font-size:43px;letter-spacing:-1.4px}.service-hero figure img{height:440px}.service-hero .service-intro{font-size:16px}.service-case img{height:350px}}
@media(max-width:720px){.breadcrumbs{padding:0 6%;margin-top:24px;font-size:11px;gap:10px}.service-hero{grid-template-columns:minmax(0,1fr);gap:30px;padding-top:28px;padding-bottom:45px}.service-hero h1{font-size:clamp(35px,9.5vw,48px);letter-spacing:-1.2px;line-height:1.18;margin-bottom:24px}.service-hero h1 em{font-size:.9em}.service-hero p{font-size:14px;margin-top:16px}.service-hero .service-intro{font-size:16px}.service-hero figure img{height:auto;aspect-ratio:4/3}.service-hero figcaption{font-size:11px}.service-actions{gap:15px;margin-top:24px}.service-actions .button{width:100%}.service-scope-grid{grid-template-columns:minmax(0,1fr);margin-top:25px}.service-scope-grid li{padding:23px}.service-scope-grid h3{font-size:20px}.service-scope-grid p{font-size:14px}.service-cost>.section{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:50px;padding-bottom:50px}.service-cost p{font-size:14px}.service-cost .button{width:100%;margin-top:25px}.service-workflow .steps{grid-template-columns:minmax(0,1fr);gap:28px;margin-top:30px}.service-workflow .steps h3{margin-top:18px}.service-case{grid-template-columns:minmax(0,1fr);gap:28px;padding-top:0}.service-case img{height:auto;max-height:460px;object-fit:cover}.service-case blockquote{font-size:16px}.service-final .section{padding-top:50px;padding-bottom:50px}.service-final .cta-row{flex-direction:column;gap:18px}.service-final .button{width:100%}.related-services{align-items:start;flex-direction:column;gap:18px;padding-top:30px;padding-bottom:30px}.related-services a{font-size:14px;line-height:1.7}.footer-service-links{gap:12px;width:100%}.footer-service-links a{font-size:13px}.service-page .header .logo{width:175px}}
/* Business information and public documents */
.site-footer{display:block;padding:55px 5% 28px}.footer-main{display:grid;grid-template-columns:1.05fr .85fr 1.15fr 1fr;gap:36px;max-width:1500px;margin:auto}.footer-main>div,.footer-main>nav{min-width:0}.footer-main .logo{max-width:100%}.footer-main p{font-size:12px;line-height:1.9;margin-top:16px;color:#c9d0c2}.footer-main nav,.footer-office{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.footer-main nav a,.footer-office a{font-size:12px;line-height:1.7}.footer-office strong{font-size:13px;font-weight:500}.footer-office p{margin:0}.footer-main a:hover{text-decoration:underline;text-underline-offset:4px}.footer-bottom{max-width:1500px;margin:40px auto 0;padding-top:24px;border-top:1px solid #ffffff26;display:flex;justify-content:space-between;gap:24px;font-size:11px;line-height:1.9;color:#c9d0c2}.footer-bottom a{text-align:right}.contact-office{margin-top:24px;max-width:420px}.contact-office .text-link{display:inline-block;margin-top:10px}.legal-content{max-width:1100px;padding-top:35px;padding-bottom:80px}.legal-breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;font-size:12px;color:var(--muted);margin-bottom:42px;line-height:1.7}.legal-breadcrumbs a{text-decoration:underline;text-underline-offset:4px}.legal-content h1{font-size:clamp(34px,4.2vw,58px);font-weight:500;line-height:1.2;letter-spacing:-1.5px;max-width:900px}.legal-content .legal-intro{font-size:16px;margin:30px 0 40px;color:var(--muted)}.legal-content section{padding-top:35px;margin-top:35px;border-top:1px solid var(--line)}.legal-content h2{font-size:25px;line-height:1.4;letter-spacing:-.6px;margin-bottom:22px}.legal-content p{font-size:14px;line-height:1.9;margin-top:18px}.legal-content p a{text-decoration:underline;text-underline-offset:4px;overflow-wrap:anywhere}.requisites{display:grid;grid-template-columns:220px minmax(0,1fr);gap:0;margin:0}.requisites dt,.requisites dd{border-bottom:1px solid var(--line);padding:16px 0;font-size:14px;line-height:1.8;margin:0}.requisites dt{color:var(--muted);padding-right:25px}.requisites dd{overflow-wrap:anywhere}.yandex-form-frame{width:100%;height:1050px;border:0;background:#fff;border-radius:0;margin-top:24px}.form-open-link{display:inline-block;margin-top:16px;text-decoration:underline;text-underline-offset:4px;font-size:13px}.external-form-panel{min-width:0}.external-form-panel p{margin-top:15px}.privacy-links{font-size:12px!important;line-height:1.8!important}.privacy-links a{text-decoration:underline;text-underline-offset:3px}.legal-page .header .logo{width:195px}
@media(max-width:1000px){.footer-main{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}.legal-content{padding-left:6%;padding-right:6%}}
@media(max-width:720px){.site-footer{padding:40px 6% 25px}.footer-main{grid-template-columns:minmax(0,1fr);gap:30px}.footer-main .logo{width:185px}.footer-main p,.footer-main nav a,.footer-office a{font-size:13px}.footer-main nav{gap:13px}.footer-bottom{flex-direction:column;gap:15px;margin-top:30px;font-size:12px}.footer-bottom a{text-align:left}.legal-content h1{font-size:34px;letter-spacing:-1px;overflow-wrap:break-word}.legal-content .legal-intro{font-size:15px}.legal-content h2{font-size:24px}.legal-content p{font-size:14px}.requisites{grid-template-columns:minmax(0,1fr)}.requisites dt{padding:18px 0 4px;border:0;font-size:12px}.requisites dd{padding:0 0 16px}.legal-breadcrumbs{margin-bottom:30px}.legal-page .header .logo{width:175px}.yandex-form-frame{height:1200px}.privacy-links{font-size:12px!important}}

.yandex-form-frame{display:block;width:100%;border:0;background:#fff;min-width:0}.review-yandex-frame{height:1780px}.quiz:has(.yandex-form-frame){align-self:start}.external-form-panel>p{color:var(--muted);line-height:1.65}.privacy-links{display:flex;flex-wrap:wrap;gap:12px 20px;margin:24px 0;font-size:13px;line-height:1.6}.privacy-links a{text-decoration:underline;text-underline-offset:4px}@media(max-width:600px){.review-yandex-frame{height:2050px}}
