
/* ============ WORDPRESS SCOPING & OVERRIDES ============ */
.swz-home {
  --swz-bg:#04060D;
  --swz-bg-elev:#080D1A;
  --swz-bg-deep:#020308;
  --swz-surface:rgba(255,255,255,0.025);
  --swz-surface-2:rgba(255,255,255,0.045);
  --swz-border:rgba(255,255,255,0.07);
  --swz-border-bright:rgba(255,255,255,0.18);
  --swz-ink:#E8EEFC;
  --swz-ink-bright:#FFFFFF;
  --swz-muted:rgba(232,238,252,0.5);
  --swz-muted-dim:rgba(232,238,252,0.3);
  --swz-accent:#00E5FF;
  --swz-accent-2:#7C5CFF;
  --swz-accent-3:#00FFA3;
  --swz-glow:rgba(0,229,255,0.4);
  --swz-glow-violet:rgba(124,92,255,0.4);
  --swz-ease:cubic-bezier(.22,1,.36,1);
  --swz-ease-emphasis:cubic-bezier(.16,1,.3,1);

  background-color:var(--swz-bg) !important;
  color:var(--swz-ink) !important;
  font-family:'Inter',system-ui,sans-serif !important;
  font-size:16px;
  line-height:1.55;
  overflow-x:hidden;
  position:relative;
  width:100%;
  margin:0 !important;
  padding:0 !important;
  max-width:100% !important;
  box-sizing:border-box;
}

.swz-home *,.swz-home *::before,.swz-home *::after {
  box-sizing:border-box;
  margin:0;
  padding:0;
  border:0;
}

.swz-home ul { list-style:none; }
.swz-home a { text-decoration:none; color:inherit; }
.swz-home img { display:block; max-width:100%; height:auto; }
.swz-home button { font-family:inherit; background:none; border:none; color:inherit; font-size:inherit; }
.swz-home ::selection { background:var(--swz-accent); color:var(--swz-bg); }

.swz-home .swz-section,
.swz-home .swz-hero,
.swz-home .swz-cta,
.swz-home .swz-marquee,
.swz-home .swz-ethics,
.swz-home .swz-faq {
  max-width:none !important;
  width:100% !important;
  margin-left:0 !important;
  margin-right:0 !important;
}

@media (pointer:coarse) {
  .swz-home { cursor:auto; }
  .swz-home button { cursor:pointer; }
}

/* ============ CUSTOM CURSOR ============ */
.swz-home .swz-cursor {
  position:fixed;
  top:0;
  left:0;
  width:32px;
  height:32px;
  border-radius:50%;
  border:1px solid var(--swz-accent);
  pointer-events:none;
  z-index:9999;
  transform:translate(-50%,-50%);
  transition:width .3s var(--swz-ease),height .3s var(--swz-ease),border-color .3s var(--swz-ease),background .3s var(--swz-ease),box-shadow .3s var(--swz-ease);
  box-shadow:0 0 20px var(--swz-glow);
}
.swz-home .swz-cursor::after {
  content:'';
  position:absolute;
  top:50%;
  left:50%;
  width:4px;
  height:4px;
  border-radius:50%;
  background:var(--swz-accent);
  transform:translate(-50%,-50%);
  transition:opacity .3s var(--swz-ease);
}
.swz-home .swz-cursor.is-hover {
  width:56px;
  height:56px;
  border-color:var(--swz-accent);
  background:rgba(0,229,255,0.08);
  box-shadow:0 0 35px var(--swz-glow);
}
.swz-home .swz-cursor.is-hover::after { opacity:0; }
@media (pointer:coarse) { .swz-home .swz-cursor { display:none; } }

/* ============ SECTION BASE ============ */
.swz-home .swz-section {
  padding:8rem 2.5rem;
  position:relative;
  z-index:1;
}
.swz-home .swz-section-inner {
  max-width:1400px;
  margin:0 auto;
  position:relative;
}
.swz-home .swz-section-head {
  display:grid;
  grid-template-columns:1fr 1.5fr;
  gap:4rem;
  margin-bottom:5rem;
  align-items:end;
}
.swz-home .swz-section-label {
  font-family:'JetBrains Mono',monospace;
  font-size:.72rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--swz-accent);
  display:inline-flex;
  align-items:center;
  gap:.8rem;
  padding:.5rem 1rem;
  background:rgba(0,229,255,0.06);
  border:1px solid rgba(0,229,255,0.2);
  border-radius:100px;
  width:fit-content;
}
.swz-home .swz-section-label::before {
  content:'';
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--swz-accent);
  box-shadow:0 0 8px var(--swz-accent);
  animation:swz-pulse 2s ease-in-out infinite;
}
@keyframes swz-pulse {
  0%,100% { opacity:1; }
  50% { opacity:.3; }
}
.swz-home .swz-section-title {
  font-family:'Space Grotesk',sans-serif;
  font-weight:700;
  font-size:clamp(2.2rem,5vw,4.2rem);
  line-height:.95;
  letter-spacing:-0.03em;
  color:var(--swz-ink-bright);
}
.swz-home .swz-section-title em {
  font-style:normal;
  background:linear-gradient(135deg,var(--swz-accent),var(--swz-accent-2));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
}
.swz-home .swz-section-intro {
  font-size:1.1rem;
  line-height:1.6;
  color:var(--swz-muted);
  max-width:540px;
  margin-top:1.5rem;
}
.swz-home .swz-light-bg {
  background:var(--swz-bg-elev);
  position:relative;
}
.swz-home .swz-light-bg::before {
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--swz-accent),var(--swz-accent-2),transparent);
  opacity:.4;
}

/* ============ BUTTONS ============ */
.swz-home .swz-btn {
  font-family:'JetBrains Mono',monospace;
  font-weight:500;
  font-size:.82rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  padding:1.2rem 2.2rem;
  transition:all .4s var(--swz-ease);
  display:inline-flex;
  align-items:center;
  gap:.7rem;
  border:1px solid transparent;
  border-radius:4px;
  position:relative;
  overflow:hidden;
}
.swz-home .swz-btn-primary {
  background:linear-gradient(135deg,var(--swz-accent),var(--swz-accent-2));
  color:var(--swz-bg);
  font-weight:600;
  box-shadow:0 0 30px rgba(0,229,255,0.25);
}
.swz-home .swz-btn-primary:hover {
  transform:translateY(-2px);
  box-shadow:0 8px 40px rgba(0,229,255,0.4);
}
.swz-home .swz-btn-ghost {
  border-color:var(--swz-border-bright);
  color:var(--swz-ink);
  background:var(--swz-surface);
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.swz-home .swz-btn-ghost:hover {
  border-color:var(--swz-accent);
  background:rgba(0,229,255,0.08);
  box-shadow:0 0 25px rgba(0,229,255,0.15);
  transform:translateY(-2px);
}
.swz-home .swz-btn .swz-arrow {
  display:inline-block;
  transition:transform .3s var(--swz-ease);
}
.swz-home .swz-btn:hover .swz-arrow {
  transform:translateX(4px);
}

@media (max-width:880px) {
  .swz-home .swz-section { padding:5rem 1.25rem; }
  .swz-home .swz-section-head { grid-template-columns:1fr; gap:1.5rem; margin-bottom:3rem; }
}

/* ============ HERO ============ */
.swz-home .swz-hero {
  min-height:100vh;
  display:flex;
  flex-direction:column;
  justify-content:center;
  padding:4rem 2.5rem;
  background:var(--swz-bg);
  background-image:
    linear-gradient(rgba(255,255,255,0.018) 1px,transparent 1px),
    linear-gradient(90deg,rgba(255,255,255,0.018) 1px,transparent 1px);
  background-size:64px 64px;
  position:relative;
  overflow:hidden;
  border-bottom:1px solid var(--swz-border);
}
.swz-home .swz-hero::before {
  content:'';
  position:absolute;
  width:700px;
  height:700px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(0,229,255,0.12),transparent 60%);
  top:-200px;
  right:-150px;
  filter:blur(60px);
  animation:swz-float1 25s ease-in-out infinite;
  pointer-events:none;
}
.swz-home .swz-hero::after {
  content:'';
  position:absolute;
  width:600px;
  height:600px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(124,92,255,0.1),transparent 60%);
  bottom:-150px;
  left:-100px;
  filter:blur(60px);
  animation:swz-float2 30s ease-in-out infinite;
  pointer-events:none;
}
@keyframes swz-float1 {
  0%,100% { transform:translate(0,0); }
  50% { transform:translate(-80px,60px); }
}
@keyframes swz-float2 {
  0%,100% { transform:translate(0,0); }
  50% { transform:translate(60px,-80px); }
}
.swz-home .swz-hero-noise {
  position:absolute;
  inset:0;
  pointer-events:none;
  opacity:.03;
  z-index:0;
  background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noiseFilter'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noiseFilter)'/%3E%3C/svg%3E");
}
.swz-home .swz-hero-inner {
  position:relative;
  z-index:1;
  max-width:1400px;
  width:100%;
  margin:0 auto;
}
.swz-home .swz-hero-meta-top {
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  border-bottom:1px solid var(--swz-border);
  padding-bottom:1.5rem;
  margin-bottom:4rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.72rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--swz-muted);
}
.swz-home .swz-hero-meta-top span {
  color:var(--swz-accent);
  margin-left:.5rem;
}
.swz-home .swz-hero-label {
  font-family:'JetBrains Mono',monospace;
  font-size:.75rem;
  letter-spacing:.25em;
  text-transform:uppercase;
  color:var(--swz-accent);
  margin-bottom:2rem;
  display:inline-flex;
  align-items:center;
  gap:.8rem;
  padding:.5rem 1rem;
  background:rgba(0,229,255,0.06);
  border:1px solid rgba(0,229,255,0.2);
  border-radius:100px;
  width:fit-content;
}
.swz-home .swz-hero-label::before {
  content:'';
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--swz-accent);
  box-shadow:0 0 8px var(--swz-accent);
  animation:swz-pulse 2s ease-in-out infinite;
}
.swz-home .swz-hero-title {
  font-family:'Space Grotesk',sans-serif;
  font-weight:700;
  font-size:clamp(3rem,11vw,9.5rem);
  line-height:.85;
  letter-spacing:-0.045em;
  color:var(--swz-ink-bright);
  margin-bottom:2.5rem;
}
.swz-home .swz-hero-title em {
  font-style:normal;
  background:linear-gradient(135deg,var(--swz-accent) 0%,var(--swz-accent-2) 100%);
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
}
.swz-home .swz-title-row {
  display:block;
  overflow:hidden;
}
.swz-home .swz-hero-sub {
  font-size:1.2rem;
  line-height:1.55;
  color:var(--swz-muted);
  max-width:680px;
  font-weight:400;
  margin-bottom:3.5rem;
}
.swz-home .swz-hero-sub strong {
  color:var(--swz-ink-bright);
  font-weight:500;
}
.swz-home .swz-hero-actions {
  display:flex;
  gap:1.5rem;
  align-items:center;
  flex-wrap:wrap;
}

/* ============ MARQUEE ============ */
.swz-home .swz-marquee {
  background:var(--swz-bg);
  border-top:1px solid rgba(0,229,255,0.2);
  border-bottom:1px solid rgba(0,229,255,0.2);
  padding:1.5rem 0;
  overflow:hidden;
  position:relative;
}
.swz-home .swz-marquee::before,
.swz-home .swz-marquee::after {
  content:'';
  position:absolute;
  top:0;
  bottom:0;
  width:200px;
  z-index:2;
  pointer-events:none;
}
.swz-home .swz-marquee::before {
  left:0;
  background:linear-gradient(90deg,var(--swz-bg),transparent);
}
.swz-home .swz-marquee::after {
  right:0;
  background:linear-gradient(-90deg,var(--swz-bg),transparent);
}
.swz-home .swz-marquee-track {
  display:flex;
  gap:3rem;
  animation:swz-marq 40s linear infinite;
  white-space:nowrap;
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  font-size:1.6rem;
  letter-spacing:-0.01em;
}
.swz-home .swz-marquee-track span {
  display:inline-flex;
  align-items:center;
  gap:3rem;
  color:var(--swz-ink);
}
.swz-home .swz-marquee-track span::after {
  content:'';
  width:6px;
  height:6px;
  background:var(--swz-accent);
  display:inline-block;
  border-radius:50%;
  box-shadow:0 0 8px var(--swz-accent);
}
@keyframes swz-marq { to { transform:translateX(-50%); } }

/* ============ SCATTERED POSTCARDS ============ */
.swz-home .swz-scrap-stage {
  position:relative;
  max-width:1400px;
  margin:0 auto;
  min-height:780px;
  perspective:2000px;
}
.swz-home .swz-polaroid {
  position:absolute;
  width:240px;
  background:var(--swz-bg-elev);
  padding:12px 12px 48px;
  border:1px solid var(--swz-border);
  border-radius:6px;
  box-shadow:0 20px 50px -10px rgba(0,0,0,0.6);
  transition:transform .7s var(--swz-ease-emphasis),box-shadow .5s var(--swz-ease),border-color .5s var(--swz-ease),z-index 0s 0s;
  transform-origin:center center;
  will-change:transform;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.swz-home .swz-polaroid:hover {
  z-index:50;
  transform:rotate(0deg) scale(1.08) translateY(-12px) !important;
  box-shadow:0 40px 80px -10px rgba(0,0,0,0.8),0 0 40px rgba(0,229,255,0.15);
  border-color:rgba(0,229,255,0.4);
  transition-delay:0s;
}
.swz-home .swz-polaroid img {
  width:100%;
  aspect-ratio:3/4;
  object-fit:cover;
  background:var(--swz-bg);
  border-radius:3px;
  filter:grayscale(40%) brightness(0.85);
  transition:filter .5s var(--swz-ease);
}
.swz-home .swz-polaroid:hover img {
  filter:grayscale(0%) brightness(1);
}
.swz-home .swz-polaroid-meta {
  position:absolute;
  bottom:14px;
  left:12px;
  right:12px;
  font-family:'JetBrains Mono',monospace;
  font-size:.76rem;
  color:var(--swz-ink);
  text-align:center;
  line-height:1.1;
  letter-spacing:0.02em;
}
.swz-home .swz-polaroid-tag {
  position:absolute;
  top:18px;
  right:18px;
  font-family:'JetBrains Mono',monospace;
  font-size:.58rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  background:rgba(0,229,255,0.12);
  color:var(--swz-accent);
  border:1px solid rgba(0,229,255,0.3);
  padding:.3rem .55rem;
  border-radius:3px;
  backdrop-filter:blur(10px);
  -webkit-backdrop-filter:blur(10px);
}
.swz-home .swz-polaroid.is-pink .swz-polaroid-tag {
  background:rgba(124,92,255,0.12);
  color:var(--swz-accent-2);
  border-color:rgba(124,92,255,0.3);
}
@media (max-width:880px) {
  .swz-home .swz-scrap-stage { min-height:1400px; }
  .swz-home .swz-polaroid { width:180px; }
}

/* ============ FEATURES GRID (9 SURFACES) ============ */
.swz-home .swz-features {
  display:grid;
  grid-template-columns:repeat(3,1fr);
  gap:1px;
  background:var(--swz-border);
  border:1px solid var(--swz-border);
  border-radius:8px;
  overflow:hidden;
}
.swz-home .swz-feature {
  background:var(--swz-bg);
  padding:3rem 2.2rem 3.5rem;
  position:relative;
  overflow:hidden;
  transition:background .4s var(--swz-ease);
}
.swz-home .swz-feature::before {
  content:'';
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:1px;
  background:linear-gradient(90deg,transparent,var(--swz-accent),transparent);
  opacity:0;
  transition:opacity .4s var(--swz-ease);
}
.swz-home .swz-feature:hover::before { opacity:1; }
.swz-home .swz-feature:hover {
  background:var(--swz-bg-deep);
}
.swz-home .swz-feature-num {
  font-family:'JetBrains Mono',monospace;
  font-size:.7rem;
  letter-spacing:.2em;
  color:var(--swz-muted-dim);
  margin-bottom:2.2rem;
  transition:color .4s var(--swz-ease);
}
.swz-home .swz-feature:hover .swz-feature-num { color:var(--swz-accent); }
.swz-home .swz-feature-icon {
  width:52px;
  height:52px;
  border:1px solid var(--swz-border-bright);
  border-radius:8px;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:2rem;
  transition:all .4s var(--swz-ease);
  background:var(--swz-surface);
}
.swz-home .swz-feature:hover .swz-feature-icon {
  border-color:var(--swz-accent);
  background:rgba(0,229,255,0.08);
  box-shadow:0 0 20px rgba(0,229,255,0.15);
}
.swz-home .swz-feature-icon svg {
  width:22px;
  height:22px;
  stroke:var(--swz-ink);
  fill:none;
  stroke-width:1.6;
  transition:stroke .4s var(--swz-ease);
}
.swz-home .swz-feature:hover .swz-feature-icon svg { stroke:var(--swz-accent); }
.swz-home .swz-feature-title {
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  font-size:1.4rem;
  line-height:1.1;
  letter-spacing:-0.02em;
  margin-bottom:1rem;
  color:var(--swz-ink-bright);
}
.swz-home .swz-feature-body {
  font-size:.92rem;
  line-height:1.55;
  color:var(--swz-muted);
  transition:color .4s var(--swz-ease);
}
.swz-home .swz-feature:hover .swz-feature-body { color:var(--swz-ink); }
.swz-home .swz-feature-meta {
  margin-top:1.8rem;
  padding-top:1.2rem;
  border-top:1px solid var(--swz-border);
  font-family:'JetBrains Mono',monospace;
  font-size:.68rem;
  letter-spacing:.15em;
  text-transform:uppercase;
  color:var(--swz-muted-dim);
  transition:color .4s var(--swz-ease),border-color .4s var(--swz-ease);
}
.swz-home .swz-feature:hover .swz-feature-meta {
  border-color:rgba(0,229,255,0.2);
  color:var(--swz-accent);
}
@media (max-width:980px) { .swz-home .swz-features { grid-template-columns:repeat(2,1fr); } }
@media (max-width:640px) { .swz-home .swz-features { grid-template-columns:1fr; } }

/* ============ CAPABILITIES DEEP DIVE ============ */
.swz-home .swz-cap {
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:5rem;
  padding:5rem 0;
  border-top:1px solid var(--swz-border);
  align-items:start;
}
.swz-home .swz-cap:first-of-type { border-top:none; }
.swz-home .swz-cap-left { position:sticky; top:120px; }
.swz-home .swz-cap-num {
  font-family:'Space Grotesk',sans-serif;
  font-weight:700;
  font-size:5rem;
  line-height:1;
  letter-spacing:-0.04em;
  margin-bottom:1.5rem;
  background:linear-gradient(135deg,var(--swz-accent),var(--swz-accent-2));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
}
.swz-home .swz-cap-title {
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  font-size:2.3rem;
  line-height:.98;
  letter-spacing:-0.025em;
  margin-bottom:1.5rem;
  color:var(--swz-ink-bright);
}
.swz-home .swz-cap-desc {
  font-size:1.05rem;
  line-height:1.6;
  color:var(--swz-muted);
  margin-bottom:2rem;
}
.swz-home .swz-cap-list {
  list-style:none;
  border-top:1px solid var(--swz-border);
}
.swz-home .swz-cap-list li {
  padding:1.1rem 0;
  border-bottom:1px solid var(--swz-border);
  display:flex;
  gap:1rem;
  align-items:flex-start;
  font-size:.95rem;
  line-height:1.5;
  color:var(--swz-muted);
}
.swz-home .swz-cap-list li::before {
  content:'→';
  color:var(--swz-accent);
  font-weight:bold;
  flex-shrink:0;
}
.swz-home .swz-cap-list strong {
  font-weight:500;
  color:var(--swz-ink-bright);
}

.swz-home .swz-cap-right {
  background:var(--swz-bg-deep);
  color:var(--swz-ink);
  padding:2.5rem;
  position:relative;
  min-height:520px;
  border:1px solid var(--swz-border);
  border-radius:8px;
  overflow:hidden;
}
.swz-home .swz-cap-right::before {
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(255,255,255,0.01) 2px,rgba(255,255,255,0.01) 4px);
}
.swz-home .swz-cap-right::after {
  content:'';
  position:absolute;
  top:0;
  left:0;
  right:0;
  height:2px;
  background:linear-gradient(90deg,var(--swz-accent),var(--swz-accent-2));
  opacity:.6;
}
.swz-home .swz-cap-screen-label {
  font-family:'JetBrains Mono',monospace;
  font-size:.7rem;
  letter-spacing:.2em;
  color:var(--swz-accent);
  margin-bottom:2rem;
  display:flex;
  justify-content:space-between;
  border-bottom:1px solid var(--swz-border);
  padding-bottom:1rem;
  position:relative;
}
.swz-home .swz-cap-screen-label span:last-child {
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  color:var(--swz-accent-3);
}
.swz-home .swz-cap-screen-label span:last-child::before {
  content:'';
  width:6px;
  height:6px;
  border-radius:50%;
  background:var(--swz-accent-3);
  box-shadow:0 0 8px var(--swz-accent-3);
  animation:swz-pulse 1.5s ease-in-out infinite;
}
.swz-home .swz-cap-screen-rows {
  display:flex;
  flex-direction:column;
  gap:.5rem;
}
.swz-home .swz-cap-row {
  display:grid;
  grid-template-columns:60px 1fr 80px 100px;
  gap:1rem;
  padding:.85rem 0;
  border-bottom:1px solid var(--swz-border);
  font-family:'JetBrains Mono',monospace;
  font-size:.78rem;
  align-items:center;
}
.swz-home .swz-cap-row-head {
  font-size:.62rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--swz-muted-dim);
  padding-bottom:1rem;
}
.swz-home .swz-cap-row .swz-cap-row-id { color:var(--swz-accent); }
.swz-home .swz-cap-row .swz-cap-row-type { color:var(--swz-muted); font-size:.72rem; }
.swz-home .swz-cap-row .swz-cap-row-stat { text-align:right; color:var(--swz-ink); }
.swz-home .swz-cap-row-bar {
  height:6px;
  background:rgba(255,255,255,0.05);
  position:relative;
  overflow:hidden;
  border-radius:3px;
}
.swz-home .swz-cap-row-bar span {
  position:absolute;
  top:0;
  left:0;
  bottom:0;
  background:linear-gradient(90deg,var(--swz-accent),var(--swz-accent-2));
  transform-origin:left;
  transform:scaleX(0);
  transition:transform 1.2s var(--swz-ease);
  border-radius:3px;
  box-shadow:0 0 8px var(--swz-glow);
}
.swz-home .swz-cap.is-in .swz-cap-row-bar span { transform:scaleX(var(--swz-bar-w,0.5)); }
@media (max-width:880px) {
  .swz-home .swz-cap { grid-template-columns:1fr; gap:2.5rem; padding:3rem 0; }
  .swz-home .swz-cap-left { position:static; }
  .swz-home .swz-cap-right { padding:2rem; min-height:auto; }
  .swz-home .swz-cap-row { grid-template-columns:50px 1fr 60px; font-size:.7rem; }
  .swz-home .swz-cap-row > :nth-child(4) { display:none; }
}

/* ============ HOW IT WORKS ============ */
.swz-home .swz-steps-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  gap:2rem;
  position:relative;
}
.swz-home .swz-steps-grid::before {
  content:'';
  position:absolute;
  top:30px;
  left:30px;
  right:30px;
  height:1px;
  background:linear-gradient(90deg,var(--swz-accent),var(--swz-accent-2),var(--swz-accent-3));
  opacity:.3;
}
.swz-home .swz-step { position:relative; padding-top:0; }
.swz-home .swz-step-num {
  width:60px;
  height:60px;
  border-radius:50%;
  background:var(--swz-bg-elev);
  border:1px solid rgba(0,229,255,0.4);
  color:var(--swz-accent);
  font-family:'Space Grotesk',sans-serif;
  font-weight:700;
  font-size:1.3rem;
  display:flex;
  align-items:center;
  justify-content:center;
  margin-bottom:2rem;
  position:relative;
  z-index:2;
  transition:all .4s var(--swz-ease);
  box-shadow:0 0 0 6px var(--swz-bg);
}
.swz-home .swz-step:hover .swz-step-num {
  background:var(--swz-accent);
  color:var(--swz-bg);
  transform:scale(1.1);
  box-shadow:0 0 0 6px var(--swz-bg),0 0 25px var(--swz-glow);
}
.swz-home .swz-step-title {
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  font-size:1.35rem;
  line-height:1.1;
  letter-spacing:-0.02em;
  margin-bottom:1rem;
  color:var(--swz-ink-bright);
}
.swz-home .swz-step-body {
  font-size:.92rem;
  line-height:1.55;
  color:var(--swz-muted);
}
.swz-home .swz-step-meta {
  margin-top:1.5rem;
  font-family:'JetBrains Mono',monospace;
  font-size:.65rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--swz-accent);
  display:inline-flex;
  align-items:center;
  gap:.5rem;
  padding:.4rem .8rem;
  background:rgba(0,229,255,0.06);
  border:1px solid rgba(0,229,255,0.15);
  border-radius:4px;
}
@media (max-width:980px) {
  .swz-home .swz-steps-grid { grid-template-columns:repeat(2,1fr); gap:3rem 2rem; }
  .swz-home .swz-steps-grid::before { display:none; }
}
@media (max-width:560px) { .swz-home .swz-steps-grid { grid-template-columns:1fr; } }

/* ============ MOSAIC GALLERY ============ */
.swz-home .swz-mosaic-grid {
  display:grid;
  grid-template-columns:repeat(4,1fr);
  grid-auto-rows:180px;
  gap:.5rem;
  grid-auto-flow:dense;
}
.swz-home .swz-mos-tile {
  position:relative;
  overflow:hidden;
  background:var(--swz-bg-deep);
  border:1px solid var(--swz-border);
  border-radius:6px;
  transition:transform .7s var(--swz-ease-emphasis),border-color .5s var(--swz-ease),box-shadow .5s var(--swz-ease);
}
.swz-home .swz-mos-tile img {
  width:100%;
  height:100%;
  object-fit:cover;
  filter:grayscale(80%) brightness(0.6);
  transition:filter .7s var(--swz-ease),transform .7s var(--swz-ease-emphasis),opacity .4s var(--swz-ease);
}
.swz-home .swz-mos-tile:hover img {
  filter:grayscale(0%) brightness(1);
  transform:scale(1.08);
}
.swz-home .swz-mos-tile:hover {
  border-color:rgba(0,229,255,0.4);
  box-shadow:0 0 30px rgba(0,229,255,0.15);
}
.swz-home .swz-mosaic-grid.has-hover .swz-mos-tile:not(:hover) { transform:scale(.97); }
.swz-home .swz-mosaic-grid.has-hover .swz-mos-tile:not(:hover) img { opacity:.35; }
.swz-home .swz-mos-tile-size-tall { grid-row:span 2; }
.swz-home .swz-mos-tile-size-wide { grid-column:span 2; }
.swz-home .swz-mos-tile-size-big { grid-row:span 2; grid-column:span 2; }
.swz-home .swz-mos-tile-overlay {
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  padding:1.4rem;
  background:linear-gradient(to top,rgba(4,6,13,0.95) 0%,rgba(4,6,13,0.3) 50%,transparent 100%);
  opacity:0;
  transition:opacity .4s var(--swz-ease);
  pointer-events:none;
}
.swz-home .swz-mos-tile:hover .swz-mos-tile-overlay { opacity:1; }
.swz-home .swz-mos-tile-cat {
  font-family:'JetBrains Mono',monospace;
  font-size:.65rem;
  letter-spacing:.18em;
  text-transform:uppercase;
  color:var(--swz-accent);
  margin-bottom:.5rem;
}
.swz-home .swz-mos-tile-name {
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  font-size:1.1rem;
  line-height:1.1;
  letter-spacing:-0.01em;
  color:var(--swz-ink-bright);
}
@media (max-width:880px) {
  .swz-home .swz-mosaic-grid { grid-template-columns:repeat(2,1fr); grid-auto-rows:140px; }
}

/* ============ BENEFITS LIST ============ */
.swz-home .swz-benefits-list {
  border-top:1px solid var(--swz-border-bright);
}
.swz-home .swz-benefit {
  border-bottom:1px solid var(--swz-border);
  padding:2.5rem 0;
  display:grid;
  grid-template-columns:80px 1fr 2fr auto;
  gap:3rem;
  align-items:center;
  transition:padding .4s var(--swz-ease),background .4s var(--swz-ease);
  position:relative;
  overflow:hidden;
}
.swz-home .swz-benefit::before {
  content:'';
  position:absolute;
  left:0;
  top:0;
  bottom:0;
  width:2px;
  background:linear-gradient(180deg,var(--swz-accent),var(--swz-accent-2));
  transform:scaleY(0);
  transform-origin:top;
  transition:transform .4s var(--swz-ease);
}
.swz-home .swz-benefit:hover::before { transform:scaleY(1); }
.swz-home .swz-benefit:hover {
  padding-left:2rem;
  background:var(--swz-surface);
}
.swz-home .swz-benefit-num {
  font-family:'JetBrains Mono',monospace;
  font-size:.78rem;
  letter-spacing:.18em;
  color:var(--swz-accent);
}
.swz-home .swz-benefit-title {
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  font-size:1.7rem;
  line-height:1;
  letter-spacing:-0.02em;
  color:var(--swz-ink-bright);
  transition:transform .4s var(--swz-ease);
}
.swz-home .swz-benefit:hover .swz-benefit-title { transform:translateX(8px); }
.swz-home .swz-benefit-body {
  font-size:.95rem;
  line-height:1.55;
  color:var(--swz-muted);
  transition:color .4s var(--swz-ease);
}
.swz-home .swz-benefit:hover .swz-benefit-body { color:var(--swz-ink); }
.swz-home .swz-benefit-arrow {
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  font-size:1.5rem;
  color:var(--swz-accent);
  transition:transform .4s var(--swz-ease);
}
.swz-home .swz-benefit:hover .swz-benefit-arrow { transform:translateX(12px); }
@media (max-width:880px) {
  .swz-home .swz-benefit { grid-template-columns:60px 1fr; gap:1rem; padding:2rem 0; }
  .swz-home .swz-benefit-body { grid-column:1/-1; }
  .swz-home .swz-benefit-arrow { display:none; }
}

/* ============ ETHICS ============ */
.swz-home .swz-ethics {
  text-align:center;
  border-top:1px solid var(--swz-border);
  position:relative;
  overflow:hidden;
}
.swz-home .swz-ethics::before {
  content:'';
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:60vw;
  height:60vw;
  max-width:700px;
  max-height:700px;
  background:radial-gradient(circle,rgba(0,229,255,0.06),transparent 60%);
  filter:blur(60px);
  pointer-events:none;
}
.swz-home .swz-ethics-inner {
  max-width:1000px;
  margin:0 auto;
  position:relative;
  z-index:1;
}
.swz-home .swz-ethics .swz-section-label {
  margin:0 auto 2rem;
}
.swz-home .swz-ethics-text {
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  font-size:clamp(1.8rem,4vw,3rem);
  line-height:1.15;
  letter-spacing:-0.025em;
  margin-bottom:3rem;
  color:var(--swz-ink-bright);
}
.swz-home .swz-ethics-text em {
  font-style:normal;
  background:linear-gradient(135deg,var(--swz-accent),var(--swz-accent-2));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
}

/* ============ FAQ ============ */
.swz-home .swz-faq-inner {
  max-width:1100px;
  margin:0 auto;
}
.swz-home .swz-faq-item {
  border-bottom:1px solid var(--swz-border);
  overflow:hidden;
  transition:background .4s var(--swz-ease);
}
.swz-home .swz-faq-item:hover { background:var(--swz-surface); }
.swz-home .swz-faq-item.is-open { background:var(--swz-surface); }
.swz-home .swz-faq-q {
  width:100%;
  text-align:left;
  padding:2rem 0;
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:2rem;
  font-family:'Space Grotesk',sans-serif;
  font-weight:600;
  font-size:1.35rem;
  letter-spacing:-0.015em;
  line-height:1.15;
  color:var(--swz-ink-bright);
  transition:color .3s var(--swz-ease);
}
.swz-home .swz-faq-q:hover { color:var(--swz-accent); }
.swz-home .swz-faq-toggle {
  width:38px;
  height:38px;
  border:1px solid var(--swz-border-bright);
  border-radius:50%;
  flex-shrink:0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:1.2rem;
  font-weight:400;
  color:var(--swz-ink);
  transition:all .4s var(--swz-ease);
  background:var(--swz-surface);
}
.swz-home .swz-faq-item:hover .swz-faq-toggle {
  border-color:var(--swz-accent);
  color:var(--swz-accent);
}
.swz-home .swz-faq-item.is-open .swz-faq-toggle {
  background:var(--swz-accent);
  border-color:var(--swz-accent);
  transform:rotate(45deg);
  color:var(--swz-bg);
  box-shadow:0 0 20px var(--swz-glow);
}
.swz-home .swz-faq-a {
  max-height:0;
  overflow:hidden;
  transition:max-height .5s var(--swz-ease);
}
.swz-home .swz-faq-a-inner {
  padding:0 0 2rem;
  font-size:1rem;
  line-height:1.6;
  color:var(--swz-muted);
  max-width:760px;
}
.swz-home .swz-faq-item.is-open .swz-faq-a { max-height:400px; }

/* ============ FINAL CTA ============ */
.swz-home .swz-cta {
  text-align:center;
  position:relative;
  overflow:hidden;
  border-top:1px solid var(--swz-border);
}
.swz-home .swz-cta::before {
  content:'';
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
  width:80vw;
  height:80vw;
  max-width:900px;
  max-height:900px;
  background:radial-gradient(circle,rgba(0,229,255,0.08),rgba(124,92,255,0.04) 40%,transparent 60%);
  filter:blur(100px);
  z-index:0;
  animation:swz-cta-pulse 8s ease-in-out infinite;
}
@keyframes swz-cta-pulse {
  0%,100% { opacity:.6; transform:translate(-50%,-50%) scale(1); }
  50% { opacity:1; transform:translate(-50%,-50%) scale(1.1); }
}
.swz-home .swz-cta-inner {
  position:relative;
  z-index:1;
  max-width:1000px;
  margin:0 auto;
}
.swz-home .swz-cta-title {
  font-family:'Space Grotesk',sans-serif;
  font-weight:700;
  font-size:clamp(2.5rem,8vw,6.5rem);
  line-height:.9;
  letter-spacing:-0.035em;
  margin-bottom:2rem;
  color:var(--swz-ink-bright);
}
.swz-home .swz-cta-title em {
  font-style:normal;
  background:linear-gradient(135deg,var(--swz-accent),var(--swz-accent-2));
  -webkit-background-clip:text;
  background-clip:text;
  -webkit-text-fill-color:transparent;
  color:transparent;
}

/* ============ REVEAL ANIMATIONS ============ */
.swz-home .swz-reveal {
  opacity:0;
  transform:translateY(40px);
  transition:opacity 1.2s var(--swz-ease),transform 1.2s var(--swz-ease);
  will-change:opacity,transform;
}
.swz-home .swz-reveal.is-in {
  opacity:1;
  transform:none;
}
.swz-home .swz-reveal-delay-1 { transition-delay:.15s; }
.swz-home .swz-reveal-delay-2 { transition-delay:.3s; }
.swz-home .swz-reveal-delay-3 { transition-delay:.45s; }

@media (prefers-reduced-motion:reduce) {
  .swz-home * { animation-duration:.01ms !important; transition-duration:.01ms !important; }
  .swz-home .swz-reveal { opacity:1; transform:none; }
  .swz-home .swz-marquee-track { animation:none; }
}
@media (max-width:768px) {
  .swz-home .swz-hero { padding-left:1.25rem; padding-right:1.25rem; }
  .swz-home .swz-hero-meta-top { margin-bottom:2rem; }
  .swz-home .swz-faq-q { font-size:1.1rem; }
}

/* ============ PHP-SITE INTEGRATION ADDITIONS ============ */
/* custom cursor only activates when JS is running (never leave users cursor-less) */
.swz-home.swz-cursor-on, .swz-home.swz-cursor-on button { cursor:none; }
/* this homepage is a fixed dark design: paint the whole body in the design black */
body.page-home-v3 { background:#04060D; }
/* the light/dark toggle has no meaning on a fixed-dark page - hide it here only */
body.page-home-v3 .theme-toggle { display:none; }
/* the design is LTR by construction; keep it stable even on RTL locales */
.swz-home { direction:ltr; }
