/* Approved entry harmony. Original image assets and lower chapters are preserved. */
.entry-harmony{--entry-title:clamp(36px,3.15cqw,48px)}
body.entry-harmony.nav-brush-v1 :is(.adult-header,.site-header){
 position:relative;isolation:isolate;z-index:20;display:flex;align-items:center;
 justify-content:space-between;width:90.6%;max-width:1437px;height:auto;min-height:0;
 margin:0 auto;padding:12px 0 8px;gap:24px;
}
body.entry-harmony.nav-brush-v1 :is(.adult-header,.site-header):before{
 content:"";position:absolute;z-index:-1;pointer-events:none;top:0;bottom:-24px;
 left:calc((100% - 100cqw)/2);width:100cqw;
 background:linear-gradient(#fff3dfe8,#fff3dfda),url(kupferlicht-paint.png) left top/180% auto no-repeat;
 mask-image:url(entry-header-feather-v1.svg);mask-size:100% 100%;mask-repeat:no-repeat;
}
body.entry-harmony.nav-brush-v1 :is(.adult-header,.site-header) .brand{
 position:relative;left:0;width:338px;max-width:28%;flex:none;
}
body.entry-harmony.nav-brush-v1 :is(.adult-header,.site-header) .mobile-menu{margin-top:0!important}
.entry-harmony :is(.matched-opening-copy,.about-hero-copy,.contact-write) h1{
 font-size:var(--entry-title);font-weight:400;line-height:1.15;letter-spacing:-.035em;
 white-space:normal;
}
.entry-harmony :is(.matched-opening-copy,.about-hero-copy,.contact-write) .breadcrumb{
 font-size:13px;line-height:1.65;margin:0 0 18px;gap:10px;
}
.entry-harmony :is(.matched-opening-copy,.about-hero-copy)>.brush-button{margin-top:22px}
.entry-harmony :is(.matched-opening-copy,.about-hero-copy,.contact-write)>p{
 font-size:16px;line-height:1.65;
}
.entry-harmony:is(.adult-page,.parents-selected-page) .matched-opening{
 width:90.6%;max-width:1437px;padding-top:18px;
}
.entry-harmony:is(.adult-page,.parents-selected-page) .matched-opening-copy{left:0;width:40.5%}
.entry-harmony.about-page .about-hero{
 width:90.6%;max-width:1437px;padding-top:18px;min-height:47cqw;
}
.entry-harmony.about-page .about-hero-copy{width:42.5%}
.entry-harmony.about-page .about-hero blockquote{
 font-size:clamp(21px,1.55cqw,23px);line-height:1.5;letter-spacing:-.02em;
 margin:20px 0 18px;max-width:25em;
}
.entry-harmony.about-page .about-hero-copy>p{max-width:470px}
.entry-harmony.about-page .about-chapters{margin-top:20px;font-size:13px;gap:25px}
.entry-harmony.about-page .about-hero-panorama{
 width:100%;top:-2cqw;left:0;right:auto;
}
.entry-harmony.contact-page-v2 .contact-spread{padding-top:18px;padding-bottom:8cqw}
.entry-harmony.contact-page-v2 .contact-write h1{margin-bottom:20px}
.entry-harmony.contact-page-v2 .contact-write>p{margin:0 0 20px}
.entry-harmony.contact-page-v2 .contact-direct{
 position:relative;top:auto;left:auto;width:auto;margin:0 0 28px;padding:0;
 color:var(--ink);background:none;isolation:auto;
}
.entry-harmony.contact-page-v2 .contact-direct:before,
.entry-harmony.contact-page-v2 .contact-direct:after{content:none}
.entry-harmony.contact-page-v2 .contact-direct address{font-size:15px;gap:7px;line-height:1.55}
.entry-harmony.contact-page-v2 .contact-direct a{padding-left:28px}
.entry-harmony.contact-page-v2 .contact-direct a:before{color:#a04b28;font-size:19px}
.entry-harmony.contact-page-v2 .contact-direct a[href^="tel:"]{font-size:25px}
.entry-harmony.contact-page-v2 .contact-direct .contact-route{font-size:13px;margin-top:7px}
.entry-harmony.contact-page-v2 .contact-form h3{font-size:29px;line-height:1.25;margin-bottom:12px}
.entry-harmony.contact-page-v2 .form-intro{margin-bottom:18px}
@media(max-width:1320px){
 body.entry-harmony.nav-brush-v1 :is(.adult-header,.site-header) .brand{width:338px;max-width:calc(100% - 90px)}
 body.entry-harmony.nav-brush-v1 :is(.adult-header,.site-header) .mobile-menu summary{margin:0}
}
@media(max-width:900px){
 .entry-harmony{--entry-title:clamp(32px,4.6vw,40px)}
 .entry-harmony :is(.matched-opening-copy,.about-hero-copy,.contact-write) .breadcrumb{font-size:12px;margin-bottom:17px}
 .entry-harmony:is(.adult-page,.parents-selected-page) .matched-opening{padding-top:18px}
 .entry-harmony:is(.adult-page,.parents-selected-page) .matched-opening-copy{width:100%}
}
@media(max-width:1250px){
 .entry-harmony.about-page .about-hero{min-height:0;padding-top:18px;padding-bottom:12px}
 .entry-harmony.about-page .about-hero-copy{width:100%;max-width:660px}
 .entry-harmony.about-page .about-hero blockquote{font-size:21px;max-width:27em}
 .entry-harmony.about-page .about-hero-panorama{
  position:relative;z-index:0;left:calc((100% - min(100cqw,820px))/2);right:auto;
  top:auto;width:min(100cqw,820px);margin:18px 0 0;
 }
 .entry-harmony.about-page .about-hero-window{position:relative;aspect-ratio:1.09;overflow:clip}
 .entry-harmony.about-page .about-hero-panorama img{
  position:absolute;top:-15.805%;left:-75.4386%;width:175.4386%;mask-image:none;
 }
 .entry-harmony.about-page .about-hero-panorama img.about-hero-shore{
  top:-15.805%;left:-75.4386%;mask-image:url(about-opening-shore-mask-v1.svg);
 }
 .entry-harmony.about-page .about-hero-panorama figcaption{position:static;margin:5px 6% 0}
}
@media(max-width:1240px){
 .entry-harmony.contact-page-v2 .contact-spread{padding:0}
 .entry-harmony.contact-page-v2 .contact-write{padding-top:18px;padding-bottom:30px}
 .entry-harmony.contact-page-v2 .contact-door{height:50cqw;max-height:340px}
 .entry-harmony.contact-page-v2 .contact-door img{object-position:center 58%}
 .entry-harmony.contact-page-v2 .contact-direct{margin-bottom:28px}
 .entry-harmony.contact-page-v2 .contact-direct address{margin:0}
 .entry-harmony.contact-page-v2 .contact-direct .contact-route{margin:8px 0 0}
}
@media(max-width:760px){
 .entry-harmony{--entry-title:clamp(30px,6vw,38px)}
 body.entry-harmony.nav-brush-v1 :is(.adult-header,.site-header){width:87%;padding:12px 0 10px;gap:14px}
 body.entry-harmony.nav-brush-v1 :is(.adult-header,.site-header) .brand{width:310px;max-width:calc(100% - 62px)}
 body.entry-harmony.nav-brush-v1 :is(.adult-header,.site-header) .mobile-menu{align-self:flex-start;margin-top:13px!important}
 body.entry-harmony.nav-brush-v1 :is(.adult-header,.site-header):before{bottom:-18px;background-size:auto,220% auto}
 .entry-harmony:is(.adult-page,.parents-selected-page) .matched-opening,.entry-harmony.about-page .about-hero{width:87%}
 .entry-harmony:is(.adult-page,.parents-selected-page) .matched-opening-copy{left:0}
 .entry-harmony.about-page .about-hero-copy{width:100%}
 .entry-harmony.about-page .about-hero blockquote{font-size:21px;margin:20px 0 18px}
 .entry-harmony.about-page .about-hero h1 br{display:block}
 .entry-harmony.contact-page-v2 .contact-write{width:87%}
 .entry-harmony.contact-page-v2 .contact-write h1{font-size:var(--entry-title)}
 .entry-harmony.contact-page-v2 .contact-direct address{font-size:15px}
 .entry-harmony.contact-page-v2 .contact-direct a[href^="tel:"]{font-size:25px}
 .entry-harmony.contact-page-v2 .contact-form h3{font-size:27px}
}
@media(max-width:420px){.entry-harmony{--entry-title:30px}}

/* Homepage retains its protected keyvisual and original hero geometry. */
body.entry-harmony.master-e05 .site-header{position:absolute;inset:0 auto auto 4.7%;margin:0}
body.entry-harmony.master-e05 .site-header .brand{position:relative;inset:auto;line-height:0}
body.entry-harmony.master-e05 .site-header .desktop-nav{position:static;inset:auto;width:auto;flex:1}
body.entry-harmony.master-e05 .site-header .mobile-menu{position:relative;inset:auto;align-self:center}
body.entry-harmony.master-e05 .site-header .mobile-menu summary{position:relative;inset:auto}
body.entry-harmony.master-e05 .site-header .mobile-menu nav{right:0;top:calc(100% + 10px)}
body.entry-harmony.master-e05 .hero-copy h1{font-size:var(--entry-title);line-height:1.15;letter-spacing:-.035em;white-space:normal}
.entry-harmony :is(.pt-hero-copy,.opening-copy) h1{font-size:var(--entry-title);font-weight:400;line-height:1.15;letter-spacing:-.035em;white-space:normal}
.entry-harmony :is(.pt-hero-copy,.opening-copy) .breadcrumb{font-size:13px;line-height:1.65;gap:10px;margin:0 0 18px}
.entry-harmony.psychotherapy-page .pt-hero{padding-top:18px}
.entry-harmony.psychotherapy-page .pt-hero-copy{padding-top:0}
.entry-harmony.psychotherapy-page .pt-hero-layout{align-items:start}
.entry-harmony.psychotherapy-page .pt-hero-kv{width:106%;margin-left:-4%;align-self:center}
.entry-harmony.costs-atmosphere .practice-photo-opening{padding-top:18px;padding-left:4.7%;padding-right:4.7%}
.entry-harmony.costs-atmosphere .practice-photo-opening .opening-copy h1{font-size:var(--entry-title);line-height:1.15;letter-spacing:-.035em;margin:0 0 20px}
.entry-harmony.costs-atmosphere .practice-photo-opening .opening-copy .lead{font-size:clamp(21px,1.55cqw,23px);line-height:1.5;margin-bottom:20px}
@media(min-width:1001px){.entry-harmony.costs-atmosphere .practice-photo-opening{--costs-header-height:calc(20px + min(338px,25.368cqw)*.415984)}}
@media(min-width:1001px) and (max-width:1320px){.entry-harmony.costs-atmosphere .practice-photo-opening{--costs-header-height:calc(20px + 338px*.415984)}}
@media(max-width:1100px){
 body.entry-harmony.master-e05 .site-header{position:relative;inset:auto;margin:0 auto}
 body.entry-harmony.master-e05 .site-header .brand{width:338px;max-width:calc(100% - 90px)}
}
@media(max-width:1000px){.entry-harmony.costs-atmosphere .practice-photo-opening{padding-inline:6.5%}}
@media(max-width:900px){
 .entry-harmony :is(.pt-hero-copy,.opening-copy) .breadcrumb{font-size:12px;margin-bottom:17px}
 .entry-harmony.psychotherapy-page .pt-hero-kv{width:110%;margin:8px -5% 0}
}
@media(max-width:760px){
 body.entry-harmony.master-e05 .site-header .brand{width:310px;max-width:calc(100% - 62px)}
 body.entry-harmony.master-e05 .site-header .mobile-menu{align-self:flex-start;margin-top:13px!important}
 body.entry-harmony.master-e05 .a-lockup40-subtitle{font-size:13.8px;letter-spacing:.02px}
}
@media(max-width:380px){body.entry-harmony.master-e05 .a-lockup40-subtitle{font-size:17px;letter-spacing:0}}
/* The stacked contact photo also enters through a soft, uneven shore. */
@media(max-width:1240px){
 .entry-harmony.contact-page-v2 .contact-door{mask-image:url(entry-contact-mobile-mask-v1.svg),linear-gradient(90deg,transparent,#000 3%,#000 97%,transparent);mask-composite:intersect;mask-size:100% 100%;mask-repeat:no-repeat}
}
