/* Embodied Relational Psychotherapy: the styles every page shares (moved here from the pages, Oct 16). Each page links this first, then keeps only its own styles inline. */
:root{color-scheme:dark;--gap:clamp(16px,2.4vw,28px);--breath:clamp(40px,5vw,72px);
--ground:#000000;--ground2:#111111;--panel:#EEECE8;--panel2:#D6D3CC;--ink:#1F1D1A;--mute:#66625B;--head:#EDE6D8;--dim:#B5AA9A;--accent:#7DB0E1;--accent-ink:#3B6E9E;--rule:rgba(237,230,216,.16);
--serif:'Shippori Mincho',Georgia,'Times New Roman',serif;--sans:'IBM Plex Sans',system-ui,-apple-system,'Segoe UI',sans-serif}
*{box-sizing:border-box;margin:0;padding:0}
html{-webkit-text-size-adjust:100%}
body{background:var(--ground);color:var(--head);font:300 17px/1.65 var(--sans);min-height:100%}
img{max-width:100%;display:block}
a{color:inherit}
.wrap{max-width:1200px;margin:0 auto;padding-inline:clamp(16px,4vw,48px)}
.nav{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding-block:28px;background:var(--ground)}
.nav .mark{display:block;font:800 34px/1.1 var(--serif);letter-spacing:-.005em;color:var(--head);border:0;padding:0}
.nav ul{display:flex;gap:6px 28px;list-style:none;flex-wrap:wrap;margin-top:12px}
.nav .contact{flex:none;margin-top:2px;padding:7px 18px;border:1px solid var(--head);line-height:1.2}
.nav .contact:hover,.nav .contact:focus-visible{background:var(--head);color:var(--ground)}
.nav a{font-size:16px;font-weight:300;color:var(--head);text-decoration:none;padding-block:4px;border-bottom:1px solid transparent}
.nav a:hover,.nav a:focus-visible{color:var(--head)}
.nav a[aria-current]{color:var(--head);border-bottom-color:var(--accent)}
h1{font:800 clamp(40px,6vw,76px)/1.02 var(--serif);letter-spacing:-.01em;color:var(--head);text-wrap:balance}
.sect-h{font:800 clamp(26px,3.2vw,38px)/1.15 var(--serif);color:var(--head);text-wrap:balance}
.lede{font:300 clamp(17px,1.6vw,20px)/1.55 var(--sans);color:var(--dim);max-width:34ch;margin-top:18px}
.lk{display:inline-block;font:400 15px/1 var(--sans);color:var(--head);text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:5px;margin-top:26px}
.lk:hover{border-bottom-width:2px}
.cover{container-type:size;display:grid;place-items:center}
.cover-txt{position:absolute;left:clamp(16px,4vw,48px);right:clamp(16px,4vw,48px);bottom:clamp(28px,5vw,64px);z-index:2;max-width:1200px;margin:0 auto}
.cover-txt .tag{font:800 clamp(24px,2.6vw,38px)/1.25 var(--serif);color:#F3EDE1;max-width:22ch;text-wrap:balance}
.cover-txt .lk{color:#F3EDE1}
.hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:clamp(28px,5vw,72px);align-items:end;padding-block:clamp(40px,6vw,80px)}
.hero-txt{padding-bottom:clamp(8px,2vw,40px)}
.reveal{background:none;padding:0}
.reveal img{width:100%;height:auto;aspect-ratio:3/4;object-fit:cover}
.reveal.wide img{aspect-ratio:4/3}
.skylight{height:clamp(220px,40vw,520px);overflow:hidden}
.skylight img{width:100%;height:100%;object-fit:cover}
.skylight.top img{object-position:50% 40%}
.title{padding-block:clamp(36px,5vw,64px) clamp(20px,3vw,40px)}
.plate{position:relative;height:min(calc(100svh - 140px),900px);min-height:480px;overflow:hidden;background:var(--ground)}
.plate img{position:absolute;top:0;right:0;width:min(68%,980px);height:100%;object-fit:cover;object-position:var(--pos,50% 50%)}
.plate::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,#000 0,#000 calc(100% - min(68%,980px)),rgba(0,0,0,.62) calc(100% - min(68%,980px) + 18%),rgba(0,0,0,.28) 100%),linear-gradient(0deg,rgba(0,0,0,.7) 0,rgba(0,0,0,0) 45%)}
.plate .wrap{position:relative;z-index:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;padding-bottom:clamp(36px,6vw,80px)}
.plate h1{font-size:clamp(56px,9vw,128px);line-height:.95}
@media (max-width:860px){
 .plate{height:auto;min-height:0;aspect-ratio:3/4;max-height:calc(100svh - 190px)}
 .plate img{width:100%}
 .plate::after{background:linear-gradient(0deg,#000 0,rgba(0,0,0,.6) 40%,rgba(0,0,0,.3) 100%)}
}
.windows{display:grid;gap:var(--gap);padding-block:clamp(20px,3vw,40px)}
.two{grid-template-columns:repeat(2,minmax(0,1fr))}
.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.window{background:var(--panel);color:var(--ink);padding:clamp(22px,3.4vw,44px)}
.window h2,.window h3{font:800 clamp(22px,2.4vw,30px)/1.2 var(--serif);color:var(--ink);text-wrap:balance;margin-bottom:14px}
.window h3{font-size:clamp(19px,1.9vw,24px)}
.window p{max-width:62ch}
.window p+p{margin-top:1em}
.window .lk{color:var(--ink);border-bottom-color:var(--accent-ink)}
.window .small{font-size:14px;color:var(--mute);margin-top:18px}
.reading{max-width:68ch;font-size:18px;line-height:1.75}
.reading h2{margin-top:2.2em}
.reading h2:first-child{margin-top:0}
.reading p+p{margin-top:1.15em}
.reading em{font-style:italic}
.ph{color:var(--mute);font-style:italic}
.pair{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);gap:var(--gap);align-items:stretch}
.pair .reveal{display:flex}
.pair .reveal img{aspect-ratio:auto;height:100%;min-height:320px}
.band{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--gap);padding-block:clamp(20px,3vw,40px)}
.band figure{margin:0}
.band img{width:100%;aspect-ratio:4/5;object-fit:cover}
.band figcaption{font:800 clamp(20px,2vw,26px)/1.2 var(--serif);color:var(--head);margin-top:14px}
.band figcaption span{display:block;font:300 15px/1.5 var(--sans);color:var(--dim);margin-top:4px}
.find{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:0;border-top:1px solid var(--rule);border-bottom:1px solid var(--rule)}
.find li{padding:22px 20px 24px 0;border-right:1px solid var(--rule);margin-right:20px}
.find li:last-child{border-right:0;margin-right:0}
.find a{text-decoration:none;display:block}
.find b{display:block;font:800 20px/1.2 var(--serif);color:var(--head)}
.find span{display:block;font-size:14px;color:var(--dim);margin-top:6px;line-height:1.45}
.person{display:grid;grid-template-columns:minmax(0,.55fr) minmax(0,1.45fr);gap:clamp(20px,3vw,40px);align-items:start}
.person h2{margin-bottom:4px}
.person .role{font-size:15px;color:var(--mute);margin-bottom:16px}
.person .meta{display:grid;grid-template-columns:auto 1fr;gap:6px 18px;font-size:15px;margin-top:18px;max-width:52ch}
.person .meta dt{color:var(--mute)}
.person .open{display:inline-block;font-weight:500;font-size:14px;color:var(--accent-ink);margin-top:14px}
.person .lic{font-size:13px;color:var(--mute);margin-top:18px;border-top:1px solid rgba(31,29,26,.15);padding-top:12px;max-width:60ch}
.card .portrait{margin-bottom:18px}
.card h3{margin-bottom:4px}
.card .role{font-size:14px;color:var(--mute)}
.card p{font-size:15px;margin-top:12px}
.faq{display:grid;gap:2px}
.faq details{background:var(--panel);color:var(--ink)}
.faq summary{cursor:pointer;list-style:none;padding:20px clamp(22px,3vw,40px);font:800 19px/1.3 var(--serif);display:flex;justify-content:space-between;gap:16px}
.faq summary::-webkit-details-marker{display:none}
.faq summary::after{content:"+";font:400 22px/1 var(--sans);color:var(--mute)}
.faq details[open] summary::after{content:"\2013"}
.faq .a{padding:0 clamp(22px,3vw,40px) 24px;max-width:66ch}
.faq .a p+p{margin-top:.8em}
.post{display:grid;grid-template-columns:minmax(0,.3fr) minmax(0,1fr);gap:clamp(16px,3vw,40px)}
.post .when{font-size:14px;color:var(--mute);line-height:1.5}
.post .when b{display:block;font-weight:500;color:var(--ink)}
footer{margin-top:clamp(48px,7vw,96px);padding-block:clamp(40px,5vw,64px) clamp(48px,6vw,80px)}
.foot{font-size:15px;line-height:1.7;color:var(--dim)}
.foot .foot-mark{font:800 clamp(26px,3vw,38px)/1.15 var(--serif);color:var(--head);letter-spacing:-.005em;margin-bottom:12px}
.foot p+p{margin-top:20px}
.foot .addr{user-select:all}
.foot .links{display:flex;flex-wrap:wrap;gap:8px 28px;margin-top:28px}
.foot a{color:var(--head);font-weight:400;text-decoration:none;border-bottom:1px solid var(--accent);padding-bottom:3px}
.note{font-size:13px;color:var(--dim);margin-top:14px;max-width:70ch}
.strip{height:72px;background:var(--ground2) center/cover no-repeat}
.strip+.find{border-top:0}
.wrap>.strip:only-child{margin-top:clamp(8px,1.5vw,20px)}
:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media (max-width:860px){
 .hero,.two,.three,.pair,.person,.post{grid-template-columns:1fr}
 .hero{align-items:start}
 .find{grid-template-columns:repeat(2,minmax(0,1fr))}
 .find li:nth-child(2n){border-right:0;margin-right:0}
 .band{grid-template-columns:1fr}
 .nav .mark{font-size:28px}
 .nav ul{gap:6px 20px}
 .nav .contact{margin-top:0;padding:6px 14px}
 .pair .reveal img{min-height:0;aspect-ratio:4/3}
}
@media (prefers-reduced-motion:no-preference){.lk,.nav a{transition:color .15s,border-color .15s}}
footer.slim{margin-top:var(--breath);padding-block:0 22px}
footer.slim .foot{font-size:14px;line-height:1.6;text-align:center;color:var(--dim)}
footer.slim .line{display:flex;flex-wrap:wrap;justify-content:center;gap:6px 28px}
footer.slim .line>*{white-space:nowrap}
footer.slim .legal{font-size:12.5px;margin-top:6px;gap:4px 24px;opacity:.8}
@media (max-width:420px){footer.slim .line>*{white-space:normal}}
