/* Степаненко.PRO — стеклянная главная-калейдоскоп (дочь Reboot) */
:root{
  --ink:#101820; --ink-2:#3d4c5c; --muted:#6b7a8c;
  --bg:#f4f6f9;
  --surface:rgba(255,255,255,.72); --surface-solid:#fff;
  --line:rgba(94,168,220,.42); --line-soft:rgba(94,168,220,.20);
  --sky:#4a9fd8; --sky-deep:#2f7fb5;
  --r-lg:26px; --r-md:20px; --r-sm:14px;
  --blur:saturate(150%) blur(18px);
  --shadow-1:0 1px 2px rgba(24,52,78,.05), 0 8px 24px rgba(24,52,78,.06);
  --shadow-2:0 2px 6px rgba(24,52,78,.07), 0 18px 48px rgba(24,52,78,.10);
  --serif:'Playfair Display', Georgia, 'Times New Roman', serif;
  --sans:'Inter', -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
  --kop:#c98a2b; --shod:#d4644a; --smot:#3f9e6e; --gorod:#7a6bd1; --lom:#4c6679;
}
.sp-home{color:var(--ink);font:16px/1.6 var(--sans);
  background:
    radial-gradient(900px 460px at 85% -80px, rgba(74,159,216,.14), transparent 62%),
    radial-gradient(700px 420px at -60px 240px, rgba(74,159,216,.09), transparent 60%),
    var(--bg);
  background-attachment:fixed; min-height:100vh}
.sp-home a{text-decoration:none;color:inherit}
.sp-wrap{max-width:1180px;margin:0 auto;padding:0 22px}

/* герой */
.sp-hero{display:grid;grid-template-columns:118px 1fr auto;gap:26px;align-items:center;
  background:var(--surface);backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
  border:1px solid var(--line);border-radius:var(--r-lg);
  padding:30px 32px;margin:34px 0 12px;box-shadow:var(--shadow-2)}
.sp-ava{width:118px;height:118px;border-radius:50%;background:url('../img/ava.webp') center/cover;
  box-shadow:0 10px 28px rgba(47,127,181,.35), inset 0 0 0 4px rgba(255,255,255,.55)}
.sp-hero h1{margin:0;font-family:var(--serif);font-size:31px;line-height:1.2}
.sp-hero h1 span{color:var(--muted);font-weight:600;font-size:24px}
.sp-hero p{margin:10px 0 0;color:var(--ink-2);max-width:660px;font-size:15.5px}
.sp-host{display:flex;gap:8px;margin-top:14px;flex-wrap:wrap}
.sp-host a{display:inline-block;font-family:inherit;font-size:13px;font-weight:600;
  padding:8px 16px;border-radius:999px;color:var(--c,var(--ink-2));
  background:rgba(255,255,255,.65);border:1px solid var(--line-soft);transition:.15s}
.sp-host a:hover{color:var(--c);border-color:var(--line);transform:translateY(-1px)}
.sp-act{display:flex;flex-direction:column;gap:10px}
.sp-btn{background:linear-gradient(135deg,var(--sky),var(--sky-deep));color:#fff!important;
  padding:13px 24px;border-radius:14px;font-weight:700;text-align:center;
  box-shadow:0 10px 24px rgba(47,127,181,.30);transition:.15s}
.sp-btn:hover{transform:translateY(-1px)}
.sp-btn2{color:var(--sky-deep)!important;padding:13px 20px;border-radius:14px;font-weight:600;
  text-align:center;background:rgba(255,255,255,.6);border:1px solid var(--line)}
.sp-slogan{color:var(--muted);font-size:14.5px;margin:2px 24px 8px;max-width:900px}
.sp-slogan b{color:var(--ink-2)}

/* калейдоскоп */
.sp-sec{display:flex;align-items:baseline;gap:16px;margin:30px 24px 16px}
.sp-sec h2{font-family:var(--serif);font-size:24px;margin:0}
.sp-sec span{color:var(--muted);font-size:13px}
.sp-mosaic{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;
  grid-auto-rows:10px;grid-auto-flow:row dense;align-items:start}
.sp-card{position:relative;grid-column:span 1;background:var(--surface);
  backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
  border:1px solid var(--line-soft);border-radius:var(--r-md);overflow:hidden;
  display:flex;flex-direction:column;box-shadow:var(--shadow-1);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s}
.sp-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-2);border-color:var(--line)}
.sp-card::before{content:"";display:block;height:4px;
  background:linear-gradient(90deg,var(--edge,var(--sky)),transparent 140%)}
.sp-card{grid-row-end:span 27}
.sp-card.big{grid-column:span 2}
.sp-display{height:158px;position:relative;overflow:hidden}
.sp-card.big .sp-display{height:236px}
.sp-display img{width:100%;height:100%;object-fit:cover;display:block;
  transform:scale(1.02);transition:transform .4s}
.sp-card:hover .sp-display img{transform:scale(1.06)}
.sp-display.sp-nofoto{background:
  radial-gradient(120% 140% at 35% 0%, rgba(255,255,255,.35), transparent 55%),
  linear-gradient(135deg,
    color-mix(in srgb, var(--edge,var(--sky)) 55%, #fff) 0%,
    color-mix(in srgb, var(--edge,var(--sky)) 82%, #000) 100%)}
.sp-display .sp-grad{position:absolute;inset:0;
  background:linear-gradient(180deg,rgba(16,24,32,0) 40%,rgba(16,24,32,.55))}
.sp-tag{position:absolute;left:14px;top:14px;background:rgba(255,255,255,.9);
  color:var(--edge,var(--sky));font-size:11.5px;font-weight:700;letter-spacing:.3px;
  padding:5px 12px;border-radius:999px;box-shadow:0 2px 8px rgba(0,0,0,.18)}
.sp-date{position:absolute;right:14px;bottom:12px;color:#fff;font-size:11.5px;opacity:.9}
.sp-body{padding:15px 18px 17px}
.sp-body h3{margin:0;font-family:var(--serif);font-size:17.5px;line-height:1.35}
.sp-card.big .sp-body h3{font-size:21px}
.sp-body p{margin:8px 0 0;color:var(--ink-2);font-size:13.5px}
.sp-meta{margin-top:12px;display:flex;align-items:center;gap:9px;font-size:12px;color:var(--muted)}
.sp-mini{width:24px;height:24px;border-radius:50%;
  background:linear-gradient(135deg,#8cc3e8,#2f7fb5) #7db8e0 center/cover no-repeat;color:#fff;
  font-size:10.5px;display:flex;align-items:center;justify-content:center;font-weight:700;
  background-image:url('../img/ava.webp');background-size:cover;flex:0 0 auto}

/* низ */
.sp-foot{margin:48px 0 34px;color:var(--muted);font-size:13px;text-align:center}
.sp-foot .m{color:var(--ink-2);font-style:italic;font-family:var(--serif);font-size:14px}
.sp-foot b{color:var(--ink)}

@media (max-width:900px){
  .sp-mosaic{grid-template-columns:1fr 1fr}
  .sp-hero{grid-template-columns:90px 1fr;padding:22px}
  .sp-act{grid-column:1/-1;flex-direction:row}
  .sp-ava{width:90px;height:90px}
}
@media (max-width:620px){
  .sp-mosaic{grid-template-columns:1fr}
  .sp-hero{grid-template-columns:1fr;gap:16px}
  .sp-hero h1{font-size:24px}
}

/* собственная шапка */
.sp-header{position:sticky;top:0;z-index:90;background:var(--surface);
  backdrop-filter:var(--blur);-webkit-backdrop-filter:var(--blur);
  border-bottom:1px solid var(--line-soft)}
.sp-hrow{display:flex;align-items:center;gap:20px;min-height:72px}
.sp-logo{font-family:var(--serif);font-weight:800;font-size:22px;letter-spacing:.2px}
.sp-logo b{color:var(--sky)}
.sp-logo small{display:block;font-family:var(--sans);font-weight:500;color:var(--muted);
  font-size:11.5px;letter-spacing:.4px;margin-top:-2px}
.sp-nav{margin-left:auto;display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.sp-nav a{font-size:13.5px;font-weight:500;color:var(--ink-2);padding:7px 14px;border-radius:999px;
  border:1px solid transparent;transition:.15s}
.sp-nav a:hover{color:var(--sky-deep);border-color:var(--line);background:rgba(255,255,255,.6)}
.sp-nav .sp-sub{color:var(--ink-2);border:1px solid var(--line);background:rgba(74,159,216,.08)}
body:not(.home) .sp-home{padding-top:34px}
@media(max-width:620px){.sp-nav{display:none}}

.sp-more{text-align:center;margin:26px 0 6px}
.sp-more button{font-family:var(--sans);font-size:14px;font-weight:600;color:var(--sky-deep);
  background:var(--surface);backdrop-filter:var(--blur);border:1px solid var(--line);
  border-radius:999px;padding:12px 28px;cursor:pointer;transition:.15s}
.sp-more button:hover{transform:translateY(-1px);box-shadow:var(--shadow-1)}

/* меню посочнее и на всех страницах */
.sp-nav ul{display:flex;gap:4px;list-style:none;margin:0;padding:0;flex-wrap:wrap;align-items:center}
.sp-nav li{list-style:none}
.sp-nav li a{display:inline-block;font-family:inherit;font-size:13.5px;font-weight:600;
  letter-spacing:.2px;color:var(--ink-2);padding:7px 14px;border-radius:999px;
  border:1px solid var(--line-soft);background:rgba(255,255,255,.5);transition:.15s}
.sp-nav li a:hover{color:var(--sky-deep);border-color:var(--line);background:rgba(255,255,255,.85);
  transform:translateY(-1px)}
.sp-nav li.sp-cur > a,
.sp-nav li.current-menu-item > a,
.sp-nav li.current-menu-item > span,
.sp-nav li.current_page_item > a,
.sp-nav li.current-post-ancestor > a {color:var(--sky-deep);
  background:rgba(74,159,216,.14);border-color:var(--line)}
.sp-sub{margin-left:6px;color:var(--sky-deep);border:1px solid var(--line);
  background:rgba(74,159,216,.08)}
.sp-fsoc{display:flex;gap:10px;justify-content:center;margin:6px 0 8px;flex-wrap:wrap}
.sp-fsoc a{font-weight:600;color:var(--sky-deep);border:1px solid var(--line-soft);
  border-radius:999px;padding:5px 14px;background:rgba(255,255,255,.6);font-size:12.5px}
.sp-fsoc a:hover{border-color:var(--line)}
main.sp-page{padding-top:30px}
@media(max-width:620px){
  .sp-nav{margin-left:0}
  .sp-hrow{flex-direction:column;align-items:flex-start;padding-top:12px;padding-bottom:12px}
  .sp-nav{width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch;padding-bottom:4px}
  .sp-nav ul{flex-wrap:nowrap}
}

/* без подчёркиваний ссылок на всём сайте */
a{text-decoration:none}
a::before{text-decoration:none!important}
.sp-header a, .sp-foot a, .sp-nav a{text-decoration:none!important}
.sp-card, .sp-card *{text-decoration:none!important}
.sp-home a{text-decoration:none!important}
/* внутренние страницы (шаблоны Reboot) */
body:not(.home) main a{text-decoration:none!important}
body:not(.home) .post card, body:not(.home) article a{text-decoration:none!important}
