/* ==========================================================================
   iResonance - сервисные страницы: 404, поиск, «Спасибо», generic.
   Подключается через wp_enqueue_scripts только на этих шаблонах (CWV).
   Токены берутся из style.css :root.
   ========================================================================== */

/* ---------- Общий контейнер ---------- */
.ires-svc{ max-width:840px; margin:0 auto; padding:clamp(48px,7vw,104px) 20px; }
.ires-svc--wide{ max-width:1040px; }
.ires-svc__eyebrow{
  font-family:var(--ff-body); font-weight:600; font-size:12px; letter-spacing:.16em;
  text-transform:none; color:var(--bronze); margin:0 0 14px;
}
.ires-svc h1{ margin:0 0 .45em; }
.ires-svc__lead{ font-size:clamp(1.05rem,1.6vw,1.28rem); color:var(--graphite); line-height:1.7; max-width:62ch; }

/* ---------- Хлебные крошки ---------- */
.ires-crumbs{ font-family:var(--ff-body); font-size:13.5px; color:var(--bronze); margin:0 0 24px; }
.ires-crumbs a{ color:var(--bronze); text-decoration:none; }
.ires-crumbs a:hover{ color:var(--gold); }
.ires-crumbs span{ color:var(--platinum); margin:0 8px; }

/* ---------- Кнопки (самодостаточно, т.к. landing.css тут не всегда) ---------- */
.ires-btn{
  display:inline-block; border-radius:var(--radius-md); padding:14px 28px;
  font-family:var(--ff-body); font-weight:600; letter-spacing:.01em; text-align:center;
  text-decoration:none; cursor:pointer; transition:transform .18s ease, background .2s ease, color .2s ease, border-color .2s ease;
}
.entry-content a.ires-btn, a.ires-btn{ text-decoration:none; }
.ires-btn--primary{ background:var(--gold); color:var(--night); box-shadow:0 6px 22px rgba(203,161,53,.3); }
.ires-btn--primary:hover{ background:#dbb24a; color:var(--night); transform:translateY(-2px); }
.ires-btn--ghost{ background:transparent; color:var(--navy); border:1.5px solid rgba(139,105,20,.45); }
.ires-btn--ghost:hover{ border-color:var(--gold); color:var(--bronze); }
.ires-btn--light{ background:transparent; color:var(--ivory); border:1.5px solid rgba(212,197,169,.5); }
.ires-btn--light:hover{ border-color:var(--gold); color:var(--gold); }

/* ---------- Поисковая форма ---------- */
.ires-search{ display:flex; gap:10px; max-width:560px; margin:28px 0 0; }
.ires-search__field{
  flex:1 1 auto; min-width:0; border:1.5px solid rgba(139,105,20,.3); border-radius:var(--radius-md);
  padding:14px 18px; font-family:var(--ff-body); font-size:1rem; color:var(--graphite); background:#fff;
}
.ires-search__field:focus{ outline:2px solid var(--gold); outline-offset:1px; border-color:var(--gold); }
.ires-search__btn{ flex:0 0 auto; border:none; }

/* ---------- 404 ---------- */
.ires-404{ text-align:center; }
.ires-404__num{
  font-family:var(--ff-head); font-weight:700; line-height:.9; color:var(--gold);
  font-size:clamp(5rem,18vw,11rem); margin:0; letter-spacing:.02em;
}
.ires-404 .ires-search{ margin-inline:auto; }
.ires-404__links{ display:flex; flex-wrap:wrap; justify-content:center; gap:12px 26px; margin:34px 0 0; }
.ires-404__links a{ color:var(--bronze); font-family:var(--ff-body); font-weight:600; font-size:1rem; text-decoration:none; }
.ires-404__links a:hover{ color:var(--gold); }

/* ---------- Поиск: результаты ---------- */
.ires-results{ list-style:none; padding:0; margin:36px 0 0; display:grid; gap:26px; }
.ires-result{ padding:0 0 24px; border-bottom:1px solid rgba(139,105,20,.14); }
.ires-result:last-child{ border-bottom:0; }
.ires-result h2{ font-size:clamp(1.25rem,2vw,1.55rem); margin:0 0 8px; }
.ires-result h2 a{ color:var(--navy); text-decoration:none; }
.ires-result h2 a:hover{ color:var(--gold); }
.ires-result__meta{ font-size:13px; color:var(--bronze); margin:0 0 8px; }
.ires-result p{ color:var(--graphite); line-height:1.65; margin:0; }
.ires-noresults{ margin-top:30px; padding:32px; border:1px solid rgba(139,105,20,.14); border-radius:var(--radius-lg); background:#fff; }

/* ---------- Пагинация ---------- */
.ires-pagination{ margin:40px 0 0; font-family:var(--ff-body); }
.ires-pagination .page-numbers{
  display:inline-block; padding:8px 14px; margin:0 4px 6px 0; border-radius:var(--radius-sm);
  color:var(--bronze); text-decoration:none; border:1px solid rgba(139,105,20,.2);
}
.ires-pagination .page-numbers.current{ background:var(--gold); color:var(--night); border-color:var(--gold); }
.ires-pagination a.page-numbers:hover{ border-color:var(--gold); color:var(--gold); }

/* ---------- «Спасибо» (премиум, темная панель) ---------- */
.ires-thanks{ text-align:center; }
.ires-thanks__panel{
  position:relative; overflow:hidden; border-radius:var(--radius-lg);
  background:radial-gradient(120% 130% at 50% 0%, #20304e 0%, var(--navy) 46%, #101826 100%);
  color:var(--ivory); padding:clamp(40px,6vw,72px) clamp(24px,5vw,56px);
}
.ires-thanks__panel::before{
  content:""; position:absolute; inset:0; pointer-events:none;
  background:radial-gradient(50% 60% at 50% 0%, rgba(203,161,53,.16), transparent 62%);
}
.ires-thanks__inner{ position:relative; z-index:1; }
.ires-thanks__check{
  width:74px; height:74px; border-radius:50%; margin:0 auto 22px; background:var(--gold);
  display:flex; align-items:center; justify-content:center;
}
.ires-thanks__check svg{ width:34px; height:34px; }
.ires-thanks h1{ color:var(--ivory); margin:0 0 .35em; }
.ires-thanks__lead{ color:#E7DECB; font-size:clamp(1.05rem,1.7vw,1.25rem); line-height:1.7; max-width:54ch; margin:0 auto; }
.ires-steps{
  list-style:none; padding:0; margin:34px auto 0; max-width:720px; text-align:left;
  display:grid; gap:14px;
}
.ires-steps li{ display:flex; gap:16px; align-items:flex-start; }
.ires-steps b{
  flex:0 0 auto; width:34px; height:34px; border-radius:50%; background:rgba(203,161,53,.18);
  color:var(--gold); display:flex; align-items:center; justify-content:center;
  font-family:var(--ff-head); font-size:1rem;
}
.ires-steps span{ color:#D9D0BE; line-height:1.6; padding-top:4px; }
.ires-thanks__actions{ display:flex; flex-wrap:wrap; gap:14px; justify-content:center; margin:34px 0 0; }

/* ---------- Generic (контентная страница) ---------- */
.ires-generic .entry-content{ max-width:760px; }
.ires-generic .entry-content > *{ max-width:72ch; }
.ires-generic .entry-content > .alignwide,
.ires-generic .entry-content > .alignfull{ max-width:none; }
.ires-generic h1{ margin:0 0 .5em; }
.ires-generic h2{ margin:1.6em 0 .5em; }
.ires-generic h3{ margin:1.4em 0 .4em; }
.ires-generic .entry-content p,
.ires-generic .entry-content li{ line-height:1.8; color:var(--graphite); }

/* ---------- a11y: видимый фокус с клавиатуры ---------- */
.ires-svc a:focus-visible,
.ires-svc button:focus-visible,
.ires-btn:focus-visible,
.ires-crumbs a:focus-visible,
.ires-404__links a:focus-visible{
  outline:2px solid var(--gold); outline-offset:3px; border-radius:3px;
}
.ires-search__field:focus-visible{ outline:2px solid var(--gold); outline-offset:1px; }

/* ---------- 404: теплое свечение за цифрой (премиум-штрих) ---------- */
.ires-404__num{ text-shadow:0 10px 64px rgba(203,161,53,.30); }

/* ---------- Адаптив ---------- */
@media (max-width:600px){
  .ires-search{ flex-wrap:wrap; }
  .ires-search__btn{ width:100%; }
}
