@import url('https://fonts.googleapis.com/css2?family=Manrope:wght@400;450;500;550;600;650;700;750;800&display=swap');
:root{--ink:#252c29;--muted:#6d716c;--accent:#a94c32;--paper:#fff;--soft:#f3f4f0;--line:#dfe2dc}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Manrope,Arial,sans-serif}button,a,input{touch-action:manipulation}button{font:inherit}a{color:inherit;text-decoration:none}button{cursor:pointer}img{display:block;width:100%;object-fit:cover}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid var(--accent);outline-offset:6px}.wrap{width:min(1320px,calc(100% - 96px));margin-inline:auto}.header{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:32px;padding:20px 48px;max-width:1512px;margin:auto}.brand{display:flex;align-items:center;gap:12px;font-size:17px;font-weight:800;letter-spacing:1px;line-height:1.4}.brand small{display:block;font-size:10px;letter-spacing:2px;font-weight:600;margin-top:3px}.brand-icon{font-size:40px;font-weight:750;letter-spacing:-8px;padding-right:8px;line-height:1}.brand-icon span{color:var(--accent)}nav{display:flex;gap:29px;font-size:14px;font-weight:600}nav a:hover,.text-link:hover{color:var(--accent)}.header-phone{font-size:17px;font-weight:750;white-space:nowrap}.header-phone span{display:block;font-size:12px;font-weight:500;color:var(--muted);text-align:right}.menu-button{display:none}.mobile-nav[hidden]{display:none}.hero{display:grid;grid-template-columns:1fr 1fr;min-height:640px;padding-top:12px;padding-bottom:32px;gap:40px}.hero-copy{padding-top:49px;position:relative}.eyebrow{font-size:12px;font-weight:700;letter-spacing:1.9px;margin:0 0 27px;display:flex;align-items:center;gap:10px}.eyebrow>span{width:19px;height:2px;background:var(--accent)}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(45px,4.55vw,68px);font-weight:550;line-height:1.14;letter-spacing:-3.4px;margin-bottom:28px}em{font-style:normal;color:var(--accent)}.hero-description{font-size:18px;line-height:1.8;color:var(--muted);margin-bottom:32px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:32px;min-height:58px;padding:16px 24px;font-size:14px;font-weight:700;border:1px solid transparent;transition:background .2s,transform .2s}.button:hover{transform:translateY(-2px)}.primary{background:var(--accent);color:white}.primary:hover{background:#883e2b}.button span{font-size:21px;font-weight:400}.text-link{display:inline-flex;align-items:center;gap:20px;font-size:14px;font-weight:700}.hero-copy>.text-link{display:flex;margin-top:24px;width:fit-content}.hero-bottom{display:flex;align-items:center;gap:15px;margin-top:45px;color:var(--muted);font-size:12px}.hero-bottom p{margin:0}.mini-line{height:30px;width:1px;background:var(--line)}.hero-visual{position:relative;height:605px}.hero-photo{height:100%;object-position:50% 48%}.photo-tag{position:absolute;left:22px;top:22px;font-size:10px;letter-spacing:1.5px;background:white;padding:8px 13px;font-weight:700}.photo-caption{position:absolute;left:0;bottom:0;right:0;color:#fff;background:linear-gradient(transparent,#0009);padding:55px 26px 23px;display:flex;align-items:center;justify-content:space-between;font-size:14px}.photo-caption a{font-size:25px}.inset-photo{position:absolute;width:178px;height:240px;bottom:80px;left:-66px;border:7px solid white;box-shadow:0 10px 35px #0002;background:#fff}.inset-photo img{height:100%}.inset-photo span{position:absolute;left:-7px;right:-7px;bottom:-28px;background:#fff;text-align:center;padding:5px;font-size:10px}.scope-strip{display:flex;justify-content:space-between;align-items:center;gap:16px;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:26px 0;margin-top:16px}.scope-strip>span{font-size:10px;letter-spacing:1.3px;color:var(--muted)}.scope-strip p{margin:0;font-size:13px;font-weight:600}.scope-strip i{font-style:normal;color:#adb3aa}.section{padding-block:100px}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:60px;margin-bottom:44px}.section-heading .eyebrow{margin-bottom:18px}h2{font-size:clamp(34px,3.5vw,49px);letter-spacing:-1.9px;line-height:1.2;font-weight:550;margin-bottom:0}.section-intro{color:var(--muted);font-size:15px;max-width:350px;margin-bottom:4px}.services{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line)}.services article{padding:30px 33px 30px 0}.services article+article{border-left:1px solid var(--line);padding-left:33px}.service-number{font-size:13px;color:var(--accent)}h3{font-size:23px;font-weight:600;letter-spacing:-.7px;line-height:1.4}.services h3{margin:30px 0 14px}.services p{font-size:15px;color:var(--muted);max-width:315px}.service-tags{font-size:12px;color:var(--muted);margin-top:25px}.services a{font-size:13px;font-weight:750;display:block;margin-top:23px}.portfolio{background:var(--soft)}.collage{display:grid;grid-template-columns:1.3fr 1fr 1fr;grid-template-rows:245px 245px;gap:16px}.gallery-tile{border:0;padding:0;position:relative;overflow:hidden;background:#dadcd7;text-align:left;color:#fff}.gallery-tile img{height:100%;transition:transform .5s}.gallery-tile:hover img{transform:scale(1.035)}.gallery-tile>span{position:absolute;inset:auto 0 0;padding:45px 20px 17px;background:linear-gradient(transparent,#0009);display:flex;justify-content:space-between;font-size:14px}.gallery-tile b{font-size:18px;font-weight:400}.tile-main{grid-row:span 2}.tile-bath{grid-row:span 2}.tile-bedroom img{object-position:center 65%}.tile-kitchen img{object-position:center 47%}.project-footer{display:flex;justify-content:space-between;gap:25px;align-items:center;margin-top:27px}.project-footer h3{font-size:20px;margin-bottom:6px}.project-footer p{color:var(--muted);font-size:13px;margin:0}.outline{border-color:#b7bcb4;background:transparent}.outline:hover{background:#e6e9e1}.plan-story{margin-top:56px;border-top:1px solid #d4d8cf;padding-top:42px;display:grid;grid-template-columns:180px 1fr;gap:45px;align-items:center;max-width:920px}.plan-image{background:white;padding:10px;border:1px solid var(--line)}.plan-image img{height:185px;object-fit:contain}.plan-image span{font-size:10px;color:var(--muted)}.plan-story .eyebrow{font-size:10px;margin-bottom:12px}.plan-story h3{font-size:26px;margin-bottom:15px}.plan-story p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:600px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:32px}.steps article{border-top:1px solid #bfc5bb;padding-top:24px}.steps span{font-size:13px;color:var(--accent)}.steps h3{font-size:20px;margin:26px 0 12px}.steps p{font-size:14px;color:var(--muted);margin-bottom:0}.cost-section{background:var(--soft);padding:45px;display:grid;grid-template-columns:1.2fr 1fr;gap:70px}.cost-section h2{font-size:35px}.cost-section .eyebrow{font-size:10px;margin-bottom:20px}.cost-section p:not(.eyebrow){font-size:15px;color:var(--muted);margin-bottom:23px}.faq{display:grid;grid-template-columns:1fr 1.4fr;gap:80px}.questions{border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;padding:23px 32px 23px 0;font-size:16px;font-weight:600;position:relative}summary::-webkit-details-marker{display:none}summary:after{content:'+';position:absolute;right:1px;top:19px;font-size:24px;font-weight:400;color:var(--accent)}details[open] summary:after{content:'−'}details p{font-size:14px;color:var(--muted);padding-right:28px}.contact{background:var(--ink);color:#fff;padding:76px 0}.contact-grid{display:grid;grid-template-columns:1.5fr 1fr;gap:80px;align-items:center}.contact .eyebrow{color:#bbc4bc;font-size:11px}.contact h2{font-size:clamp(35px,3.8vw,54px);margin-bottom:27px}.contact em{color:#dda68d}.contact p{font-size:15px;color:#bbc4bc;margin-bottom:0}.contact-card{border-left:1px solid #526054;padding-left:52px}.contact-label{font-size:10px;color:#bbc4bc;letter-spacing:1.6px}.contact-card h3{font-size:27px;margin:12px 0 8px}.contact-number{display:block;font-size:clamp(21px,2.3vw,32px);font-weight:550;letter-spacing:-1px;white-space:nowrap;margin-bottom:24px}.light{background:#fff;color:var(--ink)}.contact-card p{font-size:12px;margin-top:22px}.footer{padding-block:30px;display:flex;align-items:center;justify-content:space-between;gap:24px}.footer p,.footer>span{font-size:12px;color:var(--muted);margin:0}.footer .brand{font-size:13px}.footer .brand small{font-size:8px}.footer .brand-icon{font-size:33px}.mobile-contact{display:none}.skip{position:fixed;top:-100px;background:white;padding:12px;z-index:50}.skip:focus{top:0}dialog{border:0;padding:20px;background:#19201d;color:white;width:min(1100px,95vw);max-height:94dvh}dialog::backdrop{background:#000c;backdrop-filter:blur(5px)}.gallery-top,.gallery-bottom{display:flex;justify-content:space-between;gap:20px;align-items:center}.gallery-top p{margin:0;font-size:14px}.gallery-top button,.gallery-stage button{background:transparent;border:1px solid #ffffff50;color:white;width:44px;height:44px;flex-shrink:0;font-size:23px}.gallery-stage{display:flex;align-items:center;gap:16px;padding:18px 0}.gallery-stage img{height:min(71dvh,780px);width:calc(100% - 120px);object-fit:contain}.gallery-bottom{font-size:13px;color:#d8ddd8}.gallery-bottom span:last-child{white-space:nowrap}
@media(min-width:1550px){.hero{gap:65px}.hero-copy{padding-top:65px}}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.header{padding-inline:28px;gap:20px}nav{gap:18px;font-size:12px}.header-phone{font-size:15px}.hero{gap:26px;min-height:auto}.hero-copy{padding-top:35px}h1{font-size:49px;letter-spacing:-2.5px}.hero-visual{height:560px}.inset-photo{width:135px;height:185px;left:-35px}.hero-description{font-size:16px}.hero-bottom{margin-top:35px}.scope-strip{flex-wrap:wrap}.scope-strip>span{flex-basis:100%}.section{padding-block:75px}.collage{grid-template-rows:210px 210px}.contact-grid{gap:45px}.contact-card{padding-left:30px}.brand{font-size:14px}.brand small{font-size:8px}}
@media(max-width:760px){html{scroll-padding-top:25px}.wrap{width:calc(100% - 40px)}.header{min-height:82px;padding:17px 20px}.header>nav,.header-phone{display:none}.brand{font-size:15px}.brand small{font-size:8px}.menu-button{display:block;background:none;border:1px solid var(--line);width:43px;height:43px;font-size:22px}.mobile-nav{display:flex;flex-direction:column;padding:10px 20px 24px;gap:18px;border-bottom:1px solid var(--line);font-size:16px}.hero{grid-template-columns:1fr;gap:32px;padding-top:0;padding-bottom:20px}.hero-copy{padding-top:22px}.eyebrow{font-size:10px;letter-spacing:1.4px;margin-bottom:22px}h1{font-size:clamp(40px,10.5vw,66px);letter-spacing:-2px;line-height:1.13;margin-bottom:22px}.hero-description{font-size:16px;max-width:350px;margin-bottom:25px}.hero-copy>.text-link{display:inline-flex;margin:0 0 0 18px;font-size:12px;gap:9px}.hero-copy>.button{font-size:13px;gap:18px;padding-inline:18px;min-height:56px}.hero-bottom{display:none}.hero-visual{height:470px;margin-left:25px}.inset-photo{width:125px;height:165px;left:-25px;bottom:57px;border-width:5px}.photo-tag{left:16px;top:16px;font-size:9px}.photo-caption{padding:55px 18px 16px}.inset-photo span{font-size:8px;left:-5px;right:-5px;bottom:-23px}.scope-strip{margin-top:10px;display:grid;grid-template-columns:1fr 1fr;padding:21px 0;gap:12px}.scope-strip>span{grid-column:span 2;font-size:9px}.scope-strip i{display:none}.scope-strip p{font-size:12px}.section{padding-block:62px}.section-heading{display:block;margin-bottom:28px}.section-heading h2{margin-bottom:24px}h2{font-size:35px;letter-spacing:-1.4px}.section-intro{font-size:14px;max-width:100%}.services{grid-template-columns:1fr}.services article,.services article+article{padding:25px 0;border-left:0}.services article+article{border-top:1px solid var(--line)}.services h3{margin:10px 0 12px;font-size:25px}.services p{max-width:100%}.service-tags{margin-top:18px}.services a{margin-top:15px}.collage{grid-template-columns:1fr 1fr;grid-template-rows:300px 210px;gap:10px}.tile-main{grid-row:auto;grid-column:1}.tile-bath{grid-row:auto}.gallery-tile>span{font-size:12px;padding:35px 12px 12px}.project-footer{align-items:flex-start;flex-direction:column;gap:19px}.project-footer h3{font-size:19px}.project-footer p{font-size:12px}.project-footer .button{width:100%;min-height:52px}.plan-story{grid-template-columns:105px 1fr;gap:20px;margin-top:32px;padding-top:30px;align-items:start}.plan-image{padding:5px}.plan-image img{height:155px}.plan-image span{font-size:8px;display:block}.plan-story .eyebrow{font-size:8px;letter-spacing:.8px}.plan-story h3{font-size:20px;line-height:1.35}.plan-story p:not(.eyebrow){font-size:13px}.plan-story .text-link{font-size:12px;gap:8px}.steps{grid-template-columns:1fr 1fr;gap:25px 20px}.steps h3{margin-top:15px;font-size:18px}.steps p{font-size:13px}.cost-section{grid-template-columns:1fr;gap:24px;padding:30px 24px}.cost-section h2{font-size:29px}.cost-section .button{width:100%}.faq{grid-template-columns:1fr;gap:30px}summary{font-size:15px;padding-block:20px}.contact{padding:52px 0}.contact-grid{grid-template-columns:1fr;gap:35px}.contact h2{font-size:38px}.contact-card{border-left:0;border-top:1px solid #526054;padding:25px 0 0}.contact-number{font-size:30px}.contact .button{width:100%}.footer{flex-wrap:wrap;padding-bottom:95px}.footer p{order:3;flex-basis:100%;font-size:11px}.mobile-contact{display:block;position:fixed;bottom:0;left:0;right:0;padding:12px 20px calc(12px + env(safe-area-inset-bottom));background:white;box-shadow:0 -3px 20px #0001;z-index:10}.mobile-contact a{display:block;background:var(--accent);color:white;text-align:center;padding:12px;font-size:14px;font-weight:650}dialog{padding:13px;width:100%;max-width:100vw}.gallery-stage{gap:5px}.gallery-stage button{width:34px;height:44px}.gallery-stage img{width:calc(100% - 78px);height:65dvh}.gallery-bottom{font-size:11px}.desktop{display:none}}
@media(max-width:380px){.hero-copy>.text-link{display:flex;margin:18px 0 0}.hero-visual{height:420px}.collage{grid-template-rows:240px 180px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
/* Readable text and comfortable touch controls on narrow screens. */
.hero-copy,.hero-visual,.contact-card,.plan-story>div{min-width:0}
.services p,.steps p,.section-intro,.plan-story p:not(.eyebrow),.cost-section p:not(.eyebrow),details p,.contact p{font-size:1rem}
.service-tags,.services a,.project-footer p,.plan-story .text-link,.gallery-bottom{font-size:.875rem}
@media(min-width:761px){.mobile-nav{display:none}}
@media(max-width:760px){
  .menu-button,.gallery-stage button,.gallery-top button{min-width:44px;min-height:44px}
  .hero-copy>.text-link{display:flex;margin:18px 0 0;min-height:44px;font-size:.875rem}
  .gallery-stage img{width:calc(100% - 98px)}
  .gallery-tile>span,.scope-strip p,.contact-card p{font-size:.875rem}
  .photo-tag,.plan-story .eyebrow,.contact-label,.contact .eyebrow,.cost-section .eyebrow,.scope-strip>span{font-size:.75rem;letter-spacing:.8px}
  .inset-photo span{font-size:.75rem;line-height:1.4;bottom:-40px}
  .plan-story{grid-template-columns:1fr}
  .plan-image{width:150px}
  .plan-image img{height:210px}
  .plan-image span{font-size:.75rem}
  .contact-number{font-size:clamp(1.4rem,7.5vw,1.875rem);white-space:normal}
  .gallery-bottom{font-size:.875rem;align-items:start}
}
@media(max-width:400px){.steps{grid-template-columns:1fr}.hero-copy>.button{width:100%}.hero h1{font-size:2.5rem}}
.inspiration{border-top:1px solid var(--line);margin-top:52px;padding-top:44px}.inspiration-heading{display:flex;gap:40px;justify-content:space-between;align-items:end;margin-bottom:25px}.inspiration-heading .eyebrow{font-size:12px;margin-bottom:13px}.inspiration-heading h3{font-size:30px;margin:0}.inspiration-heading>p{max-width:430px;color:var(--muted);font-size:14px;margin:0}.inspiration-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.inspiration-grid article{background:white}.inspiration-grid img{height:330px}.inspiration-grid article>div{padding:24px}.asset-label{display:block;font-size:12px;font-weight:650;letter-spacing:.7px;color:var(--accent)}.inspiration-grid h3{margin:15px 0 12px}.inspiration-grid p{font-size:16px;color:var(--muted)}.inspiration-grid a{font-size:14px;text-decoration:underline;text-underline-offset:4px}.reviews{padding-bottom:0}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.review-card{padding:28px;border:1px solid var(--line);background:var(--soft)}.review-card h3{font-size:22px;margin:22px 0 16px}.review-card blockquote{font-size:16px;margin:0;line-height:1.85}.review-caption{border-top:1px solid var(--line);padding-top:18px;margin:25px 0 0;font-size:12px;color:var(--muted)}
@media(max-width:1100px){.header{gap:15px}.header nav{gap:15px}.inspiration-grid img{height:280px}.review-grid{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.inspiration-heading{display:block}.inspiration-heading>p{margin-top:20px}.inspiration-grid{grid-template-columns:1fr}.inspiration-grid img{height:280px}.inspiration-grid article>div{padding:22px}.review-grid{grid-template-columns:1fr}.review-card{padding:24px}.inspiration-heading h3{font-size:27px}.hero-visual .photo-tag{max-width:calc(100% - 32px);font-size:11px}.hero-visual .inset-photo span{font-size:12px}}
.messenger-links{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.messenger-link{display:inline-flex;align-items:center;justify-content:center;gap:9px;min-height:46px;padding:10px 14px;border:1px solid var(--line);font-size:14px;font-weight:650;transition:background .2s}.messenger-link svg{width:22px;height:22px;flex-shrink:0}.telegram-link svg{color:#167eae}.whatsapp-link svg{color:#208545}.messenger-link:hover{background:#eef1eb}.contact .messenger-link{border-color:#637066;color:#fff}.contact .messenger-link svg{color:inherit}.contact .messenger-link:hover{background:#3c4840}.hero-bottom{margin-top:25px}
@media(max-width:760px){.mobile-contact{display:flex;gap:10px;align-items:center}.mobile-contact>.mobile-call{flex:1;min-height:46px;display:flex;align-items:center;justify-content:center}.mobile-contact .messenger-links{margin:0;flex-wrap:nowrap;gap:8px}.mobile-contact .messenger-link{display:flex;width:46px;height:46px;padding:10px;background:white;border:1px solid var(--line);color:var(--ink)}.mobile-contact .messenger-link span{display:none}.hero-copy .messenger-links{margin-top:16px}.hero-visual{margin-left:0}}
.brand-mark{width:48px;height:48px;object-fit:contain;flex-shrink:0}.brand{font-size:20px;letter-spacing:-.5px}.brand small{font-size:9px;letter-spacing:1px}.footer .brand{font-size:18px}.footer .brand-mark{width:40px;height:40px}.header nav{gap:20px}@media(max-width:1100px){.header nav{gap:12px}.brand{font-size:18px}.brand small{font-size:8px}}@media(max-width:760px){.brand{font-size:19px}.brand-mark{width:42px;height:42px}.brand small{font-size:8px;letter-spacing:.5px}}
