.kb-dg,
.kb-dg * { box-sizing: border-box; }
.kb-dg {
  width: 100%;
  padding: 90px 24px;
  background: #fff;
  font-family: inherit;
}
.kb-dg__container {
  display: grid;
  grid-template-columns: minmax(0, 46%) minmax(0, 1fr);
  align-items: center;
  gap: 80px;
  width: 100%;
  max-width: 1320px;
  margin: 0 auto;
}
.kb-dg__content { max-width: 620px; }
.kb-dg__label {
  display: inline-flex;
  align-items: center;
  min-height: 35px;
  margin: 0 0 22px;
  padding: 7px 13px;
  border: 1px solid rgba(41,41,41,.12);
  border-radius: 9px;
  background: #fff;
  color: #292929;
  font-size: 13px;
  font-weight: 700;
  line-height: 1;
}
.kb-dg__label::before {
  content: "";
  width: 8px;
  height: 8px;
  margin-right: 9px;
  border-radius: 50%;
  background: #FFD000;
}
.kb-dg__title {
  margin: 0;
  color: #292929;
  font-size: clamp(39px,4vw,62px);
  font-weight: 800;
  line-height: 1.03;
  letter-spacing: -.045em;
}
.kb-dg__title-highlight { color: #FFD000; }
.kb-dg__text {
  max-width: 590px;
  margin: 27px 0 0;
  color: #6f6f6f;
  font-size: 17px;
  line-height: 1.55;
}
.kb-dg__text > *:first-child { margin-top: 0; }
.kb-dg__text > *:last-child { margin-bottom: 0; }
.kb-dg__points {
  display: grid;
  margin: 28px 0 0;
  border-top: 1px solid rgba(41,41,41,.09);
}
.kb-dg__point {
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  gap: 14px;
  min-height: 58px;
  border-bottom: 1px solid rgba(41,41,41,.09);
}
.kb-dg__point-number {
  display: grid;
  place-items: center;
  width: 34px;
  height: 34px;
  border-radius: 10px;
  background: #FFD000;
  color: #292929;
  font-size: 12px;
  font-weight: 900;
}
.kb-dg__point-text {
  margin: 0;
  color: #292929;
  font-size: 14px;
  font-weight: 650;
  line-height: 1.35;
}
.kb-dg__action {
  display: flex;
  align-items: center;
  gap: 24px;
  margin: 30px 0 0;
}
.kb-dg__button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  min-height: 58px;
  padding: 14px 20px 14px 24px;
  border-radius: 8px;
  background: #FFD000;
  color: #111;
  box-shadow: 0 10px 24px rgba(255,208,0,.23);
  font-size: 15px;
  font-weight: 800;
  text-decoration: none;
  transition: transform .2s ease, box-shadow .2s ease, background .2s ease;
}
.kb-dg__button:hover { color:#111; transform:translateY(-2px); background:#FFDA2F; }
.kb-dg__button-icon {
  display:grid;
  place-items:center;
  width:31px;
  height:31px;
  border-radius:7px;
  background:#252525;
  color:#fff;
}
.kb-dg__button-icon svg { width: 1em; height: 1em; fill: currentColor; }
.kb-dg__note { margin:0; color:#818181; font-size:12px; line-height:1.35; }
.kb-dg__visual { position:relative; min-height:545px; }
.kb-dg__visual::before {
  content:"";
  position:absolute;
  right:3%;
  top:8%;
  width:74%;
  height:76%;
  border-radius:34px;
  background:#f4f4f2;
}
.kb-dg__visual::after {
  content:"";
  position:absolute;
  right:10%;
  bottom:4%;
  width:42%;
  height:42%;
  border-radius:50%;
  background:rgba(255,208,0,.16);
}
.kb-dg__photo {
  position:absolute;
  z-index:2;
  overflow:hidden;
  box-shadow:0 24px 60px rgba(0,0,0,.12);
}
.kb-dg__photo img {
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:none !important;
  object-fit:cover !important;
}
.kb-dg__photo--before { left:0; top:94px; width:43%; height:330px; border-radius:25px; transform:rotate(-2.5deg); }
.kb-dg__photo--after { left:39%; right:auto; top:18px; width:61%; height:425px; border:7px solid #fff; border-radius:29px; transform:rotate(1.7deg); }
.kb-dg__shade { position:absolute; inset:0; z-index:1; background:linear-gradient(180deg,transparent 45%,rgba(0,0,0,.46) 100%); }
.kb-dg__photo-caption { position:absolute; left:18px; bottom:17px; z-index:2; }
.kb-dg__photo-label,.kb-dg__photo-title { display:block; }
.kb-dg__photo-label {
  width:max-content;
  margin-bottom:6px;
  padding:5px 9px;
  border-radius:6px;
  background:#fff;
  color:#222;
  font-size:10px;
  font-weight:900;
}
.kb-dg__photo--after .kb-dg__photo-label { background:#FFD000; }
.kb-dg__photo-title { color:#fff; font-size:15px; }
.kb-dg__project {
  position:absolute;
  left:14%;
  top:300px;
  bottom:auto;
  z-index:5;
  width:60%;
  height:auto !important;
  padding:18px;
  border:1px solid rgba(0,0,0,.07);
  border-radius:21px;
  background:rgba(255,255,255,.97);
  box-shadow:0 20px 48px rgba(0,0,0,.15);
  backdrop-filter:blur(12px);
}
.kb-dg__project-top { display:flex; justify-content:space-between; gap:16px; }
.kb-dg__project-kicker,.kb-dg__project-title { display:block; }
.kb-dg__project-kicker { color:#888; font-size:10px; }
.kb-dg__project-title { margin-top:3px; color:#292929; font-size:18px; }
.kb-dg__project-price { align-self:flex-start; padding:7px 10px; border-radius:7px; background:#FFD000; color:#222; font-size:13px; }
.kb-dg__plan {
  position:relative;
  height:143px;
  margin-top:13px;
  overflow:hidden;
  border-radius:14px;
  background-color:#f6f6f3;
  background-image:linear-gradient(rgba(0,0,0,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(0,0,0,.04) 1px,transparent 1px);
  background-size:17px 17px;
}
.kb-dg__plan-line,.kb-dg__plan-sofa,.kb-dg__plan-table { position:absolute; display:block; }
.kb-dg__plan-line { border-radius:3px; background:#292929; }
.kb-dg__plan-line--top { left:17px; top:16px; width:calc(100% - 34px); height:7px; background:#FFD000; }
.kb-dg__plan-line--left { left:17px; top:23px; width:6px; height:100px; }
.kb-dg__plan-line--right { right:17px; top:23px; width:6px; height:100px; }
.kb-dg__plan-sofa { left:42px; bottom:24px; width:88px; height:39px; border:4px solid #292929; border-radius:9px; }
.kb-dg__plan-table { right:48px; bottom:31px; width:42px; height:42px; border:4px solid #292929; border-radius:50%; }
.kb-dg__plan em { position:absolute; right:18px; top:37px; color:#777; font-size:9px; font-style:normal; font-weight:700; }
.kb-dg__project-bottom { display:flex; justify-content:space-between; gap:12px; margin-top:12px; color:#777; font-size:10px; }
.kb-dg__project-bottom span:last-child { color:#292929; font-weight:800; }
.kb-dg__gift-badge {
  position:absolute;
  left:62%;
  right:auto;
  top:442px;
  bottom:auto;
  z-index:6;
  display:flex;
  align-items:center;
  gap:10px;
  width:38%;
  height:auto !important;
  padding:13px;
  border-radius:16px;
  background:#292929;
  color:#fff;
  box-shadow:0 17px 35px rgba(0,0,0,.18);
}
.kb-dg__gift-icon { display:grid; place-items:center; width:36px; height:36px; flex:0 0 36px; border-radius:9px; background:#FFD000; color:#222; }
.kb-dg__gift-icon svg { width:1em; height:1em; fill:currentColor; }
.kb-dg__gift-title,.kb-dg__gift-subtitle { display:block; }
.kb-dg__gift-title { color:#fff; font-size:11px; }
.kb-dg__gift-subtitle { margin-top:3px; color:#bdbdbd; font-size:9px; }

@media (max-width:1024px) {
  .kb-dg__container { grid-template-columns:1fr !important; gap:52px; }
  .kb-dg__content { max-width:720px; }
  .kb-dg__visual { width:min(720px,100%); margin:0 auto; }
}
@media (max-width:767px) {
  .kb-dg { padding:55px 15px; }
  .kb-dg__title { font-size:39px; }
  .kb-dg__text { font-size:15px; }
  .kb-dg__action { display:block; }
  .kb-dg__button { width:100%; }
  .kb-dg__note { margin-top:12px; text-align:center; }
  .kb-dg__visual { min-height:435px; }
  .kb-dg__visual::before { right:0; width:84%; }
  .kb-dg__photo--before { top:92px; width:46%; height:240px; border-radius:20px; }
  .kb-dg__photo--after { left:34%; top:14px; width:66%; height:310px; border-width:5px; border-radius:23px; }
  .kb-dg__project { left:4%; top:285px; width:70%; padding:13px; border-radius:17px; }
  .kb-dg__project-title { font-size:15px; }
  .kb-dg__plan { height:106px; }
  .kb-dg__gift-badge { left:55%; right:auto; top:350px; bottom:auto; width:45%; padding:10px; }
}
@media (max-width:430px) {
  .kb-dg__title { font-size:35px; }
  .kb-dg__visual { min-height:405px; }
  .kb-dg__gift-badge { width:43%; }
}
