@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600&family=Playfair+Display:ital,wght@0,500;0,600;1,500;1,600&display=swap');
:root{--forest:#173c35;--forest-dark:#102d28;--ink:#20312d;--muted:#6c7771;--cream:#f4f1eb;--paper:#fbfaf7;--clay:#c47e61;--line:#d9ddd5;--serif:'Playfair Display',Georgia,serif;--sans:'DM Sans',Arial,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.site-header{align-items:center;background:var(--paper);display:flex;justify-content:space-between;padding:22px 5.5%;position:relative;z-index:10}.brand{align-items:center;display:flex;gap:12px}.brand-mark{align-items:center;background:var(--forest);border-radius:50%;color:#f1d4ac;display:flex;font-family:var(--serif);font-size:1.5rem;height:43px;justify-content:center;width:43px}.brand-copy{display:flex;flex-direction:column;line-height:1.1}.brand-copy strong{font-size:.89rem;letter-spacing:.02em}.brand-copy small{color:var(--muted);font-size:.58rem;letter-spacing:.18em;margin-top:5px}.site-nav{align-items:center;display:flex;gap:30px}.site-nav a{color:#50615a;font-size:.85rem}.site-nav a:hover,.site-nav a:focus{color:var(--forest)}.site-nav .nav-contact{border:1px solid var(--forest);border-radius:100px;color:var(--forest);padding:9px 17px}.menu-toggle{display:none}.hero{background:var(--forest-dark) url('assets/therapy-studio.png') center/cover no-repeat;min-height:680px;position:relative}.hero-overlay{background:linear-gradient(90deg,rgba(9,36,31,.97) 0%,rgba(9,36,31,.83) 38%,rgba(9,36,31,.2) 76%,rgba(9,36,31,.12));inset:0;position:absolute}.hero-content{color:white;max-width:700px;padding:150px 10% 130px;position:relative;z-index:1}.eyebrow,.section-label{font-size:.73rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase}.eyebrow{color:#c8ddce;margin:0 0 24px}.hero h1{font-family:var(--serif);font-size:clamp(3rem,6vw,5.8rem);font-weight:500;letter-spacing:-.045em;line-height:1.02;margin:0}.hero h1 em{color:#e7c9a1;font-style:italic}.hero-text{color:#dae6dc;font-size:1.05rem;line-height:1.7;margin:30px 0;max-width:490px}.hero-actions{align-items:center;display:flex;gap:24px}.button{border-radius:100px;display:inline-flex;font-size:.87rem;font-weight:600;gap:15px;justify-content:center;padding:14px 21px;transition:transform .2s ease,background .2s ease}.button:hover{transform:translateY(-2px)}.button-light{background:#f7f4ed;color:var(--forest)}.button-dark{background:var(--forest);color:#fff}.text-link{border-bottom:1px solid currentColor;display:inline-flex;font-size:.88rem;font-weight:600;gap:10px;padding-bottom:4px}.light-link{color:#fff}.hero-note{bottom:33px;color:#d7e5da;font-size:.8rem;left:10%;position:absolute;z-index:1}.note-dot{background:#e7c9a1;border-radius:50%;display:inline-block;height:7px;margin-right:8px;width:7px}.section-shell{margin:0 auto;max-width:1240px;padding:125px 5.5%}.section-label{color:var(--clay);margin-bottom:30px}.intro-grid,.approach-grid{display:grid;gap:12%;grid-template-columns:1fr 1fr}.intro h2,.section-heading h2,.approach h2,.contact h2{font-family:var(--serif);font-size:clamp(2.6rem,4vw,4.3rem);font-weight:500;letter-spacing:-.04em;line-height:1.08;margin:0}.lead{font-family:var(--serif);font-size:1.45rem;line-height:1.45;margin:0 0 22px}.intro p:not(.lead),.approach p:not(.lead){color:var(--muted);max-width:500px}.intro .text-link{color:var(--forest);margin-top:15px}.services{background:var(--cream);max-width:none;padding-left:10%;padding-right:10%}.section-heading{align-items:end;display:flex;gap:12%;justify-content:space-between;margin-bottom:50px}.section-heading>div{max-width:630px}.section-heading p{color:var(--muted);margin:0;max-width:315px}.service-grid{display:grid;gap:16px;grid-template-columns:repeat(2,1fr);max-width:1100px}.service-card{background:var(--paper);border-top:3px solid var(--forest);display:flex;gap:32px;min-height:250px;padding:33px 35px;transition:transform .2s ease,box-shadow .2s ease}.service-card:hover{box-shadow:0 17px 35px rgba(23,60,53,.08);transform:translateY(-4px)}.service-card.service-featured{background:var(--forest);color:#fff}.service-number{color:var(--clay);font-size:.75rem;font-weight:600;letter-spacing:.1em}.service-card h3{font-family:var(--serif);font-size:1.8rem;font-weight:500;line-height:1.15;margin:0 0 13px}.service-card p{color:var(--muted);font-size:.93rem;margin:0 0 22px;max-width:360px}.service-featured p{color:#c7d8cd}.service-card a{border-bottom:1px solid currentColor;color:var(--forest);font-size:.78rem;font-weight:600;padding-bottom:4px}.service-featured a{color:#f0d3aa}.image-break{background:#1b3932;min-height:520px;overflow:hidden;position:relative}.image-break img{height:100%;object-fit:cover;opacity:.68;position:absolute;width:100%}.image-break:after{background:linear-gradient(90deg,rgba(15,46,40,.75),transparent 70%);content:'';inset:0;position:absolute}.image-caption{bottom:55px;color:white;display:flex;flex-direction:column;font-family:var(--serif);font-size:clamp(2.2rem,4.8vw,4.7rem);left:10%;line-height:1.05;position:absolute;z-index:1}.image-caption span:last-child{color:#e7c9a1;font-style:italic;margin-left:1.1em}.approach-grid{gap:15%}.principles{border-top:1px solid var(--line)}.principle{border-bottom:1px solid var(--line);display:flex;gap:28px;padding:24px 0}.principle>span{color:var(--clay);font-size:.75rem;font-weight:600;letter-spacing:.1em}.principle h3{font-family:var(--serif);font-size:1.5rem;font-weight:500;margin:0 0 6px}.principle p{margin:0!important}.contact{padding-top:40px}.contact-card{background:#e6eee7;display:grid;gap:8%;grid-template-columns:1.2fr .8fr;padding:75px 8%}.contact h2{font-size:clamp(2.5rem,4vw,4.2rem);max-width:600px}.contact-copy>p{color:var(--muted);margin:25px 0 30px;max-width:450px}.contact-details{border-left:1px solid #bfd0c1;display:flex;flex-direction:column;gap:46px;justify-content:center;padding-left:12%}.detail-label{color:var(--clay);display:block;font-size:.72rem;font-weight:600;letter-spacing:.16em;margin-bottom:10px;text-transform:uppercase}.contact address,.contact-details a{color:var(--forest);font-style:normal}.site-footer{align-items:center;background:var(--forest-dark);color:#eef4ec;display:flex;justify-content:space-between;padding:38px 5.5%}.site-footer>div:first-child{display:flex;flex-direction:column;line-height:1.25}.site-footer strong{font-size:.83rem;letter-spacing:.08em}.site-footer span{color:#9fb8a8;font-size:.65rem;letter-spacing:.15em}.footer-meta{align-items:center;color:#b6c9bc;display:flex;font-size:.75rem;gap:24px}.footer-meta a:hover{color:#fff}.footer-meta>span:last-child{color:#b6c9bc}@media(max-width:760px){.site-header{padding:18px 6%}.menu-toggle{background:none;border:1px solid var(--forest);border-radius:100px;color:var(--forest);display:block;font:inherit;font-size:.78rem;padding:7px 14px}.site-nav{background:var(--paper);border-bottom:1px solid var(--line);display:none;flex-direction:column;gap:20px;left:0;padding:20px 6%;position:absolute;right:0;top:80px}.site-nav.is-open{display:flex}.site-nav a{width:100%}.site-nav .nav-contact{border:0;padding:0}.hero{min-height:640px}.hero-content{padding:120px 8% 120px}.hero h1{font-size:clamp(2.85rem,14vw,4.5rem)}.hero-text{font-size:.98rem}.hero-note{bottom:25px;left:8%;font-size:.73rem}.section-shell{padding:86px 8%}.intro-grid,.approach-grid,.contact-card{grid-template-columns:1fr;gap:45px}.intro h2,.section-heading h2,.approach h2{font-size:2.75rem}.services{padding-left:8%;padding-right:8%}.section-heading{align-items:start;display:block;margin-bottom:35px}.section-heading p{margin-top:20px}.service-grid{grid-template-columns:1fr}.service-card{min-height:unset;padding:28px 24px}.image-break{min-height:440px}.image-caption{bottom:35px;left:8%;font-size:2.7rem}.image-caption span:last-child{margin-left:.4em}.contact{padding-top:15px}.contact-card{padding:50px 9%}.contact-details{border-left:0;border-top:1px solid #bfd0c1;padding-left:0;padding-top:30px}.site-footer{align-items:start;display:block;padding:34px 8%}.footer-meta{align-items:start;display:flex;flex-wrap:wrap;gap:11px 18px;margin-top:26px}}
