*{box-sizing:border-box} :root{--ivory:#f7f3ec;--sand:#e9e1d6;--ink:#26343b;--blue:#cad8db;--coral:#c77c61;--muted:#707975}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--ink);font:15px/1.7 Manrope,sans-serif}a{color:inherit;text-decoration:none}img{width:100%;height:100%;object-fit:cover;display:block}header{height:82px;padding:0 6vw;display:flex;align-items:center;justify-content:space-between;background:var(--ivory);border-bottom:1px solid #d9d6cf;position:relative;z-index:3}.logo{display:flex;align-items:center;gap:11px;font-size:10px;line-height:1.1;letter-spacing:.12em;text-transform:uppercase}.logo span{display:grid;place-items:center;width:37px;height:37px;background:var(--ink);color:#fff;font-weight:700}.logo b{font-weight:600}nav{display:flex;gap:28px;font-size:11px;font-weight:700;letter-spacing:.11em;text-transform:uppercase}nav a:hover{color:var(--coral)}.phone{font-size:12px;border-bottom:1px solid var(--coral)}.hamb{display:none;border:0;background:none;font-size:23px}.hero{min-height:690px;display:grid;grid-template-columns:57% 43%;position:relative}.hero-image{height:590px;position:relative;margin:45px 0 0 6vw}.hero-image:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,rgba(38,52,59,.18),transparent 60%)}.hero-image span{position:absolute;bottom:20px;left:22px;color:#fff;font-size:11px;z-index:1}.hero-copy{padding:145px 8vw 70px 7vw;background:var(--blue);margin-bottom:45px}.kicker{font-size:10px;text-transform:uppercase;letter-spacing:.18em;font-weight:700;color:var(--coral)}h1,h2{font:500 clamp(42px,5vw,72px)/1.08 'Playfair Display',serif;letter-spacing:-.05em}h1{margin:25px 0}h1 i,h2 i{color:var(--coral);font-style:italic}.hero-copy>p:not(.kicker){max-width:390px;color:#53636a}.actions{margin-top:30px}.btn{display:inline-flex;gap:38px;padding:14px 18px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;transition:.25s}.btn:hover{transform:translateY(-3px)}.btn b{font-size:18px;font-weight:400}.coral{background:var(--coral);color:#fff}.light{background:var(--ivory);color:var(--ink)}.call{font-size:11px;margin-left:22px;border-bottom:1px solid var(--ink)}.hero-tab{position:absolute;right:4vw;bottom:82px;color:var(--coral);font-size:12px;letter-spacing:.15em}.hero-tab small{color:var(--ink);font-size:9px;line-height:1.5}.about,.inner{max-width:1240px;margin:auto;padding-left:6vw;padding-right:6vw}.about{display:grid;grid-template-columns:50px 40% 1fr;gap:5%;align-items:center;padding-top:125px;padding-bottom:125px}.tiny{font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--coral);writing-mode:vertical-rl}.about-img{height:520px;position:relative}.about-img span{position:absolute;bottom:0;right:0;background:var(--sand);padding:11px 15px;font-size:10px;letter-spacing:.1em}.about-copy h2,.service-intro h2,.why h2,.process h2,.gallery h2,.review-head h2,.contact h2{font-size:clamp(38px,4.5vw,61px);margin:20px 0}.about-copy>p:not(.kicker){max-width:510px;color:var(--muted)}.owner{margin-top:30px;border-left:2px solid var(--coral);padding-left:15px}.owner small{display:block;font-size:10px;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.services{background:var(--sand);padding:110px 0}.service-intro{display:grid;grid-template-columns:50px 1fr 30%;gap:5%;align-items:end}.service-intro>p{color:var(--muted)}.service-layout{display:grid;grid-template-columns:36% 64%;margin-top:55px;border-top:1px solid #c9c0b5;border-bottom:1px solid #c9c0b5}.service-feature{background:var(--ink);color:#fff;padding:42px;min-height:390px}.service-feature span,.service-list article>b{color:var(--coral);font-size:11px}.service-feature h3{font:500 40px/1.1 'Playfair Display';margin:75px 0 18px}.service-feature h3 i{color:var(--coral)}.service-feature p{color:#c6d0d0;max-width:245px}.service-feature a{font-size:11px;font-weight:700;display:block;margin-top:35px}.service-list article{display:grid;grid-template-columns:55px 1fr;gap:20px;padding:20px 35px;border-bottom:1px solid #c9c0b5;transition:.25s}.service-list article:last-child{border:0}.service-list article:hover{background:#f5efe8;padding-left:45px}.service-list h3{font:500 20px 'Playfair Display';margin:0}.service-list p{margin:4px 0;color:var(--muted);font-size:13px}.service-foot{padding:22px 10px;color:var(--muted);font-size:12px}.service-foot b{color:var(--coral);margin-right:24px;text-transform:uppercase;letter-spacing:.1em}.why{background:var(--ivory);padding-top:120px;padding-bottom:120px}.why-in{display:grid;grid-template-columns:50px 37% 1fr;gap:5%}.muted{color:var(--muted)}.why-list{border-top:1px solid #d4cdc3}.why-list div{display:grid;grid-template-columns:45px 1fr;border-bottom:1px solid #d4cdc3;padding:22px 0}.why-list span{color:var(--coral);font-size:11px}.why-list h3{font:500 20px 'Playfair Display';margin:0}.why-list p{grid-column:2;margin:3px 0 0;color:var(--muted);font-size:13px}.process{background:var(--blue);padding:110px 0}.process .inner{display:grid;grid-template-columns:30% 1fr;gap:8%}.process-steps{display:grid;grid-template-columns:repeat(5,1fr);border-top:1px solid #9eafb2;margin-top:30px}.process-steps article{padding:17px 15px 0 0;border-right:1px solid #9eafb2;min-height:215px}.process-steps article+article{padding-left:15px}.process-steps article:last-child{border:0}.process-steps em{color:var(--coral);font-size:11px;font-style:normal}.process-steps h3{font:500 18px 'Playfair Display';margin:28px 0 8px}.process-steps p{color:#596970;font-size:12px}.gallery{padding-top:125px;padding-bottom:125px}.gallery-head{display:grid;grid-template-columns:50px 1fr 28%;gap:5%;align-items:end;margin-bottom:45px}.gallery-head h2{margin-bottom:0}.gallery-head>p{margin:0}.gallery-grid{display:grid;grid-template-columns:1.2fr .8fr 1fr;grid-auto-rows:230px;gap:15px}.gallery-grid figure{margin:0;position:relative;overflow:hidden}.gallery-grid img{transition:.6s}.gallery-grid figure:hover img{transform:scale(1.06)}.gallery-grid figure:after{content:'';position:absolute;inset:55% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.7))}.gallery-grid figcaption{position:absolute;z-index:1;bottom:12px;left:15px;color:#fff;font-size:11px}.gallery-grid .feature{grid-row:span 2}.gallery-grid .wide{grid-column:span 2}.gallery-grid .tall{grid-row:span 2}.reviews{background:var(--sand);padding:105px 0}.reviews .inner{display:grid;grid-template-columns:50px 1fr}.review-head{grid-column:2;display:flex;justify-content:space-between;align-items:end}.review-grid{grid-column:2;display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:15px;margin-top:42px}.review-grid blockquote{background:var(--ivory);margin:0;padding:27px;border-top:2px solid var(--coral);min-height:250px}.review-grid blockquote:first-child{background:var(--ink);color:#fff}.review-grid span{font:48px 'Playfair Display';color:var(--coral);line-height:.4}.review-grid p{font:17px/1.5 'Playfair Display';margin:19px 0}.review-grid footer{font-size:11px;font-weight:700}.review-grid small{color:var(--muted);font-weight:400}.cta{height:450px;position:relative;display:grid;place-items:center;text-align:center;color:white;overflow:hidden}.cta img{position:absolute;filter:brightness(.48)}.cta>div{position:relative}.cta h2{margin:20px 0 30px}.contact{display:grid;grid-template-columns:50px 42% 1fr;gap:5%;padding-top:125px;padding-bottom:125px}.contact-info h2{margin-top:20px}.details{display:flex;gap:33px;color:var(--muted);font-size:13px;margin:28px 0}.details b{color:var(--ink)}.details a{border-bottom:1px solid var(--coral);line-height:2}.map{height:190px;position:relative}.map iframe{width:100%;height:100%;border:0;filter:grayscale(1)}.map a{position:absolute;bottom:10px;right:10px;background:var(--ivory);padding:5px 9px;font-size:10px}.form-card{padding:38px;background:#fff;box-shadow:0 12px 35px #26343b12}.form-card form{display:grid;grid-template-columns:1fr 1fr;gap:8px 15px}.form-card label{font-size:10px;text-transform:uppercase;letter-spacing:.12em;font-weight:700;margin-top:12px}.form-card input,.form-card textarea{width:100%;border:0;border-bottom:1px solid #d6d3cc;padding:10px 0;background:transparent;outline:0;font:14px Manrope}.form-card input:focus,.form-card textarea:focus{border-color:var(--coral)}.form-card label:nth-of-type(5),.form-card textarea,.form-card button{grid-column:1/-1}.form-card button{border:0;cursor:pointer;justify-content:space-between;margin-top:17px}.form-card #form-success{display:none;background:var(--blue);padding:15px;margin-top:15px}footer{background:var(--ink);color:#fff;padding:62px 7vw;display:grid;grid-template-columns:1.3fr 1fr .8fr;gap:8%}footer p,footer .footer-contact{color:#b9c5c4;font-size:13px;max-width:300px}footer small{color:#899998;font-size:10px}.footer-contact a{color:#fff}.footer-nav{display:grid;grid-template-columns:1fr 1fr;gap:20px}.footer-nav div{display:flex;flex-direction:column;gap:11px;font-size:12px}section,.service-list article,.review-grid blockquote{opacity:0;transform:translateY(18px);transition:.8s}section.in,.service-list article.in,.review-grid blockquote.in{opacity:1;transform:none}@media(max-width:800px){header{height:72px}.phone{display:none}.hamb{display:block}.nav{display:none;position:absolute;top:72px;left:0;right:0;padding:25px 8vw;background:var(--ink);color:#fff;flex-direction:column}.nav.open{display:flex}.hero{display:block}.hero-copy{padding:65px 8vw 55px}.hero-image{margin:0;height:360px}.hero-tab{display:none}.about,.contact,.why-in{display:block}.tiny{writing-mode:initial;margin-bottom:22px}.about-img{height:370px}.about-copy{margin-top:45px}.service-intro,.gallery-head{display:block}.service-intro>p,.gallery-head>p{margin-top:25px}.service-layout{display:block}.service-feature{min-height:320px;padding:30px}.service-feature h3{margin-top:50px}.service-list article{padding:19px 15px}.process .inner{display:block}.process-steps{display:block;border-top:0;margin-top:40px}.process-steps article,.process-steps article+article{border-right:0;border-left:1px solid #9eafb2;padding:4px 0 22px 20px;min-height:0}.process-steps h3{margin:7px 0}.gallery-grid{grid-template-columns:1fr 1fr;grid-auto-rows:170px}.gallery-grid .feature,.gallery-grid .tall{grid-row:span 2}.gallery-grid .wide{grid-column:span 2}.reviews .inner{display:block}.review-head{display:block}.review-grid{grid-template-columns:1fr}.details{display:block}.details p+p{margin-top:18px}.form-card{margin-top:45px;padding:26px 20px}footer{grid-template-columns:1fr 1fr;gap:35px}.footer-nav{grid-column:1/-1}.call{display:block;margin:20px 0 0}}
