.practice-page .case-skip {
  position: absolute;
  z-index: 9999;
  top: -80px;
  left: 12px;
  padding: 10px 16px;
  background: #fff;
  color: #14304f;
}

.practice-page .case-skip:focus { top: 12px; }

.practice-page .case-hero {
  position: relative;
  min-height: 295px;
  border-bottom: 2px solid #b18b53;
  background-image: linear-gradient(90deg, rgba(17, 22, 27, .55), rgba(17, 22, 27, .1)), url('../images/background/office-consultation-room.jpg');
  background-image: linear-gradient(90deg, rgba(17, 22, 27, .55), rgba(17, 22, 27, .1)), image-set(url('../images/background/office-consultation-room.webp') type('image/webp'), url('../images/background/office-consultation-room.jpg') type('image/jpeg'));
  background-position: center 44%;
  background-size: cover;
  background-repeat: no-repeat;
  color: #fff;
}

.practice-page .case-hero__inner {
  min-height: 295px;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  padding-top: 32px;
  padding-bottom: 30px;
}

.practice-page .case-hero p { color: #fff; margin: 0; }
.practice-page .case-hero__eyebrow { font: 600 13px/1.5 'Poppins', Arial, sans-serif; }
.practice-page .case-hero__caption { margin-top: 5px !important; font-size: 17px; font-weight: 700; }
.practice-page .case-hero__caption span { padding: 0 7px; color: #dbbc83; }
.practice-page .case-hero .lang-switch-fixed { position: absolute; top: 115px; right: max(20px, calc((100% - 1170px) / 2)); display: flex; gap: 6px; }
.practice-page .case-hero .lang-btn { display: inline-grid; place-items: center; min-width: 42px; min-height: 36px; border: 1px solid rgba(255,255,255,.5); border-radius: 4px; color: #fff; background: rgba(20, 25, 30, .72); font-size: 12px; font-weight: 700; }

.practice-page main { background: #fafbfc; }
.practice-page .case-breadcrumbs { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; padding-top: 21px; padding-bottom: 21px; color: #566575; font-size: 13px; }
.practice-page .case-breadcrumbs a { color: #37536d; text-decoration: none; }
.practice-page .case-breadcrumbs a:hover { text-decoration: underline; }
.practice-page .case-breadcrumbs span[aria-hidden] { color: #ad8b58; }
.practice-page .case-intro { max-width: 940px; padding: 16px 0 35px; }
.practice-page .case-intro__meta { margin: 0 0 9px; color: #8e6939; font: 700 12px/1.5 'Poppins', Arial, sans-serif; text-transform: uppercase; }
.practice-page .case-intro h1 { margin: 0; color: #1f2a35; font: 700 38px/1.18 'Poppins', Arial, sans-serif; overflow-wrap: anywhere; }
.practice-page .case-intro__lead { max-width: 820px; margin: 16px 0 0; color: #42515f; font-size: 17px; line-height: 1.6; }

.practice-page .case-layout { display: grid; grid-template-columns: minmax(0, 1.15fr) minmax(300px, .8fr); gap: 55px; align-items: start; padding-bottom: 38px; }
.practice-page .case-content { min-width: 0; }
.practice-page .case-content h2 { margin: 0 0 19px; color: #1f2a35; font: 700 23px/1.3 'Poppins', Arial, sans-serif; }
.practice-page .case-facts { border-top: 2px solid #b18b53; padding-top: 24px; }
.practice-page .case-facts__row { display: grid; grid-template-columns: 125px minmax(0, 1fr); gap: 20px; padding: 14px 0; border-bottom: 1px solid #d6dfe7; }
.practice-page .case-facts__row h3 { margin: 0; color: #314c67; font: 700 14px/1.6 'Poppins', Arial, sans-serif; }
.practice-page .case-facts__row p { margin: 0; color: #344452; line-height: 1.68; }
.practice-page .case-evidence-note { margin-top: 25px; padding: 17px 19px; border-left: 3px solid #b18b53; background: #f0f3f5; }
.practice-page .case-evidence-note strong { display: block; color: #22384b; font: 700 14px/1.5 'Poppins', Arial, sans-serif; }
.practice-page .case-evidence-note p { margin: 6px 0 0; color: #42515f; }
.practice-page .case-related { padding-top: 38px; }
.practice-page .case-related > p { margin: -7px 0 16px; color: #566575; font-size: 14px; }
.practice-page .case-related ol { margin: 0; padding: 0; list-style: none; border-top: 1px solid #d6dfe7; }
.practice-page .case-related__item { display: grid; grid-template-columns: 36px minmax(0, 1fr); gap: 12px; align-items: start; padding: 11px 0; border-bottom: 1px solid #d6dfe7; line-height: 1.5; }
.practice-page .case-related__num { color: #8e6939; font: 700 13px/1.8 'Poppins', Arial, sans-serif; }
.practice-page .case-related__item a { color: #183a5b; text-decoration: none; }
.practice-page .case-related__item a:hover { text-decoration: underline; }
.practice-page .case-related__item.is-current { color: #1f2a35; font-weight: 700; }
.practice-page .case-notice { margin: 28px 0 0; color: #5c6974; font-size: 13px; line-height: 1.65; }

.practice-page .case-layout--summary {
  display: block;
  max-width: 940px;
  padding-bottom: 42px;
}

.practice-page .case-materials {
  padding: 34px 0 40px;
  border-top: 1px solid #d6dfe7;
}

.practice-page .case-materials__head {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(280px, 430px);
  gap: 34px;
  align-items: end;
  margin-bottom: 24px;
}

.practice-page .case-materials__head > div > p {
  margin: 0 0 7px;
  color: #8e6939;
  font: 700 12px/1.5 'Poppins', Arial, sans-serif;
  text-transform: uppercase;
}

.practice-page .case-materials__head h2 {
  margin: 0;
  color: #1f2a35;
  font: 700 26px/1.25 'Poppins', Arial, sans-serif;
}

.practice-page .case-materials__head > p {
  margin: 0;
  color: #52616e;
  line-height: 1.62;
}

.practice-page .case-materials__grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 18px;
  align-items: start;
}

.practice-page .case-material {
  min-width: 0;
  margin: 0;
  border: 1px solid #d6dfe7;
  border-top: 2px solid #b18b53;
  border-radius: 5px;
  background: #fff;
  box-shadow: 0 8px 23px rgba(12, 34, 57, .06);
  overflow: hidden;
}

.practice-page .case-material:only-child { max-width: 380px; }

.practice-page .case-material__preview {
  position: relative;
  display: block;
  width: 100%;
  padding: 0;
  border: 0;
  background: #e9ecef;
  cursor: zoom-in;
}

.practice-page .case-material__preview picture { display: block; width: 100%; }

.practice-page .case-material__preview img {
  display: block;
  width: 100%;
  height: 310px;
  object-fit: contain;
}

.practice-page .case-material__zoom {
  position: absolute;
  right: 10px;
  bottom: 10px;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  min-height: 38px;
  padding: 8px 11px;
  border: 1px solid rgba(255, 255, 255, .36);
  border-radius: 4px;
  background: rgba(17, 33, 48, .9);
  color: #fff;
  font: 600 12px/1.3 'Poppins', Arial, sans-serif;
}

.practice-page .case-material figcaption {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  min-height: 218px;
  padding: 17px;
}

.practice-page .case-material figcaption > span {
  color: #8e6939;
  font: 700 11px/1.5 'Poppins', Arial, sans-serif;
  text-transform: uppercase;
}

.practice-page .case-material figcaption strong {
  margin-top: 6px;
  color: #203449;
  font: 650 15px/1.42 'Poppins', Arial, sans-serif;
  overflow-wrap: anywhere;
}

.practice-page .case-material figcaption p {
  margin: 9px 0 14px;
  color: #5a6874;
  font-size: 13px;
  line-height: 1.55;
}

.practice-page .case-material figcaption a {
  margin-top: auto;
  color: #244864;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-color: #c8a46d;
  text-underline-offset: 4px;
}

.practice-page .case-evidence { padding: 17px; border: 1px solid #d6dfe7; border-radius: 6px; background: #fff; box-shadow: 0 8px 23px rgba(12,34,57,.06); }
.practice-page .case-evidence__head { display: flex; justify-content: space-between; gap: 14px; padding: 2px 3px 13px; border-bottom: 1px solid #d6dfe7; color: #364a5b; font-size: 13px; font-weight: 700; }
.practice-page .case-evidence__head strong { color: #8e6939; white-space: nowrap; }
.practice-page .case-evidence > img { display: block; width: 100%; height: 420px; margin-top: 14px; background: #e9ecef; object-fit: contain; }
.practice-page .case-evidence > p { margin: 14px 2px; color: #53616e; font-size: 13px; line-height: 1.5; }
.practice-page .case-evidence__actions { display: flex; flex-wrap: wrap; gap: 8px; }
.practice-page .case-evidence__actions > * { display: inline-flex; justify-content: center; align-items: center; gap: 7px; min-height: 44px; padding: 9px 12px; border: 1px solid #14304f; border-radius: 4px; background: #14304f; color: #fff; font: 600 13px/1.3 'Poppins', Arial, sans-serif; text-decoration: none; cursor: pointer; }
.practice-page .case-evidence__actions > a { background: #fff; color: #14304f; }
.practice-page .case-evidence__actions > *:hover { border-color: #8e6939; color: #8e6939; }
.practice-page .case-evidence__actions > button:hover { background: #0e253c; color: #fff; }
.practice-page .case-evidence__actions > [hidden] { display: none; }

.practice-page .case-pager { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 14px; padding: 0 0 46px; }
.practice-page .case-pager a { min-width: 0; padding: 15px 18px; border-top: 2px solid #b18b53; background: #edf1f4; text-decoration: none; }
.practice-page .case-pager a span { display: block; margin-bottom: 4px; color: #5d6d7b; font-size: 12px; }
.practice-page .case-pager a strong { display: block; color: #1f3850; font: 600 14px/1.45 'Poppins', Arial, sans-serif; overflow-wrap: anywhere; }
.practice-page .case-pager a:hover { background: #e5ebef; }
.practice-page .case-back { display: inline-flex; align-items: center; gap: 9px; min-height: 44px; margin-bottom: 18px; color: #234463; font-weight: 700; }
html.case-modal-open { overflow: hidden; }
.practice-page .case-cta { border-top: 2px solid #b18b53; background: #27333d; }
.practice-page .case-cta__inner { display: flex; justify-content: space-between; align-items: center; gap: 26px; padding-top: 34px; padding-bottom: 36px; }
.practice-page .case-cta h2 { margin: 0 0 4px; color: #fff; font: 700 24px/1.3 'Poppins', Arial, sans-serif; }
.practice-page .case-cta p { max-width: 760px; margin: 0; color: #d4dce1; }
.practice-page .case-cta a { flex: 0 0 auto; display: inline-grid; place-items: center; min-height: 47px; padding: 11px 18px; border-radius: 4px; background: #c8a46d; color: #162331; font: 700 13px/1.4 'Poppins', Arial, sans-serif; text-decoration: none; }
.practice-page .case-cta a:hover { background: #e1bd84; }

.practice-page .case-dialog { width: min(95vw, 1120px); max-width: none; max-height: 94vh; margin: auto; padding: 0; border: 1px solid #b18b53; border-radius: 5px; background: #e5e9ec; color: #1f2a35; overflow: auto; }
.practice-page .case-dialog::backdrop { background: rgba(10, 17, 24, .83); }
.practice-page .case-dialog__top { position: sticky; z-index: 2; top: 0; display: flex; justify-content: space-between; align-items: center; gap: 16px; min-height: 55px; padding: 8px 14px; background: #fff; border-bottom: 1px solid #d6dfe7; }
.practice-page .case-dialog__top button { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; border: 1px solid #ccd6df; border-radius: 4px; background: #fff; color: #173650; font-size: 27px; cursor: pointer; }
.practice-page .case-dialog img { display: block; max-width: 100%; height: auto; margin: 0 auto; }
.practice-page :is(a, button):focus-visible { outline: 3px solid #c8a46d; outline-offset: 3px; }

@media (max-width: 991px) {
  .practice-page .case-layout { grid-template-columns: minmax(0, 1fr) minmax(250px, .8fr); gap: 28px; }
  .practice-page .case-intro h1 { font-size: 32px; }
}

@media (max-width: 767px) {
  .practice-page .case-hero, .practice-page .case-hero__inner { min-height: 275px; }
  .practice-page .case-hero__inner { padding-top: 110px; padding-bottom: 24px; }
  .practice-page .case-hero .lang-switch-fixed { top: 105px; right: 16px; }
  .practice-page .case-layout { grid-template-columns: minmax(0, 1fr); gap: 28px; }
  .practice-page .case-intro { padding-bottom: 26px; }
  .practice-page .case-intro h1 { font-size: 28px; }
  .practice-page .case-intro__lead { font-size: 16px; }
  .practice-page .case-evidence > img { height: 380px; }
  .practice-page .case-materials__head { grid-template-columns: 1fr; gap: 10px; }
  .practice-page .case-materials__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .practice-page .case-material:only-child { max-width: none; }
  .practice-page .case-material__preview img { height: 280px; }
  .practice-page .case-cta__inner { display: block; }
  .practice-page .case-cta a { margin-top: 20px; }
}

@media (max-width: 390px) {
  .practice-page .case-intro h1 { font-size: 24px; }
  .practice-page .case-hero .lang-switch-fixed { top: 98px; }
  .practice-page .case-facts__row { grid-template-columns: 1fr; gap: 3px; }
  .practice-page .case-pager { grid-template-columns: 1fr; }
  .practice-page .case-evidence > img { height: 320px; }
  .practice-page .case-materials__grid { grid-template-columns: 1fr; }
  .practice-page .case-material__preview img { height: 330px; }
  .practice-page .case-material figcaption { min-height: 0; }
}
