@charset "UTF-8";
:root{--green:#173f35;--ink:#203e35;--cream:#f8f6ee;--pale:#eeeee3;--lime:#dae8ac;--muted:#59665e;--line:#d5dbce;--serif:Georgia,'Times New Roman',serif;--sans:'Segoe UI',Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--ink);background:var(--cream);font-family:var(--sans);font-size:16px;line-height:1.65}a{color:inherit;text-decoration:none}button{font:inherit}button,a,summary{-webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #8b620f;outline-offset:5px}button{cursor:pointer}.wrap{max-width:1280px;width:calc(100% - 112px);margin:auto}.header{max-width:1392px;margin:auto;min-height:110px;padding:20px 56px;display:flex;align-items:center;justify-content:space-between;gap:25px}.brand{display:flex;align-items:center;gap:12px;font-size:20px;letter-spacing:-.6px;white-space:nowrap}.brand em{font-family:var(--serif);font-size:25px;font-weight:400}.brand-mark{border:1px solid var(--green);border-radius:50%;width:40px;height:40px;display:grid;place-items:center;font-family:var(--serif);font-size:30px;line-height:1;padding-bottom:6px}.header nav{display:flex;align-items:center;gap:32px;font-size:14px}.header nav>a:not(.button):hover,.footer-top a:hover{text-decoration:underline;text-underline-offset:6px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:34px;background:var(--green);color:var(--cream);border:1px solid var(--green);padding:17px 25px;border-radius:4px;font-size:15px;font-weight:600;transition:background .2s,transform .2s}.button:hover{background:#2c5646;transform:translateY(-2px)}.button span{font-size:22px;line-height:1}.button.small{padding:11px 18px;gap:22px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:60px;align-items:center;padding-top:37px;padding-bottom:67px}.eyebrow{font-size:12px;letter-spacing:1.8px;line-height:1.6;font-weight:600;margin:0 0 25px}.hero .eyebrow{display:flex;gap:12px;align-items:center}.line{width:26px;height:1px;background:currentColor}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);letter-spacing:-2.7px;line-height:1.04}h1{font-size:clamp(58px,5.8vw,82px);margin-bottom:27px}h1 em,h2 em{font-weight:400;color:#57754d}h2{font-size:clamp(40px,4vw,55px);margin-bottom:25px;letter-spacing:-1.7px}h3{font-family:var(--serif);font-size:28px;line-height:1.2;letter-spacing:-.5px}.intro{font-size:17px;color:var(--muted);max-width:425px;margin-bottom:27px}.micro{font-size:12px;margin:15px 0 0;color:var(--muted)}.hero-panel{height:570px;position:relative;isolation:isolate;overflow:hidden;border-radius:220px 220px 8px 8px;background:#dce3c9;display:flex;align-items:center;flex-direction:column;padding:60px 30px 27px}.panel-label{font-size:10px;letter-spacing:1.8px;margin-bottom:27px}.panel-heading{font-family:var(--serif);font-size:39px;line-height:1.12;text-align:center;letter-spacing:-1.5px;z-index:1}.orbit{position:absolute;border:1px solid #a6b690;border-radius:50%;width:660px;height:660px;z-index:-1;left:-260px;top:150px}.orbit-two{left:160px;top:80px}.note{width:310px;max-width:95%;background:#fcfbf5;padding:27px 29px 19px;margin-top:30px;transform:rotate(-5deg);box-shadow:0 18px 40px #25432b16}.note .eyebrow{font-size:9px;letter-spacing:1.5px;margin-bottom:16px}.note p{font-family:var(--serif);font-size:29px;line-height:1.23;letter-spacing:-.5px;margin-bottom:24px}.note p em{color:#557249}.note-bottom{border-top:1px solid var(--line);padding-top:12px;font-size:10px;display:flex;align-items:center;justify-content:space-between}.note-bottom>span:last-child{font-size:24px}.panel-footer{font-size:10px;margin-top:auto;z-index:1}.ribbon{background:var(--green);color:var(--cream);padding:21px 40px;display:flex;justify-content:center;gap:85px;font-size:13px;letter-spacing:.4px}.ribbon span+span:before{content:'+';margin-right:65px;color:var(--lime)}.section{padding-top:100px;padding-bottom:100px}.section-top{display:flex;align-items:flex-end;justify-content:space-between;gap:50px;margin-bottom:38px}.section-top h2{margin-bottom:0}.section-top>p{max-width:330px;color:var(--muted);margin:0 0 5px}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.service{border:1px solid var(--line);padding:28px 30px 30px;min-height:340px;background:#fffefa}.service:nth-child(2){background:#e9eddf}.number{font-size:13px;display:inline-block;margin-bottom:35px;color:#637455}.service h3{font-size:31px;margin-bottom:18px}.service p{font-size:15px;color:var(--muted);margin-bottom:25px;max-width:285px}.tag{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;border-top:1px solid var(--line);display:block;padding-top:19px}.approach{background:var(--pale)}.approach-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.approach-grid>div>p:not(.eyebrow){color:var(--muted);max-width:360px}.text-link{display:inline-block;font-size:14px;border-bottom:1px solid var(--green);padding:8px 0}.text-link span{margin-left:20px}.steps{list-style:none;padding:0;margin:0}.steps li{display:flex;gap:25px;padding:26px 0;border-top:1px solid #c6cfbd}.steps li>span{font-size:13px;padding-top:5px}.steps h3{font-size:26px;margin-bottom:12px}.steps p{color:var(--muted);font-size:15px;margin:0}.fit{display:grid;grid-template-columns:1fr 1.1fr;gap:100px}.fit-list p{padding:17px 0;margin:0;border-bottom:1px solid var(--line);font-size:17px}.fit-list p:first-child{padding-top:0}.fit-list p span{margin-right:16px;color:#6b7e52}.fit-list small{display:block;font-size:12px;color:var(--muted);margin-top:15px}.intake{background:#e5eadb}.intake-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.topic-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;align-content:start}.topic-buttons button{padding:19px 20px;display:flex;justify-content:space-between;align-items:center;background:transparent;border:1px solid #a8b39c;border-radius:3px;text-align:left;color:var(--green);transition:background .2s}.topic-buttons button:hover{background:#f1f3e9}.topic-buttons button[aria-pressed=true]{background:var(--green);color:white;border-color:var(--green)}.topic-buttons button span{font-size:20px;margin-left:10px}.topic-card{background:var(--cream);padding:32px 36px;display:flex;flex-direction:column;min-height:306px;border-radius:3px}.topic-card .eyebrow{font-size:10px;margin-bottom:15px}.topic-card h3{font-size:31px;margin-bottom:12px}#topic-question{font-size:18px;line-height:1.45;margin-bottom:14px}#topic-detail{font-size:14px;color:var(--muted);margin-bottom:20px}.topic-footer{font-size:12px;color:var(--muted);padding-top:14px;border-top:1px solid var(--line);margin-top:auto}.privacy-note{max-width:780px;font-size:12px;color:var(--muted);margin:23px 0 0}.about{display:grid;grid-template-columns:1fr 1fr;gap:95px;align-items:center}.about-card{background:#dce3c9;min-height:440px;padding:45px;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}.about-card>p{font-size:44px;line-height:1.12;font-family:var(--serif);letter-spacing:-1.5px;margin:10px 0 28px}.signature{font-family:var(--serif);font-size:38px;font-style:italic}.placeholder{font-size:10px;letter-spacing:1px;text-transform:uppercase}.about-card .placeholder{margin-top:20px;color:var(--muted)}.about-copy>p:not(.eyebrow){color:var(--muted);font-size:16px}.editor-note{border-left:2px solid #8ba16e;padding-left:18px;margin-top:27px;font-size:13px}.editor-note p{margin:7px 0 0;color:var(--muted)}.testimonials{background:#eeeee3;text-align:center}.testimonial-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;margin-top:40px;text-align:left}.testimonial-grid article{border-top:1px solid #b9c5ae;padding:25px 20px 0}.testimonial-grid h3{margin:22px 0 15px;font-size:31px}.testimonial-grid p{color:var(--muted);font-size:15px;max-width:370px}.testimonial-grid small{font-size:12px;color:var(--muted)}.faq{display:grid;grid-template-columns:1fr 1.2fr;gap:70px}.faq-list details{border-top:1px solid var(--line);padding:20px 0}.faq-list details:last-child{border-bottom:1px solid var(--line)}summary{list-style:none;cursor:pointer;display:flex;justify-content:space-between;gap:22px;font-weight:500;font-size:16px}summary::-webkit-details-marker{display:none}summary:after{content:'+';font-size:23px;line-height:1}details[open] summary:after{content:'−'}details p{margin:17px 28px 0 0;font-size:15px;color:var(--muted)}.contact{background:var(--green);color:var(--cream);padding:78px 0;text-align:center}.contact h2{font-size:clamp(43px,4.6vw,64px)}.contact h2 em{color:var(--lime)}.contact .eyebrow{font-size:10px;color:#d9e6ca}.contact-inner>p:not(.eyebrow){color:#d9e3d7}.contact-status{display:flex;flex-direction:column;background:var(--cream);color:var(--green);width:fit-content;max-width:100%;margin:28px auto 18px;padding:19px 30px;border-radius:4px;gap:3px}.contact-status strong{font-size:15px}.contact-status span{font-size:12px;color:var(--muted)}.light-link{display:inline-block;font-size:13px;text-decoration:underline;text-underline-offset:5px}.light-link span{margin-left:10px}footer{padding-top:35px;padding-bottom:25px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:30px;padding-bottom:30px}.footer-top>div{display:flex;gap:27px;font-size:13px}.footer-bottom{display:flex;justify-content:space-between;gap:30px;border-top:1px solid var(--line);padding-top:24px;font-size:11px;color:var(--muted)}.footer-bottom p{margin:0}.skip{position:fixed;top:-80px;left:15px;background:var(--green);color:white;padding:15px;z-index:20}.skip:focus{top:15px}@media(prefers-reduced-motion:no-preference){.hero-copy{animation:arrive .7s ease-out both}.hero-panel{animation:arrive .9s ease-out both}@keyframes arrive{from{opacity:0;transform:translateY(15px)}to{opacity:1;transform:translateY(0)}}} @media(min-width:1450px){.hero{gap:100px}}@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.header{padding:20px 32px}.header nav{gap:20px}.hero{gap:30px}.hero-panel{height:530px;padding-left:20px;padding-right:20px}.ribbon{gap:35px}.ribbon span+span:before{margin-right:30px}.approach-grid,.fit,.about{gap:45px}.service{padding:25px 22px}.service h3{font-size:27px}.section{padding-top:75px;padding-bottom:75px}.faq{gap:35px}.about-card{padding:30px}.about-card>p{font-size:38px}}
@media(max-width:760px){html{scroll-padding-top:25px}.wrap{width:calc(100% - 40px)}.header{padding:18px 20px;min-height:85px;flex-wrap:wrap;gap:15px}.brand{font-size:18px}.brand em{font-size:23px}.brand-mark{width:35px;height:35px;font-size:26px}.menu-toggle{display:block;border:1px solid var(--line);background:transparent;padding:8px 12px;border-radius:3px;color:var(--green);font-size:14px}.menu-toggle span{margin-left:8px}.header nav{width:100%;display:flex;flex-wrap:wrap;gap:15px 23px;padding:12px 0}.js .header nav{display:none}.js .header nav.is-open{display:flex}.hero{grid-template-columns:1fr;padding-top:30px;padding-bottom:40px;gap:38px}.hero .eyebrow{font-size:10px;letter-spacing:1.2px;margin-bottom:20px}h1{font-size:clamp(52px,12vw,76px);letter-spacing:-2.2px}.hero-copy{max-width:520px}.intro{font-size:16px}.hero-panel{height:510px;max-width:500px;width:100%;margin:auto}.panel-heading{font-size:38px}.hero-panel .note .eyebrow{font-size:9px}.ribbon{padding:20px;gap:8px;flex-direction:column;text-align:center;font-size:12px}.ribbon span+span:before{content:none}.section{padding-top:60px;padding-bottom:60px}h2{font-size:42px}.section-top{display:block}.section-top>p{margin-top:22px;max-width:440px}.services-grid{grid-template-columns:1fr;gap:15px}.service{min-height:0;padding:25px}.number{margin-bottom:18px}.service h3{font-size:30px}.service p{max-width:100%}.approach-grid,.fit,.intake-grid,.about,.faq{grid-template-columns:1fr;gap:35px}.steps h3{font-size:25px}.fit-list p{font-size:16px}.topic-buttons{gap:8px}.topic-buttons button{padding:14px;font-size:14px}.topic-card{padding:27px;min-height:300px}.about-card{min-height:390px}.about-card>p{font-size:43px}.testimonial-grid{grid-template-columns:1fr;gap:30px}.testimonial-grid article{padding-left:0;padding-right:0}.faq{gap:15px}.contact{padding:60px 0}.contact .eyebrow{font-size:9px;letter-spacing:1.3px}.contact h2{font-size:43px;letter-spacing:-1.5px}.contact-status{padding:18px}.footer-top,.footer-bottom{flex-direction:column;align-items:flex-start;gap:20px}.footer-bottom{font-size:12px}.privacy-note{font-size:12px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}

.hero-panel{height:auto;min-height:570px}.panel-footer{margin-top:27px}@media(max-width:760px){.hero-panel{height:auto;min-height:510px}}

/* Version 2: fewer sections, a quieter hero, and a steady note area. */
.hero-panel{min-height:440px;justify-content:center;padding:50px 35px;background:#dce3c9}
.hero-panel .note{margin:0;width:310px;padding:35px;transform:rotate(-4deg)}
.hero-panel .note p{font-size:34px;line-height:1.22;margin:0}
.hero{padding-bottom:75px}.about-card{min-height:460px}
.angie-note-text{display:grid;width:100%;margin:10px 0 25px}
.angie-note{grid-area:1/1;font-family:var(--serif);font-size:42px;line-height:1.15;letter-spacing:-1.4px;margin:0;opacity:0;visibility:hidden;transition:opacity .6s ease}
.angie-note.is-current{opacity:1;visibility:visible}
.angie-note-text em{color:#57754d}
.note-controls{display:flex;justify-content:space-between;align-items:center;width:100%;margin-top:22px;font-size:12px;color:var(--muted)}
.note-controls[hidden]{display:none}
.note-controls button{border:1px solid #86977b;background:transparent;border-radius:3px;padding:7px 12px;font-size:12px;color:var(--green)}
.note-controls button:hover{background:#eef1e5}
.about-card .placeholder{font-size:10px;letter-spacing:.5px;margin-top:15px}
.faq{border-top:1px solid var(--line)}
@media(max-width:760px){.hero{gap:32px;padding-bottom:45px}.hero-panel{min-height:340px;padding:40px 32px;border-radius:170px 170px 6px 6px}.hero-panel .note{padding:27px;width:275px}.hero-panel .note p{font-size:29px}.angie-note{font-size:38px}.about-card{min-height:440px}}
@media(prefers-reduced-motion:reduce){.angie-note{transition:none}}

/* Version 3: persistent navigation and automatic notes. */
.header{position:sticky;top:0;z-index:10;background:var(--cream);box-shadow:0 1px 0 #d5dbce}
html{scroll-padding-top:130px}
.note-controls{justify-content:flex-end}
@media(max-width:760px){html{scroll-padding-top:110px}}
