/* М'які краї фотографій, без розмиття облич і деталей усередині кадру. */
:root{--photo-feather:20px}
main figure:has(>img),.content-dialog figure:has(>img),.reading>img,.art:has(>img){
  border:0;box-shadow:none;border-radius:0;
  mask-image:linear-gradient(to right,transparent,#000 var(--photo-feather),#000 calc(100% - var(--photo-feather)),transparent),linear-gradient(to bottom,transparent,#000 var(--photo-feather),#000 calc(100% - var(--photo-feather)),transparent);
  mask-composite:intersect;
}
/* Чотири рівнозначні переходи замість дрібних плашок. */
body.page-cabinet .subpage .about-next .about-direction-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;max-width:none}
body.page-cabinet .subpage .about-next .about-direction-links a{min-height:66px;padding:14px 20px;border:1px solid #aaa387;border-radius:8px;background:#faf8f1;color:#282e20;font:400 21px/1.3 var(--sans);text-align:center;box-shadow:0 2px 5px #493c2310;transition:background .2s,border-color .2s,box-shadow .2s}
body.page-cabinet .subpage .about-next .about-direction-links a:hover{background:#f3e9d3;color:#282e20;border-color:#bd9158;box-shadow:0 4px 12px #493c231a}
body.page-cabinet .subpage .about-next .about-direction-links a:focus-visible{outline:3px solid #855125;outline-offset:4px;background:#f3e9d3}
body.page-cabinet .subpage .about-identity .practitioner .practitioner-name{font-size:66px}
body.page-cabinet .subpage .about-facts{grid-template-columns:1fr;gap:12px}
body.page-cabinet .subpage .about-identity .about-facts :is(.about-experience,.about-audience,.about-work-format){font:400 23px/1.4 var(--sans);gap:14px;margin:0}
body.page-cabinet .subpage .about-facts .fact-icon{width:29px;height:32px;flex-basis:29px}

/* Напівпрозора шавлієва кнопка з чітким темним підписом. */
body.home-honeycomb .honeycomb-action{background:rgb(126 140 105 / 12%);border:1px solid rgb(111 126 88 / 44%);color:#3b4432;box-shadow:none}
body.home-honeycomb .honeycomb:is(:hover,:focus-visible) .honeycomb-action{background:rgb(197 154 86 / 22%);border-color:rgb(161 119 59 / 65%);color:#3b4432;box-shadow:0 2px 7px rgb(128 100 55 / 10%)}

/* Заливка лишається точно всередині SVG-контуру соти. */
body.home-honeycomb .honeycomb-outline{fill:transparent;transition:fill .22s ease,stroke .22s ease,filter .22s ease}
body.home-honeycomb .honeycomb:is(:hover,:focus-visible) .honeycomb-outline{fill:rgb(226 183 83 / 19%);stroke:#c59a56;filter:drop-shadow(0 3px 9px rgb(176 132 54 / 12%))}

/* Контакти терапії: спільні верхній і нижній краї фото та тексту. */
@media(min-width:769px){
  body.page-therapy .subpage .contact-location{padding:36px 40px}
  body.page-therapy .subpage .contact-location::after{background:#f5f0e6}
  body.page-therapy .subpage .contact-location .location-grid{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);gap:clamp(30px,4.5vw,64px);align-items:stretch}
  body.page-therapy .subpage .contact-location .gallery{position:relative;min-height:0;width:100%;margin:0}
  body.page-therapy .subpage .contact-location .gallery figure{position:absolute;inset:0;width:100%;height:100%;margin:0}
  body.page-therapy .subpage .contact-location .gallery .cabinet-photo{width:100%;height:100%;transform:none;object-fit:cover;object-position:50% 58%}
  body.page-therapy .subpage .contact-location .location-info h2{font-size:38px;line-height:1.1;max-width:none;margin:0 0 20px}
  body.page-therapy .subpage .contact-location .location-info>p{font-size:18px;line-height:1.5;margin:0 0 16px}
  body.page-therapy .subpage .contact-location .contact-location-actions{margin-top:18px;padding-top:18px}
  body.page-therapy .subpage .contact-location .contact-primary-row{width:100%;gap:16px;justify-content:space-between}
  body.page-therapy .subpage .contact-location .contact-socials{margin-left:auto}
}

/* Пропорції запрошення з погодженого ескізу 890 на 253 px. */
@media(min-width:901px){
  body.page-cabinet .subpage .editorial-invitation.about-invitation{container-type:inline-size;display:grid;grid-template-columns:minmax(0,1fr);grid-template-rows:auto;gap:0;align-items:center;width:100%;min-width:0;aspect-ratio:890/253;min-height:280px;padding:0}
  body.page-cabinet .subpage .about-invitation .invitation-copy{width:34.5%;margin-left:7.64%}
  body.page-cabinet .subpage .about-invitation h2{font-size:clamp(32px,3.82cqw,46.5px)}
  body.page-cabinet .subpage .about-invitation p{font-size:clamp(16px,1.57cqw,19.1px);line-height:1.5}
  body.page-cabinet .subpage .about-invitation .btn{font-size:clamp(16px,1.57cqw,19.1px);min-height:clamp(48px,4.94cqw,60.1px);padding:10px clamp(28px,3.37cqw,41px)}
  body.page-cabinet .subpage .editorial-invitation.about-invitation figure{width:55.05618%;mask-image:linear-gradient(to right,transparent,#000 7%);mask-composite:add}
  body.page-cabinet .subpage .about-invitation figure img{object-fit:contain;object-position:right bottom;mask-image:none}
}

@media(max-width:1100px){
  body.page-cabinet .subpage .about-next .about-direction-links{gap:10px}
  body.page-cabinet .subpage .about-next .about-direction-links a{font-size:18px;padding:12px;min-height:64px}
  body.page-cabinet .subpage .about-identity .practitioner .practitioner-name{font-size:52px}
  body.page-cabinet .subpage .about-identity .about-facts :is(.about-experience,.about-audience,.about-work-format){font-size:21px}
}
@media(max-width:900px){
  body.page-cabinet .subpage .about-next .about-direction-links{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.page-cabinet .subpage .about-identity .practitioner .practitioner-name{font-size:38px}
  body.page-cabinet .subpage .about-identity .about-facts :is(.about-experience,.about-audience,.about-work-format){font-size:20px}
}
@media(max-width:640px){
  :root{--photo-feather:12px}
  body.page-cabinet .subpage .about-next .about-direction-links a{font-size:18px;padding:12px 10px;min-height:64px}
  body.page-cabinet .subpage .about-identity .practitioner .practitioner-name{font-size:40px}
}
@media(prefers-reduced-motion:reduce){
  body.home-honeycomb .honeycomb-outline,body.page-cabinet .subpage .about-next .about-direction-links a{transition:none}
}

/* Навігація постійно доступна в межах аркуша. */
body .site-sheet .site-header{position:sticky;top:0;z-index:50;background:#faf8f1;box-shadow:0 3px 12px rgb(63 49 27 / 5%)}
body .site-header .nav{min-height:96px}
@media(max-width:900px){body .site-header .navlinks{max-height:calc(100dvh - 80px);overflow-y:auto}}
body .site-header .services-dropdown{max-height:calc(100dvh - 120px);overflow-y:auto}
html{scroll-padding-top:120px}
/* Відповідь використовує ту саму ширину, що й рядок запитання. */
body.page-cabinet .subpage .direction-question>summary{display:flex;align-items:flex-start;justify-content:space-between;gap:24px;padding-right:0}
body.page-cabinet .subpage .direction-question>summary>span{flex:1;min-width:0}
body.page-cabinet .subpage .direction-question>summary::after{flex:0 0 24px}
body.page-cabinet .subpage .direction-question>div{width:100%;max-width:none;max-inline-size:none;padding-right:48px;text-align:left;text-wrap:wrap;overflow-wrap:normal;word-break:normal;hyphens:none}
body.page-cabinet .subpage .direction-question>div :is(p,div,ul,ol,li){max-width:none;text-align:left;text-wrap:wrap;overflow-wrap:normal;word-break:normal;hyphens:none}
body.page-cabinet .subpage .therapy-overview .audience-tag{display:flex;align-items:center;gap:12px;font:400 20px/1.5 var(--sans);color:var(--muted)}
body.page-cabinet .subpage .therapy-overview .audience-tag .fact-icon{width:28px;height:28px;flex-basis:28px}
body.home-honeycomb .rental-callout{margin:64px 0 0}
body.home-honeycomb .honeycomb-mindfulness .honeycomb-title{max-width:100%;text-wrap:balance}
@media(max-width:900px){body .site-header .nav{min-height:80px}body .site-header .navlinks{max-height:calc(100dvh - 80px)}html{scroll-padding-top:100px}}
@media(max-width:640px){body.page-cabinet .subpage .about-next .about-direction-links{grid-template-columns:1fr}body.page-cabinet .subpage .direction-question>div{padding-right:0}body.page-cabinet .subpage .therapy-overview .audience-tag{font-size:18px}}

.address-map-link{text-decoration:underline;text-decoration-color:rgb(89 98 56 / 40%);text-decoration-thickness:1px;text-underline-offset:5px;transition:text-decoration-color .2s}
.address-map-link:hover{text-decoration-color:currentColor}
.address-map-link:focus-visible{outline:2px solid #855125;outline-offset:5px}

body.page-cabinet .subpage .service-meta>.service-frequency{padding-bottom:10px;margin-bottom:0;border-bottom:1px solid var(--line)}
@media(max-width:768px){body.page-cabinet .subpage .service-conditions .service-meta>.service-audience{grid-column:1/-1}body.page-cabinet .subpage .service-meta>.service-frequency{padding-bottom:0}}
