/* ============================================================
   THE TRANSFORMATION PATH — ELEMENTOR CSS
   ============================================================ */
:root { --ink:#0f1a24; --deep:#152030; --navy:#1e2f42; --slate:#2e4057; --gold:#c4984a; --gold-lt:#d4ab68; --gold-dim:#8a6930; --cream:#f5efe4; --warm:#ede4d4; --mist:#c8bfb0; --dim:#7a7060; --white:#faf7f2; --ff-head:'Playfair Display',Georgia,serif; --ff-body:'Crimson Pro',Georgia,serif; --ff-sub:'Cormorant Garamond',Georgia,serif; }
.elementor-canvas body, .tp-page { font-family: var(--ff-body); background: var(--ink); color: var(--cream); -webkit-font-smoothing: antialiased; }
.elementor-canvas .elementor-section { margin: 0 !important; padding: 0 !important; }
.elementor-canvas .elementor-column-wrap { padding: 0 !important; }
.elementor-canvas .elementor-widget-wrap { padding: 0 !important; }
.elementor-canvas .elementor-widget-html { width: 100%; }

/* SMITHFORCHRIST POST THEME */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;0,500;0,600;0,700;1,300;1,400;1,500&family=Lato:wght@300;400;700&display=swap');
html body.single-post, html body.single-post #page, html body.single-post #content, html body.single-post #primary, html body.single-post main#main, html body.single-post .ast-container, html body.single-post .ast-row, html body.single-post .site-content, html body.single-post .content-area, html body.single-post .ast-separate-container, html body.single-post .ast-separate-container #primary, html body.single-post .ast-separate-container .site-content, html body.single-post .ast-narrow-container, html body.single-post .ast-page-builder-template, html body.single-post .ast-full-width-layout, html body.single-post #ast-main-content { background-color: #0d1b2a !important; color: rgba(255,255,255,0.85) !important; }
html body.single-post { font-family: 'Lato', sans-serif !important; background-color: #0d1b2a !important; }
html body.single-post #masthead, html body.single-post .site-header, html body.single-post .main-header-bar, html body.single-post .ast-desktop-header, html body.single-post .ast-primary-header-bar { background-color: #091420 !important; border-bottom: 1px solid rgba(200,151,58,0.3) !important; }
html body.single-post .site-title a, html body.single-post .ast-site-name-link { color: #e0b060 !important; }
html body.single-post .main-header-menu .menu-item a, html body.single-post .main-navigation .menu-item a { color: rgba(255,255,255,0.65) !important; }
html body.single-post .ast-separate-container .ast-article-post, html body.single-post article.post, html body.single-post .hentry, html body.single-post .type-post { background-color: #132333 !important; border: 1px solid rgba(200,151,58,0.2) !important; border-radius: 4px !important; box-shadow: 0 8px 40px rgba(0,0,0,0.4) !important; padding: 2.5rem !important; }
html body.single-post h1.entry-title, html body.single-post .entry-title { font-family: 'Cormorant Garamond', serif !important; font-size: clamp(1.9rem, 4vw, 2.9rem) !important; font-weight: 400 !important; color: #ffffff !important; line-height: 1.2 !important; border-bottom: 2px solid rgba(200,151,58,0.5) !important; padding-bottom: 1rem !important; margin-bottom: 0.75rem !important; }
html body.single-post .entry-meta, html body.single-post .entry-meta *, html body.single-post .ast-post-format-content, html body.single-post .post-meta, html body.single-post span.posted-on, html body.single-post span.byline, html body.single-post span.cat-links { color: rgba(200,151,58,0.8) !important; font-size: 0.72rem !important; font-weight: 700 !important; letter-spacing: 0.14em !important; text-transform: uppercase !important; }
html body.single-post .entry-content, html body.single-post .entry-content p { color: rgba(255,255,255,0.85) !important; font-family: 'Lato', sans-serif !important; font-size: 1rem !important; line-height: 1.9 !important; }
html body.single-post .entry-content h1, html body.single-post .entry-content h2 { font-family: 'Cormorant Garamond', serif !important; font-size: clamp(1.4rem, 3vw, 2rem) !important; font-weight: 400 !important; color: #ffffff !important; border-left: 3px solid #c8973a !important; padding-left: 1rem !important; margin-top: 2.5rem !important; margin-bottom: 0.75rem !important; }
html body.single-post .entry-content h3, html body.single-post .entry-content h4, html body.single-post .entry-content h5, html body.single-post .entry-content h6 { font-family: 'Cormorant Garamond', serif !important; color: #e0b060 !important; font-weight: 500 !important; margin-top: 1.75rem !important; }
html body.single-post .entry-content blockquote { border-left: 3px solid #c8973a !important; background: rgba(200,151,58,0.07) !important; padding: 1.1rem 1.5rem !important; margin: 1.75rem 0 !important; border-radius: 0 3px 3px 0 !important; }
html body.single-post .entry-content blockquote, html body.single-post .entry-content blockquote p { font-family: 'Cormorant Garamond', serif !important; font-style: italic !important; font-size: 1.2rem !important; color: #e0b060 !important; }
html body.single-post .entry-content strong { color: #ffffff !important; }
html body.single-post .entry-content em { color: #e0b060 !important; }
html body.single-post .entry-content a { color: #c8973a !important; }
html body.single-post .entry-content a:hover { color: #e0b060 !important; }
html body.single-post .entry-content ul li, html body.single-post .entry-content ol li { color: rgba(255,255,255,0.85) !important; line-height: 1.8 !important; }
html body.single-post .entry-content hr { border-color: rgba(200,151,58,0.25) !important; }
html body.single-post .entry-footer, html body.single-post .entry-footer a, html body.single-post .ast-article-post .entry-footer { color: rgba(200,151,58,0.65) !important; font-size: 0.72rem !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; border-top: 1px solid rgba(200,151,58,0.2) !important; padding-top: 1.25rem !important; margin-top: 2rem !important; }
html body.single-post .post-navigation, html body.single-post .ast-separate-container .post-navigation { background: rgba(9,20,32,0.6) !important; border: 1px solid rgba(200,151,58,0.18) !important; border-radius: 3px !important; padding: 1.25rem !important; }
html body.single-post .post-navigation a, html body.single-post .nav-links a { color: #c8973a !important; font-size: 0.78rem !important; font-weight: 700 !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; text-decoration: none !important; }
html body.single-post #secondary, html body.single-post .widget-area { background: #132333 !important; padding: 1.5rem !important; border-radius: 3px !important; border: 1px solid rgba(200,151,58,0.15) !important; }
html body.single-post .widget-title { font-family: 'Cormorant Garamond', serif !important; color: #c8973a !important; border-bottom: 1px solid rgba(200,151,58,0.25) !important; padding-bottom: 0.5rem !important; }
html body.single-post .widget a { color: rgba(255,255,255,0.7) !important; }
html body.single-post .widget a:hover { color: #e0b060 !important; }
html body.single-post #comments { background: #132333 !important; border: 1px solid rgba(200,151,58,0.18) !important; border-radius: 4px !important; padding: 2rem !important; margin-top: 2rem !important; }
html body.single-post .comments-title, html body.single-post .comment-reply-title { font-family: 'Cormorant Garamond', serif !important; color: #ffffff !important; font-weight: 400 !important; border-bottom: 1px solid rgba(200,151,58,0.2) !important; padding-bottom: 0.75rem !important; }
html body.single-post .comment-author .fn { color: #e0b060 !important; }
html body.single-post .comment-content p { color: rgba(255,255,255,0.75) !important; }
html body.single-post #submit, html body.single-post .comment-form input[type="submit"] { background: #c8973a !important; color: #0d1b2a !important; border: none !important; padding: 0.65rem 1.5rem !important; font-weight: 700 !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; font-size: 0.76rem !important; border-radius: 2px !important; cursor: pointer !important; }
html body.single-post #submit:hover { background: #e0b060 !important; }
html body.single-post footer#colophon, html body.single-post .site-footer { background: #060f18 !important; border-top: 1px solid rgba(200,151,58,0.2) !important; color: rgba(255,255,255,0.35) !important; }
html body.single-post .site-footer a { color: rgba(200,151,58,0.6) !important; }

/* SFC PAGE - Living in the Light */
@import url('https://fonts.googleapis.com/css2?family=Fraunces:ital,opsz,wght@0,9..144,300;0,9..144,400;0,9..144,500;0,9..144,600;0,9..144,700;1,9..144,400;1,9..144,500;1,9..144,600&family=Crimson+Pro:ital,wght@0,300;0,400;0,500;0,600;1,400;1,500&display=swap');
.sfc-page { --ink: #1F1612; --ink-soft: #2D211B; --cocoa: #4A352A; --brass: #B5894F; --brass-light: #D4AC74; --ember: #A0451F; --ember-bright: #B85728; --paper: #F4EAD3; --paper-soft: #F9F2E0; --cream: #FBF7E8; --muted: #6B5B4A; --rule: rgba(181, 137, 79, 0.32); }
.sfc-page, .sfc-page * { box-sizing: border-box; }
.sfc-page { font-family: 'Crimson Pro', Georgia, serif; color: var(--ink); background: var(--cream); font-size: 19px; line-height: 1.65; font-weight: 400; -webkit-font-smoothing: antialiased; }
.sfc-page .sfc-nav { position: sticky; top: 0; z-index: 100; background: var(--ink); color: var(--paper); border-bottom: 1px solid var(--brass); }
.sfc-page .sfc-nav-inner { max-width: 1280px; margin: 0 auto; padding: 16px 40px; display: flex; align-items: center; justify-content: space-between; gap: 24px; position: relative; }
.sfc-page .sfc-brand { display: flex; align-items: center; gap: 14px; text-decoration: none; }
.sfc-page .sfc-brand-mark { font-family: 'Fraunces', serif; font-size: 32px; font-weight: 600; color: var(--brass-light); letter-spacing: 0.02em; line-height: 1; }
.sfc-page .sfc-brand-name { display: flex; flex-direction: column; gap: 2px; font-family: 'Fraunces', serif; font-size: 10px; font-weight: 600; letter-spacing: 0.24em; text-transform: uppercase; color: rgba(212, 172, 116, 0.85); line-height: 1.3; }
.sfc-page .sfc-nav-links { display: flex; gap: 32px; list-style: none; margin: 0; padding: 0; }
.sfc-page .sfc-nav-links a { color: var(--paper); text-decoration: none; font-family: 'Fraunces', serif; font-size: 13px; font-weight: 500; letter-spacing: 0.12em; text-transform: uppercase; padding: 6px 0; border-bottom: 1px solid transparent; }
.sfc-page .sfc-nav-links a:hover { color: var(--brass-light); }
.sfc-page .sfc-nav-links a.active { color: var(--brass-light); border-bottom-color: var(--brass-light); }
.sfc-page .sfc-hero { background: var(--ink); color: var(--paper); padding: 140px 40px 120px; position: relative; overflow: hidden; text-align: center; }
.sfc-page .sfc-hero::before { content: ''; position: absolute; bottom: -200px; left: 50%; transform: translateX(-50%); width: 800px; height: 400px; background: radial-gradient(ellipse at center, rgba(181, 137, 79, 0.18) 0%, transparent 70%); pointer-events: none; }
.sfc-page .sfc-hero-inner { position: relative; z-index: 2; max-width: 880px; margin: 0 auto; }
.sfc-page .sfc-hero-overline { font-family: 'Fraunces', serif; font-size: 12px; font-weight: 600; letter-spacing: 0.36em; text-transform: uppercase; color: var(--brass-light); margin-bottom: 40px; }
.sfc-page .sfc-ornament { display: flex; align-items: center; justify-content: center; gap: 14px; margin-bottom: 40px; }
.sfc-page .sfc-ornament::before, .sfc-page .sfc-ornament::after { content: ''; height: 1px; width: 60px; background: linear-gradient(to right, transparent, var(--brass), transparent); }
.sfc-page .sfc-ornament-mark { width: 8px; height: 8px; background: var(--brass); transform: rotate(45deg); display: inline-block; }
.sfc-page .sfc-hero h1 { font-family: 'Fraunces', serif; font-weight: 400; font-size: clamp(48px, 7vw, 88px); line-height: 1.02; letter-spacing: -0.02em; color: var(--paper); margin: 0 0 36px 0; }
.sfc-page .sfc-hero h1 em { font-style: italic; font-weight: 400; color: var(--brass-light); }
.sfc-page .sfc-hero-sub { font-family: 'Crimson Pro', serif; font-style: italic; font-size: clamp(20px, 2.2vw, 24px); font-weight: 400; line-height: 1.5; max-width: 600px; margin: 0 auto 48px; color: rgba(244, 234, 211, 0.78); }
.sfc-page .sfc-btn { display: inline-block; padding: 16px 38px; font-family: 'Fraunces', serif; font-size: 13px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; text-decoration: none; cursor: pointer; border: 1px solid var(--brass); color: var(--brass-light); background: transparent; }
.sfc-page .sfc-btn:hover { background: var(--brass); color: var(--ink); }
.sfc-page .sfc-btn-primary { background: var(--brass); color: var(--ink); }
.sfc-page .sfc-btn-on-light { border-color: var(--ink); color: var(--ink); }
.sfc-page .sfc-btn-ember { background: var(--ember); border-color: var(--ember); color: var(--paper); }
.sfc-page .sfc-text-link { font-family: 'Fraunces', serif; font-size: 13px; font-weight: 600; letter-spacing: 0.18em; text-transform: uppercase; color: var(--ember); text-decoration: none; border-bottom: 1px solid var(--ember); padding-bottom: 3px; display: inline-block; }
.sfc-page .sfc-dawn { height: 80px; background: linear-gradient(to bottom, var(--ink), var(--paper)); }
.sfc-page .sfc-block { padding: 120px 40px; }
.sfc-page .sfc-block.cream { background: var(--cream); }
.sfc-page .sfc-block.paper { background: var(--paper); }
.sfc-page .sfc-frame { max-width: 1180px; margin: 0 auto; }
.sfc-page .sfc-frame.medium { max-width: 920px; }
.sfc-page .sfc-frame.narrow { max-width: 760px; }
.sfc-page .sfc-overline { font-family: 'Fraunces', serif; font-size: 12px; font-weight: 600; letter-spacing: 0.36em; text-transform: uppercase; color: var(--ember); text-align: center; margin-bottom: 24px; }
.sfc-page .sfc-title { font-family: 'Fraunces', serif; font-weight: 400; font-size: clamp(40px, 5vw, 60px); line-height: 1.05; letter-spacing: -0.015em; color: var(--ink); text-align: center; margin: 0 0 24px 0; }
.sfc-page .sfc-title em { font-style: italic; color: var(--cocoa); }
.sfc-page .sfc-lead { font-family: 'Crimson Pro', serif; font-style: italic; font-size: 21px; line-height: 1.55; color: var(--cocoa); text-align: center; max-width: 640px; margin: 0 auto 80px; }
.sfc-page .sfc-block p { color: var(--ink); margin-bottom: 20px; }
.sfc-page .center { text-align: center; }
.sfc-page .sfc-prose { max-width: 680px; margin: 0 auto; }
.sfc-page .sfc-prose p { margin-bottom: 24px; font-size: 19px; line-height: 1.7; }
.sfc-page .sfc-prose p.lead { font-family: 'Fraunces', serif; font-style: italic; font-size: 26px; line-height: 1.4; color: var(--cocoa); margin-bottom: 28px; }
.sfc-page .sfc-prose h3 { font-family: 'Fraunces', serif; font-weight: 500; font-size: 28px; line-height: 1.2; color: var(--ink); margin: 48px 0 16px; }
.sfc-page .sfc-stages { display: grid; grid-template-columns: repeat(5, 1fr); gap: 0; position: relative; margin-top: 24px; }
.sfc-page .sfc-stage { text-align: center; padding: 0 20px; position: relative; }
.sfc-page .sfc-stage-num { width: 56px; height: 56px; margin: 0 auto 32px; display: flex; align-items: center; justify-content: center; background: var(--cream); border: 1px solid var(--brass); border-radius: 50%; font-family: 'Fraunces', serif; font-size: 22px; font-style: italic; color: var(--ember); }
.sfc-page .sfc-stage-name { font-family: 'Fraunces', serif; font-weight: 500; font-size: 20px; color: var(--ink); margin-bottom: 12px; }
.sfc-page .sfc-stage-essence { font-family: 'Crimson Pro', serif; font-style: italic; font-size: 15px; color: var(--muted); margin: 0; }
.sfc-page .sfc-stage-detail { display: grid; grid-template-columns: 200px 1fr; gap: 48px; padding: 56px 0; border-top: 1px solid var(--rule); align-items: start; }
.sfc-page .sfc-stage-detail-num { font-family: 'Fraunces', serif; font-style: italic; font-size: 14px; letter-spacing: 0.16em; text-transform: uppercase; color: var(--ember); }
.sfc-page .sfc-stage-detail-num strong { display: block; font-style: normal; font-weight: 500; font-size: 56px; color: var(--ink); margin-top: 8px; }
.sfc-page .sfc-stage-detail-body h3 { font-family: 'Fraunces', serif; font-weight: 500; font-size: 32px; color: var(--ink); margin-bottom: 16px; }
.sfc-page .sfc-stage-detail-body p { font-size: 18px; line-height: 1.7; color: var(--cocoa); margin-bottom: 14px; }
.sfc-page .sfc-books { display: grid; grid-template-columns: 1fr; gap: 80px; max-width: 1080px; margin: 80px auto 0; }
.sfc-page .sfc-book-row { display: grid; grid-template-columns: 280px 1fr; gap: 64px; align-items: center; }
.sfc-page .sfc-book-cover { aspect-ratio: 2 / 3; background: var(--ink); overflow: hidden; }
.sfc-page .sfc-book-cover img { width: 100%; height: 100%; object-fit: cover; display: block; }
.sfc-page .sfc-book-title { font-family: 'Fraunces', serif; font-weight: 400; font-size: clamp(32px, 4vw, 44px); color: var(--ink); margin: 0 0 16px 0; }
.sfc-page .sfc-pull { font-family: 'Fraunces', serif; font-style: italic; font-size: clamp(28px, 3.6vw, 44px); color: var(--ink); margin: 0 0 48px 0; text-align: center; }
.sfc-page .sfc-chapter { background: var(--ink); color: var(--paper); padding: 120px 40px; text-align: center; }
.sfc-page .sfc-chapter-title { font-family: 'Fraunces', serif; font-weight: 400; font-size: clamp(40px, 5vw, 56px); color: var(--paper); margin: 0 0 20px 0; }
.sfc-page .sfc-foot { background: var(--ink-soft); color: rgba(244, 234, 211, 0.85); padding: 80px 40px 40px; }
.sfc-page .sfc-foot-inner { max-width: 1180px; margin: 0 auto; }
.sfc-page .sfc-foot-cols { display: grid; grid-template-columns: repeat(3, 1fr); gap: 48px; margin-bottom: 48px; }
.sfc-page .sfc-foot-cols h6 { font-family: 'Fraunces', serif; font-size: 11px; font-weight: 600; letter-spacing: 0.28em; text-transform: uppercase; color: var(--brass); margin-bottom: 18px; }
.sfc-page .sfc-foot-cols ul { list-style: none; margin: 0; padding: 0; }
.sfc-page .sfc-foot-cols li { margin-bottom: 10px; font-size: 15px; }
.sfc-page .sfc-foot-cols a { color: rgba(244, 234, 211, 0.78); text-decoration: none; font-family: 'Crimson Pro', serif; }
.sfc-page .sfc-foot-legal { text-align: center; padding-top: 32px; border-top: 1px solid rgba(181, 137, 79, 0.2); font-size: 13px; color: rgba(244, 234, 211, 0.45); font-style: italic; }
.sfc-page .sfc-timeline { display: grid; gap: 40px; max-width: 880px; margin: 0 auto; }
.sfc-page .sfc-timeline-card { background: var(--cream); border: 1px solid var(--rule); padding: 48px 56px; }
.sfc-page .sfc-timeline-card.dark { background: var(--ink); color: var(--paper); border-color: var(--brass); }
.sfc-page .sfc-three-col { display: grid; grid-template-columns: repeat(3, 1fr); gap: 32px; margin-top: 32px; }
.sfc-page .sfc-audience-card { padding: 32px 28px; background: var(--cream); border: 1px solid var(--rule); }
.sfc-page .sfc-bio-grid { display: grid; grid-template-columns: 320px 1fr; gap: 64px; align-items: start; max-width: 1080px; margin: 0 auto; }
@media (max-width: 1100px) { .sfc-page .sfc-nav-links { gap: 16px; } .sfc-page .sfc-nav-links a { font-size: 11px; } }
@media (max-width: 900px) { .sfc-page .sfc-stages { grid-template-columns: 1fr; gap: 40px; } .sfc-page .sfc-book-row { grid-template-columns: 1fr; gap: 40px; text-align: center; } .sfc-page .sfc-foot-cols { grid-template-columns: 1fr; gap: 32px; text-align: center; } .sfc-page .sfc-stage-detail { grid-template-columns: 1fr; gap: 16px; } .sfc-page .sfc-three-col { grid-template-columns: 1fr; } .sfc-page .sfc-bio-grid { grid-template-columns: 1fr; gap: 32px; } }
@media (max-width: 600px) { .sfc-page .sfc-hero { padding: 80px 24px; } .sfc-page .sfc-block, .sfc-page .sfc-chapter { padding: 80px 24px; } }

/* EL CAMINO REAL COUNSELING */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,400;0,500;0,600;1,400&family=Inter:wght@300;400;500;600&display=swap');
.ecrc{--ecrc-ink:#2A2018;--ecrc-ink-soft:#4A3A2C;--ecrc-muted:#7A6852;--ecrc-bronze:#8B5A2B;--ecrc-bronze-deep:#5C3A1C;--ecrc-parchment:#F4EBD9;--ecrc-parchment-warm:#E8D9BB;--ecrc-sand:#D9C49E;--ecrc-line:#C9B695;--ecrc-gold:#C49A4F;--ecrc-shadow:0 12px 32px -14px rgba(60,40,22,.25),0 2px 6px -2px rgba(60,40,22,.1);--ecrc-shadow-frame:0 28px 56px -22px rgba(40,25,12,.34);--ecrc-serif:'Cormorant Garamond',Georgia,serif;--ecrc-sans:'Inter',sans-serif;font-family:var(--ecrc-sans);font-size:17px;line-height:1.7;color:var(--ecrc-ink);background:var(--ecrc-parchment)}
.ecrc *{box-sizing:border-box}
.ecrc img{max-width:100%;display:block}
.ecrc a{color:var(--ecrc-bronze-deep);text-decoration:none}
.ecrc a:hover{color:var(--ecrc-bronze)}
.ecrc h1,.ecrc h2,.ecrc h3,.ecrc h4{font-family:var(--ecrc-serif);font-weight:500;color:var(--ecrc-ink);margin:0 0 .4em;line-height:1.1}
.ecrc h1{font-size:clamp(2.6rem,6vw,4.8rem)}
.ecrc h2{font-size:clamp(2rem,3.8vw,3rem)}
.ecrc h3{font-size:1.5rem}
.ecrc p{margin:0 0 1em;color:var(--ecrc-ink-soft)}
.ecrc .container{width:100%;max-width:1180px;margin:0 auto;padding:0 28px}
.ecrc .container-narrow{max-width:880px}
.ecrc .topbar{background:var(--ecrc-bronze-deep);color:var(--ecrc-parchment);font-size:13px}
.ecrc .topbar .row{display:flex;align-items:center;justify-content:space-between;padding:9px 0;gap:16px;flex-wrap:wrap}
.ecrc .topbar a{color:var(--ecrc-parchment-warm)}
.ecrc .topbar .pill{display:inline-flex;align-items:center;gap:8px}
.ecrc .topbar .pill::before{content:"";width:6px;height:6px;background:var(--ecrc-gold);border-radius:50%;display:inline-block}
.ecrc header.site{position:sticky;top:0;z-index:50;background:rgba(244,235,217,.94);border-bottom:1px solid var(--ecrc-line)}
.ecrc header.site .row{display:flex;align-items:center;justify-content:space-between;padding:14px 0;gap:24px}
.ecrc .brand{display:flex;align-items:center;gap:14px}
.ecrc .brand img{height:64px;width:auto}
.ecrc .brand .name{font-family:var(--ecrc-serif);font-size:1.2rem;font-weight:600;color:var(--ecrc-ink);line-height:1.05}
.ecrc .brand .name small{display:block;font-family:var(--ecrc-sans);font-size:10px;letter-spacing:.32em;color:var(--ecrc-muted);font-weight:500;margin-top:4px}
.ecrc nav.primary{display:flex;align-items:center;gap:28px}
.ecrc nav.primary a{color:var(--ecrc-ink-soft);padding:6px 0;font-family:var(--ecrc-serif);font-size:1.05rem}
.ecrc nav.primary a.current{color:var(--ecrc-bronze-deep);font-weight:600;border-bottom:1px solid var(--ecrc-bronze)}
.ecrc .btn{display:inline-flex;align-items:center;gap:8px;padding:12px 24px;border-radius:999px;font-family:var(--ecrc-sans);font-size:13px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;background:var(--ecrc-bronze-deep);color:var(--ecrc-parchment)!important;border:1px solid var(--ecrc-bronze-deep)}
.ecrc .btn:hover{background:#3A2410;color:#fff!important}
.ecrc .btn.ghost{background:transparent;color:var(--ecrc-bronze-deep)!important}
.ecrc .btn.gold{background:var(--ecrc-gold);border-color:var(--ecrc-gold);color:#2A2018!important}
.ecrc .hero{padding:clamp(64px,9vw,120px) 0 clamp(72px,10vw,140px);background:radial-gradient(ellipse at 75% 20%,rgba(196,154,79,.18),transparent 55%),radial-gradient(ellipse at 8% 85%,rgba(92,58,28,.14),transparent 55%),var(--ecrc-parchment)}
.ecrc .hero .row{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center}
.ecrc .eyebrow{display:inline-flex;align-items:center;gap:14px;font-family:var(--ecrc-sans);font-size:12px;font-weight:500;letter-spacing:.36em;text-transform:uppercase;color:var(--ecrc-bronze);margin-bottom:26px}
.ecrc .eyebrow::before{content:"";width:32px;height:1px;background:var(--ecrc-gold)}
.ecrc .hero h1{color:var(--ecrc-bronze-deep)}
.ecrc .hero h1 em{font-style:italic;color:var(--ecrc-gold);font-weight:400}
.ecrc .hero .lede{font-family:var(--ecrc-serif);font-size:clamp(1.2rem,1.6vw,1.4rem);color:var(--ecrc-ink-soft);max-width:56ch;margin-top:14px;font-style:italic;line-height:1.5}
.ecrc .hero .ctas{display:flex;gap:14px;margin-top:32px;flex-wrap:wrap}
.ecrc .hero-art{aspect-ratio:4/5;background:linear-gradient(180deg,var(--ecrc-parchment-warm) 0%,var(--ecrc-sand) 100%);border-radius:8px;box-shadow:var(--ecrc-shadow-frame);padding:14px;border:1px solid var(--ecrc-line)}
.ecrc .hero-art .inner{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:24px;border:1px solid rgba(92,58,28,.20);background:var(--ecrc-parchment-warm);padding:28px 22px}
.ecrc .hero-art img{width:78%;max-height:60%;object-fit:contain}
.ecrc .hero-art .verse{font-family:var(--ecrc-serif);font-style:italic;text-align:center;color:var(--ecrc-bronze-deep);padding-top:18px;max-width:80%;border-top:1px solid rgba(92,58,28,.20)}
.ecrc .hero-art .verse cite{font-style:normal;font-family:var(--ecrc-sans);font-size:11px;letter-spacing:.22em;text-transform:uppercase;color:var(--ecrc-muted);display:block;margin-top:8px}
.ecrc section{padding:clamp(70px,8vw,110px) 0}
.ecrc .section-head{max-width:720px;margin-bottom:56px}
.ecrc section.alt,.ecrc .section.alt{background:var(--ecrc-parchment-warm)}
.ecrc .about .row{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:start}
.ecrc .pillars{display:grid;gap:18px}
.ecrc .pillar{display:flex;gap:20px;padding:24px 26px;background:#fff;border:1px solid var(--ecrc-line);border-radius:6px;box-shadow:var(--ecrc-shadow)}
.ecrc .pillar .num{font-family:var(--ecrc-serif);font-size:1.9rem;color:var(--ecrc-gold);font-style:italic}
.ecrc .pillar h3{font-size:1.2rem;margin-bottom:6px}
.ecrc .pillar p{font-size:.96rem;margin:0}
.ecrc .about-quote{font-family:var(--ecrc-serif);font-style:italic;font-size:1.25rem;padding:22px 26px;margin:28px 0 0;border-left:3px solid var(--ecrc-gold);color:var(--ecrc-bronze-deep);background:rgba(196,154,79,.08)}
.ecrc .therapists{background:var(--ecrc-parchment-warm)}
.ecrc .team-photo-block{margin:0 auto 64px;max-width:980px;padding:18px;background:#fff;border:1px solid var(--ecrc-line);border-radius:6px;box-shadow:var(--ecrc-shadow-frame)}
.ecrc .team-photo-block img{width:100%;border:1px solid rgba(92,58,28,.10)}
.ecrc .team-photo-block figcaption{text-align:center;padding:16px 8px 4px;font-family:var(--ecrc-serif);font-size:1.05rem;color:var(--ecrc-bronze-deep)}
.ecrc .team-photo-block figcaption span{display:block;font-family:var(--ecrc-sans);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--ecrc-muted);margin-top:6px}
.ecrc .bio-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px}
.ecrc .bio{background:#fff;border:1px solid var(--ecrc-line);border-radius:6px;box-shadow:var(--ecrc-shadow);overflow:hidden}
.ecrc .bio .headshot{aspect-ratio:1/1;background:var(--ecrc-parchment-warm);border-bottom:1px solid var(--ecrc-line);overflow:hidden}
.ecrc .bio .headshot img{width:100%;height:100%;object-fit:cover}
.ecrc .bio .body{padding:28px 34px 36px}
.ecrc .bio .name{font-family:var(--ecrc-serif);font-size:2rem;font-weight:500;color:var(--ecrc-ink);margin:0 0 4px;line-height:1}
.ecrc .bio .creds{font-family:var(--ecrc-sans);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--ecrc-bronze);font-weight:500}
.ecrc .bio dl{display:grid;grid-template-columns:max-content 1fr;gap:8px 18px;margin:22px 0;padding:16px 0;border-top:1px solid var(--ecrc-line);border-bottom:1px solid var(--ecrc-line);font-size:.92rem}
.ecrc .bio dt{font-family:var(--ecrc-sans);font-size:10px;letter-spacing:.22em;text-transform:uppercase;color:var(--ecrc-muted);padding-top:3px;font-weight:500}
.ecrc .bio dd{margin:0;color:var(--ecrc-ink)}
.ecrc .bio p{margin:0 0 .8em;font-size:.97rem}
.ecrc .approach .grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}
.ecrc .approach .card{padding:32px 28px;background:#fff;border:1px solid var(--ecrc-line);border-radius:6px;box-shadow:var(--ecrc-shadow)}
.ecrc .approach .card .step{font-family:var(--ecrc-serif);font-style:italic;font-size:11px;letter-spacing:.26em;text-transform:uppercase;color:var(--ecrc-gold);margin-bottom:14px;font-weight:500}
.ecrc .approach .card h3{font-size:1.3rem;margin-bottom:10px}
.ecrc .approach .card p{font-size:.96rem;margin:0}
.ecrc .notice .inner{display:flex;gap:28px;align-items:center;padding:32px 36px;background:#fff;border:1px solid var(--ecrc-line);border-left:4px solid var(--ecrc-gold);border-radius:6px;box-shadow:var(--ecrc-shadow)}
.ecrc .notice h3{margin:0 0 6px;font-size:1.3rem}
.ecrc .notice p{margin:0;font-size:.97rem}
.ecrc .cta-band{background:var(--ecrc-bronze-deep);color:var(--ecrc-parchment);text-align:center;padding:clamp(70px,10vw,120px) 0}
.ecrc .cta-band h2{color:#fff;max-width:20ch;margin:0 auto .4em}
.ecrc .cta-band p{color:rgba(244,235,217,.85);max-width:52ch;margin:0 auto 30px;font-family:var(--ecrc-serif);font-style:italic;font-size:1.2rem}
.ecrc .cta-band .ctas{display:inline-flex;gap:14px;flex-wrap:wrap;justify-content:center}
.ecrc .cta-band .btn{background:var(--ecrc-parchment);color:var(--ecrc-bronze-deep)!important;border-color:var(--ecrc-parchment)}
.ecrc .cta-band .btn.gold{background:var(--ecrc-gold);border-color:var(--ecrc-gold);color:#2A2018!important}
.ecrc footer.site{background:var(--ecrc-parchment-warm);color:var(--ecrc-ink-soft);padding:60px 0 36px;font-size:.92rem}
.ecrc footer.site .row{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:40px;padding-bottom:36px;border-bottom:1px solid var(--ecrc-line)}
.ecrc footer.site .brand img{height:72px}
.ecrc footer.site h4{font-family:var(--ecrc-sans);font-size:11px;letter-spacing:.28em;text-transform:uppercase;color:var(--ecrc-bronze);margin:0 0 14px;font-weight:500}
.ecrc footer.site ul{list-style:none;padding:0;margin:0}
.ecrc footer.site ul li{margin-bottom:8px}
.ecrc footer.site .legal{display:flex;justify-content:space-between;align-items:center;padding-top:28px;gap:20px;flex-wrap:wrap;font-size:.82rem;color:var(--ecrc-muted)}
.ecrc .services-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-bottom:48px}
.ecrc .service-item{padding:20px 24px;background:#fff;border:1px solid var(--ecrc-line);border-radius:6px;box-shadow:var(--ecrc-shadow)}
.ecrc .service-item h3{font-size:1.15rem;margin-bottom:6px;color:var(--ecrc-bronze-deep)}
.ecrc .service-item p{font-size:.92rem;margin:0}
.ecrc .fees-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ecrc .fee-card{padding:28px 24px;text-align:center;background:#fff;border:1px solid var(--ecrc-line);border-radius:6px;box-shadow:var(--ecrc-shadow)}
.ecrc .fee-card .price{font-family:var(--ecrc-serif);font-size:2.2rem;color:var(--ecrc-bronze-deep);margin:8px 0 4px;font-weight:500}
.ecrc .fee-card .label{font-family:var(--ecrc-sans);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--ecrc-muted);font-weight:500}
.ecrc .fee-card .note{font-size:.88rem;color:var(--ecrc-ink-soft);margin:10px 0 0}
.ecrc .contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:32px;margin-bottom:48px}
.ecrc .contact-card{padding:36px 32px;background:#fff;border:1px solid var(--ecrc-line);border-radius:6px;box-shadow:var(--ecrc-shadow)}
.ecrc .contact-card .label{font-family:var(--ecrc-sans);font-size:10px;letter-spacing:.28em;text-transform:uppercase;color:var(--ecrc-bronze);margin-bottom:10px;font-weight:500}
.ecrc .contact-card .value{font-family:var(--ecrc-serif);font-size:1.5rem;color:var(--ecrc-bronze-deep);margin-bottom:8px}
.ecrc .contact-card p{font-size:.92rem;margin:0}
.ecrc .empty-state{text-align:center;padding:80px 32px;background:#fff;border:1px solid var(--ecrc-line);border-radius:6px;box-shadow:var(--ecrc-shadow)}
.ecrc .empty-state h3{margin:20px 0 12px;font-size:1.6rem;color:var(--ecrc-bronze-deep)}
.ecrc .empty-state p{max-width:48ch;margin:0 auto}
.ecrc .placeholder{background:#FFF3CD;color:#856404;padding:1px 6px;border-radius:3px;font-family:var(--ecrc-sans);font-size:.9em;font-style:normal}
@media (max-width:960px){.ecrc .hero .row{grid-template-columns:1fr;gap:40px}.ecrc .hero-art{max-width:420px;margin:0 auto}.ecrc .about .row,.ecrc .bio-grid,.ecrc .contact-grid,.ecrc .services-grid{grid-template-columns:1fr;gap:32px}.ecrc .approach .grid,.ecrc .fees-grid{grid-template-columns:1fr}.ecrc footer.site .row{grid-template-columns:1fr}}
@media (max-width:720px){.ecrc nav.primary{display:none}.ecrc .notice .inner{flex-direction:column;text-align:left}.ecrc .brand .name{font-size:1.05rem}.ecrc .brand img{height:52px}}