:root{--ink:#12303a;--deep:#0d2730;--muted:#536973;--cream:#f7f5ef;--white:#fff;--lime:#c9ee87;--line:#dce3df;--font:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
    *{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font-family:var(--font);line-height:1.55}a{color:inherit}button{font:inherit}.wrap{width:min(1160px,calc(100% - 40px));margin:auto}.skip{position:absolute;left:-9999px;top:0;background:white;padding:12px}.skip:focus{left:12px;z-index:10}.eyebrow{font-size:.78rem;font-weight:800;letter-spacing:.16em;text-transform:uppercase;color:#477565}h1,h2,h3,p{margin-top:0}h1,h2{line-height:1.09;letter-spacing:-.045em}h1{font-size:clamp(3.2rem,7.8vw,7rem);max-width:870px;margin:18px 0 26px}h2{font-size:clamp(2.3rem,5vw,4.6rem);max-width:820px;margin:12px 0 24px}h3{font-size:1.35rem;line-height:1.25;letter-spacing:-.02em}p{max-width:68ch}.lead{font-size:clamp(1.1rem,2vw,1.34rem);color:#d5e3e2;max-width:630px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:14px;min-height:54px;padding:0 23px;border-radius:100px;text-decoration:none;font-weight:750;transition:transform .18s,background .18s}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--lime);color:var(--deep)}.btn-primary:hover{background:#dcf5aa}.btn-outline{border:1px solid #71878b;color:white}.btn-outline:hover{background:#ffffff18}.btn-dark{background:var(--deep);color:white}.topbar{background:var(--deep);color:white;border-bottom:1px solid #ffffff25}.nav{min-height:82px;display:flex;align-items:center;justify-content:space-between;gap:20px}.brand{display:flex;align-items:center;gap:12px;text-decoration:none;font-size:1.15rem;font-weight:850;letter-spacing:-.03em}.brand-mark{width:33px;height:33px;border:2px solid var(--lime);border-radius:8px;display:grid;place-items:center;color:var(--lime);font-size:.75rem;letter-spacing:-.08em}.navlinks{display:flex;align-items:center;gap:30px}.navlinks a{text-decoration:none;font-size:.94rem;font-weight:650}.navlinks a:hover{text-decoration:underline;text-underline-offset:5px}.nav-cta{padding:11px 17px;border:1px solid #9cb3b4;border-radius:100px}.hero{background:var(--deep);color:white;position:relative;overflow:hidden}.hero:after{content:"";position:absolute;width:560px;height:560px;right:-180px;top:38px;border:1px solid #bde8b333;border-radius:50%;box-shadow:0 0 0 90px #bde8b30a,0 0 0 180px #bde8b308;pointer-events:none}.hero-inner{position:relative;z-index:1;padding:100px 0 110px}.hero .eyebrow{color:var(--lime)}.hero-actions{display:flex;gap:13px;flex-wrap:wrap;margin:35px 0 70px}.hero-proof{display:flex;gap:30px;flex-wrap:wrap;padding-top:25px;border-top:1px solid #ffffff35;max-width:820px}.hero-proof span{color:#d4e2df;font-size:.95rem}.hero-proof strong{display:block;color:white;font-size:1.05rem}.section{padding:105px 0}.intro-grid{display:grid;grid-template-columns:1.05fr .95fr;gap:65px;align-items:center}.intro-copy{font-size:1.16rem;color:var(--muted)}.signal{background:white;border:1px solid var(--line);border-radius:28px;padding:36px;box-shadow:0 22px 65px #1a3b2d0b}.signal-top{display:flex;align-items:center;gap:12px;font-weight:800;margin-bottom:28px}.signal-dot{width:13px;height:13px;border-radius:50%;background:#80c57b;box-shadow:0 0 0 7px #80c57b2c}.signal-row{padding:16px 0;border-top:1px solid var(--line);display:flex;gap:14px;align-items:center}.tick{width:25px;height:25px;border-radius:50%;background:#e7f3da;display:grid;place-items:center;color:#397346;font-weight:900;flex:none}.services{background:#eaf0eb}.section-head{display:flex;justify-content:space-between;align-items:end;gap:30px;margin-bottom:38px}.section-head p{max-width:360px;color:var(--muted)}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{background:white;border:1px solid #d9e2db;border-radius:24px;padding:34px;min-height:340px;display:flex;flex-direction:column}.card-num{font-size:.83rem;font-weight:800;color:#5d8173;margin-bottom:50px}.card h3{font-size:1.55rem}.card p{color:var(--muted);margin-bottom:0}.card-foot{margin-top:auto;padding-top:25px;color:#285a4e;font-size:.92rem;font-weight:750}.process{background:var(--cream)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin-top:52px}.step{border-top:2px solid #386a5c;padding-top:25px}.step span{display:block;font-size:.82rem;font-weight:800;color:#4c7868;margin-bottom:20px}.step p{color:var(--muted)}.about{background:#dce9e1}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-panel{min-height:430px;background:var(--deep);border-radius:28px;padding:40px;display:flex;flex-direction:column;justify-content:space-between;color:white;position:relative;overflow:hidden}.about-panel:after{content:"NC";position:absolute;right:-30px;bottom:-110px;font-size:20rem;letter-spacing:-.13em;line-height:1;color:#bde8b31a;font-weight:900}.about-panel small{color:var(--lime);letter-spacing:.14em;text-transform:uppercase;font-weight:800}.about-panel p{position:relative;z-index:1;font-size:1.55rem;line-height:1.3;letter-spacing:-.03em;max-width:330px}.about-copy p{color:#415e61;font-size:1.1rem}.about-copy ul{padding-left:20px;color:#415e61}.about-copy li{margin:8px 0}.contact{background:var(--deep);color:white}.contact-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:70px;align-items:end}.contact .eyebrow{color:var(--lime)}.contact p{color:#cadcdb;font-size:1.1rem}.contact-box{border:1px solid #71898b;border-radius:24px;padding:30px}.contact-box a{display:block;text-decoration:none;font-size:1.2rem;font-weight:750;padding:12px 0;overflow-wrap:anywhere}.contact-box a:hover{text-decoration:underline}.contact-box small{color:#bdcccb}.footer{background:#081d24;color:#b8c9c8}.footer-inner{min-height:95px;display:flex;justify-content:space-between;align-items:center;gap:20px;font-size:.88rem}.footer a{text-decoration:none;margin-left:20px}.footer a:hover{text-decoration:underline}
    @media(max-width:800px){.nav{min-height:70px}.navlinks a:not(.nav-cta){display:none}.hero-inner{padding:75px 0 80px}.hero-actions{margin-bottom:50px}.intro-grid,.about-grid,.contact-grid{grid-template-columns:1fr;gap:35px}.section{padding:75px 0}.section-head{display:block}.cards,.steps{grid-template-columns:1fr}.card{min-height:0}.card-num{margin-bottom:32px}.about-panel{min-height:320px}.footer-inner{display:block;padding:25px 0}.footer a{display:inline-block;margin:10px 18px 0 0}}@media(max-width:480px){.wrap{width:min(100% - 28px,1160px)}h1{font-size:3.1rem}.hero-proof{display:block}.hero-proof span{display:block;margin:12px 0}.btn{width:100%}.nav-cta{font-size:.83rem!important}.brand{font-size:1rem}.signal,.card{padding:26px}}
/* WordPress block spacing and standard pages */
main > .wp-block-group{margin-block-start:0;margin-block-end:0}
.wp-block-group .wp-block-group{margin-block-start:0;margin-block-end:0}
.hero .wp-block-heading,.section .wp-block-heading{max-width:inherit}
.about-panel .eyebrow{position:relative;z-index:1;color:var(--lime);font-size:.78rem;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.about-panel p:not(.eyebrow){position:relative;z-index:1;font-size:1.55rem;line-height:1.3;letter-spacing:-.03em;max-width:330px}
.step > p:first-child{display:block;font-size:.82rem;font-weight:800;color:#4c7868;margin-bottom:20px}
.legal-page{min-height:60vh;max-width:850px}.legal-page h1{font-size:clamp(2.5rem,6vw,4.5rem)}.legal-page p,.legal-page li{max-width:75ch}.legal-page a{overflow-wrap:anywhere}
.admin-bar .topbar{scroll-margin-top:32px}
.about-photo{position:relative;min-height:520px;margin:0;border-radius:28px;overflow:hidden;background:#d3ddd5}
.about-photo img{display:block;width:100%;height:520px;object-fit:cover;object-position:center 25%}
.about-photo figcaption{position:absolute;left:0;right:0;bottom:0;padding:48px 30px 24px;background:linear-gradient(transparent,#0d2730bd);color:white;font-weight:750;font-size:.95rem;margin:0}
@media(max-width:800px){.about-photo,.about-photo img{min-height:0;height:450px}}

.about-photo{min-height:0;background:#0d2730}.about-photo img{height:auto!important;max-height:none!important;object-fit:contain}.about-photo figcaption{position:static;background:#0d2730;padding:16px 24px 18px}@media(max-width:800px){.about-photo,.about-photo img{height:auto!important;min-height:0}}
.about-layout{display:grid;grid-template-columns:240px minmax(0,1fr);gap:55px;align-items:start;max-width:900px}
.about-layout .about-photo{width:240px;min-height:0;margin:0}
.about-layout .about-photo img{display:block;width:100%;height:auto!important;max-height:none!important;object-fit:contain}
.about-layout .about-photo figcaption{position:static;background:#dce9e1;color:#12303a;padding:12px 8px 4px;font-size:.92rem;font-weight:750;line-height:1.4}
.about-layout .about-copy{max-width:620px}
@media(max-width:650px){.about-layout{grid-template-columns:1fr;gap:25px}.about-layout .about-photo{width:min(240px,70vw)}}
/* Clear service heading remains readable on small screens. */
.hero h1{font-size:clamp(2.75rem,6vw,5.7rem);max-width:1050px}
.about-layout .about-photo img{aspect-ratio:768/907}
/* Legal pages follow the same color and spacing system as the OnePager. */
.legal-page{background:#fff;border:1px solid var(--line);border-radius:28px;padding:clamp(28px,5vw,68px);box-shadow:0 22px 65px #1a3b2d0b}
.legal-page h1{margin:14px 0 42px}
.legal-page h2{font-size:clamp(1.3rem,2.4vw,1.7rem);letter-spacing:-.025em;margin:42px 0 14px;padding-top:22px;border-top:1px solid var(--line)}
.legal-page p,.legal-page li{font-size:1.03rem;line-height:1.72;color:#415e61}
.legal-page a{color:#285a4e;text-decoration-thickness:1px;text-underline-offset:3px}
.website-note{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:32px;align-items:center;margin-top:20px;padding:27px 32px;background:#f7f5ef;border:1px solid #d9e2db;border-radius:20px}
.website-note h3,.website-note p{margin:0}.website-note h3{font-size:1.3rem}.website-note p{color:var(--muted)}
@media(max-width:700px){.website-note{grid-template-columns:1fr;gap:10px;padding:24px}}
/* WordPress adds an inner container to Group blocks; apply layouts there. */
.intro-grid,.section-head,.cards,.steps,.about-layout,.contact-grid,.website-note{display:block}
.intro-grid > .wp-block-group__inner-container,
.section-head > .wp-block-group__inner-container,
.cards > .wp-block-group__inner-container,
.steps > .wp-block-group__inner-container,
.about-layout > .wp-block-group__inner-container,
.contact-grid > .wp-block-group__inner-container,
.website-note > .wp-block-group__inner-container{width:100%;max-width:none}
.intro-grid > .wp-block-group__inner-container{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:65px;align-items:center}
.section-head > .wp-block-group__inner-container{display:flex;justify-content:space-between;align-items:end;gap:30px}
.cards > .wp-block-group__inner-container{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.steps > .wp-block-group__inner-container{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.about-layout > .wp-block-group__inner-container{display:grid;grid-template-columns:240px minmax(0,1fr);gap:55px;align-items:start}
.contact-grid > .wp-block-group__inner-container{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:70px;align-items:end}
.website-note > .wp-block-group__inner-container{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(0,1.2fr);gap:32px;align-items:center}
.card > .wp-block-group__inner-container{display:flex;flex-direction:column;flex:1;min-width:0}
.step > .wp-block-group__inner-container > p:first-child{display:block;font-size:.82rem;font-weight:800;color:#4c7868;margin-bottom:20px}
@media(max-width:800px){
  .intro-grid > .wp-block-group__inner-container,
  .about-layout > .wp-block-group__inner-container,
  .contact-grid > .wp-block-group__inner-container,
  .cards > .wp-block-group__inner-container,
  .steps > .wp-block-group__inner-container{grid-template-columns:1fr;gap:35px}
  .section-head > .wp-block-group__inner-container{display:block}
}
@media(max-width:700px){.website-note > .wp-block-group__inner-container{grid-template-columns:1fr;gap:10px}}
@media(max-width:650px){.about-layout > .wp-block-group__inner-container{grid-template-columns:1fr;gap:25px}}
.brand-text{display:flex;flex-direction:column;align-items:flex-start;line-height:1.05}
.brand-text strong{font-size:1.14rem;letter-spacing:-.03em}
.brand-sub{margin-top:6px;color:#c7d9d4;font-size:.72rem;font-weight:550;letter-spacing:.015em;white-space:nowrap}
@media(max-width:520px){.nav{flex-wrap:wrap;padding:12px 0;gap:10px}.navlinks{margin-left:auto}.brand-sub{font-size:.7rem}}

/* Focus page for psychotherapist practices. */
.focus-page{background:var(--cream)}
.focus-hero{padding:94px 0 100px;background:radial-gradient(circle at 90% 20%,#24434a 0,#0d2730 42%);color:white}
.focus-hero .eyebrow,.focus-contact .eyebrow{color:var(--lime)}
.focus-hero h1{font-size:clamp(2.8rem,6.6vw,6rem);max-width:1050px}
.focus-hero .lead{max-width:760px}
.focus-actions{display:flex;align-items:center;flex-wrap:wrap;gap:24px;margin-top:34px}
.focus-text-link,.focus-phone{color:white;font-weight:700;text-underline-offset:5px}
.focus-location{margin:45px 0 0;color:#b8cdcb;font-size:.95rem}
.focus-section{padding:100px 0}
.focus-section h2,.focus-contact h2{font-size:clamp(2.5rem,5vw,4.5rem)}
.focus-offer{background:#eaf0eb}
.focus-intro{font-size:1.14rem;color:var(--muted);max-width:760px;margin-bottom:34px}
.focus-cards{display:block}
.focus-cards > .wp-block-group__inner-container{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:100%}
.focus-cards:not(:has(> .wp-block-group__inner-container)){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;width:100%}
.focus-card{background:white;border:1px solid #d9e2db;border-radius:24px;padding:32px;min-height:230px}
.focus-card .focus-number{color:#53806c;font-size:.8rem;font-weight:800;letter-spacing:.08em;margin-bottom:28px}
.focus-card h3{font-size:1.55rem;margin-bottom:14px}
.focus-card p:not(.focus-number){color:var(--muted);margin-bottom:0}
.focus-prices{padding:75px 0;background:var(--cream)}
.focus-prices h2{font-size:clamp(2.3rem,4.5vw,4rem);margin-bottom:30px}
.focus-price-list{background:white;border:1px solid var(--line);border-radius:22px;overflow:hidden}
.focus-price-row{padding:22px 28px;border-bottom:1px solid var(--line)}
.focus-price-row:last-child{border-bottom:0}
.focus-price-row p{display:flex;justify-content:space-between;align-items:baseline;gap:20px;max-width:none;margin:0}
.focus-price-row strong{font-size:1.12rem}
.focus-price-row span{font-weight:750;color:#285a4e;white-space:nowrap}
.focus-price-note{color:var(--muted);font-size:.94rem;margin:20px 0 0;max-width:850px}
@media(max-width:700px){.focus-prices{padding:60px 0}.focus-price-row p{display:block}.focus-price-row span{display:block;margin-top:5px;white-space:normal}}
.focus-way-grid{display:block}
.focus-way-grid > .wp-block-group__inner-container{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:80px;width:100%}
.focus-way-grid:not(:has(> .wp-block-group__inner-container)){display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:80px;width:100%}
.focus-way-copy p{font-size:1.1rem;color:#415e61}
.focus-way-copy h3{margin:26px 0 12px}
.focus-way-copy ul{padding-left:22px;color:#415e61}
.focus-way-copy li{margin:10px 0;line-height:1.55}
.focus-way-copy a{color:#285a4e;font-weight:700;text-underline-offset:4px}
.focus-contact{padding:95px 0 105px;background:var(--deep);color:white}
.focus-contact p{color:#cadcdb;font-size:1.1rem}
@media(max-width:800px){.focus-section{padding:75px 0}.focus-hero{padding:75px 0 85px}.focus-cards > .wp-block-group__inner-container,.focus-way-grid > .wp-block-group__inner-container{grid-template-columns:1fr;gap:18px}.focus-cards:not(:has(> .wp-block-group__inner-container)),.focus-way-grid:not(:has(> .wp-block-group__inner-container)){grid-template-columns:1fr;gap:18px}.focus-way-grid > .wp-block-group__inner-container{gap:25px}.focus-contact{padding:75px 0 85px}}
@media(max-width:480px){.focus-hero h1{font-size:2.8rem}.focus-card{padding:25px;min-height:0}.focus-actions{gap:20px}.focus-text-link,.focus-phone{display:block;width:100%}}
.focus-home-teaser{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:20px 0;padding:24px 30px;border-radius:20px;background:var(--deep);color:white}
.focus-home-teaser span{display:block;color:var(--lime);font-size:.77rem;font-weight:800;letter-spacing:.12em;text-transform:uppercase;margin-bottom:5px}
.focus-home-teaser strong{display:block;font-size:1.18rem;line-height:1.35}
.focus-home-teaser a{flex:none;color:var(--lime);font-weight:800;text-decoration:none}
.focus-home-teaser a:hover{text-decoration:underline;text-underline-offset:4px}
@media(max-width:700px){.focus-home-teaser{display:block;padding:24px}.focus-home-teaser a{display:inline-block;margin-top:18px}}
