:root{--paper:#f5f3ec;--ink:#293b34;--muted:#616a62;--line:#d8d9cf;--sand:#e8e5da}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:25px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.65}body.modal-open{overflow:hidden}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit;cursor:pointer}img{display:block;width:100%;height:auto}figure{margin:0}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.12}h1{font-size:clamp(44px,4.6vw,72px);letter-spacing:-2.5px;margin-bottom:28px}h2{font-size:clamp(36px,3.5vw,54px);letter-spacing:-1.6px;margin-bottom:25px}h3{font-size:25px;letter-spacing:-.5px}em{font-weight:400}p{color:var(--muted)}button,a{ -webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible{outline:3px solid #967d43;outline-offset:5px}.skip{position:absolute;top:-100px;z-index:10;padding:12px;background:white}.skip:focus{top:0}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.review{padding:7px 5%;background:var(--ink);color:white;font-size:10px;letter-spacing:1.8px;display:flex;justify-content:space-between}.review span{letter-spacing:.6px;opacity:.8}header{max-width:1440px;margin:auto;padding:31px 5%;display:flex;align-items:center;justify-content:space-between}.brand{font-family:Georgia,serif;font-size:43px;letter-spacing:1px;line-height:1}.brand small{display:block;font:9px Arial,sans-serif;letter-spacing:3.4px;margin-top:9px}nav{display:flex;gap:31px;align-items:center;font-size:13px}nav a:hover,.text-link:hover{color:#927b48}.nav-contact{border-bottom:1px solid var(--ink);padding:8px 0}.hero{max-width:1440px;margin:auto;display:grid;grid-template-columns:1fr 1.07fr;align-items:center;padding:24px 5% 72px;gap:5%}.eyebrow{font-size:10px;letter-spacing:2.3px;font-weight:600;margin-bottom:24px;color:var(--ink)}.intro{max-width:445px;font-size:17px;line-height:1.8}.button{display:inline-flex;gap:45px;background:var(--ink);color:white;padding:14px 22px;margin-top:12px;font-size:13px}.button:hover{background:#40594d}.signature-line{font-size:11px;border-left:35px solid var(--line);padding-left:16px;margin:35px 0 0;line-height:1.7}.signature-line strong{font-weight:400;color:var(--ink)}.hero-image img{height:570px;object-fit:cover;object-position:53% center}.hero-image figcaption{font-size:11px;margin-top:13px;letter-spacing:.5px}.intro-band{background:var(--sand);padding:49px max(5%,calc((100vw - 1296px)/2));display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.intro-band h2{font-size:37px;margin:0}.intro-band p{max-width:520px;margin:0;line-height:1.9}.section{max-width:1440px;margin:auto;padding:90px 5%}.section-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:28px}.section-head p{font-size:14px}.section-head .eyebrow{font-size:10px;margin-bottom:16px}.section-head h2{margin:0}.filters{display:flex;flex-wrap:wrap;gap:8px;margin:30px 0}.filters button{border:1px solid var(--line);border-radius:2px;background:transparent;font-size:11px;padding:9px 14px}.filters button[aria-pressed=true]{background:var(--ink);border-color:var(--ink);color:white}.projects{display:grid;grid-template-columns:repeat(3,1fr);gap:38px 24px}.card{border:0;padding:0;text-align:left;background:none;width:100%}.card-photo{position:relative;overflow:hidden;aspect-ratio:4/4.6;background:var(--sand)}.card img{height:100%;object-fit:cover;transition:transform .5s}.card:hover img{transform:scale(1.035)}.card .arrow{position:absolute;right:14px;bottom:14px;border-radius:50%;background:var(--paper);width:36px;height:36px;text-align:center;line-height:36px}.card h3{font-size:26px;margin:18px 0 5px}.card p{font-size:11px;letter-spacing:.35px;margin:0}.portfolio-end{display:flex;justify-content:space-between;align-items:center;margin-top:30px}.portfolio-end p{font-size:12px;margin:0}.text-button{background:none;border:0;border-bottom:1px solid;padding:4px 0;font-size:13px}.services{display:grid;grid-template-columns:1fr 1.1fr;gap:10%;border-top:1px solid var(--line)}.services>div>p{max-width:360px}.text-link{font-size:13px;border-bottom:1px solid;padding-bottom:5px;display:inline-block}.service-list article{border-top:1px solid var(--line);padding:23px 0;display:flex;gap:24px}.service-list article:first-child{border-top:0;padding-top:0}.service-list article>span{font-size:10px;padding-top:6px;color:var(--muted)}.service-list h3{margin-bottom:10px}.service-list p{font-size:14px;line-height:1.8;margin:0}.service-list .management{background:var(--sand);padding:25px 20px;margin-left:-20px;margin-right:-20px;border:0}.process{background:var(--ink);color:var(--paper);max-width:none;padding-left:max(5%,calc((100vw - 1296px)/2));padding-right:max(5%,calc((100vw - 1296px)/2))}.process .eyebrow{color:#c5c9bd}.process h2{font-size:42px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:30px;margin-top:48px}.steps article{border-top:1px solid #6b776e;padding-top:20px}.steps span{font-size:10px;letter-spacing:1.5px;color:#c5c9bd}.steps h3{font-size:23px;margin-top:18px}.steps p{color:#d3d7cd;font-size:13px;line-height:1.8}.about{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.about figure{position:relative}.about img{aspect-ratio:4/4.5;object-fit:cover}.about figcaption{position:absolute;bottom:0;padding:15px 20px;background:var(--paper);font-size:11px}.about p{font-size:14px;line-height:1.9}.about .lead{font-size:19px;line-height:1.6;color:var(--ink)}.about .signature{font-family:Georgia,serif;font-style:italic;font-size:29px;color:var(--ink);margin-bottom:0}.about .eyebrow{font-size:10px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;background:var(--sand);max-width:none;padding-left:max(5%,calc((100vw - 1296px)/2));padding-right:max(5%,calc((100vw - 1296px)/2))}.contact h2{font-size:58px}.contact-links{padding-top:30px}.contact-links a{display:block;border-bottom:1px solid #bec3b8;padding:0 0 20px;margin-bottom:25px;font-size:clamp(15px,1.7vw,24px);overflow-wrap:anywhere}.contact-links small{font-size:10px;letter-spacing:1.8px;display:block;margin-bottom:8px}.contact-links p{font-size:13px}footer{display:flex;justify-content:space-between;padding:28px 5%;font-size:10px;letter-spacing:.7px}dialog{border:0;background:var(--paper);color:var(--ink);padding:50px 30px 30px;width:min(1150px,95vw);max-height:94vh;overflow:auto}dialog::backdrop{background:#15251de8}.close{position:absolute;right:14px;top:9px;background:none;border:0;font-size:32px;line-height:1;width:36px;height:36px}.project-view{display:grid;grid-template-columns:1.4fr 1fr;gap:40px}.viewer{height:min(62vh,650px);display:flex;align-items:center;justify-content:center;overflow:hidden;background:#e8e5da}.viewer img{width:100%;height:100%;object-fit:contain}.photo-controls{display:flex;align-items:center;gap:12px;justify-content:space-between;margin-top:12px}.photo-controls button{background:none;border:1px solid var(--line);min-width:36px;min-height:36px}.photo-controls p{font-size:11px;text-align:center;margin:0}.thumbnails{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.thumbnails button{width:65px;height:65px;padding:2px;border:1px solid transparent;background:none}.thumbnails button[aria-pressed=true]{border-color:var(--ink)}.thumbnails img{height:100%;object-fit:cover}.project-copy{padding-top:20px}.project-copy h2{font-size:39px}.project-copy p{font-size:14px}.project-copy h3{font:10px Arial,sans-serif;letter-spacing:1.5px;text-transform:uppercase;margin-top:30px}.project-copy .eyebrow{font-size:10px}.project-copy .text-link{margin-top:25px}.viewer.bed-crop{height:auto;aspect-ratio:1}.viewer.bed-crop img{width:155%;max-width:none;height:auto;flex-shrink:0;transform:translateX(-1%)}.card-photo.bed-crop img{width:155%;max-width:none;object-fit:cover;transform:translateX(-18%)}.viewer.pool-crop{height:auto;aspect-ratio:1.32}.viewer.pool-crop img{width:112%;height:auto;max-width:none;flex-shrink:0;transform:translateX(5%)}
@media(min-width:1450px){.hero-image img{height:610px}}@media(max-width:900px){nav{gap:18px}.hero{gap:30px}.hero-image img{height:490px}h1{font-size:48px}.projects{grid-template-columns:repeat(2,1fr)}.services{gap:7%}.steps{grid-template-columns:repeat(2,1fr)}.project-view{gap:22px;grid-template-columns:1.2fr 1fr}.project-copy h2{font-size:30px}}@media(max-width:600px){.review span{display:none}header{padding:23px 6%;align-items:start}.brand{font-size:32px}.brand small{font-size:7px;letter-spacing:2.4px}nav{gap:9px 16px;flex-wrap:wrap;justify-content:flex-end;max-width:210px;font-size:11px}.nav-contact{padding:0}.hero{display:flex;flex-direction:column;padding:30px 6% 45px;gap:35px}.hero-copy{width:100%}h1{font-size:47px;letter-spacing:-2px}.intro{font-size:16px}.hero-image{width:100%}.hero-image img{height:auto;aspect-ratio:1;object-fit:cover}.signature-line{margin-top:25px}.intro-band{grid-template-columns:1fr;gap:20px;padding:38px 6%}.intro-band h2{font-size:32px}.intro-band p{font-size:14px}.section{padding:55px 6%}.section-head{display:block}.section-head>p{margin-top:15px}.projects{gap:28px 14px}.card h3{font-size:21px;margin-top:13px}.card p{font-size:10px}.card-photo{aspect-ratio:3/4}.filters{gap:7px}.filters button{padding:8px 10px;font-size:10px}.portfolio-end{align-items:start;gap:20px}.portfolio-end p{max-width:180px;font-size:11px}.text-button{font-size:12px;white-space:nowrap}.services,.about,.contact{grid-template-columns:1fr;gap:35px}.service-list .management{margin:0;padding:20px}.process h2{font-size:34px}.steps{gap:20px}.steps h3{font-size:22px}.about img{aspect-ratio:1}.contact h2{font-size:48px}.contact-links{padding-top:0}footer{gap:15px;flex-wrap:wrap;font-size:9px}dialog{padding:50px 18px 25px;width:96vw;max-height:95dvh}.project-view{grid-template-columns:1fr;gap:15px}.viewer{height:48vh}.project-copy{padding-top:0}.project-copy h2{font-size:34px}.project-copy .eyebrow{margin-bottom:12px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.card img{transition:none}}

.about .sandy-portrait{width:min(100%,360px);justify-self:center}.about .sandy-portrait img{aspect-ratio:4/5;object-fit:cover}.about .sandy-portrait figcaption{position:static;padding:12px 0;font-size:11px}

/* Sandy's portrait stays within the text column of the first slide. */
.hero{grid-template-columns:.9fr 1.1fr;gap:5%;align-items:center}.hero h1{font-size:clamp(42px,4.25vw,65px)}.hero-designer{display:flex;gap:24px;align-items:center;margin-top:28px}.hero-designer>img{width:145px;height:181px;object-fit:cover;flex-shrink:0}.designer-name{font:25px/1.15 Georgia,serif;color:var(--ink);margin-bottom:12px}.designer-tag{font-size:9px;letter-spacing:1.6px;line-height:1.7;margin:0}.hero-designer .button{gap:20px;font-size:11px;padding:12px 15px;margin-top:16px}.hero-image img{height:590px}.service-list .service-kicker{font-size:9px;letter-spacing:1.6px;margin-bottom:10px}.celebrate{margin-top:50px;padding-top:36px;border-top:1px solid #6b776e;display:flex;gap:35px;align-items:center;max-width:840px}.celebrate>img{width:140px;height:170px;object-fit:cover;border-radius:2px}.celebrate h3{font-size:32px;margin-bottom:14px}.celebrate p{color:#d3d7cd;font-size:14px;margin-bottom:0}.celebrate .eyebrow{font-size:9px;margin-bottom:14px}.about .sandy-portrait img{aspect-ratio:1;object-position:center}.contact h2{font-size:clamp(37px,3.6vw,54px)}.contact-personality{display:flex;gap:24px;align-items:center;margin-top:30px}.contact-personality img{width:125px;height:160px;object-fit:cover}.contact-personality p{font-size:14px;max-width:300px;margin:0}.viewer.living-crop{height:auto;aspect-ratio:5/6}.viewer.living-crop img{width:100%;height:auto;align-self:flex-start;object-fit:cover}.card-photo.living-crop img{object-position:center top}.card-photo.living-crop{aspect-ratio:5/6}
@media(min-width:601px) and (max-width:950px){.hero-designer{gap:14px}.hero-designer>img{width:110px;height:138px}.designer-name{font-size:21px}.hero-designer .button{gap:10px;font-size:10px;padding:9px}.hero h1{font-size:43px}.hero-image img{height:550px}}
@media(max-width:600px){.hero h1{font-size:46px}.hero-designer{gap:22px}.hero-designer>img{width:125px;height:156px}.designer-name{font-size:24px}.hero-image img{height:auto}.celebrate{gap:20px;align-items:flex-start}.celebrate>img{width:100px;height:135px}.celebrate h3{font-size:25px}.celebrate p{font-size:13px}.contact-personality{gap:20px}.contact-personality img{width:100px;height:135px}}

/* Original supplied logo, preserving its lettering and proportions. */
header{padding-top:18px;padding-bottom:18px}.brand{display:block;width:150px;flex-shrink:0;line-height:0}.brand img{width:100%;height:auto;mix-blend-mode:multiply}@media(max-width:600px){header{align-items:center}.brand{width:100px}nav{max-width:205px}}
