[role="button"] {
	cursor: pointer;
}
.site-inline-1 { color: blue }
.site-inline-2 { color: white }
.no-swiper .main-slider .swiper-slide:not(:first-child) { display: none; }
.no-swiper .main-slider .swiper-wrapper { transform: none !important; }
.no-swiper .review-slider .swiper-wrapper { display: block; transform: none !important; }
.no-swiper .review-slider .swiper-slide { width: 100%; margin-bottom: 30px; }
.no-swiper .review-slider .swiper-button-next,
.no-swiper .review-slider .swiper-button-prev,
.no-swiper .review-slider .swiper-pagination { display: none; }
.popup-fallback-backdrop {
 position: fixed;
 inset: 0;
 z-index: 9000;
 display: flex;
 align-items: center;
 justify-content: center;
 padding: 24px;
 background: rgba(0,0,0,.65);
}
.popup-fallback-backdrop .white-popup {
 display: block !important;
 max-height: 85vh;
 overflow: auto;
 position: relative;
}
.popup-fallback-close {
 display: block;
 margin: 0 0 12px auto;
 border: 0;
 background: transparent;
 color: inherit;
 font: inherit;
 cursor: pointer;
}
.review-changes .updated-element { outline: 2px solid #008000; outline-offset: 3px; }
.review-changes a.updated-element { color: #008000 !important; }
@media (prefers-reduced-motion: reduce) {
.link--phone { animation: none; }}
/* Keep desktop navigation in a single row. Mobile menu rules stay unchanged. */
@media screen and (min-width: 1081px) {
 .header__menu { flex-wrap: nowrap; gap: 20px; }
 .header__logo { flex: 0 0 auto; }
 .header .menu__list {
  display: flex;
  flex-direction: row;
  flex-wrap: nowrap;
  align-items: center;
  justify-content: flex-end;
  gap: clamp(6px, .8vw, 12px);
  margin: 0;
  min-width: 0;
 }
 .header .menu__link {
  flex: 0 0 auto;
  margin: 0;
  padding: 4px;
  white-space: nowrap;
 }
}
/* Keep each document group heading centered. */
.docs__download-title { text-align: center; }

/* Portrait animation, scoped to the Why I do this section. */
.dachny-animation{align-self:flex-start;padding-top:95px}
.dachny-animation__title{position:absolute;top:8px;left:0;width:100%;height:80px;z-index:3}
.dachny-animation__title span{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;opacity:0}
.dachny-animation__title span img{display:block;width:100%;height:100%;object-fit:contain}
.dachny-animation__title .dachny-animation__first{opacity:1}
.dachny-animation.is-playing .dachny-animation__first{animation:dachnyFirst 8s ease infinite both}
.dachny-animation.is-playing .dachny-animation__second{animation:dachnySecond 8s ease infinite both}
@keyframes dachnyFirst{0%,33.75%{opacity:1;transform:translateY(0)}37.5%,98.75%{opacity:0;transform:translateY(-6px)}100%{opacity:1;transform:translateY(0)}}
@keyframes dachnySecond{0%,37.5%{opacity:0;transform:translateY(6px)}41.25%,98.75%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(6px)}}
@media(prefers-reduced-motion:reduce){.dachny-animation.is-playing .dachny-animation__first{animation:none;opacity:1;transform:none}.dachny-animation.is-playing .dachny-animation__second{animation:none;opacity:0;transform:none}}

/* Pale garden artwork across the main content sections. */
.adv__card{background-color:rgba(255,255,255,.86)}
.service{background-image:linear-gradient(rgba(255,255,255,.18),rgba(255,255,255,.18)),url('/img/garden-bg-arch.jpg?v=20261108-garden-backgrounds');background-size:cover;background-position:center center;background-repeat:no-repeat}
.docs{background-color:#f8f8f7;background-image:linear-gradient(rgba(255,255,255,.18),rgba(255,255,255,.18)),url('/img/garden-bg-house-path.jpg?v=20261108-garden-backgrounds');background-size:cover;background-position:center center;background-repeat:no-repeat}
#about{background-color:#f8f8f7;background-image:linear-gradient(rgba(255,255,255,.2),rgba(255,255,255,.2)),url('/img/garden-bg-garden-beds.jpg?v=20261108-garden-backgrounds');background-size:cover;background-position:center center;background-repeat:no-repeat}
#about-me{background-color:#f8f8f7;background-image:linear-gradient(rgba(255,255,255,.18),rgba(255,255,255,.18)),url('/img/garden-bg-house-path.jpg?v=20261108-garden-backgrounds');background-size:cover;background-position:center center;background-repeat:no-repeat}
.faq{background-color:#f8f8f7;background-image:linear-gradient(rgba(255,255,255,.18),rgba(255,255,255,.18)),url('/img/garden-bg-arch.jpg?v=20261108-garden-backgrounds');background-size:cover;background-position:center center;background-repeat:no-repeat}
.review:not(.faq){background-color:#f8f8f7;background-image:linear-gradient(rgba(255,255,255,.2),rgba(255,255,255,.2)),url('/img/garden-bg-garden-beds.jpg?v=20261108-garden-backgrounds');background-size:cover;background-position:center center;background-repeat:no-repeat}
.review__card{background-color:rgba(255,255,255,.9)}
@media screen and (max-width:768px){.service{background-position:center center}}

/* Restore the established backgrounds in the lawyer profile, courses, and reviews. */
.adv{background-color:#e2e2e2;background-image:url('/img/dachny-garden-gray.jpg?v=20261108-garden-backgrounds');background-size:cover;background-position:center center;background-repeat:no-repeat}
#about{background-color:#e2e2e2;background-image:none}
#review{background-color:transparent;background-image:none}
#review .review__card{background-color:rgba(248,248,248,.2)}
.docs__download-body{display:flex}

/* Mobile layout: keep the hero text inside the viewport and keep the profile block visible. */
@media screen and (max-width: 550px) {
  .header__menu { height: 64px; }
  .header__logo { min-width: 0; max-width: calc(100% - 54px); }
  .header__logo .logo__link { display: block; max-width: 100%; }
  .header .logo__text {
    max-width: 100%;
    margin: 0;
    font-size: clamp(18px, 5.7vw, 23px);
    line-height: 1.05;
    white-space: normal;
  }
  .header .logo__text span { font-size: clamp(12px, 3.7vw, 15px); line-height: 1.1; }
  .header__burger { right: 0; top: 22px; width: 36px; }

  .main-slider .swiper-slide { width: 100%; height: 88svh; min-height: 520px; max-height: 820px; }
  .main-slider .container { padding-left: 22px; padding-right: 22px; }
  .main-slider .intro-content { width: 100%; max-width: 34rem; }
  .main-slider .intro__title {
    max-width: 100%;
    margin-bottom: 16px;
    font-size: clamp(32px, 8.4vw, 42px);
    line-height: 1.08;
    letter-spacing: -0.015em;
    overflow-wrap: anywhere;
  }
  .main-slider .intro__subtitle {
    max-width: 100%;
    font-size: clamp(17px, 4.4vw, 21px);
    line-height: 1.2;
  }

  .section { scroll-margin-top: 70px; }
  .title { line-height: 1.14; padding-left: 6px; padding-right: 6px; overflow-wrap: anywhere; text-wrap: balance; }
  .about__title { font-size: clamp(28px, 7.2vw, 34px); }
  .about__docs { width: 100%; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 12px; }

  #advest { padding-top: 46px; padding-bottom: 38px; }
  #advest .adv__title { margin-bottom: 18px; }
  #advest .adv__wrapper {
    display: flex;
    flex-direction: column;
    flex-wrap: nowrap;
    align-items: center;
    gap: 22px;
  }
  #advest .avatar__wrapper.dachny-animation {
    order: 0;
    flex: 0 0 auto;
    width: min(68vw, 250px);
    max-width: 100%;
    margin: 0 auto;
    padding-top: 72px;
    overflow: visible;
  }
  #advest .dachny-animation__title { top: 0; height: 62px; }
  #advest .adv__avatar { display: block; width: 100%; height: auto; }
  #advest .adv__cards {
    order: 1;
    display: flex;
    flex: 0 1 auto;
    flex-direction: column;
    gap: 14px;
    width: 100%;
  }
  #advest .adv__card { width: 100%; min-width: 0; margin: 0; padding: 12px 12px 12px 24px; }
  #advest .adv__card .card__desc { font-size: 15px; line-height: 1.4; }
  #advest .adv__card.reveal { opacity: 1; transform: none; transition: none; }

  .review .card__wrapper { padding: 14px 20px; }
  .review__card { padding: 16px; }
  .review .card__title, .faq .review__card .card__title { font-size: 16px; line-height: 1.35; }
  .review .card__text { font-size: 14px; line-height: 1.4; overflow-wrap: anywhere; }
}

@media screen and (max-width: 360px) {
  .main-slider .container { padding-left: 18px; padding-right: 18px; }
  .main-slider .intro__title { font-size: clamp(30px, 8.2vw, 34px); }
  .review .card__wrapper { padding-left: 10px; padding-right: 10px; }
  .review__card { padding: 13px; }
}


/* Keep the logo and navigation from colliding on wide desktop screens. */
@media screen and (min-width: 1081px) {
  .header__menu { gap: clamp(8px, 1vw, 18px); }
  .header__logo { flex: 0 1 250px; min-width: 205px; }
  .header .logo__text { font-size: clamp(22px, 1.3vw, 27px); }
  .header .menu__list { flex: 1 1 auto; gap: clamp(1px, .25vw, 5px); }
  .header .menu__link { font-size: clamp(12px, .72vw, 15px); padding: 3px 2px; }
}

/* Let the key information block use the full main content width. */
.docs__subtitle { max-width: 100%; }


/* Use the viewport width for section layouts while keeping comfortable gutters. */
.container {
  width: 100%;
  max-width: none;
  margin-left: 0;
  margin-right: 0;
  padding-left: clamp(18px, 4vw, 72px);
  padding-right: clamp(18px, 4vw, 72px);
}

/* Expand the content groups that still had their own narrow desktop limits. */
@media screen and (min-width: 769px) {
  .about .container { max-width: none; }

  .adv__wrapper {
    justify-content: space-between;
    gap: clamp(28px, 4vw, 72px);
  }
  .adv__wrapper .avatar__wrapper {
    flex: 0 1 38%;
    max-width: 620px;
    margin: 0;
  }
  .adv__wrapper .adv__cards {
    flex: 1 1 62%;
    min-width: 0;
  }

  .review .slider,
  .faq .slider {
    width: 100%;
    max-width: none;
  }

  .docs__download-link {
    max-width: none;
  }
}


/* Final desktop layout: distribute the sections across the available viewport. */
@media screen and (min-width: 1081px) {
  .header { height: auto; min-height: 80px; }
  .header__menu {
    display: grid;
    grid-template-columns: minmax(230px, 270px) minmax(0, 1fr);
    align-items: center;
    column-gap: clamp(16px, 2vw, 36px);
    min-height: 80px;
    height: auto;
  }
  .header .menu__list {
    display: flex;
    flex: none;
    min-width: 0;
    flex-wrap: wrap;
    justify-content: flex-end;
    align-content: center;
    column-gap: clamp(2px, .35vw, 8px);
    row-gap: 2px;
    overflow: visible;
  }
  .header .menu__link {
    flex: 0 0 auto;
    margin: 0;
    padding: 4px 2px;
    font-size: clamp(12px, .72vw, 15px);
    line-height: 1.2;
    white-space: nowrap;
  }
  .header__links { flex: 0 0 auto; }

  .section > .container,
  .about .container {
    width: 100%;
    max-width: none;
  }

  .about__docs {
    grid-template-columns: repeat(4, minmax(0, 1fr));
    width: 100%;
  }
}


/* Variant 2: numbered editorial cards for the lawyer profile section. */
#advest .adv__cards {
  flex: 1 1 62%;
  min-width: 0;
  gap: 18px;
}
#advest .adv__card {
  display: grid;
  grid-template-columns: 96px minmax(0, 1fr);
  align-items: stretch;
  padding: 0;
  margin: 0;
  overflow: hidden;
  background: rgba(255,255,255,.96);
  border: 1px solid #d6e1e5;
  border-radius: 18px;
  box-shadow: 0 2px 8px rgba(35,65,78,.08);
}
#advest .adv__card::before { display: none; }
#advest .adv__card-index {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 22px;
  background: #e8f3f7;
  color: #168fc1;
  font-family: "Tinos", Georgia, serif;
  font-size: 36px;
  font-weight: 700;
  line-height: 1;
}
#advest .adv__card-index::after {
  content: "";
  display: block;
  width: 52px;
  height: 3px;
  margin-top: 16px;
  background: #168fc1;
}
#advest .adv__card-content { min-width: 0; padding: 20px 28px 22px; }
#advest .adv__card-label {
  margin: 0;
  padding: 0 0 12px;
  border-bottom: 1px solid #d6e1e5;
  color: #168fc1;
  font-family: Arial, sans-serif;
  font-size: 16px;
  font-weight: 700;
  line-height: 1.25;
  letter-spacing: .045em;
  text-transform: uppercase;
}
#advest .adv__card .card__desc {
  margin: 14px 0 0;
  color: #293238;
  font-size: 20px;
  line-height: 1.5;
  text-align: left;
}

/* Increase reading size on wide screens after expanding the page layout. */
@media screen and (min-width: 769px) {
  body { font-size: 17px; }
  .text { font-size: clamp(17px, .98vw, 20px); line-height: 1.55; }
}

@media screen and (max-width: 768px) {
  #advest .adv__cards { gap: 12px; }
  #advest .adv__card { grid-template-columns: 58px minmax(0, 1fr); border-radius: 14px; }
  #advest .adv__card-index { padding-top: 16px; font-size: 25px; }
  #advest .adv__card-index::after { width: 32px; margin-top: 10px; }
  #advest .adv__card-content { padding: 14px 15px 16px; }
  #advest .adv__card-label { padding-bottom: 9px; font-size: 13px; }
  #advest .adv__card .card__desc { margin-top: 10px; font-size: 16px; line-height: 1.45; }
}

/* Open editorial layout for the lawyer profile: text sits directly on the garden image. */
@media screen and (min-width: 769px) {
  #advest .adv__wrapper {
    align-items: flex-start;
    justify-content: space-between;
    gap: clamp(28px, 3vw, 56px);
  }
  #advest .avatar__wrapper.dachny-animation {
    flex: 0 0 25%;
    max-width: 460px;
    margin: 0;
  }
  #advest .adv__cards {
    flex: 1 1 75%;
    min-width: 0;
    gap: clamp(24px, 2vw, 40px);
  }
}
#advest .adv__card {
  display: grid;
  grid-template-columns: 68px minmax(0, 1fr);
  align-items: start;
  gap: 16px;
  width: 100%;
  min-width: 0;
  margin: 0;
  padding: 0;
  overflow: visible;
  background: transparent;
  border: 0;
  border-radius: 0;
  box-shadow: none;
}
#advest .adv__card::before { display: none; }
#advest .adv__card-index {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 1px 0 0;
  background: transparent;
  color: #168fc1;
  font-family: "Tinos", Georgia, serif;
  font-size: 34px;
  font-weight: 700;
  line-height: 1;
}
#advest .adv__card-index::after {
  content: "";
  display: block;
  width: 42px;
  height: 3px;
  margin-top: 11px;
  background: #168fc1;
}
#advest .adv__card-content { min-width: 0; padding: 0; }
#advest .adv__card-label {
  margin: 0 0 9px;
  padding: 0;
  border: 0;
  color: #168fc1;
  font-family: Arial, sans-serif;
  font-size: 15px;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: .06em;
  text-transform: uppercase;
}
#advest .adv__card .card__desc {
  margin: 0;
  color: #292f32;
  font-size: clamp(21px, 1.27vw, 26px);
  line-height: 1.48;
  text-align: left;
}
@media screen and (max-width: 768px) {
  #advest .adv__card {
    grid-template-columns: 48px minmax(0, 1fr);
    gap: 10px;
    padding: 0;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }
  #advest .adv__card-index {
    padding-top: 1px;
    font-size: 23px;
  }
  #advest .adv__card-index::after {
    width: 30px;
    height: 2px;
    margin-top: 8px;
  }
  #advest .adv__card-content { padding: 0; }
  #advest .adv__card-label {
    margin-bottom: 6px;
    font-size: 12px;
  }
  #advest .adv__card .card__desc {
    font-size: clamp(17px, 4.8vw, 19.5px);
    line-height: 1.48;
  }
  #advest .adv__cards { gap: 20px; }
}

/* Remove the editorial card numbers and let each open text item use the full text column. */
#advest .adv__card { grid-template-columns: minmax(0, 1fr); }
#advest .adv__card-index { display: none; }
@media screen and (max-width: 768px) {
  #advest .adv__card { grid-template-columns: minmax(0, 1fr); }
}

/* Match page copy to the enlarged profile text while preserving all section headings. */
@media screen and (min-width: 769px) {
  main p,
  main li,
  main figcaption,
  main .text,
  main .card__desc,
  main .card__text,
  main .subtitle,
  main [class*="__desc"],
  main [class*="__subtitle"],
  main [class*="__link"] {
    font-size: clamp(21px, 1.27vw, 26px);
    line-height: 1.48;
  }
  #advest .adv__card .card__desc {
    font-size: clamp(21px, 1.27vw, 26px);
    line-height: 1.48;
  }
  .footer .logo__text,
  .footer .logo__text span,
  .footer .adress__mail,
  .footer .adress__unp {
    font-size: clamp(21px, 1.27vw, 26px);
    line-height: 1.48;
  }
}
@media screen and (max-width: 768px) {
  main p,
  main li,
  main figcaption,
  main .text,
  main .card__desc,
  main .card__text,
  main .subtitle,
  main [class*="__desc"],
  main [class*="__subtitle"],
  main [class*="__link"] {
    font-size: clamp(17px, 4.8vw, 19.5px);
    line-height: 1.48;
  }
  #advest .adv__card .card__desc {
    font-size: clamp(17px, 4.8vw, 19.5px);
    line-height: 1.48;
  }
  .footer .logo__text,
  .footer .logo__text span,
  .footer .adress__mail,
  .footer .adress__unp {
    font-size: clamp(17px, 4.8vw, 19.5px);
    line-height: 1.48;
  }
}

/* Header wordmark and navigation are enlarged by 30 percent. */
@media screen and (min-width: 1081px) {
  .header .logo__text { font-size: clamp(28.6px, 1.69vw, 35.1px); }
  .header .logo__text span { font-size: 20.8px; }
  .header .menu__link { font-size: clamp(15.6px, .936vw, 19.5px); }
}
@media screen and (min-width: 551px) and (max-width: 1080px) {
  .header__menu { min-height: 80px; height: auto; }
  .header .logo__text { font-size: 41.6px; }
  .header .logo__text span { font-size: 20.8px; }
  .header .menu__link { font-size: 23.4px; }
}
@media screen and (max-width: 550px) {
  .header .logo__text { font-size: clamp(23.4px, 7.41vw, 29.9px); }
  .header .logo__text span { font-size: clamp(15.6px, 4.81vw, 19.5px); }
  .header .menu__link { font-size: 23.4px; }
}
