/*
Theme Name: Soft Captions Pro
Theme URI: https://softcaptions.xyz
Author: Soft Captions
Version: 2.0
Description: Next-level vibrant pro theme with cinematic animations
Text Domain: softcaptions-pro
*/

@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,600;0,700;1,300;1,600&family=DM+Sans:wght@300;400;500;600&display=swap');

/* ═══════════ TOKENS ═══════════ */
:root {
  --magenta: #ff2d78;
  --cyan:    #00e5ff;
  --violet:  #7c3aed;
  --gold:    #fbbf24;
  --lime:    #a3e635;
  --bg:      #06040f;
  --bg2:     #0d0820;
  --surface: rgba(255,255,255,0.04);
  --border:  rgba(255,255,255,0.08);
  --text:    #f0eeff;
  --muted:   #8b85a8;
  --ff-d:    'Cormorant Garamond', Georgia, serif;
  --ff-b:    'DM Sans', sans-serif;
  --ease:    cubic-bezier(0.19,1,0.22,1);
}

*, *::before, *::after { box-sizing: border-box; margin:0; padding:0; }
html { scroll-behavior: smooth; }
body {
  background: var(--bg);
  color: var(--text);
  font-family: var(--ff-b);
  overflow-x: hidden;
  cursor: none;
  -webkit-font-smoothing: antialiased;
}
::selection { background: rgba(255,45,120,0.35); }
a { color: inherit; text-decoration: none; transition: color 0.3s; }
img { max-width: 100%; display: block; }
ul, ol { list-style: none; }

/* Grain overlay */
body::after {
  content: '';
  position: fixed;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.04'/%3E%3C/svg%3E");
  pointer-events: none;
  z-index: 1;
  opacity: 0.45;
}

/* ═══════════ CURSOR ═══════════ */
#sc-cursor-dot {
  position: fixed; width:8px; height:8px;
  background: var(--magenta);
  border-radius: 50%;
  pointer-events: none; z-index: 9999;
  transform: translate(-50%,-50%);
  box-shadow: 0 0 12px var(--magenta), 0 0 24px rgba(255,45,120,0.5);
  transition: width 0.3s, height 0.3s, background 0.3s;
}
#sc-cursor-ring {
  position: fixed; width:40px; height:40px;
  border: 1.5px solid rgba(255,45,120,0.6);
  border-radius: 50%;
  pointer-events: none; z-index: 9998;
  transform: translate(-50%,-50%);
  transition: width 0.4s var(--ease), height 0.4s var(--ease), border-color 0.3s;
}

/* ═══════════ CANVAS ═══════════ */
#sc-bg-canvas {
  position: fixed; inset:0;
  z-index: 0; pointer-events: none;
}

/* ═══════════ LOADER ═══════════ */
#sc-loader {
  position: fixed; inset:0;
  background: var(--bg);
  z-index: 10000;
  display: flex; align-items:center; justify-content:center; flex-direction:column; gap:2rem;
  transition: opacity 0.8s var(--ease), transform 0.8s var(--ease);
}
#sc-loader.sc-out { opacity:0; transform:scale(1.05); pointer-events:none; }
.sc-loader-word {
  font-family: var(--ff-d); font-size: clamp(3rem,8vw,6rem); font-weight:700;
  display: flex; overflow: hidden;
}
.sc-loader-word span { display:inline-block; animation: sc-l-in 0.9s var(--ease) both; }
.sc-loader-word span:nth-child(1){animation-delay:0s}
.sc-loader-word span:nth-child(2){animation-delay:.05s}
.sc-loader-word span:nth-child(3){animation-delay:.1s}
.sc-loader-word span:nth-child(4){animation-delay:.15s}
.sc-loader-word span:nth-child(5){animation-delay:.2s}
.sc-loader-word span:nth-child(6){animation-delay:.25s}
.sc-loader-word span:nth-child(7){animation-delay:.3s}
.sc-loader-word span:nth-child(8){animation-delay:.35s}
.sc-loader-word span:nth-child(9){animation-delay:.4s}
.sc-loader-word span:nth-child(10){animation-delay:.45s}
.sc-loader-word span:nth-child(11){animation-delay:.5s}
.sc-loader-word span:nth-child(12){animation-delay:.55s}
.sc-grad { background: linear-gradient(90deg,var(--magenta),var(--cyan),var(--violet)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
@keyframes sc-l-in { from{transform:translateY(110%);opacity:0} to{transform:translateY(0);opacity:1} }
.sc-loader-bar-wrap { width:200px;height:2px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden; }
.sc-loader-bar { height:100%;background:linear-gradient(90deg,var(--magenta),var(--cyan));border-radius:999px;animation:sc-lbar 1.4s var(--ease) forwards; }
@keyframes sc-lbar { from{width:0} to{width:100%} }

/* ═══════════ HEADER ═══════════ */
#sc-header {
  position: fixed; top:0; left:0; right:0;
  z-index: 500; height:76px;
  display: flex; align-items:center; justify-content:space-between; padding:0 3rem;
  background: rgba(6,4,15,0.75);
  backdrop-filter: blur(24px); -webkit-backdrop-filter: blur(24px);
  border-bottom: 1px solid var(--border);
}
#sc-header::after {
  content:'';
  position:absolute; bottom:0; left:10%; right:10%; height:1px;
  background: linear-gradient(90deg,transparent,var(--magenta),var(--cyan),transparent);
  opacity:0.5;
}

.sc-logo {
  font-family: var(--ff-d); font-size:1.6rem; font-weight:700; font-style:italic;
  color:var(--text); display:flex; align-items:center; gap:0.6rem; text-decoration:none;
}
.sc-logo-badge {
  width:34px; height:34px; border-radius:50%;
  background: linear-gradient(135deg,var(--magenta),var(--violet));
  display:flex; align-items:center; justify-content:center;
  font-size:13px; font-style:normal; color:#fff; font-weight:700;
  box-shadow: 0 0 20px rgba(255,45,120,0.5);
  transition: transform 0.5s var(--ease), box-shadow 0.4s;
}
.sc-logo:hover .sc-logo-badge { transform:rotate(360deg) scale(1.1); box-shadow:0 0 30px rgba(0,229,255,0.6); }
.sc-logo em { color:var(--magenta); }

.sc-nav-pills { display:flex; gap:0.25rem; }
@media (max-width:768px) { .sc-nav-pills { display:none; } }
.sc-nav-pill {
  padding:0.4rem 1rem; border-radius:999px; font-size:0.8rem; font-weight:500;
  color:var(--muted); text-decoration:none; transition: color 0.3s, background 0.3s;
  position:relative; overflow:hidden;
}
.sc-nav-pill::before {
  content:''; position:absolute; inset:0;
  background: linear-gradient(135deg,rgba(255,45,120,.15),rgba(0,229,255,.15));
  border-radius:999px; opacity:0; transition:opacity 0.3s;
}
.sc-nav-pill:hover::before { opacity:1; }
.sc-nav-pill:hover, .sc-nav-pill.current { color:var(--text); }

.sc-header-right { display:flex; align-items:center; gap:1rem; }
.sc-btn-ghost {
  padding:0.5rem 1.25rem; border-radius:999px; border:1px solid var(--border);
  background:transparent; color:var(--text); font-size:0.8rem; font-weight:500;
  cursor:pointer; font-family:var(--ff-b); transition: border-color 0.3s, background 0.3s;
}
.sc-btn-ghost:hover { border-color:var(--magenta); background:rgba(255,45,120,.08); }
.sc-btn-prime {
  padding:0.5rem 1.5rem; border-radius:999px; border:none;
  background: linear-gradient(135deg,var(--magenta),var(--violet));
  color:#fff; font-size:0.8rem; font-weight:600;
  cursor:pointer; font-family:var(--ff-b); position:relative; overflow:hidden;
  transition: transform 0.3s, box-shadow 0.3s;
  box-shadow: 0 4px 24px rgba(255,45,120,.35);
}
.sc-btn-prime:hover { transform:translateY(-2px); box-shadow:0 8px 32px rgba(255,45,120,.55); }

/* ═══════════ MAIN ═══════════ */
#sc-main { padding-top:76px; }

/* ═══════════ HERO ═══════════ */
.sc-hero {
  position:relative; min-height:100vh;
  display:flex; align-items:center; justify-content:center;
  padding:0 2rem; overflow:hidden; z-index:2;
}
.sc-hero-mesh {
  position:absolute; inset:0;
  background:
    radial-gradient(ellipse 80% 50% at 20% 60%,rgba(255,45,120,.18) 0%,transparent 60%),
    radial-gradient(ellipse 60% 60% at 80% 30%,rgba(0,229,255,.12) 0%,transparent 60%),
    radial-gradient(ellipse 50% 50% at 50% 50%,rgba(124,58,237,.10) 0%,transparent 70%);
  animation: sc-mesh 12s ease-in-out infinite alternate;
}
@keyframes sc-mesh { from{transform:scale(1) rotate(0)} to{transform:scale(1.08) rotate(2deg)} }

.sc-shape {
  position:absolute; border-radius:50%; pointer-events:none;
  animation: sc-sfloat linear infinite;
}
.sc-shape-1 { width:500px;height:500px; background:conic-gradient(from 0deg,var(--magenta),var(--cyan),var(--violet),var(--magenta)); top:-100px;right:-100px; opacity:0.06; border-radius:38% 62% 63% 37%/41% 44% 56% 59%; animation-duration:20s; }
.sc-shape-2 { width:300px;height:300px; border:1px solid rgba(0,229,255,.15); bottom:10%;left:-50px; animation-duration:15s; animation-direction:reverse; }
.sc-shape-3 { width:60px;height:60px; border:2px solid rgba(255,45,120,.4); top:25%;left:15%; animation-duration:8s; border-radius:30% 70% 70% 30%/30% 30% 70% 70%; }
@keyframes sc-sfloat { 0%{transform:translateY(0) rotate(0)} 50%{transform:translateY(-30px) rotate(180deg)} 100%{transform:translateY(0) rotate(360deg)} }

.sc-hero-scanlines {
  position:absolute; inset:0;
  background: repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.03) 2px,rgba(0,0,0,.03) 4px);
  pointer-events:none;
}
.sc-hero-inner { position:relative; z-index:10; text-align:center; max-width:900px; }

.sc-hero-tag {
  display:inline-flex; align-items:center; gap:0.5rem;
  padding:0.4rem 1.2rem; border-radius:999px;
  border:1px solid rgba(255,45,120,.3); background:rgba(255,45,120,.08);
  font-size:0.7rem; font-weight:600; letter-spacing:0.18em; text-transform:uppercase;
  color:var(--magenta); margin-bottom:2rem;
  animation: sc-fup 0.8s 1.8s var(--ease) both;
}
.sc-hero-tag-dot { width:6px;height:6px;border-radius:50%;background:var(--magenta);animation:sc-blink 1.5s infinite; }
@keyframes sc-blink { 0%,100%{opacity:1} 50%{opacity:0} }
@keyframes sc-fup { from{opacity:0;transform:translateY(24px)} to{opacity:1;transform:translateY(0)} }

.sc-hero h1 {
  font-family:var(--ff-d); font-size:clamp(3rem,9vw,7rem); font-weight:700;
  line-height:1.0; letter-spacing:-0.02em; margin-bottom:1.5rem;
}
.sc-hero h1 .sc-line { display:block; overflow:hidden; }
.sc-hero h1 .sc-line span { display:inline-block; animation:sc-lrev 1s var(--ease) both; }
.sc-hero h1 .sc-line:nth-child(1) span{animation-delay:1.9s}
.sc-hero h1 .sc-line:nth-child(2) span{animation-delay:2.1s}
.sc-hero h1 .sc-line:nth-child(3) span{animation-delay:2.3s}
@keyframes sc-lrev { from{transform:translateY(110%)} to{transform:translateY(0)} }

.sc-grad-text {
  background: linear-gradient(90deg,var(--magenta) 0%,var(--cyan) 50%,var(--lime) 100%);
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
  background-size:200%; animation:sc-gshift 4s linear infinite;
}
@keyframes sc-gshift { 0%{background-position:0%} 100%{background-position:200%} }

.sc-hero-sub {
  font-size:clamp(1rem,2vw,1.2rem); color:var(--muted); max-width:560px; margin:0 auto 3rem;
  line-height:1.8; font-weight:300; animation:sc-fup 0.8s 2.5s var(--ease) both;
}
.sc-hero-actions {
  display:flex; gap:1rem; justify-content:center; flex-wrap:wrap;
  animation:sc-fup 0.8s 2.7s var(--ease) both;
}
.sc-btn-xl {
  padding:1rem 2.5rem; border-radius:999px; font-size:0.95rem; font-weight:600;
  cursor:pointer; font-family:var(--ff-b); position:relative; overflow:hidden;
  transition: transform 0.3s var(--ease), box-shadow 0.3s; border:none; letter-spacing:0.02em;
}
.sc-btn-xl-p { background:linear-gradient(135deg,var(--magenta),var(--violet)); color:#fff; box-shadow:0 8px 40px rgba(255,45,120,.4); }
.sc-btn-xl-p:hover { transform:translateY(-3px) scale(1.02); box-shadow:0 16px 60px rgba(255,45,120,.6); }
.sc-btn-xl-o { background:transparent; color:var(--text); border:1px solid rgba(255,255,255,.15); backdrop-filter:blur(8px); }
.sc-btn-xl-o:hover { border-color:var(--cyan); color:var(--cyan); transform:translateY(-3px); box-shadow:0 8px 30px rgba(0,229,255,.15); }

.sc-scroll-hint {
  position:absolute; bottom:2.5rem; left:50%; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:0.5rem;
  color:var(--muted); font-size:0.65rem; letter-spacing:0.2em; text-transform:uppercase;
  animation:sc-fup 1s 3.2s var(--ease) both;
}
.sc-scroll-line {
  width:1px; height:48px;
  background:linear-gradient(to bottom,var(--magenta),transparent);
  animation:sc-sdown 2s ease-in-out infinite;
}
@keyframes sc-sdown {
  0%{transform:scaleY(0);transform-origin:top}
  50%{transform:scaleY(1);transform-origin:top}
  51%{transform:scaleY(1);transform-origin:bottom}
  100%{transform:scaleY(0);transform-origin:bottom}
}

/* ═══════════ MARQUEE ═══════════ */
.sc-marquee {
  position:relative; z-index:2; overflow:hidden;
  border-top:1px solid var(--border); border-bottom:1px solid var(--border);
  background:rgba(255,45,120,.04); padding:1rem 0;
}
.sc-marquee-track {
  display:flex; gap:3rem; width:max-content;
  animation:sc-mrun 24s linear infinite;
}
@keyframes sc-mrun { from{transform:translateX(0)} to{transform:translateX(-50%)} }
.sc-marquee-item {
  display:flex; align-items:center; gap:1rem; white-space:nowrap;
  font-size:0.75rem; font-weight:600; text-transform:uppercase; letter-spacing:0.15em; color:var(--muted);
}
.sc-marquee-dot { width:5px;height:5px;border-radius:50%;background:var(--magenta);flex-shrink:0; }
.sc-marquee-item:nth-child(3n)   .sc-marquee-dot { background:var(--cyan); }
.sc-marquee-item:nth-child(3n+1) .sc-marquee-dot { background:var(--lime); }

/* ═══════════ STATS ═══════════ */
.sc-stats {
  position:relative; z-index:2; padding:6rem 3rem;
  display:flex; justify-content:center; flex-wrap:wrap;
  max-width:1000px; margin:0 auto;
}
.sc-stat-card {
  flex:1; min-width:200px; text-align:center; padding:3rem 2rem;
  border-right:1px solid var(--border); position:relative; overflow:hidden;
  transition: background 0.4s;
}
.sc-stat-card:last-child { border-right:none; }
.sc-stat-card::before { content:''; position:absolute; bottom:0; left:20%; right:20%; height:2px; background:linear-gradient(90deg,transparent,var(--magenta),transparent); transform:scaleX(0); transition:transform 0.5s var(--ease); }
.sc-stat-card:hover::before { transform:scaleX(1); }
.sc-stat-card:hover { background:rgba(255,45,120,.03); }
.sc-stat-num { font-family:var(--ff-d); font-size:3.5rem; font-weight:700; line-height:1; margin-bottom:0.5rem; }
.sc-stat-card:nth-child(1) .sc-stat-num { background:linear-gradient(135deg,var(--magenta),var(--violet)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.sc-stat-card:nth-child(2) .sc-stat-num { background:linear-gradient(135deg,var(--cyan),var(--lime)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.sc-stat-card:nth-child(3) .sc-stat-num { background:linear-gradient(135deg,var(--gold),var(--magenta)); -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text; }
.sc-stat-label { font-size:0.65rem; text-transform:uppercase; letter-spacing:0.25em; color:var(--muted); }

/* ═══════════ SECTION HEAD ═══════════ */
.sc-section-head { display:flex; justify-content:space-between; align-items:flex-end; margin-bottom:3rem; }
.sc-section-eyebrow {
  font-size:0.65rem; font-weight:700; text-transform:uppercase; letter-spacing:0.25em;
  color:var(--magenta); margin-bottom:0.75rem; display:flex; align-items:center; gap:0.5rem;
}
.sc-section-eyebrow::before { content:''; width:24px;height:1px;background:var(--magenta); }
.sc-section-title { font-family:var(--ff-d); font-size:clamp(2rem,4vw,3.5rem); font-weight:700; color:var(--text); line-height:1.15; }
.sc-section-title em { font-style:italic; color:transparent; -webkit-text-stroke:1px rgba(255,255,255,.4); }
.sc-link-all {
  font-size:0.75rem; font-weight:600; text-transform:uppercase; letter-spacing:0.15em;
  color:var(--muted); text-decoration:none; display:flex; align-items:center; gap:0.5rem;
  transition:color 0.3s, gap 0.3s;
}
.sc-link-all:hover { color:var(--cyan); gap:0.9rem; }

/* ═══════════ BENTO GRID ═══════════ */
.sc-featured { position:relative;z-index:2; padding:4rem 3rem 6rem; max-width:1400px; margin:0 auto; }
.sc-bento { display:grid; grid-template-columns:repeat(12,1fr); gap:1.5rem; }

.sc-card {
  grid-column:span 4; position:relative; border-radius:20px; overflow:hidden;
  background:var(--surface); border:1px solid var(--border);
  transition: transform 0.5s var(--ease), border-color 0.4s, box-shadow 0.4s;
}
.sc-card:hover { transform:translateY(-8px) scale(1.01); border-color:rgba(255,45,120,.3); box-shadow:0 24px 80px rgba(255,45,120,.12),0 0 0 1px rgba(255,45,120,.1); }
.sc-card::before { content:''; position:absolute; inset:0; background:linear-gradient(135deg,rgba(255,45,120,.08),rgba(0,229,255,.08)); opacity:0; transition:opacity 0.5s; z-index:2; pointer-events:none; }
.sc-card:hover::before { opacity:1; }
.sc-card-img-wrap { aspect-ratio:4/5; overflow:hidden; }
.sc-card-img { width:100%;height:100%;object-fit:cover; transition:transform 1.2s var(--ease),filter 0.5s; filter:brightness(.75) saturate(1.1); }
.sc-card:hover .sc-card-img { transform:scale(1.08); filter:brightness(.9) saturate(1.3); }
.sc-card-overlay { position:absolute;inset:0; background:linear-gradient(to top,rgba(6,4,15,.96) 0%,rgba(6,4,15,.4) 50%,transparent 100%); z-index:1; }
.sc-card-body { position:absolute;bottom:0;left:0;width:100%;padding:1.5rem;z-index:3; }
.sc-card-cat {
  display:inline-block; padding:0.25rem 0.85rem; border-radius:999px;
  font-size:0.6rem; font-weight:700; text-transform:uppercase; letter-spacing:0.15em; margin-bottom:0.75rem;
  background:rgba(255,45,120,.2); color:var(--magenta); border:1px solid rgba(255,45,120,.3);
}
.sc-card:nth-child(3n)   .sc-card-cat { background:rgba(0,229,255,.15);color:var(--cyan);border-color:rgba(0,229,255,.3); }
.sc-card:nth-child(3n+2) .sc-card-cat { background:rgba(163,230,53,.15);color:var(--lime);border-color:rgba(163,230,53,.3); }
.sc-card-title { font-family:var(--ff-d);font-size:1.2rem;font-weight:700;line-height:1.35;color:var(--text);transition:color 0.3s; }
.sc-card:hover .sc-card-title { color:var(--magenta); }
.sc-card-meta { display:flex;align-items:center;gap:0.75rem;margin-top:0.75rem;opacity:0;transform:translateY(8px);transition:opacity 0.4s,transform 0.4s; }
.sc-card:hover .sc-card-meta { opacity:1;transform:translateY(0); }
.sc-card-meta span { font-size:0.7rem;color:var(--muted);display:flex;align-items:center;gap:0.35rem; }

@media (min-width:1024px) {
  .sc-card:nth-child(1){grid-column:span 8}
  .sc-card:nth-child(2){grid-column:span 4}
  .sc-card:nth-child(3){grid-column:span 4}
  .sc-card:nth-child(4){grid-column:span 4}
  .sc-card:nth-child(5){grid-column:span 4}
  .sc-card:nth-child(6){grid-column:span 8}
  .sc-card:nth-child(7){grid-column:span 4}
  .sc-card:nth-child(8){grid-column:span 4}
  .sc-card:nth-child(9){grid-column:span 4}
}
@media (max-width:1024px) { .sc-card{grid-column:span 6} }
@media (max-width:640px)  { .sc-card{grid-column:span 12} }

/* ═══════════ FEATURE BAND ═══════════ */
.sc-feature-band {
  position:relative;z-index:2;
  background:linear-gradient(135deg,rgba(255,45,120,.06) 0%,rgba(124,58,237,.08) 50%,rgba(0,229,255,.06) 100%);
  border-top:1px solid var(--border); border-bottom:1px solid var(--border);
  padding:6rem 3rem; overflow:hidden;
}
.sc-feature-band::before { content:''; position:absolute; width:600px;height:600px; background:radial-gradient(circle,rgba(255,45,120,.1),transparent 70%); top:-200px;right:-100px; pointer-events:none; }
.sc-feature-inner { max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:6rem;align-items:center; }
@media (max-width:768px) { .sc-feature-inner{grid-template-columns:1fr;gap:3rem} }

.sc-feat-img-stack { position:relative;height:520px; }
.sc-feat-img-main { position:absolute;top:0;left:0;width:80%;height:100%;object-fit:cover;border-radius:24px;z-index:1; }
.sc-feat-img-accent { position:absolute;bottom:-24px;right:-24px;width:55%;aspect-ratio:1;object-fit:cover;border-radius:20px;z-index:2;border:4px solid var(--bg);box-shadow:0 24px 80px rgba(0,0,0,.5); }
.sc-feat-badge { position:absolute;top:2rem;right:0;z-index:3;background:linear-gradient(135deg,var(--magenta),var(--violet));padding:1rem 1.5rem;border-radius:16px;box-shadow:0 12px 40px rgba(255,45,120,.4); }
.sc-feat-badge-num { font-family:var(--ff-d);font-size:2.5rem;font-weight:700;color:#fff;line-height:1; }
.sc-feat-badge-label { font-size:0.65rem;text-transform:uppercase;letter-spacing:0.15em;color:rgba(255,255,255,.7);margin-top:0.25rem; }

.sc-feature-text p { color:var(--muted);line-height:1.9;margin-bottom:2.5rem;font-size:1.05rem; }
.sc-feature-list { display:flex;flex-direction:column;gap:1.25rem; }
.sc-feature-item {
  display:flex;gap:1.25rem;align-items:flex-start;padding:1.25rem;
  border-radius:16px;border:1px solid var(--border);background:var(--surface);
  transition:border-color 0.4s,transform 0.4s var(--ease),background 0.4s;
}
.sc-feature-item:hover { border-color:rgba(255,45,120,.3);transform:translateX(8px);background:rgba(255,45,120,.04); }
.sc-feature-icon { width:48px;min-width:48px;height:48px;border-radius:14px;display:flex;align-items:center;justify-content:center;font-size:1.3rem;position:relative;overflow:hidden; }
.sc-feature-icon::before { content:'';position:absolute;inset:0;background:linear-gradient(135deg,var(--magenta),var(--violet));opacity:0.2; }
.sc-feature-item:nth-child(2) .sc-feature-icon::before { background:linear-gradient(135deg,var(--cyan),var(--lime)); }
.sc-feature-item:nth-child(3) .sc-feature-icon::before { background:linear-gradient(135deg,var(--gold),var(--magenta)); }
.sc-feature-item-title { font-weight:600;color:var(--text);margin-bottom:0.25rem;font-size:0.95rem; }
.sc-feature-item-desc  { font-size:0.85rem;color:var(--muted); }

/* ═══════════ FOOTER ═══════════ */
#sc-footer {
  position:relative;z-index:2;
  background:var(--bg2);border-top:1px solid var(--border);
  padding:6rem 3rem 3rem;overflow:hidden;
}
#sc-footer::before { content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,var(--magenta),var(--cyan),var(--violet),transparent); }
.sc-footer-grid { max-width:1200px;margin:0 auto;display:grid;grid-template-columns:2fr 1fr 1fr 1.5fr;gap:4rem;margin-bottom:4rem; }
@media (max-width:768px) { .sc-footer-grid{grid-template-columns:1fr;gap:2.5rem} }
.sc-footer-brand-desc { color:var(--muted);font-size:.875rem;line-height:1.8;margin:1.5rem 0 2rem; }
.sc-footer-socials { display:flex;gap:.75rem; }
.sc-footer-social { width:40px;height:40px;border-radius:50%;border:1px solid var(--border);display:flex;align-items:center;justify-content:center;font-size:.8rem;color:var(--muted);text-decoration:none;transition:border-color .3s,color .3s,background .3s,transform .3s; }
.sc-footer-social:hover { border-color:var(--magenta);color:var(--magenta);background:rgba(255,45,120,.08);transform:translateY(-3px); }
.sc-footer-col h5 { font-size:.7rem;font-weight:700;text-transform:uppercase;letter-spacing:.2em;color:var(--text);margin-bottom:1.5rem; }
.sc-footer-links { display:flex;flex-direction:column;gap:.85rem; }
.sc-footer-links a { font-size:.875rem;color:var(--muted);transition:color .3s; }
.sc-footer-links a:hover { color:var(--cyan); }
.sc-nl-desc { font-size:.85rem;color:var(--muted);margin-bottom:1rem;font-style:italic; }
.sc-nl-form { display:flex;border-radius:12px;overflow:hidden;border:1px solid var(--border);background:var(--surface);transition:border-color .3s; }
.sc-nl-form:focus-within { border-color:var(--magenta); }
.sc-nl-form input { flex:1;background:transparent;border:none;outline:none;padding:.75rem 1rem;color:var(--text);font-family:var(--ff-b);font-size:.85rem; }
.sc-nl-form input::placeholder { color:var(--muted); }
.sc-nl-btn { background:linear-gradient(135deg,var(--magenta),var(--violet));border:none;padding:.75rem 1.25rem;cursor:pointer;color:#fff;font-size:.8rem;transition:opacity .3s; }
.sc-nl-btn:hover { opacity:.85; }
.sc-footer-bottom { border-top:1px solid var(--border);padding-top:2rem;display:flex;justify-content:space-between;align-items:center;max-width:1200px;margin:0 auto;flex-wrap:wrap;gap:1rem; }
.sc-footer-copy { font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.15em; }
.sc-footer-legal { display:flex;gap:1.5rem; }
.sc-footer-legal a { font-size:.7rem;color:var(--muted);text-transform:uppercase;letter-spacing:.15em;transition:color .3s; }
.sc-footer-legal a:hover { color:var(--magenta); }

/* ═══════════ SCROLL TOP ═══════════ */
#sc-scroll-top {
  position:fixed;bottom:2rem;right:2rem;width:48px;height:48px;border-radius:50%;
  background:linear-gradient(135deg,var(--magenta),var(--violet));border:none;color:#fff;
  font-size:1.1rem;cursor:pointer;z-index:400;display:flex;align-items:center;justify-content:center;
  opacity:0;transform:translateY(20px);transition:opacity .4s,transform .4s,box-shadow .3s;
  box-shadow:0 8px 32px rgba(255,45,120,.4);
}
#sc-scroll-top.sc-show { opacity:1;transform:translateY(0); }
#sc-scroll-top:hover { box-shadow:0 12px 48px rgba(255,45,120,.7); }

/* ═══════════ REVEAL ═══════════ */
.sc-reveal { opacity:0;transform:translateY(32px);transition:opacity .9s var(--ease),transform .9s var(--ease); }
.sc-reveal.sc-visible { opacity:1;transform:translateY(0); }
.sc-d1{transition-delay:.1s} .sc-d2{transition-delay:.2s} .sc-d3{transition-delay:.3s} .sc-d4{transition-delay:.4s}

/* ═══════════ POSTS / CONTENT ═══════════ */
.entry-content { max-width:48rem;margin:0 auto;padding:6rem 1.5rem;color:var(--text);line-height:1.9;font-size:1.0625rem; }
.entry-content h1,.entry-content h2,.entry-content h3 { font-family:var(--ff-d);color:#fff;margin:2.5rem 0 1rem; }
.entry-content h1{font-size:clamp(2rem,5vw,3rem)} .entry-content h2{font-size:clamp(1.5rem,4vw,2.25rem)} .entry-content h3{font-size:1.5rem}
.entry-content p { margin-bottom:1.5rem;color:var(--muted); }
.entry-content a { color:var(--magenta);text-decoration:underline;text-underline-offset:3px; }
.entry-content ul,.entry-content ol { margin:1.5rem 0 1.5rem 1.5rem;color:var(--muted); }
.entry-content li { margin-bottom:.5rem; }
.entry-content ul li{list-style:disc} .entry-content ol li{list-style:decimal}
.entry-content blockquote { border-left:3px solid var(--magenta);padding:1rem 1.5rem;margin:2rem 0;background:var(--surface);border-radius:0 16px 16px 0;font-style:italic;color:#d1d5db; }
.entry-content img { border-radius:16px;margin:2rem 0;width:100%; }
.entry-content code { background:rgba(255,45,120,.1);color:var(--magenta);padding:.125rem .5rem;border-radius:.25rem;font-size:.875em; }
.entry-content pre { background:var(--bg2);border:1px solid var(--border);border-radius:16px;padding:1.5rem;overflow-x:auto;margin:2rem 0; }
.entry-content hr { border:none;border-top:1px solid var(--border);margin:3rem 0; }

.sc-post-meta { display:flex;align-items:center;gap:1rem;margin-bottom:2rem;padding-bottom:2rem;border-bottom:1px solid var(--border);font-size:.8125rem;color:var(--muted); }
.sc-post-cat-badge { background:rgba(255,45,120,.2);color:var(--magenta);font-size:.625rem;padding:.25rem .75rem;border-radius:999px;text-transform:uppercase;letter-spacing:.15em;font-weight:700; }

/* Pagination */
.sc-pagination { display:flex;justify-content:center;gap:.5rem;padding:4rem 0; }
.sc-pagination a,.sc-pagination span { width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:50%;font-size:.875rem;border:1px solid var(--border);color:var(--muted);transition:all .3s; }
.sc-pagination a:hover,.sc-pagination .current { background:var(--magenta);color:#fff;border-color:var(--magenta);font-weight:700; }

@media (max-width:767px) {
  #sc-header{padding:0 1.5rem}
  .sc-featured,.sc-feature-band{padding-left:1.5rem;padding-right:1.5rem}
  .sc-stats{padding:3rem 1.5rem}
  #sc-footer{padding:4rem 1.5rem 2rem}
}
