@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--red:#852226;--ink:#252526;--muted:#666663;--paper:#faf9f6;--line:#dcdcd5}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',Arial,sans-serif}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #b65c65;outline-offset:5px}.preview-note{background:#eae7e0;text-align:center;font-size:10px;letter-spacing:1.4px;padding:9px 18px}.preview-note span{margin-left:14px;letter-spacing:.2px}header{padding:30px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.wordmark{font-family:'Manrope',Arial,sans-serif;font-size:30px;font-weight:800;letter-spacing:-1.5px;line-height:1}.wordmark span{display:block;font-size:8px;letter-spacing:1.5px;margin-top:7px}nav{display:flex;align-items:center;gap:34px;font-size:12px;font-weight:600}.nav-cta{border-bottom:1px solid var(--red);padding:12px 0}.nav-cta span{margin-left:25px;color:var(--red)}.hero{position:relative;padding:62px 5% 0;overflow:hidden}.eyebrow{font-size:10px;letter-spacing:1.7px;font-weight:700;line-height:1.6}.eyebrow>span{display:inline-block;background:var(--red);width:7px;height:7px;border-radius:50%;margin-right:8px}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:'Manrope',Arial,sans-serif}h1{font-size:clamp(48px,6.1vw,96px);line-height:1.05;letter-spacing:-5px;font-weight:500;margin:28px 0 34px;position:relative;z-index:2;width:65%}h1 em{font-style:normal;color:var(--red)}.hero-bottom{width:54%;padding-bottom:68px}.hero-bottom p{font-size:14px;line-height:1.8;color:var(--muted);margin-bottom:27px}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:38px;background:var(--red);color:white;padding:19px 24px;border:none;cursor:pointer;font-size:12px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#86212a;transform:translateY(-2px)}.button span{font-size:19px}.hero-art{position:absolute;right:5%;top:68px;width:37%;height:calc(100% - 143px);background:#dcd9d1;overflow:hidden;color:#565752}.hero-art:before{content:'';position:absolute;inset:0;background:linear-gradient(150deg,#dedfd8,#efede6 48%,#c9c8be);clip-path:polygon(0 0,100% 0,100% 75%,0 100%)}.photo-guide{position:relative;height:100%;padding:30px;display:flex;flex-direction:column;justify-content:center}.tiny{font-size:9px;letter-spacing:2px;position:absolute;top:30px}.photo-guide strong{font:500 clamp(30px,3.8vw,58px)/1.1 'Manrope',sans-serif;letter-spacing:-2px;max-width:300px}.asset-label{font-size:9px;line-height:1.8;margin-top:28px;max-width:240px;letter-spacing:.6px}.art-bottom{position:absolute;bottom:25px;left:30px;right:30px;display:flex;justify-content:space-between;font-size:8px;line-height:1.5;letter-spacing:1px}.hero-footer{border-top:1px solid var(--line);display:flex;justify-content:space-between;padding:23px 0;font-size:9px;letter-spacing:1px}.section{padding:100px 5%;display:grid;grid-template-columns:1fr 1.1fr;gap:10%}.section-intro h2,.work-band h2{font-size:clamp(36px,4vw,60px);letter-spacing:-2.5px;line-height:1.1;font-weight:500;margin:20px 0}.section-intro>p{max-width:350px;color:var(--muted);font-size:14px;line-height:1.9}.service-list article{display:flex;gap:22px;padding:30px 0 38px;border-top:1px solid var(--line)}.number{font-size:10px;color:var(--red);padding-top:8px}h3{font-size:25px;font-weight:500;letter-spacing:-.8px}.service-list p{font-size:13px;color:var(--muted);line-height:1.85;margin:18px 0}.arrow{margin-left:auto;color:var(--red);font-size:26px}.tags{display:flex;flex-wrap:wrap;gap:8px}.tags span{font-size:10px;border:1px solid var(--line);padding:8px 10px}.text-link{font-size:12px;border:0;background:none;padding:0 0 6px;border-bottom:1px solid var(--red);cursor:pointer}.work-band{background:var(--red);color:#fff;padding:65px 8%;display:grid;grid-template-columns:1fr 1fr;gap:15%}.work-band p{font-size:14px;line-height:1.9;color:#f1dfe0;margin:24px 0}.work-band a{display:block;font-size:29px;letter-spacing:-1px}.work-band .facebook{font-size:11px;letter-spacing:.3px;margin-top:20px}.planner{border-bottom:1px solid var(--line)}.planner-note{border-left:2px solid var(--red);padding-left:18px;margin-top:32px;max-width:350px;font-size:11px;color:var(--muted);line-height:1.8}.calculator{background:#eeeee8;padding:35px}.calc-heading{display:flex;justify-content:space-between;align-items:center;margin-bottom:30px}.calc-heading h3{font-size:21px}.calc-heading>span{font-size:11px;color:var(--red)}label{display:block;font-size:11px;font-weight:600;line-height:1.5}label>span{font-size:10px;font-weight:400;color:var(--muted);display:block}.measurements{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}input,select,textarea{display:block;width:100%;min-width:0;border:1px solid var(--line);border-radius:0;background:#fff;padding:14px 12px;margin-top:9px;color:var(--ink);font-size:13px}.measurements input{font-size:23px;padding:15px 10px}.dark{background:var(--ink);width:100%;margin:20px 0}.result{padding:18px 0 25px;border-bottom:1px solid #d4d4cd;margin-bottom:22px}.result>span{font-size:8px;letter-spacing:1px}.result>div{font-size:12px;margin-top:8px}.result strong{font-size:58px;font-weight:500;letter-spacing:-3px;margin-right:8px}.result p{font-size:10px;color:var(--muted);margin-top:9px}.contact-links{margin-top:35px}.contact-links a{display:block;font-size:16px;margin:14px 0}.small{font-size:11px!important;margin-top:30px!important}.two{display:grid;grid-template-columns:1fr 1fr;gap:18px}.inquiry label{margin-bottom:20px}.inquiry .button{width:100%}.form-notice{font-size:11px;background:#eeeae4;padding:14px;margin-bottom:25px;line-height:1.7}.form-notice strong{color:var(--red);margin-right:8px}#confirmation{margin-top:24px;padding:20px;background:#e8e9df;font-size:13px;line-height:1.8}pre{white-space:pre-wrap;overflow-wrap:anywhere;font:12px/1.8 'DM Sans',sans-serif}footer{display:flex;justify-content:space-between;align-items:center;padding:40px 5%;border-top:1px solid var(--line)}footer p,footer>a:last-child{font-size:10px;line-height:1.8;color:var(--muted)}@media(min-width:1600px){body{max-width:1800px;margin:auto}}@media(max-width:900px){h1{font-size:62px;letter-spacing:-3px;width:75%}.hero-art{width:34%;opacity:.8}.photo-guide{padding:20px}.photo-guide strong{font-size:35px}.section{gap:5%;padding:70px 5%}.calculator{padding:24px}.work-band{gap:7%}nav{gap:20px}}@media(max-width:650px){.preview-note{font-size:8px;letter-spacing:1px}.preview-note span{display:block;margin:4px 0 0}header{padding:23px 6%}.wordmark{font-size:25px}.wordmark span{font-size:6px}nav>a:not(.nav-cta){display:none}.nav-cta{font-size:10px}.nav-cta span{margin-left:8px}.hero{padding:36px 6% 0}h1{font-size:clamp(43px,10.8vw,67px);letter-spacing:-2.8px;width:100%;margin:24px 0}.hero-bottom{width:100%;padding-bottom:30px}.hero-bottom p{font-size:13px}.hero-art{position:relative;inset:auto;width:100%;height:290px;opacity:1;margin-bottom:25px}.photo-guide{padding:25px}.photo-guide strong{font-size:40px}.tiny{top:22px}.asset-label{font-size:8px;margin-top:18px}.art-bottom{font-size:7px;bottom:20px;left:25px;right:25px}.hero-footer{font-size:7px;gap:15px}.section{display:block;padding:56px 6%}.section-intro h2,.work-band h2{font-size:43px;letter-spacing:-2px}.section-intro>p{max-width:none}.service-list,.calculator,.inquiry{margin-top:35px}.service-list article{padding:26px 0}.work-band{display:block;padding:45px 6%}.work-band p{margin-top:28px}.work-band h2{font-size:41px}.work-band a{font-size:26px}.planner-note{max-width:none}.calculator{padding:22px}.calc-heading h3{font-size:20px}.two{gap:12px}.inquiry input,.inquiry select,.inquiry textarea{font-size:16px}footer{padding:30px 6%;gap:25px;flex-wrap:wrap}footer p{font-size:9px}footer>a:last-child{margin-left:auto}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Original supplied artwork, displayed unmodified on a light surface. */
.wordmark{display:flex;align-items:center;gap:14px}.wordmark>.logo-window{display:block;position:relative;width:76px;height:62px;margin:0;overflow:hidden;flex-shrink:0}.logo-window img{position:absolute;width:115px;height:115px;max-width:none;left:-19px;top:-23px}.wordmark>.brand-type{font-size:30px;letter-spacing:-1.5px;margin:0}.brand-type>span{font-size:8px;letter-spacing:1.5px;margin-top:7px}@media(max-width:650px){.wordmark{gap:9px}.wordmark>.logo-window{width:48px;height:42px}.logo-window img{width:74px;height:74px;left:-12px;top:-15px}.wordmark>.brand-type{font-size:21px}.brand-type>span{font-size:5px;letter-spacing:1px}header{padding-left:5%;padding-right:5%}}

/* Art-directed motion: masked type, surveying linework, spatial section entrances. */
.reading-progress{position:fixed;top:0;left:0;right:0;height:3px;background:var(--red);z-index:30;transform:scaleX(0);transform-origin:left;pointer-events:none}.hero-line{display:block;overflow:hidden;padding-bottom:.08em;margin-bottom:-.08em}.hero-line>span,.hero-line>em{display:block;animation:headline-enter 1.1s cubic-bezier(.16,1,.3,1) both}.hero-line:nth-child(2)>span{animation-delay:.13s}.hero-line:nth-child(3)>em{animation-delay:.26s}@keyframes headline-enter{from{transform:translateY(115%)}to{transform:translateY(0)}}.hero-art{animation:panel-enter 1.5s cubic-bezier(.16,1,.3,1) both}@keyframes panel-enter{from{clip-path:inset(0 0 100% 0)}to{clip-path:inset(0 0 0 0)}}.survey-lines{position:absolute;inset:0;width:100%;height:100%;opacity:.32}.survey-lines path{stroke:#85867f;stroke-width:.7;stroke-dasharray:1800;stroke-dashoffset:1800;animation:route-draw 2.4s cubic-bezier(.45,0,.15,1) .5s forwards}.survey-lines .accent-route{stroke:var(--red);stroke-width:1.5;animation-delay:.8s}.survey-lines circle{fill:var(--red);animation:point-enter .6s ease 1.7s both;transform-origin:280px 210px}@keyframes route-draw{to{stroke-dashoffset:0}}@keyframes point-enter{from{opacity:0;transform:scale(0)}to{opacity:1;transform:scale(1)}}.motion-ready .section-intro,.motion-ready .service-list,.motion-ready .calculator,.motion-ready .inquiry{transition:transform .85s cubic-bezier(.16,1,.3,1),opacity .65s ease}.motion-ready .awaiting-entry{transform:translateY(32px);opacity:0}.service-list article{transition:border-color .3s,transform .3s}.service-list article:hover{border-color:var(--red);transform:translateX(5px)}.button span{transition:transform .25s}.button:hover span{transform:translate(3px,-3px)}@media(prefers-reduced-motion:reduce){*{animation:none!important}.motion-ready .awaiting-entry{opacity:1;transform:none}.hero-line>span,.hero-line>em{transform:none}.survey-lines path{stroke-dashoffset:0}.hero-art{clip-path:none}.survey-lines circle{opacity:1;transform:none}}

.photo-hero:before{display:none}.hero-photo{width:100%;height:100%;object-fit:cover;object-position:40% center;display:block;animation:photo-settle 1.8s cubic-bezier(.16,1,.3,1) both}.photo-hero:after{content:'';position:absolute;inset:0;background:linear-gradient(transparent 48%,rgba(0,0,0,.7));pointer-events:none}.photo-caption{position:absolute;bottom:30px;left:30px;right:30px;z-index:1;color:white}.photo-caption>span{font-size:8px;letter-spacing:1.8px}.photo-caption strong{display:block;font:500 35px/1.1 'Manrope',sans-serif;letter-spacing:-1.2px;margin-top:12px}@keyframes photo-settle{from{transform:scale(1.06)}to{transform:scale(1)}}.recent-work{padding:25px 5% 90px}.work-intro{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.work-intro h2{font-size:clamp(36px,4vw,60px);font-weight:500;letter-spacing:-2.5px;line-height:1.1;margin-top:18px}.work-intro p{font-size:13px;line-height:1.8;color:var(--muted)}.project-pair{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-bottom:30px}.project-pair figure{margin:0}.project-image{overflow:hidden;aspect-ratio:1.22;background:#e8e6e0}.project-image img{width:100%;height:100%;object-fit:cover;object-position:center 60%;display:block;transition:transform .8s cubic-bezier(.16,1,.3,1)}.project-image:hover img{transform:scale(1.025)}figcaption{display:flex;justify-content:space-between;gap:10px;margin-top:15px;font-size:10px;color:var(--muted)}figcaption>span:first-child{font-size:8px;letter-spacing:1px;color:var(--red)}@media(max-width:650px){.photo-hero{height:330px}.hero-photo{object-position:center}.photo-caption{bottom:22px;left:22px}.photo-caption strong{font-size:28px}.recent-work{padding:0 6% 55px}.work-intro{display:block}.work-intro h2{font-size:43px}.work-intro p{margin-top:20px}.project-pair{gap:26px;grid-template-columns:1fr}.project-image{aspect-ratio:1.15}.project-image img{object-position:center 60%}}@media(prefers-reduced-motion:reduce){.hero-photo{animation:none;transform:none}.project-image:hover img{transform:none}}

/* Shared decorative stroke icon: never use text or emoji arrows. */
.icon-arrow{display:inline-block;width:1em;height:1em;vertical-align:-.15em;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round}

.service-pricing{background:#f5f3ee}.pricing-list article{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:25px 0;border-top:1px solid var(--line)}.pricing-list h3{font-size:21px}.pricing-list p{font-size:12px;color:var(--muted);line-height:1.7;margin-top:9px;max-width:270px}.pricing-list a{font-size:12px;white-space:nowrap;border-bottom:1px solid var(--red);padding:8px 0;color:var(--red)}@media(max-width:650px){.pricing-list{margin-top:30px}.pricing-list article{align-items:flex-start;gap:14px}.pricing-list h3{font-size:19px}.pricing-list p{font-size:11px}.pricing-list a{font-size:11px}}

.demo-pricing-notice{padding:18px;background:#fff1df;border:1px solid #b78548;color:#54391b;font-size:12px;line-height:1.7;margin-bottom:20px}.sample-rate{display:inline-block}.sample-rate small{display:block;font-size:8px;letter-spacing:.6px;margin-top:5px}

.quote-steps{list-style:none;counter-reset:steps;padding:0;margin:25px 0;border-top:1px solid var(--line)}.quote-steps li{counter-increment:steps;position:relative;padding:17px 0 17px 32px;border-bottom:1px solid var(--line)}.quote-steps li:before{content:counter(steps,decimal-leading-zero);position:absolute;left:0;top:19px;font-size:10px;color:var(--red)}.quote-steps strong{display:block;font-size:13px;font-weight:600}.quote-steps span{display:block;font-size:11px;line-height:1.7;color:var(--muted);margin-top:5px}.service-feedback{font-size:12px;color:var(--red);line-height:1.6}.service-feedback:empty{display:none}#contact{scroll-margin-top:20px}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid #852226;outline-offset:4px}@media(max-width:650px){header{flex-wrap:wrap;gap:20px}header nav{width:100%;justify-content:space-between;gap:12px;flex-wrap:wrap}header nav>a:not(.nav-cta){display:block;font-size:11px}header .nav-cta{margin-left:auto}.quote-steps{margin-bottom:30px}}
