/* contacts page (owner, 2026-11-05): the site's fonts, the form as a white panel beside the information, hairlines instead of boxes, the map free under the contacts; below it a black block of reasons built from the clinic's own facts */
/* fonts as on the previous version of this page (owner, 2026-11-05): KelsonSansRU only on headings; all text keeps the site's own font, size and spacing, inherited, never set here */
.ct .ct-h,.ct .ct-formh,.ct-why h2,.ct-why h3,.ct-line dt{font-family:KelsonSansRU,sans-serif;font-weight:700;text-transform:uppercase}
.ct-row{display:grid;grid-template-columns:minmax(0,1fr);row-gap:40px;margin-bottom:48px;color:rgba(0,0,0,.82)}
.ct-about{order:2}
.ct-lines{order:1}
.ct .ct-h{margin:0 0 14px;font-size:13px;line-height:1.46;color:#000}
.ct-lead{margin:0 0 22px;line-height:1.6;color:rgba(0,0,0,.82);text-wrap:pretty}
.ct-more{display:inline-flex;align-items:center;gap:14px;color:#000}
.ct-more:before{content:"";width:36px;border-top:1px solid currentColor;transition:width .5s cubic-bezier(.2,.7,.2,1)}
.ct-more:hover{color:#000}
.ct-more:hover:before{width:60px}

/* the contacts: hairlines, no boxes */
.ct-lines{display:grid;grid-template-columns:minmax(0,1fr);margin:0;border-bottom:1px solid rgba(0,0,0,.14)}
.ct-line{padding:18px 0 20px;border-top:1px solid rgba(0,0,0,.14);min-width:0}
.ct-line dt{margin:0 0 8px;color:#000}
.ct-line dd{margin:0;color:rgba(0,0,0,.82)}
.ct-line dd a{color:inherit;transition:opacity .3s;overflow-wrap:anywhere}
.ct-line dd a:hover{color:inherit;opacity:.6}
.ct-line address{font-style:normal}
.ct-line small{display:block;font-size:inherit;color:rgba(0,0,0,.6)}
.ct-line dd .ct-map{display:inline-flex;align-items:center;gap:8px;margin-top:8px;color:#000;text-decoration:underline;text-decoration-color:rgba(0,0,0,.35);text-underline-offset:4px}

/* the form as a white panel (owner, 2026-11-05): the same fields, the same script */
.ct .popup-content.form-content{background:#fff;color:#000}
.ct .ct-formh{margin:0 0 36px;font-size:16px;line-height:1.5;color:#000}
.ct .popup-content input.form-item,.ct .popup-content textarea.form-item{transition:border-color .35s}
.ct .popup-content input.form-item:focus,.ct .popup-content textarea.form-item:focus{outline:0;border-bottom-color:#000}
.ct .popup-content input.form-item.error,.ct .popup-content textarea.form-item.error{border-bottom-color:red}
.ct .btn.btn-submit{display:flex;align-items:center;justify-content:center;width:100%;height:54px;border:1px solid #000;background:#000;color:#fff;transition:background-color .4s,color .4s}
.ct .btn.btn-submit:hover{background:#fff;color:#000}

/* a calm rise on load */
@keyframes ctRise{from{opacity:0;transform:translate3d(0,16px,0)}to{opacity:1;transform:none}}
.ct-rise{animation:ctRise 1.1s cubic-bezier(.2,.7,.2,1) both}
.ct-rise--2{animation-delay:.12s}
.ct-rise--3{animation-delay:.24s}

/* the reasons */
.ct-why{padding:64px 0 40px;background:#000;color:#fff}
.ct-why h2{margin:0 0 40px;font-size:20px;line-height:1.3;color:#fff}
.ct-grid{display:grid;grid-template-columns:minmax(0,1fr);margin:0;padding:0;list-style:none}
.ct-grid li{margin:0;padding:0;min-width:0}
.ct-cell{position:relative;display:flex;flex-direction:column;height:100%;padding:30px 0 36px;border-top:1px solid rgba(255,255,255,.18);color:#fff}
.ct-cell:hover{color:#fff}
.ct-cell:before{content:"";position:absolute;top:-1px;left:0;width:100%;border-top:1px solid #fff;transform:scaleX(0);transform-origin:0 50%;transition:transform .9s cubic-bezier(.2,.7,.2,1)}
.ct-cell:hover:before{transform:scaleX(1)}
.ct-cell h3{margin:0 0 16px;font-size:16px;line-height:1.35;color:#fff}
.ct-cell p{margin:0 0 24px;line-height:1.6;color:rgba(255,255,255,.66);transition:color .5s;text-wrap:pretty}
.ct-cell:hover p{color:#fff}
.ct-cell i{display:block;width:36px;margin-top:auto;border-top:1px solid rgba(255,255,255,.6);transition:width .6s cubic-bezier(.2,.7,.2,1),border-color .5s}
.ct-cell:hover i{width:72px;border-color:#fff}
.ct-js [data-ctw] .w{opacity:.16;transition:opacity .7s ease}
.ct-js [data-ctw] .w.on{opacity:1}
@media (prefers-reduced-motion:reduce){.ct-rise{animation:none}.ct-js [data-ctw] .w{opacity:1}}

@media screen and (min-width:560px){
  .ct-lines{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:32px}
}
/* tablets: information above, the panel across the width with two columns of fields */
@media screen and (min-width:768px){
  .ct .ct-h{margin-bottom:17px;font-size:14px;line-height:1.4}
  .ct .ct-formh{font-size:18px;line-height:1.6}
  .ct-row{row-gap:48px;margin-bottom:56px}
  .ct-about{order:0}
  .contacts-page-section.ct .form-holder{margin:0}
  .ct .popup-content.form-content{max-width:none;padding:56px 56px 60px}
  .ct .popup-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}
  .ct .popup-form .check-group,.ct .popup-form .btn-submit{grid-column:1/-1}
  .ct-why{padding:88px 0 60px}
  .ct-why h2{margin-bottom:52px;font-size:28px}
  .ct-grid{grid-template-columns:repeat(2,minmax(0,1fr));column-gap:40px}
  .ct-cell{padding:34px 0 48px}
}
/* from 1200: panel on the left, information on the right, one top line; the map is anchored to the top and Kharkiv lies free under the contacts */
@media screen and (min-width:1200px){
  .contacts-page-section.ct{background-position:69% 0;background-size:max(1900px,100vw) auto;padding-bottom:150px}
  .ct .ct-h{margin-bottom:22px}
  .ct .ct-formh{font-size:20px;line-height:1.6}
  .ct-body{display:grid;grid-template-columns:minmax(0,500px) minmax(0,1fr);column-gap:clamp(64px,7vw,136px);align-items:start}
  .ct-row{grid-column:2;grid-row:1;row-gap:44px;margin:0;padding-top:4px}
  .ct-body>.form-holder{grid-column:1;grid-row:1}
  .ct .popup-content.form-content{max-width:500px;padding:52px 52px 56px}
  .ct .popup-form{display:block}
  .ct-lead{margin-bottom:24px}
  .ct-lines{grid-template-columns:minmax(0,.82fr) minmax(0,1fr)}
  .ct-why{padding:120px 0 80px}
  .ct-why h2{margin-bottom:64px;font-size:35px}
  .ct-grid{grid-template-columns:repeat(3,minmax(0,1fr));column-gap:56px}
  .ct-cell{padding:36px 0 64px}
  .ct-cell h3{font-size:18px;margin-bottom:20px}
}
@media screen and (min-width:1920px){
  .contacts-page-section.ct{background-size:max(2400px,100vw) auto;padding-bottom:190px}
  .ct .ct-h{margin-bottom:30px;font-size:16px;line-height:1.5}
  .ct .ct-formh{font-size:25px;line-height:1.3;margin-bottom:56px}
  .ct-body{grid-template-columns:minmax(0,620px) minmax(0,1fr)}
  .ct-row{row-gap:60px}
  .ct .popup-content.form-content{max-width:620px;padding:76px 80px 80px}
  .ct .btn.btn-submit{height:60px}
  .ct-line{padding:24px 0 28px}
  .ct-line dt{margin-bottom:12px}
  .ct-why{padding:170px 0 120px}
  .ct-why h2{margin-bottom:90px;font-size:50px}
  .ct-grid{column-gap:80px}
  .ct-cell{padding:44px 0 84px}
  .ct-cell h3{font-size:22px;margin-bottom:24px}
}
