@import "https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=DM+Serif+Display:ital@0;1&display=swap";:root{--ink:#173f39;--sage:#dce8dc;--mint:#edf3ea;--cream:#f7f3e9;--sand:#e6d8bd;--orange:#dc7651;--white:#fffdf8}*{box-sizing:border-box}html{scroll-behavior:smooth}body{color:var(--ink);background:var(--white);margin:0;font-family:DM Sans,sans-serif}a{color:inherit}.site-header{justify-content:space-between;align-items:center;max-width:1240px;height:86px;margin:auto;padding:0 28px;display:flex}.brand{align-items:center;gap:12px;font-family:DM Serif Display,serif;font-size:21px;text-decoration:none;display:flex}.brand-mark{background:var(--ink);color:#fff;letter-spacing:.08em;border-radius:50% 50% 45% 55%;place-items:center;width:40px;height:40px;font:600 12px DM Sans;display:grid}nav{gap:34px;font-size:14px;display:flex}nav a{text-decoration:none}nav a:hover{text-underline-offset:5px;text-decoration:underline}.button{background:var(--ink);color:#fff;border-radius:3px;align-items:center;gap:26px;padding:16px 22px;font-size:14px;font-weight:600;text-decoration:none;transition:all .2s;display:inline-flex}.button:hover{background:#20564d;transform:translateY(-2px)}.button-small{gap:10px;padding:12px 17px}.hero{background:var(--cream);grid-template-columns:1.05fr .95fr;min-height:650px;display:grid;overflow:hidden}.hero-copy{max-width:780px;padding:104px max(7vw,36px)}.eyebrow{letter-spacing:.22em;margin:0 0 24px;font-size:11px;font-weight:600}h1,h2,blockquote{font-family:DM Serif Display,serif;font-weight:400}h1{letter-spacing:-.035em;max-width:600px;margin:0;font-size:clamp(58px,7vw,96px);line-height:.92}em{color:var(--orange);font-weight:400}.lead{color:#42645f;max-width:530px;margin:32px 0;font-size:18px;line-height:1.7}.hero-actions{align-items:center;gap:30px;display:flex}.text-link{border-bottom:1px solid #9ab0aa;padding-bottom:4px;font-size:14px;text-decoration:none}.hero-art{background:var(--sage);min-height:650px;position:relative;overflow:hidden}.sun{background:#f0c896;border-radius:50%;width:290px;height:290px;position:absolute;top:90px;right:12%}.path{border:32px solid var(--ink);border-bottom-color:#0000;border-left-color:#0000;border-radius:50%;width:500px;height:180px;position:absolute;transform:rotate(-20deg)}.path-one{bottom:60px;right:-110px}.path-two{border-color:var(--orange);border-bottom-color:#0000;border-left-color:#0000;bottom:-60px;right:110px}.leaf{background:#60877a;border-radius:100% 0;width:110px;height:220px;position:absolute;transform:rotate(20deg)}.leaf-one{bottom:70px;left:14%}.leaf-two{background:#8eaa91;width:70px;height:150px;bottom:145px;left:33%;transform:rotate(65deg)}.note{background:var(--white);padding:14px 18px;font-family:DM Serif Display;font-size:18px;position:absolute;top:60px;left:40px;transform:rotate(-2deg);box-shadow:0 8px 24px #173f3915}.trust-row{color:#607772;text-transform:uppercase;letter-spacing:.12em;border-bottom:1px solid #dde5df;justify-content:center;align-items:center;gap:35px;min-height:88px;font-size:13px;display:flex}.trust-row i{background:var(--orange);border-radius:50%;width:4px;height:4px}.services{padding:120px max(7vw,30px)}.section-intro{justify-content:space-between;align-items:start;margin-bottom:60px;display:flex}h2{letter-spacing:-.02em;margin:0;font-size:clamp(42px,5vw,68px);line-height:1.05}.service-grid{border-top:1px solid #aebeb9;grid-template-columns:repeat(3,1fr);display:grid}.service-grid article{border-right:1px solid #cad4d0;min-height:260px;padding:32px 36px 18px 0}.service-grid article+article{padding-left:36px}.service-grid article:last-child{border:0}.number{color:var(--orange);font-size:12px}h3{margin:34px 0 12px;font:400 27px DM Serif Display}.service-grid p{color:#59706b;max-width:330px;line-height:1.65}.service-grid a{margin-top:10px;font-size:13px;font-weight:600;text-decoration:none;display:inline-block}.approach{background:var(--ink);color:#fff;text-align:center;padding:100px max(10vw,35px)}.quote-mark{color:var(--orange);height:56px;font:80px DM Serif Display}blockquote{max-width:1000px;margin:20px auto 80px;font-size:clamp(32px,4vw,55px);line-height:1.15}.steps{text-align:left;border-top:1px solid #ffffff40;grid-template-columns:repeat(3,1fr);max-width:940px;margin:auto;padding-top:30px;display:grid}.steps div{gap:18px;padding:0 25px;display:flex}.steps b{color:var(--orange)}.steps span{color:#b9cbc5;flex-direction:column;gap:5px;font-size:13px;display:flex}.steps strong{color:#fff;font-size:16px}.about{background:var(--mint);grid-template-columns:.8fr 1.2fr;align-items:center;gap:9vw;padding:120px max(10vw,35px);display:grid}.portrait{background:var(--sand);place-items:center;height:480px;display:grid;position:relative;overflow:hidden}.portrait:before,.portrait:after{content:"";background:#8ba292;border-radius:50%;width:260px;height:360px;position:absolute;bottom:-130px;transform:rotate(-20deg)}.portrait:after{background:var(--orange);width:170px;height:280px;bottom:-90px;left:12%;transform:rotate(35deg)}.portrait span{z-index:2;background:var(--cream);border-radius:50%;place-items:center;width:130px;height:130px;font:38px DM Serif Display;display:grid}.about p:not(.eyebrow):not(.signature){color:#506963;max-width:590px;font-size:17px;line-height:1.8}.signature{color:var(--orange);font:italic 22px DM Serif Display}.cta{text-align:center;background:var(--orange);color:#fff;padding:90px 30px}.cta p:not(.eyebrow){margin:20px 0 30px}.button-light{color:var(--ink);background:#fff}footer{color:#d8e4df;background:#102e2a;grid-template-columns:1.3fr 1fr 1fr auto;align-items:center;gap:35px;padding:44px max(6vw,30px);font-size:12px;display:grid}footer .brand-mark{background:var(--orange)}footer a{text-underline-offset:4px}@media (max-width:800px){nav{display:none}.site-header{height:74px}.hero{grid-template-columns:1fr}.hero-copy{padding:75px 25px}.hero-art{min-height:420px}.hero-actions{flex-direction:column;align-items:flex-start}.trust-row{flex-wrap:wrap;gap:12px;padding:25px}.section-intro{display:block}.section-intro .eyebrow{margin-bottom:18px}.service-grid{grid-template-columns:1fr}.service-grid article,.service-grid article+article{border-bottom:1px solid #cad4d0;border-right:0;padding:28px 0}.steps{grid-template-columns:1fr;gap:30px}.about{grid-template-columns:1fr;padding:80px 25px}.portrait{height:360px}footer{text-align:center;grid-template-columns:1fr}footer .brand{justify-content:center}.button-small{display:none}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}.site-header{height:104px}.brand{align-items:center;text-decoration:none;display:flex}.brand img{object-fit:contain;width:190px;height:82px;display:block}.footer-logo{background:#fff;border-radius:4px;width:max-content;padding:6px 10px}.footer-logo img{object-fit:contain;width:180px;height:76px;display:block}@media (max-width:800px){.site-header{height:88px}.brand img{width:155px;height:68px}.footer-logo{margin:auto}}.footer-contact{flex-direction:column;gap:8px;display:flex}.footer-contact a{width:max-content}@media (max-width:800px){.footer-contact{align-items:center}}.credentials{flex-wrap:wrap;gap:9px;margin:24px 0;display:flex}.credentials span{color:#355c54;background:#ffffff80;border:1px solid #b8cac0;border-radius:999px;padding:8px 12px;font-size:12px;font-weight:600}.service-grid{row-gap:0}.service-grid article:nth-child(n+4){border-top:1px solid #cad4d0}.price-note{background:var(--cream);border-left:4px solid var(--orange);align-items:center;gap:18px;margin-top:38px;padding:22px 26px;font-size:14px;display:flex}.price-note span{color:#59706b}@media (max-width:800px){.service-grid article:nth-child(n+4){border-top:0}.price-note{flex-direction:column;align-items:flex-start;gap:7px}}.portrait img{z-index:2;border:6px solid var(--white);border-radius:50%;width:76%;height:auto;display:block;position:relative;box-shadow:0 18px 48px #173f3930}.location-line{color:#355c54;letter-spacing:.04em;flex-wrap:wrap;align-items:center;gap:10px;margin:-12px 0 30px;font-size:13px;font-weight:600;display:flex}.location-dot{background:var(--orange);border-radius:50%;width:7px;height:7px;display:inline-block}.location-separator{color:#9ab0aa}@media (max-width:800px){.location-line{line-height:1.5}}
