.home {
    --home-bg: #0d0d0f;
    --home-surface: #16161a;
    --home-text: #f5f5f7;
    --home-muted: #a1a1aa;
    --home-accent: #ff9800;
    --home-accent-hover: #ffb74d;
    --home-radius: 12px;
    --home-container: 1200px;
    background: var(--home-bg);
    color: var(--home-text);
    font-family: 'Manrope', system-ui, -apple-system, sans-serif;
}

[data-theme="light"] .home {
    --home-bg: #fafafa;
    --home-surface: #fff;
    --home-text: #18181b;
    --home-muted: #52525b;
}

/* ============ HERO SLIDER ============ */
.home .hero-slider { position: relative; height: clamp(520px, 75vh, 760px); overflow: hidden; }
/* Stack from bottom to top:
   1. Color gradient fallback (always shows even if Unsplash fails)
   2. Unsplash photo
   3. Dark left-to-right overlay for text legibility
   4. ::before with animated SVG particles (added via pseudo-element)
*/
.home .hero-slide {
    position: relative;
    display: flex; align-items: center;
    background-size: cover; background-position: center;
}
.home .hero-slide__inner { position: relative; z-index: 2; }

/* Animated particle overlay — small white dots drifting up-and-right */
.home .hero-slide::before {
    content: "";
    position: absolute; inset: 0;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='400' height='400' viewBox='0 0 400 400'><g fill='%23ffffff' fill-opacity='0.18'><circle cx='30' cy='60' r='1.2'/><circle cx='110' cy='30' r='1.6'/><circle cx='200' cy='80' r='1'/><circle cx='280' cy='40' r='1.4'/><circle cx='350' cy='100' r='1.2'/><circle cx='80' cy='150' r='1.4'/><circle cx='180' cy='200' r='1'/><circle cx='320' cy='180' r='1.6'/><circle cx='50' cy='280' r='1.2'/><circle cx='150' cy='320' r='1'/><circle cx='240' cy='260' r='1.4'/><circle cx='370' cy='320' r='1.6'/><circle cx='100' cy='380' r='1.2'/><circle cx='280' cy='360' r='1'/><circle cx='200' cy='350' r='1.4'/></g><g stroke='%23ffffff' stroke-opacity='0.08' stroke-width='1' fill='none'><line x1='30' y1='60' x2='110' y2='30'/><line x1='110' y1='30' x2='200' y2='80'/><line x1='200' y1='80' x2='280' y2='40'/><line x1='80' y1='150' x2='180' y2='200'/><line x1='180' y1='200' x2='320' y2='180'/><line x1='150' y1='320' x2='240' y2='260'/></g></svg>");
    background-size: 400px 400px;
    background-repeat: repeat;
    animation: home-particles-drift 60s linear infinite;
    pointer-events: none;
    z-index: 1;
    mix-blend-mode: screen;
}
@keyframes home-particles-drift {
    from { background-position: 0 0; }
    to   { background-position: 400px -400px; }
}
[data-theme="light"] .home .hero-slide::before { mix-blend-mode: multiply; }

/* Per-slide backgrounds: Unsplash photo over gradient fallback */
.home .hero-slide--managed-it {
    background-image:
        linear-gradient(90deg, rgba(13,13,15,.88), rgba(13,13,15,.55) 50%, rgba(13,13,15,.25) 100%),
        url("https://images.unsplash.com/photo-1558494949-ef010cbdcc31?w=2000&q=80&auto=format&fit=crop"),
        linear-gradient(135deg, #1e3a8a 0%, #0f172a 100%);
}
.home .hero-slide--cybersecurity {
    background-image:
        linear-gradient(90deg, rgba(13,13,15,.9), rgba(13,13,15,.6) 50%, rgba(13,13,15,.3) 100%),
        url("https://images.unsplash.com/photo-1550751827-4bd374c3f58b?w=2000&q=80&auto=format&fit=crop"),
        linear-gradient(135deg, #7c2d12 0%, #18181b 100%);
}
.home .hero-slide--compliance {
    background-image:
        linear-gradient(90deg, rgba(13,13,15,.88), rgba(13,13,15,.55) 50%, rgba(13,13,15,.25) 100%),
        url("https://images.unsplash.com/photo-1450101499163-c8848c66ca85?w=2000&q=80&auto=format&fit=crop"),
        linear-gradient(135deg, #064e3b 0%, #18181b 100%);
}
.home .hero-slide--network {
    background-image:
        linear-gradient(90deg, rgba(13,13,15,.85), rgba(13,13,15,.55) 50%, rgba(13,13,15,.2) 100%),
        url("https://images.unsplash.com/photo-1544197150-b99a580bb7a8?w=2000&q=80&auto=format&fit=crop"),
        linear-gradient(135deg, #4c1d95 0%, #0f172a 100%);
}
.home .hero-slide--ai {
    background-image:
        linear-gradient(90deg, rgba(13,13,15,.88), rgba(13,13,15,.55) 50%, rgba(13,13,15,.25) 100%),
        url("https://images.unsplash.com/photo-1677442136019-21780ecad995?w=2000&q=80&auto=format&fit=crop"),
        linear-gradient(135deg, #831843 0%, #18181b 100%);
}

/* Light theme: lighter overlay so photos still read */
[data-theme="light"] .home .hero-slide--managed-it,
[data-theme="light"] .home .hero-slide--cybersecurity,
[data-theme="light"] .home .hero-slide--compliance,
[data-theme="light"] .home .hero-slide--network,
[data-theme="light"] .home .hero-slide--ai {
    background-image:
        linear-gradient(90deg, rgba(250,250,250,.85), rgba(250,250,250,.45) 50%, rgba(250,250,250,.1) 100%),
        var(--home-photo, none),
        linear-gradient(135deg, #cbd5e1 0%, #e2e8f0 100%);
}
[data-theme="light"] .home .hero-slide--managed-it    { --home-photo: url("https://images.unsplash.com/photo-1558494949-ef010cbdcc31?w=2000&q=80&auto=format&fit=crop"); }
[data-theme="light"] .home .hero-slide--cybersecurity { --home-photo: url("https://images.unsplash.com/photo-1550751827-4bd374c3f58b?w=2000&q=80&auto=format&fit=crop"); }
[data-theme="light"] .home .hero-slide--compliance    { --home-photo: url("https://images.unsplash.com/photo-1450101499163-c8848c66ca85?w=2000&q=80&auto=format&fit=crop"); }
[data-theme="light"] .home .hero-slide--network       { --home-photo: url("https://images.unsplash.com/photo-1544197150-b99a580bb7a8?w=2000&q=80&auto=format&fit=crop"); }
[data-theme="light"] .home .hero-slide--ai            { --home-photo: url("https://images.unsplash.com/photo-1677442136019-21780ecad995?w=2000&q=80&auto=format&fit=crop"); }

/* Respect reduced-motion preference */
@media (prefers-reduced-motion: reduce) {
    .home .hero-slide::before { animation: none; }
    .home .hero-slide.swiper-slide-active { animation: none; }
}
.home .hero-slide__inner { max-width: var(--home-container); margin: 0 auto; padding: 0 clamp(1.5rem, 5vw, 4rem); width: 100%; }
.home .hero-slide__eyebrow { color: var(--home-accent); font-size: .85rem; letter-spacing: .15em; text-transform: uppercase; font-weight: 600; margin-bottom: 1rem; }
.home .hero-slide__title { font-size: clamp(2.25rem, 5vw, 4rem); font-weight: 700; line-height: 1.1; max-width: 720px; margin-bottom: 1.25rem; color: var(--home-text); }
.home .hero-slide__sub { font-size: clamp(1.05rem, 1.5vw, 1.35rem); color: var(--home-muted); max-width: 580px; margin-bottom: 2rem; }

.home .btn { display: inline-flex; align-items: center; gap: .5rem; padding: .9rem 1.6rem; border-radius: var(--home-radius); font-weight: 600; text-decoration: none; transition: transform .15s ease, background .2s ease; }
.home .btn--primary { background: var(--home-accent); color: #fff; }
.home .btn--primary:hover { background: var(--home-accent-hover); transform: translateY(-2px); }

.home .hero-slider .swiper-pagination-bullet { background: rgba(255,255,255,.4); opacity: 1; }
.home .hero-slider .swiper-pagination-bullet-active { background: var(--home-accent); width: 28px; border-radius: 4px; transition: width .3s ease; }
.home .hero-slider .swiper-button-prev, .home .hero-slider .swiper-button-next { color: #fff; }
.home .hero-slider .swiper-button-prev::after, .home .hero-slider .swiper-button-next::after { font-size: 1.25rem; font-weight: 700; }

/* Subtle Ken Burns on the active slide */
.home .hero-slide.swiper-slide-active { animation: home-kenBurns 12s ease-out forwards; }
@keyframes home-kenBurns { from { background-size: 105%; } to { background-size: 115%; } }

/* ============ HOME 2-UP CTAS ============ */
.home .home-ctas {
    padding: 5rem 1.5rem;
    background: var(--home-bg);
    position: relative;
    overflow: hidden;
}
.home .home-ctas::before {
    content: ""; position: absolute; inset: 0;
    background:
        radial-gradient(circle at 20% 50%, rgba(255,152,0,.10) 0%, transparent 50%),
        radial-gradient(circle at 80% 30%, rgba(255,152,0,.06) 0%, transparent 50%);
    pointer-events: none;
}
.home .home-ctas__inner {
    max-width: var(--home-container);
    margin: 0 auto;
    display: grid;
    grid-template-columns: 1fr 1fr;
    gap: 1.5rem;
    position: relative;
    z-index: 1;
}
@media (max-width: 800px) {
    .home .home-ctas__inner { grid-template-columns: 1fr; }
}
.home .home-cta-card {
    display: flex; flex-direction: column;
    padding: 2.5rem;
    background: var(--home-surface);
    border: 1px solid rgba(255,255,255,.06);
    border-radius: var(--home-radius);
    text-decoration: none;
    transition: transform .15s ease, border-color .2s ease, box-shadow .2s ease;
}
.home .home-cta-card:hover {
    transform: translateY(-4px);
    border-color: rgba(255,152,0,.4);
    box-shadow: 0 24px 48px -16px rgba(255,152,0,.2);
}
.home .home-cta-card__eyebrow {
    display: inline-block;
    font-size: .7rem; font-weight: 700;
    letter-spacing: .25em; text-transform: uppercase;
    color: var(--home-accent);
    background: rgba(255,152,0,.12);
    padding: .35rem .85rem;
    border-radius: 999px;
    margin-bottom: 1.25rem;
    align-self: flex-start;
}
.home .home-cta-card__title {
    font-size: clamp(1.5rem, 2.5vw, 2rem);
    font-weight: 800; line-height: 1.15;
    margin: 0 0 .85rem; letter-spacing: -.02em; color: var(--home-text);
}
.home .home-cta-card__title em { font-style: normal; color: var(--home-accent); }
.home .home-cta-card__sub {
    font-size: 1rem; color: var(--home-muted);
    margin: 0 0 1.75rem; line-height: 1.55;
    flex-grow: 1;
}
.home .home-cta-card__btn {
    display: inline-flex; align-items: center; gap: .5rem;
    padding: .9rem 1.5rem;
    background: var(--home-accent); color: #fff;
    font-weight: 700;
    border-radius: var(--home-radius);
    align-self: flex-start;
    transition: background .2s ease, box-shadow .2s ease;
    box-shadow: 0 8px 18px -6px rgba(255,152,0,.4);
}
.home .home-cta-card:hover .home-cta-card__btn {
    background: var(--home-accent-hover);
    box-shadow: 0 12px 24px -6px rgba(255,152,0,.5);
}

/* ============ VALUE STRIP ============ */
.home .value-strip { background: var(--home-surface); padding: 3rem 1.5rem; border-block: 1px solid rgba(255,255,255,.06); }
.home .value-strip__inner { max-width: var(--home-container); margin: 0 auto; display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 2rem; text-align: center; }
.home .stat__num { font-size: clamp(2rem, 4vw, 3rem); font-weight: 700; color: var(--home-accent); font-variant-numeric: tabular-nums; }
.home .stat__suffix { font-size: 1.5rem; font-weight: 700; color: var(--home-accent); margin-left: .15rem; }
.home .stat__label { color: var(--home-muted); font-size: .9rem; margin-top: .5rem; text-transform: uppercase; letter-spacing: .1em; }

/* ============ INSIGHTS ============ */
.home .insights { max-width: var(--home-container); margin: 0 auto; padding: 5rem 1.5rem; }
.home .insights__header { display: flex; align-items: baseline; justify-content: space-between; margin-bottom: 2.5rem; }
.home .insights__header h2 { font-size: clamp(1.75rem, 3vw, 2.5rem); font-weight: 700; color: var(--home-text); }
.home .link-arrow { color: var(--home-accent); text-decoration: none; font-weight: 600; }
.home .link-arrow:hover { color: var(--home-accent-hover); }

.home .insights__grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1.5rem; }
.home .post-card { background: var(--home-surface); border-radius: var(--home-radius); overflow: hidden; transition: transform .2s ease, box-shadow .2s ease; }
.home .post-card:hover { transform: translateY(-4px); box-shadow: 0 20px 40px -20px rgba(255,152,0,.25); }
[data-theme="light"] .home .post-card:hover { box-shadow: 0 20px 40px -20px rgba(0,0,0,.15); }
.home .post-card__image { width: 100%; aspect-ratio: 16/9; object-fit: cover; display: block; }
.home .post-card__body { padding: 1.25rem 1.5rem 1.5rem; }
.home .post-card__tag { display: inline-block; color: var(--home-accent); font-size: .75rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; text-decoration: none; margin-bottom: .75rem; }
.home .post-card__title { font-size: 1.25rem; line-height: 1.3; margin-bottom: .75rem; }
.home .post-card__title a { color: var(--home-text); text-decoration: none; }
.home .post-card__title a:hover { color: var(--home-accent); }
.home .post-card__excerpt { color: var(--home-muted); font-size: .95rem; line-height: 1.55; margin-bottom: 1rem; }
.home .post-card__meta { color: var(--home-muted); font-size: .8rem; }
