/* Selected Psychotherapy 03: an open cream reading landscape with a single
   left-hand painted connection. This layer owns only the chapter below the
   unchanged hero, the room-photo transition and the closing contact area. */
body#start.psychotherapy-page.pt-sideflow {
  --pt-sideflow-ink:#153c3e;
  --pt-sideflow-line:#c58b5547;
  --pt-sideflow-h2:32px;
}
body#start.pt-sideflow .pt-sideflow-stage {
  position:relative;
  isolation:isolate;
  padding:0;
  margin:0;
  background:none;
  color:var(--pt-sideflow-ink);
}
/* The production raster is paint only. Threads and pearls are independent
   native elements, added by the decoration layer so they never stretch. */
body#start.pt-sideflow .pt-sideflow-art {
  position:absolute;
  z-index:-1;
  inset:-80px 0 16cqw;
  pointer-events:none;
  background:url(pt-sideflow-paint-v1.webp) left top / 100% 100% no-repeat;
  mask-image:linear-gradient(90deg,#000 0,#000 5.8%,transparent 9.8%),
    linear-gradient(to bottom,transparent,#000 70px,#000 calc(100% - 80px),transparent);
  mask-size:100% 100%;
  mask-repeat:no-repeat;
  mask-composite:intersect;
}
body#start.pt-sideflow .pt-sideflow-stage .pt-width {
  width:85.7%;
  max-width:none;
  margin-left:11%;
  margin-right:3.3%;
  min-width:0;
}
body#start.pt-sideflow :is(.pt-sideflow-stage,.pt-contact) h2 {
  color:var(--pt-sideflow-ink);
  font-size:var(--pt-sideflow-h2);
  font-weight:400;
  line-height:1.25;
  letter-spacing:-.025em;
  margin:0 0 20px;
}
body#start.pt-sideflow .pt-sideflow-stage h3 {
  color:var(--pt-sideflow-ink);
  font-size:22px;
  font-weight:400;
  line-height:1.3;
  letter-spacing:-.02em;
  margin:0 0 9px;
}
body#start.pt-sideflow :is(.pt-sideflow-stage,.pt-contact) p {
  max-width:none;
  font-size:16px;
  line-height:1.6;
  color:var(--pt-sideflow-ink);
}
body#start.pt-sideflow :is(.pt-sideflow-stage,.pt-contact) p+p {margin-top:17px}
body#start.pt-sideflow :is(.pt-sideflow-stage,.pt-contact) .pt-eyebrow {
  color:#4f463b;
  font-size:13px;
  line-height:1.5;
  letter-spacing:0;
  margin-bottom:12px;
}
/* Neutralise the older two full-width petrol blocks and all their shore caps.
   These explicit selectors also outrank material-unify/photo-open overrides. */
body#start.pt-sideflow .pt-sideflow-stage .pt-relationship,
body#start.pt-sideflow .pt-sideflow-stage .pt-together.pt-shared-floor {
  position:relative;
  isolation:isolate;
  margin:0;
  min-height:0;
  background:none;
  color:var(--pt-sideflow-ink);
}
body#start.pt-sideflow .pt-sideflow-stage .pt-relationship-paint,
body#start.pt-sideflow .pt-sideflow-stage .pt-together-paint,
body#start.pt-sideflow .pt-sideflow-stage .pt-relationship::before,
body#start.pt-sideflow .pt-sideflow-stage .pt-relationship::after,
body#start.pt-sideflow .pt-sideflow-stage .pt-shared-floor::before,
body#start.pt-sideflow .pt-sideflow-stage .pt-shared-floor::after {
  display:none;
  content:none;
  background:none;
  mask-image:none;
}

body#start.pt-sideflow .pt-sideflow-stage .pt-person {
  display:grid;
  grid-template-columns:minmax(0,38fr) minmax(0,62fr);
  gap:0;
  align-items:start;
  padding:32px 0 34px;
}
body#start.pt-sideflow .pt-person>.pt-section-title {padding-right:32px}
body#start.pt-sideflow .pt-person-copy {max-width:none;min-width:0}
body#start.pt-sideflow .pt-person-copy .pt-emphasis {
  padding-left:18px;
  border-left:2px solid #b66e3e;
  color:var(--pt-sideflow-ink);
  margin-top:22px;
}
body#start.pt-sideflow .pt-sideflow-stage .pt-relationship {padding:18px 0 30px}
body#start.pt-sideflow .pt-relationship-heading {
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr);
  gap:6%;
  align-items:start;
  margin-bottom:24px;
}
body#start.pt-sideflow .pt-relationship-heading h2 {margin-bottom:0}
body#start.pt-sideflow .pt-relationship-heading>p {padding-top:3px;margin:0}
body#start.pt-sideflow .pt-conditions {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:4%;
  padding-top:22px;
  border-top:1px solid var(--pt-sideflow-line);
}
body#start.pt-sideflow .pt-conditions article {min-width:0;padding:0;border:0}
body#start.pt-sideflow .pt-conditions article+article {
  padding-left:24px;
  border-left:1px solid var(--pt-sideflow-line);
}
body#start.pt-sideflow .pt-number {
  color:#4f463b;
  position:static;
  font-size:12px;
  line-height:1.5;
  letter-spacing:0;
  margin-bottom:10px;
}
body#start.pt-sideflow .pt-conditions h3 {margin-bottom:4px}
body#start.pt-sideflow .pt-term {
  color:var(--pt-sideflow-ink);
  font-size:13px;
  line-height:1.5;
  min-height:28px;
  margin-bottom:12px;
}
body#start.pt-sideflow .pt-sideflow-stage .pt-conditions-closing {
  margin-top:28px!important;
  max-width:none!important;
  font-size:16px;
  line-height:1.6;
  color:var(--pt-sideflow-ink);
}
body#start.pt-sideflow .pt-sideflow-stage .pt-gendlin {
  display:grid;
  grid-template-columns:minmax(0,57fr) minmax(0,43fr);
  gap:0;
  align-items:start;
  padding:34px 0 36px;
  border-top:1px solid var(--pt-sideflow-line);
}
body#start.pt-sideflow .pt-gendlin>div {min-width:0;padding-right:34px}
body#start.pt-sideflow .pt-example {
  min-width:0;
  padding:12px 0 0 32px;
  margin:0;
  background:none;
  border-left:1px solid var(--pt-sideflow-line);
}
body#start.pt-sideflow .pt-example>.pt-eyebrow {margin-bottom:10px}
body#start.pt-sideflow .pt-example blockquote {
  position:relative;
  isolation:isolate;
  padding:38px 46px;
  margin:0 -12px 24px;
  color:#fff3df;
  font-size:32px;
  line-height:1.42;
  letter-spacing:-.015em;
}
body#start.pt-sideflow .pt-example blockquote::before {
  content:"";
  position:absolute;
  inset:0 -8px;
  z-index:-1;
  pointer-events:none;
  background:url(pt-sideflow-quote-v1.webp) center / 145% 185% no-repeat;
}
body#start.pt-sideflow .pt-example-note {
  color:#4f463b;
  font-size:12px;
  line-height:1.5;
  margin-top:18px;
}
body#start.pt-sideflow .pt-sideflow-stage .pt-strengths {
  display:grid;
  grid-template-columns:minmax(0,35fr) minmax(0,65fr);
  gap:4%;
  padding:34px 0 36px;
  border-top:1px solid var(--pt-sideflow-line);
}
body#start.pt-sideflow .pt-strengths>.pt-section-title {min-width:0}
body#start.pt-sideflow .pt-strengths .pt-section-title>p {max-width:29ch}
body#start.pt-sideflow .pt-strength-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:22px 5%;
}
body#start.pt-sideflow .pt-strength-grid article {min-width:0;padding:0;border:0}
body#start.pt-sideflow .pt-strength-grid article:nth-child(even) {
  padding-left:24px;
  border-left:1px solid var(--pt-sideflow-line);
}
body#start.pt-sideflow .pt-strength-grid article:nth-child(n+3) {
  padding-top:18px;
  border-top:1px solid var(--pt-sideflow-line);
}
body#start.pt-sideflow .pt-sideflow-stage .pt-together.pt-shared-floor {padding:0}
body#start.pt-sideflow .pt-together-layout.pt-shared-reading {
  display:grid;
  grid-template-columns:minmax(0,56fr) minmax(0,44fr);
  gap:5%;
  align-items:start;
  padding:34px 0 16px;
  border-top:1px solid var(--pt-sideflow-line);
}
body#start.pt-sideflow .pt-together-layout>div {min-width:0}
body#start.pt-sideflow .pt-jamie {padding-top:27px}
body#start.pt-sideflow .pt-jamie-heading {display:block;margin:0 0 17px}
body#start.pt-sideflow .pt-jamie h3 {padding:0}
body#start.pt-sideflow .pt-jamie>.pt-detail {margin-top:23px}
body#start.pt-sideflow .pt-sideflow-stage .pt-detail,
body#start.pt-sideflow .pt-sources .pt-detail {border-top-color:var(--pt-sideflow-line)}
body#start.pt-sideflow .pt-sideflow-stage .pt-detail summary {
  font-size:16px;
  line-height:1.5;
  min-height:48px;
  padding:12px 0;
  color:var(--pt-sideflow-ink);
}
body#start.pt-sideflow .pt-sideflow-stage .pt-detail summary:hover {color:#9c4b24}
body#start.pt-sideflow .pt-detail-body {font-size:16px;line-height:1.6}
body#start.pt-sideflow .pt-sideflow-stage .pt-text-link,
body#start.pt-sideflow .pt-contact .pt-text-link {font-size:16px;line-height:1.5}
/* A separate production photograph spans the page. Its own soft painted
   edges remain visible; no inherited cover crop or petrol field is retained. */
body#start.pt-sideflow .pt-shared-floor .pt-shared-room {
  position:relative;
  z-index:1;
  width:100%;
  max-width:none;
  height:auto;
  margin:12px 0 0;
  overflow:visible;
  mask-image:none;
  background:none;
}
body#start.pt-sideflow .pt-shared-floor .pt-shared-room img {
  position:static;
  inset:auto;
  display:block;
  width:100%;
  max-width:none;
  height:auto;
  margin:0;
  object-fit:contain;
  mask-image:none;
  filter:none;
}
body#start.pt-sideflow .pt-contact.pt-width {
  width:82%;
  max-width:none;
  margin-inline:auto;
  display:grid;
  grid-template-columns:minmax(0,60fr) minmax(0,40fr);
  gap:8%;
  align-items:center;
  padding:22px 0 28px;
}
body#start.pt-sideflow .pt-contact address {font-size:16px;line-height:1.6;margin-top:22px}
body#start.pt-sideflow .pt-contact-actions {gap:24px;align-items:flex-start}
body#start.pt-sideflow .pt-sources.pt-width {
  width:89.2%;
  max-width:none;
  margin-inline:auto;
  padding-bottom:20px;
}
body#start.pt-sideflow .pt-sources summary {font-size:14px;line-height:1.5;min-height:48px}

@media(max-width:1050px) {
  body#start.psychotherapy-page.pt-sideflow {--pt-sideflow-h2:28px}
  body#start.pt-sideflow .pt-sideflow-stage .pt-width {width:87%;margin-left:8.5%;margin-right:4.5%}
  body#start.pt-sideflow .pt-sideflow-art {
    mask-image:linear-gradient(90deg,#000 0,#000 3.8%,transparent 7.4%),
      linear-gradient(to bottom,transparent,#000 70px,#000 calc(100% - 60px),transparent);
  }
  body#start.pt-sideflow .pt-conditions {gap:3%}
  body#start.pt-sideflow .pt-conditions article+article {padding-left:18px}
  body#start.pt-sideflow .pt-gendlin>div {padding-right:24px}
  body#start.pt-sideflow .pt-example {padding-left:24px}
  body#start.pt-sideflow .pt-example blockquote {padding:32px 40px;margin-left:-10px;margin-right:-6px;font-size:28px}
  body#start.pt-sideflow .pt-strength-grid article:nth-child(even) {padding-left:18px}
}
@media(max-width:900px) {
  body#start.pt-sideflow .pt-sideflow-stage .pt-width,
  body#start.pt-sideflow .pt-contact.pt-width {width:min(84%,680px);margin-inline:auto}
  body#start.pt-sideflow .pt-sideflow-stage .pt-person,
  body#start.pt-sideflow .pt-relationship-heading,
  body#start.pt-sideflow .pt-conditions,
  body#start.pt-sideflow .pt-sideflow-stage .pt-gendlin,
  body#start.pt-sideflow .pt-sideflow-stage .pt-strengths,
  body#start.pt-sideflow .pt-together-layout.pt-shared-reading,
  body#start.pt-sideflow .pt-contact.pt-width {grid-template-columns:minmax(0,1fr);gap:22px}
  body#start.pt-sideflow .pt-sideflow-stage .pt-person {padding-top:28px;padding-bottom:28px}
  body#start.pt-sideflow .pt-person>.pt-section-title,
  body#start.pt-sideflow .pt-gendlin>div {padding-right:0}
  body#start.pt-sideflow .pt-sideflow-stage .pt-person h2 br,
  body#start.pt-sideflow .pt-sideflow-stage .pt-strengths h2 br {display:none}
  body#start.pt-sideflow .pt-relationship-heading>p {padding:0}
  body#start.pt-sideflow .pt-conditions {padding-top:0;gap:22px;border:0}
  body#start.pt-sideflow .pt-conditions article,
  body#start.pt-sideflow .pt-conditions article+article {
    position:relative;
    padding:18px 0 0 34px;
    border-left:0;
    border-top:1px solid var(--pt-sideflow-line);
  }
  body#start.pt-sideflow .pt-number {position:absolute;left:0;top:21px}
  body#start.pt-sideflow .pt-term {min-height:0;margin-bottom:12px}
  body#start.pt-sideflow .pt-sideflow-stage .pt-gendlin,
  body#start.pt-sideflow .pt-sideflow-stage .pt-strengths {padding-top:28px;padding-bottom:30px}
  body#start.pt-sideflow .pt-example {padding:4px 0 0 24px}
  body#start.pt-sideflow .pt-example blockquote {
    max-width:520px;
    padding:38px 46px;
    margin:0 auto 22px;
    font-size:28px;
  }
  body#start.pt-sideflow .pt-strengths .pt-section-title>p {max-width:none}
  body#start.pt-sideflow .pt-jamie {padding-top:0}
  body#start.pt-sideflow .pt-together-layout.pt-shared-reading {padding-top:28px;padding-bottom:14px}
  body#start.pt-sideflow .pt-shared-floor .pt-shared-room {margin-top:12px}
  body#start.pt-sideflow .pt-contact.pt-width {padding-top:24px;padding-bottom:28px}
}
@media(max-width:650px) {
  body#start.psychotherapy-page.pt-sideflow {--pt-sideflow-h2:26px}
  body#start.pt-sideflow .pt-sideflow-stage .pt-width,
  body#start.pt-sideflow .pt-contact.pt-width {
    width:calc(100% - 48px);
    max-width:none;
    margin-left:32px;
    margin-right:16px;
  }
  body#start.pt-sideflow .pt-sideflow-art {
    inset:-50px 0 16cqw;
    mask-image:linear-gradient(90deg,#000 0,#000 8px,transparent 24px),
      linear-gradient(to bottom,transparent,#000 45px,#000 calc(100% - 40px),transparent);
  }
  body#start.pt-sideflow .pt-sideflow-stage h2 {margin-bottom:17px}
  body#start.pt-sideflow .pt-sideflow-stage h3 {font-size:22px}
  body#start.pt-sideflow .pt-relationship-heading {gap:16px}
  body#start.pt-sideflow .pt-example {padding-left:17px}
  body#start.pt-sideflow .pt-example blockquote {
    margin-left:-8px;
    margin-right:0;
    padding:34px 34px;
    font-size:26px;
  }
  body#start.pt-sideflow .pt-strength-grid {grid-template-columns:minmax(0,1fr);gap:19px}
  body#start.pt-sideflow .pt-strength-grid article:nth-child(even) {border-left:0;padding-left:0}
  body#start.pt-sideflow .pt-strength-grid article+article {border-top:1px solid var(--pt-sideflow-line);padding-top:18px}
  body#start.pt-sideflow .pt-detail summary {gap:12px}
  body#start.pt-sideflow .pt-detail-body,
  body#start.pt-sideflow .pt-contact address {overflow-wrap:anywhere}
  body#start.pt-sideflow .pt-contact .brush-button {max-width:100%;white-space:normal}
  body#start.pt-sideflow .pt-sources.pt-width {width:calc(100% - 40px)}
}
