@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;600;700;800&display=swap');:root{--ink:#203a32;--paper:#faf7ef;--orange:#f47c4b;--line:#d9ddce}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 'DM Sans',Arial,sans-serif}h1,h2,h3,.brand{font-family:Manrope,Arial,sans-serif;line-height:1.1}a{color:inherit;text-decoration:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #c24d23;outline-offset:5px}.wrap{max-width:1200px;margin:auto;padding:0 32px}.top{background:var(--ink);color:#fff9ed;text-align:center;font-size:12px;padding:8px;letter-spacing:1.2px}header{border-bottom:1px solid var(--line)}.nav{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:25px;padding-bottom:25px}.brand{font-size:22px;font-weight:800;letter-spacing:-1px}.brand small{display:block;font-size:9px;letter-spacing:2px;margin-top:7px}.brand b{color:#dc693b}.navlinks{display:flex;gap:26px;align-items:center;font-size:14px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:24px;background:var(--ink);color:#fff;padding:15px 24px;border-radius:6px;font-weight:700;border:0;cursor:pointer;font-size:14px}.btn.orange{background:var(--orange);color:#1b322a}.btn.outline{background:transparent;border:1px solid var(--ink);color:var(--ink)}.menu{display:none}.eyebrow{font-size:11px;font-weight:700;letter-spacing:2px;text-transform:uppercase}.hero{display:grid;grid-template-columns:1.05fr 1fr;gap:35px;align-items:center;padding-top:66px;padding-bottom:66px}h1{font-size:clamp(38px,4.7vw,64px);letter-spacing:-2.6px;margin:22px 0}h1 em{color:#bc532d;font-style:normal}.hero p{max-width:510px;font-size:17px;color:#53635b}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:29px}.art{position:relative}.art img{width:100%;display:block}.tag{position:absolute;bottom:10px;right:10px;background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:14px 20px;font-size:12px;box-shadow:0 10px 30px #203a3210}.tag strong{display:block;font-size:17px}.strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;padding-top:20px;padding-bottom:20px;font-size:13px}.strip span:before{content:'✳';color:#b9532c;margin-right:10px}section{padding:74px 0}h2{font-size:clamp(30px,3.5vw,44px);letter-spacing:-1.5px;margin:12px 0 24px}h3{font-size:22px;margin:15px 0}p{color:#526259}.sectionhead{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:28px}.sectionhead p{max-width:370px}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.service{position:relative;border:1px solid var(--line);padding:30px;min-height:225px;border-radius:8px;transition:transform .18s,background .18s}.service:hover{background:#eeeede;transform:translateY(-3px)}.num{font-size:12px;color:#8a6350}.service h3{max-width:220px}.service p{font-size:14px;max-width:210px}.arrow{position:absolute;right:22px;bottom:25px;font-size:26px}.service:nth-child(4){grid-column:span 2}.dark{background:var(--ink);color:#faf7ef}.dark p{color:#c5d0c6}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:42px;margin-top:40px}.steps strong{display:block;font-size:13px;color:#ffc297;border-top:1px solid #6b7e6e;padding-top:24px}.area-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.cities{display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.cities a{border-bottom:1px solid var(--line);padding:13px 0;display:flex;justify-content:space-between}.cities a:hover{color:#ad471f}.band{background:#edb18a;padding:42px;border-radius:10px;display:flex;align-items:center;justify-content:space-between;gap:30px;margin-bottom:70px}.band h2{font-size:33px;margin:0 0 10px}.band p{margin:0;color:#3c493c}footer{border-top:1px solid var(--line);padding:42px 0 20px}.footgrid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:45px}.footgrid a:not(.brand){display:block;font-size:13px;margin:7px 0}.fine{font-size:12px;padding-top:25px;border-top:1px solid var(--line);margin-top:28px;color:#627067}.interior{padding:54px 0 48px;max-width:900px}.crumb{font-size:12px}.interior h1{font-size:54px;max-width:850px}.lead{font-size:20px;max-width:760px}.twocol{display:grid;grid-template-columns:1fr 1fr;gap:60px;padding-top:0}.twocol article{border-top:2px solid var(--orange);padding-top:15px}.twocol h2{font-size:29px;letter-spacing:-.7px}details{border-bottom:1px solid var(--line);padding:23px 0}summary{font-weight:700;cursor:pointer;font-size:18px}details p{max-width:780px}.faq{max-width:870px;padding-top:0}.planner{background:#eeeee2;padding:32px;border-radius:12px;max-width:800px;margin-bottom:60px}.fields{display:grid;grid-template-columns:1fr 1fr;gap:20px}label{display:block;font-size:14px;font-weight:700}input,select,textarea{display:block;width:100%;padding:13px;border:1px solid #adb6a7;border-radius:4px;background:#fffcf5;color:var(--ink);font:inherit;margin:7px 0 18px}textarea{height:115px}#status{font-weight:700}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:white;padding:10px;z-index:20}@media(max-width:800px){.wrap{padding-left:22px;padding-right:22px}.hero{grid-template-columns:1fr;padding-top:40px;gap:10px}h1{letter-spacing:-1.7px}.hero .art{max-width:500px}.nav{flex-wrap:wrap;padding-top:18px;padding-bottom:18px}.menu{display:block;border:1px solid var(--line);background:transparent;padding:9px 13px;color:var(--ink);border-radius:4px}.navlinks{display:none;width:100%;flex-direction:column;align-items:stretch;gap:15px;padding:16px 0}.navlinks.open{display:flex}.strip{flex-wrap:wrap;font-size:11px;gap:12px}.services{grid-template-columns:1fr 1fr}.service:nth-child(4){grid-column:auto}.service:last-child{grid-column:span 2}.steps,.area-layout,.twocol{grid-template-columns:1fr;gap:26px}.sectionhead{display:block}.band{display:block;padding:28px}.band .btn{margin-top:20px}.footgrid{grid-template-columns:1fr 1fr}.footgrid>div:first-child{grid-column:span 2}.interior h1{font-size:39px;letter-spacing:-1.5px}.fields{grid-template-columns:1fr}section{padding:50px 0}}@media(max-width:440px){.services{grid-template-columns:1fr}.service:last-child{grid-column:auto}.service{min-height:195px}.cities{gap:0 18px}.top{font-size:10px}.brand{font-size:20px}}
.photohero{overflow:hidden;border-radius:12px;aspect-ratio:1.13;position:relative;background:#203a32}.photohero img{width:100%;height:100%;object-fit:cover}.photohero.original img{height:258%;position:absolute;top:50%;transform:translateY(-50%);object-fit:cover}.gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.gallery figure{margin:0}.gallery img{width:100%;height:270px;object-fit:cover;border-radius:8px;display:block}.gallery figcaption{font-size:13px;padding-top:12px}.projectphoto{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center;padding-top:0}.projectphoto img{width:100%;max-height:440px;object-fit:cover;border-radius:9px}.projectphoto h2{font-size:35px}@media(max-width:800px){.gallery{grid-template-columns:1fr 1fr}.gallery img{height:230px}.projectphoto{grid-template-columns:1fr;gap:25px}.photohero{aspect-ratio:1.25}}
.whatsapp{background:#157c48!important;color:white!important}.whatsapp-float{position:fixed;right:20px;bottom:20px;z-index:30;padding:15px 24px;background:#157c48;color:white;border-radius:35px;font-weight:700;box-shadow:0 4px 20px #0003}.whatsapp-float:hover{background:#106637}footer{padding-bottom:90px}.photohero img{height:auto!important;aspect-ratio:235/200;object-fit:cover}@media(min-width:801px){.navlinks{gap:16px}.navlinks .btn{padding:12px 16px}}

.estimate-contact{background:#eeeee2;border-bottom:1px solid var(--line)}.estimate-row{display:flex;align-items:center;justify-content:space-between;gap:32px;padding-top:22px;padding-bottom:22px}.estimate-row strong{font-size:17px}.estimate-row p{font-size:13px;line-height:1.6;max-width:660px;margin:5px 0 0}.estimate-links{display:flex;flex-direction:column;align-items:flex-end;gap:9px;flex-shrink:0}.estimate-email{font-size:13px;font-weight:700;text-decoration:underline;text-underline-offset:3px;overflow-wrap:anywhere}.estimate-links .btn{font-size:12px;padding:10px 17px}@media(max-width:800px){.estimate-row{display:block;padding-top:18px;padding-bottom:18px}.estimate-links{align-items:flex-start;margin-top:14px;gap:12px}.estimate-row p{font-size:13px}.estimate-email{font-size:12px}}
