/* ГороДверей / Процесс v1.1.0. Every selector scoped to .gdep. */
.gdep {
  --gdep-text: var(--gd-text, #211c18);
  --gdep-muted: var(--gd-muted, #756e67);
  --gdep-surface: var(--gd-surface, #fff);
  --gdep-line: var(--gd-line, rgba(35,29,24,.12));
  --gdep-gold: var(--gd-gold-bright, #e3ae4c);
  box-sizing: border-box;
  position: relative;
  isolation: isolate;
  width: 100%;
  max-width: 1480px;
  margin: clamp(22px, 3vw, 38px) auto;
  padding: clamp(24px, 2.8vw, 42px);
  border: 1px solid var(--gdep-line);
  border-radius: 18px;
  background: var(--gdep-surface);
  box-shadow: var(--gd-shadow-sm, 0 8px 24px rgba(35,29,24,.05));
  color: var(--gdep-text);
}
.gdep *, .gdep *::before, .gdep *::after { box-sizing: border-box; }
.gdep__intro {
  display:flex; align-items: center; justify-content:space-between; gap:20px;
  margin: 0 0 clamp(24px,2.5vw,34px);
}
.gdep__heading-group { min-width:0; padding-left:18px; border-left:4px solid var(--gdep-gold); }
.gdep__eyebrow { display:block; color:var(--gd-gold, #b98225); font-size:11px; font-weight:750; letter-spacing:.08em; text-transform:uppercase; margin:0 0 4px; }
.gdep__title { margin:0; font-size:clamp(23px, 2.05vw, 31px); line-height:1.12; letter-spacing:-.025em; font-weight:800; }
.gdep__description { margin:6px 0 0; color:var(--gdep-muted); font-size:clamp(12px,1vw,14px); line-height:1.45; }
.gdep__action { display:inline-flex; align-items:center; justify-content:center; gap:9px; padding:10px 15px; border:1px solid var(--gd-gold, #b98225); border-radius:9px; color:var(--gdep-text); background:transparent; font-size:12px; font-weight:750; cursor:pointer; white-space:nowrap; }
.gdep__action:hover { background:color-mix(in srgb, var(--gdep-gold) 13%, transparent); }
.gdep__action:focus-visible { outline:2px solid var(--gdep-gold); outline-offset:3px; }
.gdep__steps { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:clamp(10px,1.6vw,26px); list-style:none; margin:0; padding:0; }
.gdep__step { position:relative; display:flex; align-items:flex-start; gap:clamp(6px,.68vw,10px); min-width:0; margin:0; padding:0; }
.gdep__number { display:flex; justify-content:center; align-items:center; flex:none; width:32px; height:32px; border-radius:50%; background:linear-gradient(145deg,#ffd071,#efa414); color:#211408; font-size:14px; line-height:1; font-weight:850; box-shadow:0 3px 10px rgba(207,148,33,.18); }
.gdep__icon-wrap { display:flex; align-items:center; justify-content:center; flex:none; margin-top:-4px; width:44px; height:44px; }
.gdep__icon { display:block; width:42px; height:42px; max-width:none; object-fit:contain; }
.gdep__step-copy { flex:1; min-width:0; }
.gdep__step-title { margin:2px 0 6px; font-size:clamp(12px,.93vw,15px); font-weight:800; line-height:1.22; overflow-wrap:anywhere; }
.gdep__step-text { margin:0; color:var(--gdep-muted); font-size:clamp(11px,.83vw,13px); line-height:1.4; overflow-wrap:anywhere; }
.gdep__arrow { position:absolute; top:6px; right:calc(-1 * clamp(8px,1.3vw,20px)); transform:translateX(50%); color:var(--gd-gold,#b98225); font-size:22px; line-height:1; font-weight:400; pointer-events:none; }
/* Icons contain dark outlines. Give them a pale disk in the site's dark theme for contrast. */
html[data-theme="dark"] .gdep__icon-wrap { background:#f5e9d4; border-radius:50%; width:44px; height:44px; padding:3px; margin-top:-2px; }
html[data-theme="dark"] .gdep__icon { width:40px; height:40px; }
@media (min-width:1081px) and (max-width:1260px) {
  .gdep { padding:28px 24px; }
  .gdep__step { gap:5px; }
  .gdep__number { width:28px; height:28px; font-size:12px; }
  .gdep__icon-wrap { width:36px; height:36px; }
  .gdep__icon { width:36px; height:36px; }
  .gdep__steps { gap:13px; }
}
@media (max-width:1080px) {
  .gdep__steps { grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px 22px; }
  .gdep__step { min-height:60px; }
  .gdep__arrow { display:none; }
}
@media (max-width:740px) {
  .gdep { padding:24px 22px; }
  .gdep__steps { grid-template-columns:repeat(2,minmax(0,1fr)); gap:26px 18px; }
  .gdep__step-title { font-size:14px; }
  .gdep__step-text { font-size:12px; }
}
@media (max-width:520px) {
  .gdep { margin:20px auto; padding:22px 17px; border-radius:14px; }
  .gdep__intro { align-items:stretch; flex-direction:column; gap:14px; margin-bottom:24px; }
  .gdep__title { font-size:25px; }
  .gdep__description { font-size:12px; }
  .gdep__steps { grid-template-columns:1fr; gap:18px; }
  .gdep__step { padding:0 0 15px; border-bottom:1px solid var(--gdep-line); min-height:0; gap:12px; }
  .gdep__step:last-child { border-bottom:0; padding-bottom:0; }
  .gdep__number { width:34px; height:34px; font-size:13px; }
  .gdep__icon-wrap { margin-top:-5px; }
  .gdep__step-title { font-size:15px; margin-top:1px; margin-bottom:4px; }
  .gdep__step-text { font-size:12px; }
  .gdep__action { align-self:flex-start; }
}
@media (prefers-reduced-motion: reduce) {
  .gdep__action { transition:none; }
}
