.questionnaire-shell {
  grid-template-columns: minmax(400px, 42%) 1fr;
}

.brand-panel {
  isolation: isolate;
  min-height: 100svh;
  padding: clamp(32px, 4vw, 64px);
  color: #fff;
  background:
    linear-gradient(180deg, rgba(18, 24, 13, .18) 0%, rgba(18, 24, 13, .42) 45%, rgba(18, 24, 13, .91) 100%),
    url('/assets/repeat-questionnaire-panel.png') center 44% / cover no-repeat;
  border-right: 0;
}

.brand-pattern {
  z-index: -1;
  background:
    linear-gradient(135deg, rgba(151, 145, 109, .14), transparent 42%),
    linear-gradient(180deg, transparent 70%, rgba(53, 66, 33, .34));
  opacity: 1;
}

.brand-logo {
  width: clamp(210px, 48%, 300px) !important;
  margin-left: -4%;
}

.brand-logo img {
  filter: none;
}

.brand-copy {
  width: min(100%, 590px);
  margin: auto 0 42px;
  padding: 28px 0 0;
  border-top: 1px solid rgba(255, 255, 255, .36);
}

.brand-copy .eyebrow {
  margin-bottom: 16px;
  color: #d9dacd;
}

.brand-copy h1 {
  margin-bottom: 22px;
  color: #fff;
  font-size: clamp(46px, 4.7vw, 76px);
  line-height: .96;
  letter-spacing: -.045em;
}

.brand-copy h1 em {
  color: #d2c9a8;
}

.brand-copy > p:last-child {
  max-width: 500px;
  margin: 0;
  color: rgba(255, 255, 255, .82);
  font-size: 16px;
  line-height: 1.55;
}

.brand-meta {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 10px 18px;
  padding-top: 22px;
  border-top: 1px solid rgba(255, 255, 255, .22);
  color: rgba(255, 255, 255, .72);
  font-size: 12px;
}

.brand-meta::before {
  content: 'СПБ';
  grid-row: 1 / 3;
  align-self: center;
  color: #d2c9a8;
  font-size: 10px;
  font-weight: 700;
  letter-spacing: .2em;
}

@media (max-width: 1100px) {
  .questionnaire-shell { grid-template-columns: minmax(350px, 39%) 1fr; }
  .brand-panel { padding: 34px; }
  .brand-copy h1 { font-size: clamp(44px, 5vw, 62px); }
}

@media (max-width: 900px) {
  .questionnaire-shell { grid-template-columns: 1fr; }
  .brand-panel {
    min-height: 460px;
    padding: 28px 6% 30px;
    background-position: center 48%;
  }
  .brand-logo { width: 190px !important; margin-left: -28px; }
  .brand-copy { margin: auto 0 24px; max-width: 620px; padding-top: 18px; }
  .brand-copy h1 { font-size: clamp(44px, 9vw, 64px); }
  .brand-copy > p:last-child { display: block; }
  .brand-meta { display: grid; }
}

@media (max-width: 480px) {
  .brand-panel { min-height: 410px; padding: 20px 24px 24px; }
  .brand-logo { width: 150px !important; margin-left: -22px; }
  .brand-copy { margin-bottom: 18px; }
  .brand-copy .eyebrow { margin-bottom: 10px; }
  .brand-copy h1 { margin-bottom: 12px; font-size: 42px; }
  .brand-copy > p:last-child { font-size: 13px; line-height: 1.4; }
  .brand-meta { padding-top: 14px; font-size: 10px; }
}
