:root{--ink:#163c40;--paper:#f3f6f4;--mint:#d3e7df;--yellow:#f8ca62;--line:#bbcbc5}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:1rem/1.65 Arial,sans-serif}h1,h2,h3,p{margin-top:0}h1,h2{font-weight:500;line-height:1.06;letter-spacing:-.055em}h1{font-size:clamp(2.6rem,4.6vw,5.6rem)}h2{font-size:clamp(2.5rem,4.7vw,4.8rem)}h3{font-size:1.7rem;line-height:1.2;letter-spacing:-.035em}em{font-family:Georgia,serif;font-weight:400}a{color:inherit;text-decoration:none}a:focus-visible{outline:3px solid #c0710e;outline-offset:6px}a:hover{text-decoration:underline;text-underline-offset:5px}img{display:block;width:100%;height:100%;object-fit:cover}.skip{position:fixed;top:-100px;left:15px;background:white;padding:12px;z-index:99}.skip:focus{top:15px}.proposal{text-align:center;background:var(--ink);color:white;font-size:.75rem;letter-spacing:.08em;padding:7px}header{display:flex;justify-content:space-between;align-items:center;padding:25px 6%;gap:30px}.brand{font:700 2.7rem/.85 Georgia,serif;letter-spacing:-.08em;display:inline-block}.brand span{display:block;font:.75rem/1.3 Arial,sans-serif;letter-spacing:.3em;margin-top:12px}nav{display:flex;align-items:center;gap:32px;font-size:.9rem}.nav-call{border:1px solid var(--line);padding:12px 22px;border-radius:30px}.hero{position:relative;display:grid;grid-template-columns:1.15fr 1fr;min-height:670px;padding:60px 0 0 6%;isolation:isolate;background:var(--mint)}.hero-copy{padding:15px 30px 75px 0;z-index:2}.eyebrow{font-size:.78rem;font-weight:700;letter-spacing:.12em;margin-bottom:24px}.intro{max-width:440px;font-size:1.1rem;margin:28px 0}.actions{display:flex;gap:25px;flex-wrap:wrap}.actions,.button{align-items:center}.button{display:inline-flex;justify-content:space-between;gap:35px;background:var(--ink);color:white;padding:16px 25px;border-radius:5px;transition:transform .25s,background .25s}.button:hover{background:#28616a;transform:translateY(-3px);text-decoration:none}.text-link{border-bottom:1px solid;padding:8px 0;display:inline-block}.photo{overflow:hidden;position:relative;background:#aebfbd}.photo img{transform:translateY(var(--drift,0)) scale(1.13);will-change:transform}.hero-image{border-radius:180px 0 0 0;min-height:530px}.hero-tab{position:absolute;right:4%;bottom:35px;background:var(--yellow);padding:25px 30px;transform:rotate(-4deg);z-index:3}.hero-tab span{font-size:.7rem;letter-spacing:.15em}.hero-tab strong{display:block;font-size:1.8rem;line-height:1.15;margin-top:14px}.service-strip{display:flex;justify-content:space-around;gap:20px;flex-wrap:wrap;padding:23px 5%;border-bottom:1px solid var(--line);font-size:.8rem;letter-spacing:.18em}.pad{padding:110px 7%}.section-intro{display:grid;grid-template-columns:1fr 1.4fr 1fr;gap:35px;align-items:start;margin-bottom:65px}.section-intro h2{font-size:3.3rem}.section-intro p:last-child{max-width:310px}.service-feature{display:grid;grid-template-columns:1.4fr 1fr;gap:8%;align-items:center}.service-feature .photo{height:460px;border-radius:5px 100px 5px 5px}.index{font:italic 2.3rem Georgia,serif;display:block;margin-bottom:24px;color:#46686c}.service-copy{max-width:340px}.service-duo{display:grid;grid-template-columns:1fr 1fr;gap:8%;margin-top:70px}.service-duo article:last-child{padding-top:85px}.service-duo .photo{height:290px;margin-bottom:25px}.service-duo article>div:last-child{max-width:430px}.service-duo .index{font-size:1.3rem;margin-bottom:10px}.local{background:var(--ink);color:white;padding:95px 7%;display:grid;grid-template-columns:1.1fr 1fr;gap:9%}.local-title{align-self:center}.local h2{font-size:clamp(3rem,6vw,6rem)}.local .photo{height:300px;border-radius:120px 120px 5px 5px;margin-bottom:30px}.local-body{max-width:510px}.reputation h2{margin-bottom:55px}.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:35px;margin-bottom:35px}.quotes article{border-top:1px solid var(--line);padding-top:25px}.quotes span{font-size:.75rem;letter-spacing:.1em}.quotes blockquote{margin:25px 0;font:1.7rem/1.4 Georgia,serif}.quotes p{font-size:.8rem}.handoff{display:grid;grid-template-columns:1.1fr 1fr;background:var(--mint)}.handoff>.photo{min-height:570px}.handoff>div:last-child{padding:70px 15% 70px 12%}.handoff h2{font-size:3.4rem}.contact{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:var(--yellow)}.address{border-top:2px solid;padding-top:20px}.address>strong{font-size:clamp(5rem,9vw,9rem);line-height:1;letter-spacing:-.07em;font-weight:500}.address address{font-style:normal;font-size:1.3rem;margin:25px 0}.address>a:not(.button){display:block;font-size:1.5rem;margin-bottom:25px}footer{background:var(--ink);color:white;padding:55px 7%;display:grid;grid-template-columns:1fr 1fr 1fr;gap:50px;align-items:center}footer p{font-size:.75rem;letter-spacing:.1em}footer small{font-size:.75rem;line-height:1.6;color:#d2e1dc}.mobile-cta{display:none}.pending{opacity:0;transform:translateY(42px)}[data-reveal].arrived{animation:rise .85s cubic-bezier(.2,.7,.2,1) both}.photo.arrived{animation:curtain 1.1s cubic-bezier(.2,.7,.2,1) both}.hero .eyebrow.arrived{animation-delay:.13s}.hero h1.arrived{animation-delay:.28s}.hero .intro.arrived{animation-delay:.43s}.hero .actions.arrived{animation-delay:.58s}.hero-image.arrived{animation:heroReveal 1.3s .4s both}.hero-tab.arrived{animation-delay:.8s}.quotes article:nth-child(2){animation-delay:.13s}.quotes article:nth-child(3){animation-delay:.26s}.address.arrived,.local-title.arrived{animation:side 1s both}@keyframes rise{0%{opacity:0;transform:translateY(42px)}to{opacity:1;transform:translateY(0)}}@keyframes curtain{0%{opacity:.3;clip-path:inset(0 100% 0 0)}to{opacity:1;clip-path:inset(0 0 0 0)}}@keyframes heroReveal{0%{opacity:0;clip-path:inset(0 0 100% 0);transform:scale(1.03)}to{opacity:1;clip-path:inset(0);transform:scale(1)}}@keyframes side{0%{opacity:0;transform:translateX(-45px)}to{opacity:1;transform:translateX(0)}}@media(max-width:850px){nav a:not(.nav-call){display:none}.hero{grid-template-columns:1fr;padding:40px 6% 0}.hero-copy{padding:0 0 35px}.hero-image{height:400px;min-height:0;border-radius:90px 0 0 0;margin-right:-6.8%}.hero-tab{bottom:25px}h1{font-size:clamp(2.7rem,7vw,4.5rem)}.section-intro{grid-template-columns:1fr 1fr}.section-intro .eyebrow{grid-column:1/-1}.section-intro h2{font-size:2.7rem}.pad{padding:70px 6%}.service-feature{gap:6%}.service-feature .photo{height:380px}.local{gap:6%;padding:70px 6%}.quotes{gap:20px}.quotes blockquote{font-size:1.4rem}.handoff>div:last-child{padding:50px 10%}.handoff h2{font-size:2.6rem}footer{gap:30px;grid-template-columns:1fr 1fr}footer small{grid-column:1/-1}.contact{gap:8%}}@media(max-width:550px){header{padding:22px 6%;gap:15px;flex-wrap:wrap}.brand{font-size:2.2rem}.nav-call{padding:10px;font-size:.8rem}.hero h1{font-size:2.85rem}.intro{font-size:1rem}.hero-image{height:335px}.hero-tab{padding:18px}.hero-tab strong{font-size:1.4rem}.service-strip{font-size:.7rem;gap:15px;padding:18px}.contact,.handoff,.local,.quotes,.section-intro,.service-duo,.service-feature{grid-template-columns:1fr}.section-intro{gap:12px;margin-bottom:35px}.section-intro p:last-child{max-width:none}.service-feature .photo{height:300px}.service-copy{padding-top:25px}.service-duo{gap:35px;margin-top:40px}.service-duo article:last-child{padding-top:0}.service-duo .photo{height:260px}.local{gap:30px}.local h2{font-size:3.2rem}.quotes{gap:25px}.quotes blockquote{font-size:1.65rem}.handoff>.photo{min-height:0;height:330px}.handoff>div:last-child{padding:45px 6%}.contact{gap:35px}.contact h2{font-size:2.7rem}footer{grid-template-columns:1fr;padding-bottom:110px;gap:28px}footer small{grid-column:auto}.mobile-cta{position:fixed;bottom:0;left:0;right:0;display:flex;background:var(--ink);color:white;border-top:1px solid #75958e;z-index:10}.mobile-cta a{flex:1;text-align:center;padding:15px 8px;font-size:.95rem;overflow-wrap:anywhere}.mobile-cta a+a{border-left:1px solid #75958e}.address>strong{font-size:6rem}a,h1,h2,h3,p{overflow-wrap:anywhere}.actions{gap:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:after,:before{animation:none!important;transition:none!important}.pending{opacity:1;transform:none}.photo img{transform:none!important}}.contact>*,.quotes>*,.section-intro>*,.service-feature>*,article,section>*{min-width:0}address,blockquote,strong{overflow-wrap:anywhere}.button{max-width:100%}.hero{overflow:clip}@media(max-width:850px){.hero-image{margin-right:-6vw}}@media(max-width:550px){.address>strong{font-size:5rem}.contact,.quotes{grid-template-columns:minmax(0,1fr)}.button{gap:18px}.hero h1{font-size:2.65rem}}