*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:#f8f7f2;color:#20211f;font-family:Arial,Helvetica,sans-serif;line-height:1.6}
.site-header{position:sticky;top:0;z-index:20;display:flex;align-items:center;gap:28px;padding:18px 5vw;background:rgba(248,247,242,.94);backdrop-filter:blur(12px);border-bottom:1px solid #d9d7cf}
.brand{font-size:1.05rem;letter-spacing:.18em;font-weight:700;color:inherit;text-decoration:none}
.nav{margin-left:auto;display:flex;gap:24px;align-items:center}.nav a,.lang-switch{font-size:.9rem;color:inherit;text-decoration:none}.nav-cta{border-bottom:1px solid #20211f}.lang-switch{border:1px solid #c9c6bc;background:transparent;border-radius:999px;padding:7px 10px;cursor:pointer}
.eyebrow{text-transform:uppercase;letter-spacing:.14em;font-size:.73rem;font-weight:700;margin:0 0 18px}
.hero{min-height:86vh;display:grid;grid-template-columns:1.25fr .75fr;gap:5vw;align-items:center;padding:8vw 7vw 6vw}.hero h1,.split-section h2,.section-heading h2,.about-practitioner h2,.contact-section h2{font-family:Georgia,'Times New Roman',serif;font-weight:400;line-height:1.02;margin:0}.hero h1{font-size:clamp(3.3rem,8vw,7.6rem);max-width:9ch}.hero-text{max-width:650px;font-size:1.15rem;margin:28px 0}.hero-actions{display:flex;gap:12px;flex-wrap:wrap}.button{display:inline-block;padding:13px 20px;border-radius:999px;text-decoration:none;font-size:.92rem}.button-primary{background:#20211f;color:#f8f7f2}.button-secondary{border:1px solid #20211f;color:#20211f}.micro{font-size:.78rem;opacity:.65;margin-top:18px}
/* hero photo + DIETHERA meaning: text is always BELOW the image */
.photo-panel{min-height:0;border:0;padding:0;background:transparent;display:flex;flex-direction:column;overflow:visible}.hero-image{order:1;width:100%;height:430px;min-height:0;object-fit:cover;display:block;border:0}.photo-panel .values{order:2;position:static!important;display:flex!important;justify-content:center;align-items:baseline;flex-wrap:wrap;gap:0;row-gap:8px;padding:18px 8px 0;background:transparent;color:#20211f}.photo-panel .values>span{display:inline!important;background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;padding:0!important;font-size:.83rem;line-height:1.4;white-space:nowrap;color:#20211f!important}.photo-panel .values>span:not(:last-child)::after{content:'·';display:inline-block;margin:0 11px;opacity:.42;font-weight:400}.photo-panel .values strong{font-weight:700;font-size:inherit}.photo-panel .values>span>span{display:inline!important;border:0!important;background:transparent!important;padding:0!important}
/* statement: no fine divider around it */
.statement{padding:5vw 7vw;border:0}.brand-statement{display:grid;grid-template-columns:.72fr 1.28fr;gap:5vw;align-items:center;padding-top:4vw;padding-bottom:4vw}.brand-statement .eyebrow{font-family:Arial,Helvetica,sans-serif;font-size:.73rem;line-height:1.4;text-transform:uppercase;letter-spacing:.14em;font-weight:700;margin:0 0 18px}.brand-statement>div>p:not(.eyebrow){font-family:Georgia,serif;font-size:clamp(2rem,4vw,4.25rem);max-width:15ch;margin:0}.statement-image{width:100%;height:320px;object-fit:cover;object-position:center 52%;display:block}
/* mountain image restrained for quality */
.approach-visual{padding:0 7vw;display:flex;justify-content:center;border:0}.approach-visual img{display:block;width:76%;max-width:1250px;height:315px;object-fit:cover;object-position:center 50%;border:0}
/* MY APPROACH directly above its copy */
.split-section#about{display:block;max-width:900px;margin:0 auto;padding:6vw 7vw 8vw}.split-section#about>div:first-child,.split-section#about .body-copy{max-width:760px;margin:0 auto}.split-section#about>div:first-child .eyebrow{margin:0 0 20px}.split-section#about .body-copy{font-size:1.08rem}.split-section#about .body-copy p:first-child{margin-top:0}
/* support */
.cards-section,.process-section,.faq-section{padding:8vw 7vw;border-top:1px solid #d9d7cf}.process-section>.section-heading{display:block;width:100%;margin:0 0 46px}.process-section>.section-heading h2{display:block;margin:0;font-size:clamp(2rem,3.4vw,3.6rem);max-width:none}.process-section>.section-heading .eyebrow{margin-bottom:18px}.cards-section .section-heading{max-width:none;margin-bottom:34px;text-align:center}.cards-section .section-heading .eyebrow{margin-bottom:0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.card{padding:28px;border:1px solid #d2cfc5;min-height:410px;background:transparent;text-align:center;display:flex;flex-direction:column;align-items:center}.line-icon{height:125px;width:100%;display:flex;align-items:center;justify-content:center;margin:10px auto 16px;color:#20211f}.line-icon svg{width:128px;height:112px;fill:none;stroke:currentColor;stroke-width:1.05;stroke-linecap:round;stroke-linejoin:round}.line-icon .silhouette{stroke-width:.72;opacity:.52}.card h3,.process-step h3{font-size:1.35rem;font-weight:500;margin:8px 0 14px}.card p{max-width:34ch;margin-left:auto;margin-right:auto}.card span,.process-step span{font-size:.75rem;opacity:.55}
.process-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.process-step{border-top:1px solid #20211f;padding-top:16px}.process-step h3{margin-top:45px}
.about-practitioner{display:grid;grid-template-columns:.72fr 1.28fr;gap:7vw;padding:9vw 7vw;border-top:1px solid #d9d7cf;align-items:center}.about-practitioner h2,.contact-section h2{font-size:clamp(2.5rem,5vw,5.1rem)}.portrait-wrap{min-height:0;align-self:center;background:transparent;max-width:430px;width:100%;justify-self:center;display:flex;align-items:center;justify-content:center;overflow:hidden}.portrait{width:100%;height:auto;max-height:520px;object-fit:contain;object-position:center}.lead{font-size:1.1rem}.qualification{margin-top:34px;padding-top:26px;border-top:1px solid #d2cfc5}.qualification p{max-width:680px}
.faq-section details{border-top:1px solid #cfcbbf;padding:20px 0;max-width:900px}.faq-section details:last-of-type{border-bottom:1px solid #cfcbbf}.faq-section summary{cursor:pointer;font-size:1.12rem}.faq-section details p{max-width:760px}.insurance-note{display:none}
.contact-section{padding:10vw 7vw;text-align:center;border-top:1px solid #d9d7cf}.contact-section h2{max-width:11ch;margin:0 auto}.contact-section>p:not(.eyebrow):not(.micro){max-width:620px;margin:24px auto}footer{padding:28px 5vw;display:flex;justify-content:space-between;border-top:1px solid #d9d7cf;font-size:.82rem}.footer-links{display:flex;gap:18px}.footer-links a{color:inherit}
@media(max-width:900px){.nav{display:none}.site-header{justify-content:space-between}.lang-switch{margin-left:auto}.hero,.about-practitioner{grid-template-columns:1fr}.hero{padding-top:14vw}.photo-panel .hero-image{height:400px}.brand-statement{grid-template-columns:1fr}.statement-image{height:42vw;min-height:240px}.approach-visual{padding:0 6vw}.approach-visual img{width:86%;height:300px}.split-section#about{padding:8vw 6vw}.cards{grid-template-columns:1fr}.process-grid{grid-template-columns:1fr 1fr}.about-practitioner{grid-template-columns:1fr}.portrait-wrap{max-width:380px}.portrait{max-height:none}}
@media(max-width:600px){.hero,.about-practitioner,.cards-section,.process-section,.faq-section,.contact-section,.statement{padding-left:6vw;padding-right:6vw}.hero h1{font-size:3.2rem}.hero-text{font-size:1rem}.site-header{padding:16px 6vw}.photo-panel .hero-image{height:330px}.photo-panel .values{padding-top:14px}.photo-panel .values>span{font-size:.7rem}.photo-panel .values>span:not(:last-child)::after{margin:0 6px}.statement-image{height:250px}.approach-visual img{width:100%;height:230px}.process-grid{grid-template-columns:1fr}.portrait-wrap{max-width:320px}footer{flex-direction:column;gap:12px}}
