/* Страница варача, все что ниже */
:root {
  --ink:         #1C1C1A;
  --ink-muted:   #6B6B67;
  --ink-faint:   #A8A89F;
  --bg:          #FAFAF8;
  --surface:     #FFFFFF;
  --border:      #E4E4DF;
  --dark:        #1C1C1A;
  --font:        'Forum',Arial,sans-serif;
  --btn-fill:    #4a3f38;
  --btn-fill-text:#faf8f6;
  --btn-outline: #976d5c;
  --sp-xs:8px; --sp-sm:16px; --sp-md:24px; --sp-lg:48px; --sp-xl:80px;
  --r-sm:4px; --r-md:8px; --r-lg:16px; --r-full:9999px;
  --ease:200ms ease;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;scroll-behavior:smooth}
body{font-family:var(--font);background:var(--bg);color:var(--ink);line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
img{max-width:100%}

.container{max-width:1120px;margin:0 auto;padding:0 var(--sp-md)}

/* Hero grid */
.hero{padding:var(--sp-lg) 0 var(--sp-xl)}
.hero__grid{display:grid;grid-template-columns:320px 1fr;gap:var(--sp-xl);align-items:start}

/* Photo column */
.photo-wrap{position:sticky;top:var(--sp-lg)}
.photo-card{border-radius:var(--r-lg);overflow:hidden;aspect-ratio:3/4;background:#E8E5DF;margin-bottom:var(--sp-sm)}
.photo-card img{width:100%;height:100%;object-fit:cover}
.photo-placeholder{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;color:var(--ink-faint);font-size:14px}

/* Quick facts */
.quick-facts{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-lg);padding:var(--sp-md)}
.qf-row{display:flex;justify-content:space-between;align-items:baseline;padding:10px 0;border-bottom:1px solid var(--border);font-size:14px}
.qf-row:last-child{border-bottom:none;padding-bottom:0}
.qf-label{color:var(--ink-faint)}
.qf-val{font-weight:500;text-align:right;max-width:55%}

/* Buttons вЂ” only 2 types (as on nogin-clinic.ru).
   a.btn-* + :link/:visited/:hover beat global `a { color:inherit }` and Tilda link rules. */
a.btn-primary,a.btn-secondary,
.btn-primary,.btn-secondary{
  display:inline-block;text-align:center;font-family:var(--font);font-weight:400;font-size:20px;
  padding:10px 25px;border-radius:25px;box-shadow:none;cursor:pointer;
  transition:background-color .2s ease-in-out,color .2s ease-in-out,border-color .2s ease-in-out,opacity .2s ease-in-out,transform .2s ease-in-out;
}
a.btn-primary,a.btn-primary:link,a.btn-primary:visited,a.btn-primary:hover,a.btn-primary:active,a.btn-primary:focus,
.btn-primary{
  background-color:var(--btn-fill);color:var(--btn-fill-text) !important;border:none;
}
a.btn-primary:hover,.btn-primary:hover{opacity:.88}
a.btn-secondary,a.btn-secondary:link,a.btn-secondary:visited,a.btn-secondary:hover,a.btn-secondary:active,a.btn-secondary:focus,
.btn-secondary{
  color:var(--btn-outline) !important;background:transparent;border:1px solid var(--btn-outline);
}
a.btn-secondary:hover,.btn-secondary:hover{opacity:.88}
.quick-facts + .btn-primary,.quick-facts + a.btn-primary{display:block;margin-top:var(--sp-md)}
@media screen and (max-width:480px){
  a.btn-primary,a.btn-secondary,.btn-primary,.btn-secondary{padding:10px 25px;font-size:14px}
}

/* Content */
.doctor-name{font-family:var(--font);font-size:clamp(28px,4vw,46px);font-weight:400;line-height:1.15;letter-spacing:-.01em;margin-bottom:var(--sp-sm)}
.doctor-lead{font-size:17px;color:var(--ink-muted);line-height:1.65;max-width:580px;margin-bottom:var(--sp-lg)}

.doc-section{margin-bottom:var(--sp-lg)}
.doc-section-label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint);padding-bottom:var(--sp-xs);border-bottom:1px solid var(--border);margin-bottom:var(--sp-md);display:flex;justify-content:space-between;align-items:center}

/* Specialization cards */
.spec-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-sm)}
.spec-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-md) var(--sp-sm);display:flex;align-items:center;justify-content:center;text-align:center;font-size:14px;line-height:1.4;transition:border-color var(--ease)}
.spec-card:hover{border-color:var(--ink-muted)}

/* Timeline */
.timeline{position:relative;padding-left:20px}
.timeline::before{content:'';position:absolute;left:0;top:8px;bottom:8px;width:1px;background:var(--border)}
.tl-item{position:relative;padding:0 0 var(--sp-md) var(--sp-md)}
.tl-item:last-child{padding-bottom:0}
.tl-dot{position:absolute;left:-24px;top:5px;width:8px;height:8px;border-radius:50%;border:1px solid var(--ink-muted);background:var(--bg)}
.tl-year{font-size:12px;color:var(--ink-faint);margin-bottom:3px}
.tl-title{font-size:14px;font-weight:500;margin-bottom:3px}
.tl-desc{font-size:14px;color:var(--ink-muted);line-height:1.6}

/* Quote */
.quote-block{background:rgba(245,240,235,1);color:rgba(28,28,26,1);border-color:transparent;border-image:none;border-radius:var(--r-lg);padding:var(--sp-lg);margin:var(--sp-lg) 0}
.quote-mark{font-family:var(--font);font-size:48px;color:rgba(0,0,0,.15);line-height:.8;margin-bottom:12px}
.quote-text{font-family:var(--font);font-size:18px;color:rgba(0,0,0,1);line-height:1.6;font-style:italic}
.quote-attr{font-size:14px;color:rgba(0,0,0,.4);margin-top:var(--sp-sm)}

/* Cases */
.cases-strip{display:grid;grid-template-columns:repeat(2,1fr);gap:var(--sp-sm)}
.case-thumb{border-radius:var(--r-md);overflow:hidden;background:var(--surface);border:1px solid var(--border)}
.case-thumb__imgs{display:grid;grid-template-columns:1fr 1fr}
.case-thumb__img{aspect-ratio:1/1;background:#E0DDD7;position:relative;overflow:hidden}
.case-thumb__img img{width:100%;height:100%;object-fit:cover}
.img-label{position:absolute;top:6px;left:6px;font-size:10px;background:rgba(255,255,255,.9);padding:2px 6px;border-radius:3px;color:var(--ink-muted)}
.case-thumb__body{padding:var(--sp-sm)}
.case-thumb__tag{font-size:12px;color:var(--ink-faint);margin-bottom:4px}
.case-thumb__desc{font-size:14px}

/* Colleagues */
.colleagues-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:var(--sp-sm)}
.colleague-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--r-md);padding:var(--sp-sm);display:flex;align-items:center;gap:12px;transition:border-color var(--ease)}
.colleague-card:hover{border-color:var(--ink-muted)}
.colleague-ava{width:64px;height:64px;border-radius:50%;background:#DDD8D0;flex-shrink:0;overflow:hidden}
.colleague-ava img{width:100%;height:100%;object-fit:cover}
.colleague-name{font-size:14px;font-weight:500;margin-bottom:2px}
.colleague-role{font-size:12px;color:var(--ink-faint)}

/* CTA */
.cta-banner{background:rgba(245,240,235,1);color:rgba(28,28,26,1);border-radius:var(--r-lg);padding:var(--sp-xl);display:flex;align-items:center;justify-content:space-between;gap:var(--sp-lg);margin:var(--sp-xl) 0}
.cta-banner__title{font-family:var(--font);font-size:clamp(22px,3vw,36px);font-weight:400;color:rgba(0,0,0,1);line-height:1.2}
.cta-banner__sub{font-size:15px;color:rgba(0,0,0,.45);margin-top:10px}
.cta-banner a.btn-primary,.cta-banner .btn-primary{flex-shrink:0;white-space:nowrap;color:var(--btn-fill-text) !important}

/* Responsive */
@media(max-width:960px){
  .hero__grid{grid-template-columns:1fr}
  .photo-wrap{position:static;display:grid;grid-template-columns:240px 1fr;gap:var(--sp-md)}
  .photo-card{margin-bottom:0}
  .colleagues-grid{grid-template-columns:1fr 1fr}
  .footer__grid{grid-template-columns:1fr 1fr;gap:var(--sp-md)}
  .cta-banner{flex-direction:column;padding:var(--sp-lg)}
}
@media(max-width:640px){
  .nav{display:none}
  .photo-wrap{grid-template-columns:1fr}
  .cases-strip{grid-template-columns:1fr}
  .colleagues-grid{grid-template-columns:1fr}
  .footer__grid{grid-template-columns:1fr}
  .spec-grid{grid-template-columns:1fr}
  .hero{padding-bottom:0}
  .cta-banner{margin-top:60px}
}

/* Хлебные крошки */
.nc-breadcrumb {
    max-width: 1120px;
    margin: 0 auto;
    padding: 12px 24px 0;
    display: flex;
    align-items: center;
    flex-wrap: wrap;
    gap: 6px;
    font-family: 'Forum', Arial, sans-serif;
    font-size: 14px;
    color: #A8A89F;
    line-height: 1;
  }
.nc-breadcrumb a {
    color: #A8A89F;
    text-decoration: none;
    transition: color 150ms;
  }
.nc-breadcrumb a:hover { color: #6B6B67; }
.nc-breadcrumb__sep   { font-size: 10px; user-select: none; }
.nc-breadcrumb__current { color: #6B6B67; }
