:root{--pink:#ed238b;--ink:#222724;--paper:#faf9f5;--line:#dedfd7;--soft:#eeefe8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button,summary{cursor:pointer}button{color:inherit}img{max-width:100%;object-fit:cover}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Manrope,sans-serif;font-weight:500;line-height:1.12;letter-spacing:-.05em}h1{font-size:clamp(48px,5.8vw,88px)}h2{font-size:clamp(34px,4vw,58px)}h3{font-size:25px}p{max-width:620px}.preview{font-size:10px;text-align:center;letter-spacing:.08em;background:#eeeae4;padding:6px 16px}header{display:flex;align-items:center;justify-content:space-between;padding:17px 4%;border-bottom:1px solid var(--line);gap:25px;background:var(--paper);position:relative;z-index:10}.brand{background:#000;width:160px;height:69px;display:block}.brand img{width:100%;height:100%;object-fit:contain}nav,.header-actions{display:flex;align-items:center;gap:27px;font-size:12px}nav a:hover,.book:hover{color:#b51a65}.btn{background:var(--pink);display:inline-flex;align-items:center;justify-content:space-between;gap:34px;padding:17px 25px;border:0;border-radius:0;font-weight:600;font-size:13px;color:#fff;cursor:pointer}.btn:hover{background:#cb1672}.small{padding:13px 20px}.outline{border:1px solid currentColor;background:transparent;color:var(--ink)}.outline:hover{background:var(--soft)}.eyebrow{font-size:10px;text-transform:uppercase;letter-spacing:.17em;font-weight:700;margin-bottom:22px}.dot:before{content:'●';color:var(--pink);margin-right:10px}.hero{position:relative;min-height:650px;display:flex;align-items:center;color:white;background:#3c4e42 url('https://images.unsplash.com/photo-1600210492486-724fe5c67fb0?auto=format&fit=crop&w=2200&q=85') center 59%/cover}.hero:before{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(12,24,20,.78),rgba(12,24,20,.25) 75%)}.hero-inner{position:relative;padding:85px 7%;width:100%}.hero h1{max-width:780px;margin-bottom:25px}.hero h1 em{font-weight:400;font-family:Georgia,serif;letter-spacing:-.045em}.hero p{max-width:430px;color:#ededdf;font-size:15px}.hero .actions{margin-top:34px;display:flex;align-items:center;gap:30px}.text-link{font-size:12px;border-bottom:1px solid currentColor;padding-bottom:6px}.hero-bottom{display:flex;justify-content:space-between;font-size:10px;letter-spacing:.1em;margin-top:70px}.strip{padding:24px 7%;display:flex;justify-content:space-between;border-bottom:1px solid var(--line);font-size:11px;letter-spacing:.1em;text-transform:uppercase}.strip span:first-child{color:#777}.section{padding:100px 7%}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:42px}.section-head h2{max-width:650px;margin-bottom:0}.section-head p{max-width:350px;margin-bottom:0;color:#687067}.intro{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.intro h2{max-width:570px}.intro p{color:#697167}.intro .image{height:430px;position:relative}.intro img{height:100%;width:100%}.caption{font-size:10px;letter-spacing:.08em;color:#757c73;margin-top:10px}.cards{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.service-card{display:block;border-top:1px solid var(--line);padding-top:16px}.service-card img{height:240px;width:100%;margin:18px 0 22px;transition:filter .3s}.service-card:hover img{filter:brightness(.85)}.num{font-size:11px;color:#777;display:flex;justify-content:space-between}.service-card h3{font-size:23px}.service-card p{font-size:13px;color:#6d746c}.soft{background:var(--soft)}.projects{display:grid;grid-template-columns:1.25fr 1fr;gap:30px}.project img{height:395px;width:100%}.project:nth-child(2){margin-top:80px}.project-meta{display:flex;justify-content:space-between;gap:10px;margin-top:18px}.project h3{font-size:25px}.project-meta span{font-size:10px;text-transform:uppercase;letter-spacing:.1em}.demo-label{font-size:10px;letter-spacing:.07em;text-transform:uppercase;color:#7a7971}.process{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:60px}.process article{border-top:1px solid #abb3a7;padding-top:20px}.process h3{font-size:22px;margin:24px 0 16px}.process p{font-size:13px;color:#626a60}.dark{background:#26312c;color:#fff}.dark .eyebrow{color:#c3cabb}.dark p{color:#c4cbbf}.split{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:start}.price{font-size:38px;letter-spacing:-.05em}.faq details{border-top:1px solid var(--line);padding:22px 0}.faq summary{display:flex;justify-content:space-between;font-weight:500;list-style:none}.faq summary:after{content:'+';font-size:20px;color:var(--pink)}.faq details[open] summary:after{content:'−'}.faq details p{font-size:14px;color:#697167;margin-top:18px}.cta{padding:85px 7%;background:#e9dedf;display:flex;align-items:center;justify-content:space-between;gap:40px}.cta h2{max-width:720px;margin-bottom:0}.footer-top{background:#1c211e;color:#eee;padding:65px 7%;display:grid;grid-template-columns:1.7fr 1fr 1fr 1.3fr;gap:30px}footer h3{font:600 11px 'DM Sans',sans-serif;letter-spacing:.1em;text-transform:uppercase;margin-bottom:22px}footer a{display:block;font-size:12px;margin:10px 0;color:#c6cec4}footer p{font-size:12px;color:#9ca69a}footer .muted{font-size:10px;margin-top:25px}.footer-bottom{padding:20px 7%;background:#171b18;color:#a3ab9f;display:flex;justify-content:space-between;font-size:10px}.footer-bottom div{display:flex;gap:20px}.footer-bottom a{margin:0;font-size:10px}.footer-bottom button{background:none;color:inherit;border:0;font-size:10px;padding:0}.mega{position:absolute;left:4%;right:4%;top:100%;background:var(--paper);box-shadow:0 15px 25px #0002;padding:35px;display:grid;grid-template-columns:repeat(4,1fr);gap:30px;border-top:3px solid var(--pink)}.mega h3{font-size:18px}.mega a{display:block;margin:12px 0;font-size:13px}.services-menu summary{list-style:none}.services-menu summary span{margin-left:5px}.mobile-toggle{display:none}.page-heading{padding:75px 7% 45px}.page-heading h1{font-size:clamp(44px,6vw,75px);max-width:960px;margin-bottom:25px}.page-heading p{color:#697167}.narrow{max-width:980px;margin:auto}.form{max-width:900px;margin:0 auto;padding:0 7% 80px}.form fieldset{border:0;padding:0;margin:30px 0}.form legend{font-size:22px;margin-bottom:20px;letter-spacing:-.03em}.form label{display:block;font-size:12px;margin-bottom:7px}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:20px}.field{margin-bottom:20px}input,select,textarea{width:100%;background:#fff;border:1px solid #cccfc5;padding:13px;border-radius:0}input[type=radio],input[type=checkbox]{width:auto;accent-color:var(--pink);margin-right:9px}.choices{display:flex;gap:12px;flex-wrap:wrap}.choices label{border:1px solid var(--line);padding:13px 17px;background:white}.form .check{display:flex;align-items:start;gap:8px}.check input{margin-top:6px}.notice{background:#eeebe4;border-left:3px solid var(--pink);padding:18px 22px;font-size:13px;margin:20px 0}.wide-img{width:100%;height:520px}.tags{display:flex;gap:10px;flex-wrap:wrap;margin:25px 0}.tag{padding:6px 12px;border:1px solid var(--line);font-size:11px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.article-card{border-top:1px solid var(--line);padding:25px 0}.article-card h3{font-size:27px}.article-card p{font-size:13px;color:#6d746c}.area-list a{border-bottom:1px solid var(--line);padding:25px 0;display:flex;justify-content:space-between;font-size:25px}.empty{padding:40px;border:1px dashed #bbbfb4;min-height:180px}.before-after{position:relative;height:450px;overflow:hidden}.before-after img{position:absolute;inset:0;width:100%;height:100%}.before-after .before{clip-path:inset(0 50% 0 0);filter:saturate(.25) brightness(.8)}.before-after input{position:absolute;bottom:25px;left:10%;width:80%;accent-color:var(--pink)}.ba-labels{position:absolute;top:20px;left:20px;right:20px;display:flex;justify-content:space-between;color:#fff;font-size:12px}dialog{border:0;max-width:560px;width:90%;padding:45px;background:var(--paper);color:var(--ink)}dialog::backdrop{background:#0009}dialog h2{font-size:37px}dialog ul{padding-left:18px;font-size:14px;margin:25px 0}.close{position:absolute;right:15px;top:10px;background:none;border:0;font-size:25px}:focus-visible{outline:3px solid var(--pink);outline-offset:4px}@media(min-width:1500px){.hero{min-height:760px}}@media(max-width:1100px){nav{gap:15px}.book{display:none}.cards{grid-template-columns:repeat(2,1fr)}.service-card img{height:290px}}@media(max-width:750px){header{padding:12px 6%;gap:12px}.brand{width:115px;height:53px}.header-actions{margin-left:auto}.small{font-size:10px;padding:12px;gap:12px}.mobile-toggle{display:block;background:none;border:0;font-size:22px}nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:25px;align-items:start;flex-direction:column}header.menu-open nav{display:flex}.mega{position:static;display:grid;grid-template-columns:1fr 1fr;padding:20px;box-shadow:none}.hero{min-height:650px}.hero-inner{padding:70px 7% 30px}.hero h1{font-size:53px}.hero-bottom{font-size:8px;gap:30px}.strip{gap:20px;flex-wrap:wrap;font-size:9px}.section{padding:65px 7%}.intro,.split{grid-template-columns:1fr;gap:30px}.intro .image{height:330px}.section-head{display:block}.section-head p{margin-top:20px}.cards{gap:25px 16px}.service-card img{height:190px}.service-card h3{font-size:21px}.projects{grid-template-columns:1fr}.project:nth-child(2){margin-top:10px}.project img{height:330px}.process{grid-template-columns:1fr 1fr;gap:25px}.cta{display:block;padding:60px 7%}.cta .btn{margin-top:30px}.footer-top{grid-template-columns:1fr 1fr;gap:40px 25px}.footer-bottom{display:block}.footer-bottom div{flex-wrap:wrap;gap:12px;margin-top:15px}.grid2,.article-grid{grid-template-columns:1fr}.wide-img{height:330px}.page-heading{padding:55px 7% 25px}.before-after{height:320px}.hero .actions{gap:20px}.form{padding-left:7%;padding-right:7%}}
@font-face{font-family:Inter;src:url('assets/InterVariable.woff2') format('woff2');font-weight:100 900;font-display:swap}body{font-family:Inter,Arial,sans-serif}h1,h2,h3{font-family:Inter,Arial,sans-serif;font-weight:450;letter-spacing:-.055em}footer h3{font-family:Inter,Arial,sans-serif}.hero{background-image:url('assets/desert-home.jpg');background-position:center 58%;min-height:690px}.hero h1{font-weight:450;line-height:1.04;font-size:clamp(62px,7vw,108px);letter-spacing:-.065em}.hero:before{background:linear-gradient(90deg,#10231be0,#14221965 60%,#14221915)}.hero p{font-weight:400}.hero-inner{padding-top:90px}.hero-bottom{margin-top:85px}.hp{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.detail-crop{object-position:80%;width:100%;height:300px}.btn:disabled{opacity:.6;cursor:wait}button:disabled{pointer-events:none}.area-list{margin:0 7%;padding-left:0;padding-right:0}body:has(.area-list)+.faq{padding:0 7%}@media(max-width:750px){.hero h1{font-size:64px}.hero{min-height:650px}.hero-inner{padding-top:65px}.hero-bottom{margin-top:65px}.hero .actions{align-items:start;flex-direction:column}.preview{font-size:8px}.section-head h2{max-width:600px}}
.hero{color:var(--ink);background:var(--paper);isolation:isolate;min-height:690px;overflow:hidden}.hero:before{left:53%;background:url('assets/before-after.jpg') center 66%/cover no-repeat;z-index:-1}.hero-inner{padding:75px 7% 35px}.hero h1{font-size:clamp(60px,6.8vw,100px);max-width:660px}.hero p{max-width:460px;color:#62675f}.hero .eyebrow{font-size:10px;color:#3c473e}.hero .actions{align-items:start;flex-direction:column;gap:22px}.hero-bottom{max-width:470px;gap:25px;font-size:8px;letter-spacing:.06em;margin-top:65px}.hero-bottom span{max-width:210px}.hero:after{content:'';position:absolute;bottom:0;left:0;width:53%;height:3px;background:var(--pink)}.project img{object-position:center top}.project-source{border-top:1px solid var(--line);padding-top:25px;margin-top:45px}.project-source p{font-size:13px}.wide-img{object-position:center 20%}.intro .image img{object-position:center 68%}.service-card img{object-position:center 20%}@media(min-width:751px) and (max-width:1000px){.hero h1{font-size:68px}.hero .eyebrow{max-width:300px}.hero p{max-width:340px}}@media(max-width:750px){.hero{padding-top:360px;min-height:0}.hero:before{left:0;right:0;height:360px;background-position:center 67%}.hero-inner{padding:40px 7%}.hero h1{font-size:62px}.hero-bottom{margin-top:35px}.hero:after{width:100%}.hero .actions{gap:20px}}
.mobile-book{display:none}@media(max-width:750px){.hero h1{font-size:46px;letter-spacing:-.055em}.mobile-book{display:block}.hero .eyebrow{font-size:9px}.book{display:none}}
