:root{--ink:#142e2c;--green:#1d5f58;--deep:#0d2927;--sage:#dfe9df;--pale:#f2f4ec;--cream:#fbf7ef;--white:#fff;--coral:#e67962;--coral-dark:#ce604b;--sand:#ead9bb;--muted:#61716d;--line:#dce3dc;--shadow:0 24px 70px rgba(20,46,44,.12);--radius:22px;--shell:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:var(--cream);font:16px/1.65 'DM Sans',sans-serif}body.portal-open{background:#f4f6f2;overflow:hidden}button,input,select,textarea{font:inherit;color:inherit}button,a{transition:.2s ease}button{cursor:pointer}a{color:inherit;text-decoration:none}.shell{width:min(var(--shell),calc(100% - 48px));margin:auto}.utility{background:var(--deep);color:#dce9e6;font-size:.75rem}.utility-inner{min-height:34px;display:flex;align-items:center;justify-content:space-between}.utility-inner span:last-child{display:flex;align-items:center;gap:12px}.utility i{width:3px;height:3px;border-radius:50%;background:var(--coral)}
.site-header{position:sticky;top:0;z-index:20;background:rgba(251,247,239,.94);backdrop-filter:blur(14px);border-bottom:1px solid rgba(20,46,44,.08)}.nav-row{height:82px;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:12px;font-weight:700;line-height:1.05;letter-spacing:-.025em}.brand>span:last-child{display:flex;flex-direction:column}.brand small{font-size:.62rem;color:var(--muted);letter-spacing:.16em;text-transform:uppercase;margin-top:5px}.brand-mark{width:40px;height:40px;border-radius:14px 14px 14px 4px;background:var(--green);display:flex;align-items:flex-end;justify-content:center;gap:3px;padding:10px}.brand-mark b{width:4px;background:#fff;border-radius:5px;transform:rotate(26deg);display:block}.brand-mark b:nth-child(1){height:10px}.brand-mark b:nth-child(2){height:17px}.brand-mark b:nth-child(3){height:24px}.main-nav{display:flex;gap:29px;color:#52645f;font-size:.9rem}.main-nav a:hover{color:var(--coral)}.nav-actions,.button-row{display:flex;align-items:center;gap:12px}.text-button{border:0;background:transparent;font-weight:700;color:var(--green)}.button{border:1px solid transparent;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;gap:12px;padding:13px 21px;font-weight:700;line-height:1.2}.button:hover{transform:translateY(-2px)}.button-coral{background:var(--coral);color:#fff}.button-coral:hover{background:var(--coral-dark);box-shadow:0 12px 28px rgba(206,96,75,.22)}.button-light{background:transparent;border-color:rgba(20,46,44,.22)}.button-light:hover{background:#fff;border-color:var(--green)}.button-dark{background:var(--ink);color:#fff}.button-dark:hover{background:var(--green)}.button-cream{background:var(--cream);color:var(--ink)}.full{width:100%}.menu-button{display:none;border:0;background:transparent;width:40px;height:40px;padding:9px}.menu-button span{display:block;height:2px;background:var(--ink);margin:7px 0}
.hero{background:var(--pale);overflow:hidden;padding:82px 0 88px}.hero-grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:66px}.kicker,.portal-kicker{margin:0 0 16px;color:var(--coral);text-transform:uppercase;letter-spacing:.16em;font-size:.72rem;font-weight:700}.kicker.light{color:#f2aa99}.hero h1,.section h2,.closing-cta h2{font:600 clamp(3.2rem,6.1vw,5.9rem)/.96 'Fraunces',serif;letter-spacing:-.055em;margin:0}.hero h1 em{font-style:italic;color:var(--coral)}.hero .lede{font-size:1.12rem;color:var(--muted);max-width:560px;margin:27px 0 30px}.trust-line{display:flex;align-items:center;gap:12px;margin-top:30px}.trust-line>span:last-child{display:flex;flex-direction:column}.trust-line strong{font-size:.9rem}.trust-line small{font-size:.78rem;color:var(--muted)}.avatar-mini,.large-avatar{display:grid;place-items:center;border-radius:50%;background:var(--green);color:#fff;font-weight:700}.avatar-mini{width:38px;height:38px;font-size:.72rem}.hero-media{position:relative;height:560px}.hero-media>img{width:100%;height:100%;object-fit:cover;object-position:center;border-radius:180px 24px 24px 24px;box-shadow:var(--shadow)}.quote-float{position:absolute;left:-55px;bottom:25px;width:300px;background:#fff;padding:22px 23px 20px 52px;border-radius:5px 18px 18px 18px;box-shadow:0 18px 50px rgba(20,46,44,.16)}.quote-float>span{position:absolute;left:20px;top:13px;color:var(--coral);font:600 2.8rem 'Fraunces',serif}.quote-float p{font:500 1.02rem/1.45 'Fraunces',serif;margin:0}.availability{position:absolute;right:-24px;top:35px;background:#fff;padding:13px 18px;border-radius:14px;box-shadow:0 12px 35px rgba(20,46,44,.15);display:flex;align-items:center;gap:11px}.availability div{display:flex;flex-direction:column}.availability strong{font-size:.78rem}.availability small{font-size:.7rem;color:var(--muted)}.pulse{width:10px;height:10px;border-radius:50%;background:#5aa676;box-shadow:0 0 0 5px #e4f1e7}
.service-strip{background:var(--green);color:#fff}.strip-grid{min-height:72px;display:grid;grid-template-columns:repeat(5,1fr);align-items:center;text-align:center}.strip-grid span{font-size:.82rem;font-weight:600;border-right:1px solid rgba(255,255,255,.18)}.strip-grid span:last-child{border:0}.section{padding:110px 0}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:60px;margin-bottom:52px}.section-heading>div{max-width:680px}.section-heading h2{font-size:clamp(2.6rem,5vw,4.6rem)}.section-heading>p{max-width:410px;color:var(--muted);margin:0}.service-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.service-card{position:relative;min-height:500px;padding:31px;display:flex;flex-direction:column;border-radius:var(--radius);overflow:hidden}.coral-card{background:#f3c9be}.green-card{background:var(--green);color:#fff}.sand-card{background:var(--sand)}.card-number{font-size:.75rem;font-weight:700;letter-spacing:.14em;opacity:.65}.line-icon{width:64px;height:64px;margin:42px 0 50px;border:1px solid currentColor;border-radius:50%;display:grid;place-items:center;font-size:1.6rem}.service-card h3{font:600 2rem/1.08 'Fraunces',serif;margin:0 0 16px}.service-card p{font-size:.92rem;margin:0 0 18px;opacity:.82}.service-card ul{padding:0;margin:0 0 26px;list-style:none;font-size:.82rem;opacity:.83}.service-card li{padding:7px 0;border-bottom:1px solid rgba(20,46,44,.16)}.green-card li{border-color:rgba(255,255,255,.18)}.card-link{margin-top:auto;padding:15px 0 0;border:0;border-top:1px solid currentColor;background:transparent;display:flex;justify-content:space-between;font-weight:700;text-align:left}.card-link:hover{padding-left:5px}
.approach-section{background:#fff}.approach-grid{display:grid;grid-template-columns:.88fr 1.12fr;gap:90px;align-items:center}.approach-visual{min-height:600px;position:relative}.portrait-placeholder{position:absolute;inset:0 55px 30px 0;border-radius:24px;background:linear-gradient(145deg,rgba(13,41,39,.42),rgba(13,41,39,.88)),url('assets/coaching-hero.png') center/cover;display:flex;flex-direction:column;justify-content:end;padding:42px;color:#fff}.portrait-placeholder span{font-size:.75rem;letter-spacing:.28em}.portrait-placeholder strong{font:600 2.9rem/1 'Fraunces',serif}.portrait-placeholder small{margin-top:13px;color:#d8e5e0}.experience-badge{position:absolute;right:0;bottom:0;width:190px;background:var(--coral);color:#fff;padding:22px;border-radius:18px;box-shadow:var(--shadow)}.experience-badge b{font:600 3.2rem/1 'Fraunces',serif;display:block}.experience-badge span{font-size:.72rem;line-height:1.35;display:block}.approach-copy h2{font-size:clamp(2.6rem,4.7vw,4.45rem)}.large-copy{font-size:1.08rem;color:var(--muted)}.principles{margin:32px 0}.principles>div{display:grid;grid-template-columns:48px 1fr;gap:13px;padding:18px 0;border-top:1px solid var(--line)}.principles>div:last-child{border-bottom:1px solid var(--line)}.principles span{color:var(--coral);font-size:.75rem;font-weight:700}.principles p{margin:0;color:var(--muted)}.principles strong{display:block;color:var(--ink);font-size:.95rem}.nlp-section{background:var(--deep);color:#fff}.nlp-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.nlp-section h2{font-size:clamp(2.7rem,5vw,4.65rem)}.nlp-copy{padding-top:34px;color:#bfd0cb;font-size:1.05rem}.nlp-copy a{display:inline-flex;gap:10px;color:#fff;font-weight:700;margin-top:16px;border-bottom:1px solid #829d96;padding-bottom:6px}
.portal-promo{background:var(--sage)}.portal-promo-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px;align-items:center}.portal-promo h2{font-size:clamp(2.7rem,5vw,4.5rem)}.portal-promo p{color:var(--muted);max-width:600px}.feature-pills{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0 30px}.feature-pills span{border:1px solid #b6c6b6;border-radius:999px;background:rgba(255,255,255,.4);padding:8px 14px;font-size:.78rem;font-weight:600}.portal-preview{background:#f8faf7;border:8px solid #fff;border-radius:24px;box-shadow:0 30px 70px rgba(20,46,44,.18);padding:28px;transform:rotate(1.3deg)}.preview-top{display:flex;align-items:center;gap:11px;padding-bottom:26px;border-bottom:1px solid var(--line);font-weight:700}.preview-logo{width:36px;height:36px;border-radius:11px;background:var(--green);color:#fff;display:grid;place-items:center;font-size:.76rem;font-weight:700}.preview-top i{margin-left:auto;width:32px;height:32px;background:#e5ece5;border-radius:50%}.mini-label{font-size:.66rem!important;letter-spacing:.15em;color:#7b8c87!important;font-weight:700;margin:24px 0 11px!important}.preview-session{background:var(--green);color:#fff;padding:18px;border-radius:15px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px}.date-tile{width:54px;height:54px;background:#fff;color:var(--ink);border-radius:11px;display:grid;place-items:center;line-height:1}.date-tile b{font-size:1.2rem;margin-top:8px}.date-tile small{font-size:.55rem;margin-bottom:8px}.preview-session>div:nth-child(2){display:flex;flex-direction:column}.preview-session span{font-size:.68rem;color:#cfe0db}.preview-columns{display:grid;grid-template-columns:1fr 1fr;gap:12px}.preview-columns>div{background:#fff;padding:17px;border-radius:14px}.preview-columns strong,.preview-columns span{display:block}.preview-columns strong{font-size:.84rem}.preview-columns span{font-size:.7rem;color:var(--muted);margin-top:7px}.progress{height:6px;background:#e7ece7;border-radius:99px;margin-top:14px}.progress i{display:block;width:68%;height:100%;border-radius:99px;background:var(--coral)}
.about-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:90px;align-items:center}.about-grid h2{font-size:clamp(2.65rem,5vw,4.7rem)}.about-grid>div>p:not(.kicker){color:var(--muted)}.about-quote{min-height:500px;background:var(--coral);color:#fff;border-radius:220px 220px 22px 22px;padding:85px 55px 55px;display:flex;flex-direction:column;justify-content:center}.about-quote>span{font:600 4rem/1 'Fraunces',serif}.about-quote blockquote{font:500 2.25rem/1.2 'Fraunces',serif;margin:15px 0 45px}.about-quote small{letter-spacing:.13em}.retreat-section{background:linear-gradient(120deg,rgba(13,41,39,.96),rgba(29,95,88,.92)),url('assets/coaching-hero.png') center/cover;color:#fff}.retreat-grid{display:grid;grid-template-columns:1fr .8fr;gap:100px;align-items:center}.retreat-grid h2{font-size:clamp(2.7rem,5vw,4.7rem)}.retreat-grid>div:first-child>p:not(.kicker){color:#c7d7d2;max-width:580px;margin-bottom:28px}.retreat-points>div{display:grid;grid-template-columns:50px 1fr;gap:16px;padding:24px 0;border-top:1px solid rgba(255,255,255,.18)}.retreat-points>div:last-child{border-bottom:1px solid rgba(255,255,255,.18)}.retreat-points span{color:#f2aa99;font-weight:700}.retreat-points p{margin:0;color:#c7d7d2}.retreat-points strong{display:block;color:#fff}.faq-section{background:#fff}.faq-grid{display:grid;grid-template-columns:.68fr 1.32fr;gap:110px}.faq-grid h2{font-size:clamp(2.7rem,5vw,4.4rem)}.faq-grid>div:first-child>p:last-child{color:var(--muted)}.accordion details{border-top:1px solid var(--line);padding:23px 0}.accordion details:last-child{border-bottom:1px solid var(--line)}.accordion summary{list-style:none;cursor:pointer;font-weight:700;display:flex;justify-content:space-between;gap:20px}.accordion summary::-webkit-details-marker{display:none}.accordion summary span{font-size:1.4rem;color:var(--coral)}.accordion details[open] summary span{transform:rotate(45deg)}.accordion details p{color:var(--muted);max-width:680px;margin:13px 0 3px}.closing-cta{background:var(--green);color:#fff;padding:90px 0}.closing-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:80px;align-items:end}.closing-cta h2{font-size:clamp(2.8rem,5.5vw,5.1rem)}.closing-grid>div:last-child p{color:#cfe0db;margin:0 0 23px}footer{background:#0a2220;color:#c2d0cc;padding:75px 0 25px}.footer-grid{display:grid;grid-template-columns:2fr .7fr 1.15fr .85fr;gap:55px}.footer-grid>div{display:flex;flex-direction:column;align-items:flex-start;gap:8px}.footer-grid>div:first-child p{max-width:330px;font-size:.86rem}.footer-brand{color:#fff;margin-bottom:16px}.footer-grid h4{color:#fff;margin:0 0 15px;font-size:.82rem}.footer-grid a,.footer-grid span{font-size:.8rem}.footer-grid a:hover{color:#fff}.footer-bottom{border-top:1px solid rgba(255,255,255,.12);margin-top:55px;padding-top:22px;display:flex;justify-content:space-between;gap:50px;font-size:.68rem;color:#7f9992}.footer-bottom span:last-child{max-width:720px;text-align:right}
/* Portal */
.portal{position:fixed;inset:0;z-index:100;background:#f4f6f2;display:grid;grid-template-columns:250px 1fr}.portal[hidden]{display:none}.provider-mode .client-only{display:none!important}body:not(.provider-mode) .provider-only{display:none!important}.portal-sidebar{background:var(--deep);color:#fff;padding:28px 18px;display:flex;flex-direction:column;min-height:100vh}.portal-brand{display:flex;align-items:center;gap:11px;padding:0 9px 29px;border-bottom:1px solid rgba(255,255,255,.1);font-weight:700}.portal-brand>span:nth-child(2){display:flex;flex-direction:column}.portal-brand small{font-size:.6rem;color:#9bb1ab;letter-spacing:.12em;text-transform:uppercase}.portal-nav{display:flex;flex-direction:column;gap:5px;padding-top:24px}.portal-nav button{border:0;background:transparent;color:#adc1bc;border-radius:10px;padding:11px 13px;display:flex;align-items:center;gap:13px;text-align:left;font-size:.87rem;font-weight:600}.portal-nav button span{width:20px;text-align:center}.portal-nav button:hover,.portal-nav button.active{background:rgba(255,255,255,.1);color:#fff}.portal-help{margin-top:auto;background:rgba(255,255,255,.07);border-radius:12px;padding:13px;display:flex;gap:11px}.portal-help>span{width:26px;height:26px;flex:0 0 auto;border-radius:50%;background:var(--coral);display:grid;place-items:center;font-weight:700}.portal-help p{margin:0;display:flex;flex-direction:column;font-size:.72rem}.portal-help a{color:#a8bcb7}.logout{border:0;background:transparent;color:#93aba5;padding:18px 10px 0;text-align:left;font-size:.8rem}.portal-main{height:100vh;overflow:auto}.portal-topbar{height:98px;background:#fff;border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:0 38px}.portal-topbar>div:first-of-type{margin-right:auto}.portal-topbar p{margin:0 0 3px;font-size:.63rem;color:var(--coral);letter-spacing:.15em;font-weight:700}.portal-topbar h1{font:600 1.55rem/1.1 'Fraunces',serif;margin:0}.portal-menu{display:none}.account-chip{display:flex;align-items:center;gap:10px}.account-chip>span{width:37px;height:37px;border-radius:50%;background:#deebe1;display:grid;place-items:center;color:var(--green);font-size:.72rem;font-weight:700}.account-chip>div{display:flex;flex-direction:column}.account-chip strong{font-size:.78rem}.account-chip small{font-size:.65rem;color:var(--muted)}.account-chip button{border:0;background:transparent}.portal-content{padding:34px 38px 60px}.portal-page{display:none}.portal-page.active{display:block}.portal-page h2{font:600 clamp(2rem,3vw,3rem)/1 'Fraunces',serif;margin:0 0 8px}.page-head{display:flex;justify-content:space-between;gap:30px;align-items:end;margin-bottom:28px}.page-head p:not(.portal-kicker){color:var(--muted);margin:0}.page-head .portal-kicker{margin-bottom:7px}.overview-head{display:flex;justify-content:space-between;align-items:end;margin-bottom:24px}.overview-head h2{font:600 2rem 'Fraunces',serif;margin:0}.overview-head p{color:var(--muted);margin:4px 0 0}.dashboard-grid{display:grid;grid-template-columns:1.35fr .65fr;gap:18px}.dashboard-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}.next-card{background:var(--green);color:#fff;display:grid;grid-template-columns:76px 1fr auto;align-items:center;gap:18px}.big-date{width:76px;height:82px;border-radius:12px;background:#fff;color:var(--ink);display:grid;place-items:center;line-height:1}.big-date b{font:600 2rem 'Fraunces',serif;margin-top:15px}.big-date small{font-size:.62rem;margin-bottom:14px}.next-card h3{font:600 1.35rem 'Fraunces',serif;margin:0 0 6px}.next-card p{margin:0;color:#cfe0db;font-size:.78rem}.next-actions{display:flex;flex-direction:column;gap:7px}.small-button{border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;border-radius:999px;padding:8px 12px;font-size:.7rem;font-weight:700}.small-button.filled{background:#fff;color:var(--green)}.small-button:hover{background:rgba(255,255,255,.12)}.small-button.filled:hover{background:#eef4ef}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:18px 0}.stat-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:18px}.stat-card span{font-size:.68rem;color:var(--muted);text-transform:uppercase;letter-spacing:.1em}.stat-card b{display:block;font:600 1.8rem 'Fraunces',serif;margin-top:7px}.activity-card h3,.dashboard-card h3{font:600 1.15rem 'Fraunces',serif;margin:0 0 16px}.activity-item{display:flex;gap:12px;padding:13px 0;border-top:1px solid var(--line)}.activity-item>span{width:34px;height:34px;border-radius:9px;background:#eef3ee;display:grid;place-items:center}.activity-item p{margin:0;font-size:.78rem}.activity-item small{display:block;color:var(--muted)}.care-card{background:#f3c9be}.care-card h3{font-size:1.4rem}.care-card p{font-size:.8rem}.crisis-note{margin-top:18px;font-size:.66rem;color:var(--muted);line-height:1.5}.appointment-group-title{font-size:.72rem;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);margin:27px 0 10px}.appointment-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:18px;margin-bottom:10px;display:grid;grid-template-columns:62px 1fr auto;gap:17px;align-items:center}.appointment-date{width:62px;height:62px;background:#edf3ed;border-radius:11px;display:grid;place-items:center;line-height:1}.appointment-date b{font:600 1.4rem 'Fraunces',serif;margin-top:9px}.appointment-date small{font-size:.58rem;margin-bottom:10px;color:var(--muted)}.appointment-card h3{font-size:.96rem;margin:0 0 3px}.appointment-card p{font-size:.75rem;color:var(--muted);margin:0}.status{display:inline-flex;margin-top:6px;padding:3px 8px;border-radius:999px;background:#e3f1e7;color:#347252;font-size:.62rem;font-weight:700}.appointment-actions{display:flex;gap:7px}.appointment-actions button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:8px 11px;font-size:.68rem;font-weight:700}.appointment-actions button:hover{border-color:var(--green)}.notes-layout{display:grid;grid-template-columns:1fr .65fr;gap:18px}.note-card{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px;margin-bottom:10px}.note-card header{display:flex;justify-content:space-between;gap:15px}.note-card h3{font-size:.92rem;margin:0}.note-card p{font-size:.78rem;color:var(--muted);margin:10px 0}.note-card small{font-size:.64rem;color:#83918d}.note-share{padding:4px 8px;border-radius:999px;background:#edf3ed;font-size:.6rem!important;color:var(--green)!important}.shared-summary{background:var(--green);color:#fff;border-radius:16px;padding:25px;align-self:start}.summary-icon{width:40px;height:40px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.12)}.shared-summary .mini-label{color:#afc7c1!important}.shared-summary h3{font:600 1.5rem 'Fraunces',serif;margin:0}.shared-summary p:not(.mini-label){color:#d6e3df;font-size:.82rem}.shared-summary small{color:#9eb9b2;font-size:.66rem}.resource-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.resource-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:20px;min-height:210px;display:flex;flex-direction:column}.resource-icon{width:43px;height:43px;border-radius:12px;background:#f2d9d2;color:var(--coral-dark);display:grid;place-items:center;font-weight:700}.resource-card h3{font:600 1.05rem/1.2 'Fraunces',serif;margin:25px 0 8px}.resource-card p{font-size:.73rem;color:var(--muted);margin:0}.resource-card a,.resource-card button{margin-top:auto;border:0;background:transparent;text-align:left;color:var(--green);font-size:.72rem;font-weight:700;padding:16px 0 0}.resource-meta{font-size:.62rem;color:#86948f;margin-top:7px}.client-table{background:#fff;border:1px solid var(--line);border-radius:15px;overflow:hidden}.client-row{display:grid;grid-template-columns:1.4fr 1fr 1fr .7fr auto;align-items:center;gap:15px;padding:15px 18px;border-bottom:1px solid var(--line);font-size:.75rem}.client-row:last-child{border:0}.client-row.header{background:#f7f9f6;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.6rem;font-weight:700}.client-name{display:flex;align-items:center;gap:10px}.client-name span{width:33px;height:33px;border-radius:50%;background:#deebe1;display:grid;place-items:center;color:var(--green);font-weight:700}.client-row button{border:0;background:transparent;font-weight:700;color:var(--green)}.profile-form{background:#fff;border:1px solid var(--line);border-radius:16px;padding:26px}.profile-identity{display:flex;align-items:center;gap:15px;padding-bottom:24px;border-bottom:1px solid var(--line);margin-bottom:24px}.large-avatar{width:60px;height:60px}.profile-identity h3{margin:0;font:600 1.35rem 'Fraunces',serif}.profile-identity p{margin:3px 0 0;color:var(--muted);font-size:.76rem}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:17px}.form-grid .wide{grid-column:1/-1}.profile-form label,.dialog label{display:flex;flex-direction:column;gap:6px;font-size:.75rem;font-weight:700}.profile-form input,.profile-form select,.profile-form textarea,.dialog input,.dialog select,.dialog textarea{width:100%;border:1px solid #ccd7d0;border-radius:10px;background:#fff;padding:11px 12px;outline:none}.profile-form textarea,.dialog textarea{min-height:100px;resize:vertical}.profile-form input:focus,.profile-form select:focus,.profile-form textarea:focus,.dialog input:focus,.dialog select:focus,.dialog textarea:focus{border-color:var(--green);box-shadow:0 0 0 3px rgba(29,95,88,.1)}.form-actions{margin-top:22px}.provider-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:18px}.provider-schedule{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}.schedule-row{display:grid;grid-template-columns:80px 1fr auto;gap:15px;padding:15px 0;border-top:1px solid var(--line);align-items:center}.schedule-row>span{font-weight:700;color:var(--green)}.schedule-row h4{margin:0;font-size:.85rem}.schedule-row p{margin:2px 0 0;color:var(--muted);font-size:.7rem}.schedule-row button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:7px 10px;font-size:.66rem;font-weight:700}
/* dialogs */
.dialog{border:0;border-radius:22px;padding:34px;width:min(510px,calc(100% - 28px));box-shadow:0 30px 90px rgba(13,41,39,.28);background:var(--cream);max-height:90vh;overflow:auto}.booking-dialog{width:min(680px,calc(100% - 28px))}.compact-dialog{width:min(470px,calc(100% - 28px))}.dialog::backdrop{background:rgba(7,29,27,.64);backdrop-filter:blur(5px)}.dialog-close{position:absolute;top:17px;right:18px;width:34px;height:34px;border:0;border-radius:50%;background:#e9ede8;font-size:1.25rem}.dialog-copy{padding-right:30px;margin-bottom:24px}.dialog-copy h2{font:600 2.15rem/1.05 'Fraunces',serif;margin:0}.dialog-copy>p:not(.kicker){color:var(--muted);font-size:.85rem}.dialog form{display:flex;flex-direction:column;gap:15px}.dialog fieldset{border:1px solid var(--line);border-radius:11px;padding:12px;display:flex;gap:18px}.dialog legend{font-size:.7rem;font-weight:700;padding:0 6px}.dialog fieldset label,.check-row{flex-direction:row;align-items:center}.dialog fieldset input,.check-row input{width:auto}.optional{color:var(--muted);font-weight:400}.form-note{text-align:center;color:var(--muted);font-size:.65rem}.toast{position:fixed;z-index:200;right:24px;bottom:24px;max-width:360px;background:var(--deep);color:#fff;padding:13px 18px;border-radius:12px;box-shadow:var(--shadow);transform:translateY(30px);opacity:0;pointer-events:none;font-size:.8rem}.toast.show{transform:none;opacity:1}
@media(max-width:1000px){.main-nav{display:none}.hero-grid{grid-template-columns:1fr 1fr;gap:35px}.hero-media{height:500px}.service-grid{grid-template-columns:1fr}.service-card{min-height:auto}.line-icon{margin:30px 0}.approach-grid,.portal-promo-grid,.about-grid{gap:45px}.portal{grid-template-columns:210px 1fr}.resource-grid{grid-template-columns:1fr 1fr}.dashboard-grid{grid-template-columns:1fr}.provider-stats{grid-template-columns:1fr 1fr}}
@media(max-width:760px){.shell{width:min(var(--shell),calc(100% - 30px))}.utility{display:none}.nav-row{height:72px}.nav-actions{display:none}.menu-button{display:block}.main-nav.mobile-open{display:flex;position:absolute;left:0;right:0;top:72px;background:var(--cream);padding:18px 25px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}.hero{padding:55px 0 60px}.hero-grid,.approach-grid,.portal-promo-grid,.about-grid,.nlp-grid,.retreat-grid,.faq-grid,.closing-grid{grid-template-columns:1fr;gap:42px}.hero h1{font-size:3.45rem}.hero-media{height:430px}.quote-float{left:10px;bottom:-22px;width:260px}.availability{right:8px}.strip-grid{grid-template-columns:1fr 1fr;gap:0;padding:10px 0}.strip-grid span{padding:10px;border:0}.section{padding:78px 0}.section-heading{display:block}.section-heading>p{margin-top:20px}.approach-visual{min-height:490px}.approach-grid{gap:65px}.nlp-grid{gap:15px}.portal-preview{padding:17px}.preview-columns{grid-template-columns:1fr}.about-quote{min-height:420px;padding:70px 38px 40px}.footer-grid{grid-template-columns:1fr 1fr}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{display:block}.footer-bottom span{display:block;text-align:left!important;margin-top:8px}.portal{grid-template-columns:1fr}.portal-sidebar{position:absolute;z-index:3;width:250px;transform:translateX(-100%);transition:.2s}.portal-sidebar.open{transform:none}.portal-topbar{height:82px;padding:0 18px}.portal-menu{display:block;border:0;background:transparent;font-size:1.2rem;margin-right:12px}.portal-topbar h1{font-size:1.2rem}.account-chip>div,.account-chip>button{display:none}.portal-content{padding:24px 16px 45px}.page-head{display:block}.page-head>.button{margin-top:16px}.next-card{grid-template-columns:62px 1fr}.next-actions{grid-column:1/-1;flex-direction:row}.stat-row,.provider-stats{grid-template-columns:1fr 1fr}.notes-layout,.resource-grid{grid-template-columns:1fr}.appointment-card{grid-template-columns:54px 1fr}.appointment-actions{grid-column:1/-1}.client-row{grid-template-columns:1fr auto}.client-row>*:not(.client-name):not(button){display:none}.client-row.header{display:none}.form-grid{grid-template-columns:1fr}.form-grid .wide{grid-column:auto}.dialog{padding:28px 22px}.dialog .form-grid{grid-template-columns:1fr}.dialog .form-grid .wide{grid-column:auto}}
@media(max-width:440px){.brand{font-size:.85rem}.hero h1{font-size:2.95rem}.hero-media{height:380px}.button-row{align-items:stretch;flex-direction:column}.button-row .button{width:100%}.section-heading h2,.approach-copy h2,.portal-promo h2,.about-grid h2,.faq-grid h2{font-size:2.65rem}.footer-grid{grid-template-columns:1fr}.stat-row{grid-template-columns:1fr}.portal-topbar>div:first-of-type{display:none}.provider-stats{grid-template-columns:1fr 1fr}}

/* Authentic brand assets */
.nav-row{height:88px}.brand-logo-wrap{width:62px;height:62px;border-radius:50%;background:#050505;display:grid;place-items:center;overflow:hidden;flex:0 0 auto}.brand-logo-wrap img{width:100%;height:100%;object-fit:contain}.footer-brand .brand-logo-wrap{width:76px;height:76px}.portal-sidebar{padding-top:20px}.portal-brand{padding-bottom:19px}.portal-logo-wrap{width:56px;height:56px;border-radius:50%;overflow:hidden;background:#050505;display:grid;place-items:center;flex:0 0 auto}.portal-logo-wrap img{width:100%;height:100%;object-fit:contain}
.about-photo{position:relative;min-height:650px;border-radius:220px 220px 22px 22px;overflow:hidden;background:var(--sage);box-shadow:var(--shadow)}.about-photo>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center 25%}.about-photo .about-quote{position:absolute;left:20px;right:20px;bottom:20px;min-height:0;background:rgba(13,41,39,.92);backdrop-filter:blur(7px);color:#fff;border-radius:18px;padding:24px 28px;display:block}.about-photo .about-quote>span{position:absolute;right:24px;top:8px;color:var(--coral);font:600 3.5rem/1 'Fraunces',serif}.about-photo .about-quote blockquote{max-width:330px;font:500 1.4rem/1.25 'Fraunces',serif;margin:0 0 17px}.about-photo .about-quote small{letter-spacing:.13em;font-size:.64rem}
@media(max-width:760px){.nav-row{height:78px}.brand-logo-wrap{width:54px;height:54px}.about-photo{min-height:600px}.about-photo .about-quote{left:14px;right:14px;bottom:14px;padding:22px}.about-photo .about-quote blockquote{font-size:1.25rem}}

/* Client records, changes and billing */
.record-guidance{display:flex;align-items:flex-start;gap:13px;background:#eef4ef;border:1px solid #d7e3d9;border-radius:14px;padding:16px 18px;margin:-6px 0 18px}.record-guidance>span{width:28px;height:28px;flex:0 0 auto;border-radius:50%;background:var(--green);color:#fff;display:grid;place-items:center;font:700 .75rem 'DM Sans',sans-serif}.record-guidance p{margin:2px 0 0;color:var(--muted);font-size:.75rem}.record-guidance strong{color:var(--ink)}
.session-records{display:flex;flex-direction:column;gap:11px}.session-record-card{display:grid;grid-template-columns:74px 1fr auto;gap:20px;align-items:center;background:#fff;border:1px solid var(--line);border-radius:16px;padding:20px}.session-record-date{width:74px;height:82px;border-radius:13px;background:#edf3ed;display:flex;flex-direction:column;align-items:center;justify-content:center;line-height:1}.session-record-date b{font:600 1.65rem 'Fraunces',serif}.session-record-date span{font-size:.59rem;letter-spacing:.09em;color:var(--green);font-weight:700;margin:3px 0 7px}.session-record-date small{font-size:.62rem;color:var(--muted)}.record-meta{display:flex;flex-wrap:wrap;gap:6px}.record-meta span{padding:4px 8px;background:#f2f5f1;border-radius:99px;color:var(--muted);font-size:.59rem;font-weight:700}.session-record-copy h3{font:600 1.08rem 'Fraunces',serif;margin:9px 0 4px}.session-record-copy>p{margin:0;color:var(--muted);font-size:.7rem}.record-availability{display:flex;gap:12px;margin-top:12px;font-size:.65rem;font-weight:700}.record-availability .available{color:#347252}.record-availability .unavailable{color:#8b9794}.record-actions{display:flex;flex-direction:column;gap:8px;min-width:155px}.record-actions button,.invoice-row button{border:1px solid var(--line);background:#fff;border-radius:999px;padding:9px 12px;color:var(--green);font-size:.68rem;font-weight:700}.record-actions button:hover,.invoice-row button:hover{border-color:var(--green);background:#f5f8f5}.record-actions button span,.invoice-row button span{margin-left:5px}
.policy-card{display:grid;grid-template-columns:1.05fr .95fr;gap:42px;background:var(--green);color:#fff;border-radius:18px;padding:28px 30px;margin-bottom:30px}.policy-card h3{font:600 1.65rem/1.15 'Fraunces',serif;margin:0 0 10px}.policy-card p:not(.mini-label){color:#d4e3df;font-size:.8rem;margin:0}.policy-card .mini-label{color:#efa692}.policy-card ul{margin:4px 0;padding-left:20px;color:#d4e3df;font-size:.75rem}.policy-card li{padding:0 0 10px 5px}.section-subhead{display:flex;align-items:end;justify-content:space-between;margin-bottom:12px}.section-subhead h3{font:600 1.28rem 'Fraunces',serif;margin:0}.section-subhead .portal-kicker{margin-bottom:3px}.change-request-list{display:flex;flex-direction:column;gap:10px}.change-request-card{display:grid;grid-template-columns:42px 1fr;gap:14px;background:#fff;border:1px solid var(--line);border-radius:14px;padding:17px}.request-icon{width:38px;height:38px;border-radius:11px;background:#f2d9d2;color:var(--coral-dark);display:grid;place-items:center;font-weight:700}.request-title{display:flex;justify-content:space-between;gap:15px;align-items:center}.request-title h3{font-size:.88rem;margin:0}.change-request-card p{margin:4px 0;color:var(--muted);font-size:.73rem}.change-request-card small{display:block;color:#82908c;font-size:.63rem;margin-top:4px}.policy-check{line-height:1.35;font-weight:500!important}.policy-check input{align-self:flex-start;margin-top:2px}.dialog button:disabled{opacity:.5;cursor:not-allowed}
.invoice-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.invoice-stat{background:#fff;border:1px solid var(--line);border-radius:14px;padding:19px}.invoice-stat>span{display:block;color:var(--muted);font-size:.65rem;text-transform:uppercase;letter-spacing:.09em;font-weight:700}.invoice-stat strong{display:block;font:600 1.55rem 'Fraunces',serif;margin:7px 0 2px}.invoice-stat small{color:#7f8e89;font-size:.64rem}.invoice-panel{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.invoice-row{display:grid;grid-template-columns:.9fr 1.45fr .95fr 1fr auto;gap:18px;align-items:center;padding:17px 20px;border-top:1px solid var(--line);font-size:.72rem}.invoice-row:first-child{border-top:0}.invoice-row>span{min-width:0}.invoice-row strong{font-size:.74rem}.invoice-row small{display:block;color:var(--muted);font-size:.61rem;margin-top:3px}.invoice-row .payment-status{display:inline-block;background:#e3f1e7;color:#347252;border-radius:99px;padding:3px 7px;font-weight:700}.invoice-header{background:#f7f9f6;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;font-size:.58rem;font-weight:700;padding-top:12px;padding-bottom:12px}.invoice-header span:last-of-type{grid-column:auto}.empty-state{background:#fff;border:1px dashed #cbd6cf;border-radius:16px;padding:45px 22px;text-align:center}.empty-state>span{width:44px;height:44px;border-radius:50%;background:#edf3ed;color:var(--green);display:grid;place-items:center;margin:0 auto 12px;font-weight:700}.empty-state h3{font:600 1.15rem 'Fraunces',serif;margin:0}.empty-state p{color:var(--muted);font-size:.74rem;margin:7px auto 0;max-width:430px}.compact-empty{padding:32px 20px}
@media(max-width:1000px){.session-record-card{grid-template-columns:68px 1fr}.record-actions{grid-column:2/-1;flex-direction:row}.policy-card{gap:25px}.invoice-row{grid-template-columns:.9fr 1.25fr .9fr 1fr auto;gap:10px;padding-left:15px;padding-right:15px}}
@media(max-width:760px){.session-record-card{grid-template-columns:58px 1fr;padding:16px;gap:14px}.session-record-date{width:58px;height:72px}.record-actions{grid-column:1/-1;flex-direction:column}.record-actions button{width:100%}.record-availability{flex-direction:column;gap:4px}.policy-card{grid-template-columns:1fr;gap:22px;padding:23px 21px}.invoice-summary{grid-template-columns:1fr}.invoice-header{display:none}.invoice-row{grid-template-columns:1fr auto;gap:8px 15px;padding:18px}.invoice-row>span{grid-column:1/-1}.invoice-row>span:nth-child(4){grid-column:1}.invoice-row>button{grid-column:2;align-self:end}.request-title{align-items:flex-start;flex-direction:column;gap:6px}}
.field-muted{opacity:.48}.field-muted input{cursor:not-allowed;background:#eef1ed}.dialog label.check-row{flex-direction:row;align-items:flex-start;gap:10px}.dialog label.check-row input{flex:0 0 auto;margin-top:2px}

/* Keep the hero subject visible and use the open wall for overlays. */
.hero-media>img{object-position:20% center}.quote-float{left:auto;right:-32px}
@media(max-width:760px){.hero-media>img{object-position:18% center}.quote-float{left:auto;right:10px}}

/* Give the approach section its own calm, conversational image. */
.portrait-placeholder{background-image:linear-gradient(180deg,rgba(13,41,39,.16) 10%,rgba(13,41,39,.78) 88%),url('assets/therapy-conversation.jpg');background-position:center 38%}.portrait-placeholder strong{font-size:2.35rem}
@media(max-width:760px){.approach-visual{min-height:535px}.portrait-placeholder{inset:0 28px 30px 0;padding:30px 22px}.portrait-placeholder strong{font-size:2.15rem}.experience-badge{top:20px;bottom:auto;width:155px;padding:18px}.experience-badge b{font-size:2.6rem}}

/* Inline SVG icon system: monochrome vectors that remain consistent on iOS. */
.icon-sprite{position:absolute;width:0;height:0;overflow:hidden;pointer-events:none}.ui-icon{width:1em;height:1em;display:inline-block;flex:0 0 auto;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.button>.ui-icon,.card-link>.ui-icon,.nlp-copy a>.ui-icon{width:17px;height:17px}.line-icon>.ui-icon{width:25px;height:25px}.menu-button .ui-icon{width:22px;height:22px}.accordion summary span{width:24px;height:24px;display:grid;place-items:center}.accordion summary .ui-icon{width:20px;height:20px}.portal-nav button{position:relative}.portal-nav button>.ui-icon{width:18px;height:18px}.portal-nav button.active::before{content:"";position:absolute;left:0;top:11px;bottom:11px;width:3px;border-radius:3px;background:var(--coral)}
.portal-help .ui-icon{width:15px;height:15px}.logout{display:flex;align-items:center;gap:10px}.logout .ui-icon{width:16px;height:16px}.portal-menu{width:32px;height:32px;padding:5px!important;flex:0 0 auto}.portal-menu .ui-icon{width:22px;height:22px}.account-chevron{width:28px;height:28px;display:grid;place-items:center;padding:0}.account-chevron .ui-icon{width:16px;height:16px}
.dialog-close{font-size:0;position:absolute;display:grid;place-items:center;padding:0}.dialog-close .ui-icon{width:17px;height:17px}.summary-icon .ui-icon{width:19px;height:19px}.activity-marker .ui-icon{width:17px;height:17px;color:var(--green)}.request-icon .ui-icon{width:19px;height:19px}.resource-icon{width:43px;min-width:43px;padding:0}.resource-icon .ui-icon{width:20px;height:20px}.resource-card a,.client-row button,.record-actions button,.invoice-row button,.record-availability span{display:inline-flex;align-items:center;gap:7px}.resource-card a .ui-icon,.client-row button .ui-icon,.record-actions button .ui-icon,.invoice-row button .ui-icon,.record-availability .ui-icon{width:14px;height:14px}.empty-state>span .ui-icon,.record-guidance .ui-icon{width:19px;height:19px}

/* Inclusive public imagery and content */
.inclusion-section{background:#f0f4ef}.inclusion-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:78px;align-items:center}.inclusion-photo{min-height:590px;border-radius:28px 190px 28px 28px;overflow:hidden;box-shadow:var(--shadow);background:var(--sage)}.inclusion-photo img{width:100%;height:100%;min-height:590px;object-fit:cover;object-position:center}.inclusion-copy h2{font-size:clamp(2.65rem,4.8vw,4.5rem);max-width:650px}.inclusion-copy>p:not(.kicker){color:var(--muted);max-width:610px}.inclusion-points{display:flex;flex-wrap:wrap;gap:9px;margin:27px 0 31px}.inclusion-points span{padding:9px 13px;border:1px solid #cbd8d0;background:#fff;border-radius:999px;color:var(--green);font-size:.72rem;font-weight:700}.retreat-section{background-image:linear-gradient(90deg,rgba(8,35,32,.96) 0%,rgba(13,41,39,.88) 43%,rgba(13,41,39,.28) 100%),url('assets/retreat-multicultural.jpg');background-position:center;background-size:cover}

/* Comprehensive provider finance workspace */
.provider-stats .stat-card small{display:block;color:var(--muted);font-size:.62rem;margin-top:3px}.attention-link{width:100%;margin-top:8px;padding:12px 0 0;border:0;border-top:1px solid var(--line);background:transparent;color:var(--green);font-size:.72rem;font-weight:700;display:flex;align-items:center;justify-content:space-between}.attention-link .ui-icon{width:15px;height:15px}.admin-payment-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:22px}.admin-summary-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:18px;display:flex;gap:13px;align-items:center}.summary-card-icon{width:40px;height:40px;flex:0 0 auto;border-radius:12px;background:#dcebe2;color:var(--green);display:grid;place-items:center}.summary-card-icon.coral{background:#f6ddd7;color:var(--coral-dark)}.summary-card-icon.sand{background:#f3e7cc;color:#8b6b26}.summary-card-icon.sage{background:#e8ece5;color:#506a62}.summary-card-icon .ui-icon{width:19px;height:19px}.admin-summary-card div{min-width:0}.admin-summary-card small,.admin-summary-card em{display:block;color:var(--muted);font-size:.61rem;font-style:normal}.admin-summary-card small{text-transform:uppercase;letter-spacing:.07em;font-weight:700}.admin-summary-card strong{display:block;font:600 1.55rem 'Fraunces',serif;margin:5px 0 2px}.payment-toolbar{display:flex;align-items:end;justify-content:space-between;gap:20px;margin:4px 0 12px}.payment-toolbar>div:first-child{display:flex;flex-direction:column}.payment-toolbar strong{font:600 1.15rem 'Fraunces',serif}.payment-toolbar span{color:var(--muted);font-size:.7rem;margin-top:2px}.payment-filters{display:flex;gap:6px}.filter-chip{border:1px solid var(--line);background:#fff;color:var(--muted);border-radius:999px;padding:8px 12px;font-size:.66rem;font-weight:700}.filter-chip:hover,.filter-chip.active{background:var(--deep);color:#fff;border-color:var(--deep)}.admin-payment-table{background:#fff;border:1px solid var(--line);border-radius:16px;overflow:hidden}.admin-payment-row{display:grid;grid-template-columns:1.15fr 1.2fr 1fr .68fr .58fr .63fr;gap:15px;align-items:center;padding:16px 18px;border-top:1px solid var(--line);font-size:.7rem}.admin-payment-row:first-child{border-top:0}.admin-payment-row strong{display:block;font-size:.72rem}.admin-payment-row small{display:block;color:var(--muted);font-size:.59rem;margin-top:3px}.admin-payment-header{background:#f7f9f6;color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:.57rem;font-weight:700;padding-top:11px;padding-bottom:11px}.payment-client{display:flex;align-items:center;gap:10px}.payment-client>span{width:34px;height:34px;border-radius:50%;background:#deebe1;color:var(--green);display:grid;place-items:center;font-weight:700}.session-count i,.client-sessions i{height:4px;background:#e8ede9;border-radius:99px;display:block;overflow:hidden;margin-top:7px}.session-count i b,.client-sessions i b{height:100%;display:block;background:var(--coral);border-radius:inherit}.payment-status-badge{display:inline-flex;padding:5px 9px;border-radius:99px;background:#edf1ed;color:#5e6b67;font-size:.59rem;font-weight:700;white-space:nowrap}.payment-status-badge.paid{background:#e1f0e5;color:#2e704d}.payment-status-badge.due,.payment-status-badge.part-paid{background:#f5e9cf;color:#87641a}.payment-status-badge.overdue{background:#f7ddd9;color:#9d4336}.admin-payment-row button,.panel-title button,.plan-card button{border:0;background:transparent;color:var(--green);font-size:.65rem;font-weight:700}.admin-lower-grid{display:grid;grid-template-columns:1.3fr .7fr;gap:18px;margin-top:18px}.admin-panel,.gateway-card,.settings-card{background:#fff;border:1px solid var(--line);border-radius:16px;padding:22px}.panel-title{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:16px}.panel-title h3{font:600 1.2rem 'Fraunces',serif;margin:0}.panel-title .portal-kicker{margin-bottom:2px}.panel-title button{display:flex;gap:6px;align-items:center}.panel-title button .ui-icon{width:14px;height:14px}.plan-list{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.plan-card{border:1px solid var(--line);border-radius:13px;padding:15px;background:#fbfcfa}.plan-card-top{display:flex;align-items:center;justify-content:space-between}.plan-card-top>span{width:32px;height:32px;border-radius:9px;background:#e6eee8;color:var(--green);display:grid;place-items:center}.plan-card-top .ui-icon{width:16px;height:16px}.plan-card h4{font:600 .88rem 'Fraunces',serif;margin:13px 0 3px}.plan-card>p{color:var(--muted);font-size:.63rem;margin:0 0 14px}.plan-card>div:last-child{display:flex;justify-content:space-between;gap:8px;border-top:1px solid var(--line);padding-top:11px}.plan-card>div:last-child span{font-size:.56rem;color:var(--muted)}.plan-card>div:last-child strong{display:block;color:var(--ink);font-size:.67rem}.payout-summary{display:flex;align-items:center;gap:13px;background:var(--deep);color:#fff;border-radius:13px;padding:16px}.payout-icon{width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.1);display:grid;place-items:center}.payout-icon .ui-icon{width:18px;height:18px}.payout-summary p{margin:0}.payout-summary small{display:block;color:#afc5bf;font-size:.59rem}.payout-summary strong{font:600 1.45rem 'Fraunces',serif}.activity-breakdown{margin-top:11px}.activity-breakdown p{display:flex;justify-content:space-between;gap:15px;margin:0;padding:10px 0;border-bottom:1px solid var(--line);font-size:.66rem}.activity-breakdown span{color:var(--muted)}.integration-note{display:block;color:var(--muted);font-size:.58rem;line-height:1.45;margin-top:13px}.client-row{grid-template-columns:1.05fr .72fr 1.02fr .88fr .58fr .58fr auto}.client-name small,.client-row>span small{display:block;color:var(--muted);font-size:.58rem;margin-top:2px}.client-sessions strong{font-size:.67rem}.client-sessions i{width:100%;max-width:110px}.gateway-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:18px}.gateway-card{background:var(--deep);color:#fff}.gateway-head{display:grid;grid-template-columns:auto 1fr auto;gap:13px;align-items:center}.gateway-icon{width:46px;height:46px;border-radius:13px;background:rgba(255,255,255,.1);display:grid;place-items:center}.gateway-icon .ui-icon{width:22px;height:22px}.gateway-head h3{font:600 1.35rem 'Fraunces',serif;margin:0}.gateway-head .portal-kicker{color:#ef9f8d;margin-bottom:2px}.connection-status{padding:6px 9px;border:1px solid rgba(255,255,255,.2);border-radius:99px;color:#d2dfdc;font-size:.6rem;font-weight:700}.gateway-card>p{color:#c9d9d5;font-size:.78rem;line-height:1.55;margin:24px 0 15px}.gateway-benefits{list-style:none;padding:0;margin:0 0 23px;display:grid;grid-template-columns:1fr 1fr;gap:9px}.gateway-benefits li{position:relative;padding-left:18px;color:#d6e2df;font-size:.68rem}.gateway-benefits li:before{content:"";position:absolute;left:0;top:6px;width:7px;height:4px;border-left:2px solid #ef9f8d;border-bottom:2px solid #ef9f8d;transform:rotate(-45deg)}.gateway-actions{display:flex;align-items:end;gap:10px}.gateway-actions label{flex:1;display:flex;flex-direction:column;gap:6px;color:#b9ccc7;font-size:.62rem;font-weight:700}.gateway-actions select,.settings-grid select,.settings-grid input{width:100%;border:1px solid #ccd7d0;border-radius:10px;background:#fff;padding:11px 12px;outline:none}.gateway-actions .button{white-space:nowrap}.security-note{display:flex;align-items:flex-start;gap:7px;color:#9fb7b1;font-size:.58rem;line-height:1.45;margin-top:17px}.security-note .ui-icon{width:14px;height:14px;flex:0 0 auto}.settings-card{display:flex;flex-direction:column}.settings-grid{display:grid;grid-template-columns:1fr 1fr;gap:13px}.settings-grid label{display:flex;flex-direction:column;gap:6px;font-size:.65rem;font-weight:700}.settings-toggle{display:flex;align-items:flex-start;gap:10px;border-top:1px solid var(--line);padding:14px 0}.settings-toggle:first-of-type{margin-top:17px}.settings-toggle input{margin-top:3px}.settings-toggle span{display:flex;flex-direction:column}.settings-toggle strong{font-size:.7rem}.settings-toggle small{color:var(--muted);font-size:.59rem;margin-top:2px}.settings-card>.button{margin-top:auto;align-self:flex-start}

@media(max-width:1180px){.admin-payment-summary{grid-template-columns:1fr 1fr}.admin-payment-row{grid-template-columns:1fr 1fr .85fr .65fr .55fr}.admin-payment-row>span:nth-child(2),.admin-payment-header>span:nth-child(2){display:none}.client-row{grid-template-columns:1.1fr .8fr 1fr .8fr .62fr auto}.client-row>span:nth-child(3),.client-row.header>span:nth-child(3){display:none}.gateway-grid{grid-template-columns:1fr}.plan-list{grid-template-columns:1fr}}
@media(max-width:1000px){.inclusion-grid{grid-template-columns:1fr 1fr;gap:40px}.inclusion-photo,.inclusion-photo img{min-height:510px}.admin-lower-grid{grid-template-columns:1fr}.plan-list{grid-template-columns:repeat(3,1fr)}}
@media(max-width:760px){.inclusion-grid{grid-template-columns:1fr;gap:35px}.inclusion-photo,.inclusion-photo img{min-height:420px}.inclusion-photo{border-radius:24px 110px 24px 24px}.retreat-section{background-image:linear-gradient(180deg,rgba(8,35,32,.96) 0%,rgba(13,41,39,.8) 60%,rgba(13,41,39,.42) 100%),url('assets/retreat-multicultural.jpg');background-position:62% center}.admin-payment-summary{grid-template-columns:1fr 1fr}.payment-toolbar{align-items:flex-start;flex-direction:column}.payment-filters{width:100%;overflow:auto;padding-bottom:3px}.admin-payment-header{display:none}.admin-payment-row{grid-template-columns:1fr auto;gap:11px 15px;padding:17px}.admin-payment-row>div:first-child{grid-column:1}.admin-payment-row>span:nth-child(2){display:block;grid-column:1/-1}.admin-payment-row>span:nth-child(3){grid-column:1/-1}.admin-payment-row>span:nth-child(4){grid-column:1}.admin-payment-row>span:nth-child(5){grid-column:2;grid-row:1}.admin-payment-row>span:nth-child(6){grid-column:2;align-self:end}.admin-payment-row>span:nth-child(6) button{padding:8px 0}.plan-list{grid-template-columns:1fr}.gateway-head{grid-template-columns:auto 1fr}.connection-status{grid-column:2}.gateway-benefits{grid-template-columns:1fr}.gateway-actions{align-items:stretch;flex-direction:column}.gateway-actions .button{width:100%}.settings-grid{grid-template-columns:1fr}.settings-card>.button{width:100%;justify-content:center}.client-row{display:grid;grid-template-columns:1fr auto;gap:10px 14px}.client-row.header{display:none}.client-row>*{display:block!important}.client-row>.client-name{grid-column:1}.client-row>.payment-status-badge{grid-column:2;grid-row:1}.client-row>span:nth-child(2){grid-column:1/-1;color:var(--muted)}.client-row>span:nth-child(3){grid-column:1/-1}.client-row>span:nth-child(4){grid-column:1/-1}.client-row>span:nth-child(6){grid-column:1}.client-row>button{grid-column:2;align-self:end}}
@media(max-width:440px){.admin-payment-summary{grid-template-columns:1fr}.admin-summary-card strong{font-size:1.4rem}.inclusion-photo,.inclusion-photo img{min-height:360px}}
.gateway-actions select{color:var(--ink)}
