/* ============================================================
   ROGNEDA UC — стили кастомных блоков (КАНОН v3)
   Подключается на фронте И в редакторе, чтобы превью = сайт.
   Токены продублированы здесь (в редакторе паттерн-CSS не грузится).
   ============================================================ */

:root {
  --paper:#f5f3ec; --paper-2:#ece8dd; --ink:#232a40; --ink-soft:#4a5167;
  --muted:#888a96; --line:#d8d4c8; --green:#414d76; --green-2:#4d5a87;
  --green-deep:#2c3450; --clay:#86661c; --gold:#d7b369; --white:#fffdf8;
}

/* Общие */
.rg-b { font-family:'Karla',system-ui,sans-serif; color:var(--ink); }
.rg-b .serif,
.rg-b h1, .rg-b h2, .rg-b h3, .rg-b h4 { font-family:'Fraunces',Georgia,serif; font-weight:500; letter-spacing:-.01em; }
.rg-b .rg-eyebrow { font-family:'Karla'; font-size:12px; letter-spacing:.22em; text-transform:uppercase; color:var(--muted); font-weight:600; margin:0 0 14px; }
.rg-wrap { max-width:1180px; margin:0 auto; padding:0 28px; }

/* Кнопки */
.rg-btn { display:inline-flex; align-items:center; gap:9px; font-family:'Karla'; font-weight:600; font-size:15px; letter-spacing:.01em; padding:14px 26px; border-radius:2px; border:1px solid transparent; cursor:pointer; transition:background .2s,color .2s,border-color .2s; }
.rg-btn--solid { background:var(--green); color:var(--paper); border-color:var(--green); }
.rg-btn--solid:hover { background:var(--green-deep); border-color:var(--green-deep); }
.rg-btn--line { background:transparent; color:#e7e3d4; border-color:#e7e3d4; }
.rg-btn--line:hover { background:#e7e3d4; color:var(--ink); }
.rg-btns { display:flex; gap:16px; flex-wrap:wrap; margin-top:30px; }
.rg-lnk { font-weight:600; color:var(--green); border-bottom:1.5px solid var(--green); padding-bottom:2px; }

/* ── HERO ── */
.rg-block-hero { background:var(--green-deep); padding:92px 0 84px; }
.rg-block-hero .rg-eyebrow { color:#c4bca6; }
.rg-block-hero h1 { font-size:clamp(38px,5vw,64px); line-height:1.04; letter-spacing:-.015em; color:#fff; margin:0; }
.rg-block-hero h1 em { font-style:italic; color:var(--gold); }
.rg-block-hero .rg-hero__sub { font-size:19px; color:#cdc9b8; max-width:560px; margin:22px 0 0; }

/* ── SECTION HEAD ── */
.rg-block-sec { padding:72px 0 0; }
.rg-block-sec .rg-sec-grid { display:flex; align-items:flex-end; justify-content:space-between; gap:30px; border-bottom:1px solid var(--line); padding-bottom:18px; }
.rg-block-sec h2 { font-size:clamp(28px,3.4vw,44px); line-height:1.06; color:var(--ink); max-width:620px; margin:0; }
.rg-block-sec .rg-lead { color:var(--ink-soft); font-size:16px; max-width:340px; margin:0; }

/* ── STATS ── */
.rg-block-stats { background:var(--green-deep); padding:72px 0; }
.rg-block-stats .rg-stats-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(160px,1fr)); gap:30px 40px; }
.rg-block-stats .rg-stat .num { font-family:'Fraunces'; font-weight:500; font-size:46px; color:var(--gold); line-height:1; display:block; }
.rg-block-stats .rg-stat .lab { font-size:14px; color:#b6b3a4; margin-top:8px; display:block; letter-spacing:.02em; }

/* ── VALUES (нумерация) ── */
.rg-block-values { padding:0; }
.rg-block-values .rg-values-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); border-top:1px solid var(--line); }
.rg-block-values .rg-val { padding:36px 30px 32px; border-right:1px solid var(--line); border-bottom:1px solid var(--line); }
.rg-block-values .rg-val .no { font-family:'Fraunces'; font-size:16px; font-weight:600; letter-spacing:.05em; color:var(--clay); }
.rg-block-values .rg-val h4 { font-size:22px; margin:14px 0 9px; color:var(--ink); }
.rg-block-values .rg-val p { font-size:15px; color:var(--ink-soft); margin:0; }

/* ── PRODUCT GRID ── */
.rg-block-products { padding:40px 0 80px; }
.rg-block-products .rg-allrow { display:flex; justify-content:center; margin-top:40px; }

/* ── CTA ── */
.rg-block-cta { background:var(--paper-2); padding:72px 0; text-align:center; }
.rg-block-cta h2 { font-size:clamp(26px,3vw,40px); color:var(--ink); margin:0 0 14px; }
.rg-block-cta p { color:var(--ink-soft); max-width:560px; margin:0 auto 24px; }
.rg-block-cta .rg-btns { justify-content:center; }
.rg-block-cta .rg-btn--solid { color:var(--paper); }

/* ── CONTACT CARDS ── */
.rg-block-contacts { padding:72px 0; }
.rg-block-contacts .rg-cc-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:24px; }
.rg-block-contacts .rg-cc { border:1px solid var(--line); border-radius:2px; padding:30px 24px; background:var(--white); }
.rg-block-contacts .rg-cc svg { width:26px; height:26px; stroke:var(--green); fill:none; stroke-width:1.6; display:block; }
.rg-block-contacts .rg-cc h3 { font-size:20px; margin:14px 0 8px; color:var(--ink); }
.rg-block-contacts .rg-cc p { color:var(--ink-soft); margin:0; }
.rg-block-contacts .rg-cc a { color:var(--green); }

/* ── VACANCY ── */
.rg-block-vacancy { padding:40px 0; }
.rg-block-vacancy .rg-vac { border-left:2px solid var(--green); border-top:1px solid var(--line); border-right:1px solid var(--line); border-bottom:1px solid var(--line); padding:34px; background:var(--white); }
.rg-block-vacancy .rg-vac .meta { color:var(--clay); }
.rg-block-vacancy .rg-vac h3 { font-size:26px; color:var(--ink); margin:6px 0 18px; }
.rg-block-vacancy .rg-vac-cols { display:grid; grid-template-columns:1fr 1fr; gap:48px; }
.rg-block-vacancy .rg-vac h4 { font-size:17px; color:var(--clay); margin:0 0 8px; }
.rg-block-vacancy .rg-vac ul { color:var(--ink-soft); margin:0 0 18px; padding-left:18px; }

/* Адаптив */
@media (max-width:782px) {
  .rg-block-sec .rg-sec-grid { flex-direction:column; align-items:flex-start; gap:14px; }
  .rg-block-vacancy .rg-vac-cols { grid-template-columns:1fr; gap:24px; }
}

/* Чуть ужать тёмные секции в редакторе, чтобы влезали */
.editor-styles-wrapper .rg-block-hero,
.editor-styles-wrapper .rg-block-stats { padding-left:28px; padding-right:28px; }
