.page-home{
  background:
    radial-gradient(1000px 600px at 80% -10%, rgba(0,212,255,0.10), transparent 60%),
    linear-gradient(180deg, var(--c-deep) 0%, var(--c-deep-2) 45%, var(--c-deep) 100%);
  overflow-x:hidden;
}

.page-home a:focus-visible{
  outline:2px solid var(--c-green);
  outline-offset:3px;
}

.page-home .hero-terminal{
  position:relative;
  min-height:100vh;
  min-height:100svh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:56px 0;
  overflow:hidden;
  background:
    radial-gradient(900px 480px at 15% 20%, rgba(0,212,255,0.14), transparent 60%),
    linear-gradient(180deg, var(--c-deep), var(--c-deep-2));
}

.page-home .hero-terminal__bg{
  position:absolute;
  inset:0;
  width:100%;
  height:100%;
  object-fit:cover;
  opacity:0.32;
  z-index:0;
}

.page-home .hero-terminal__scrim{
  position:absolute;
  inset:0;
  z-index:1;
  background:linear-gradient(180deg, rgba(11,19,43,0.78) 0%, rgba(11,27,63,0.88) 100%);
}

.page-home .hero-terminal__shell{
  position:relative;
  z-index:2;
}

.page-home .terminal-hero{
  position:relative;
  padding:0;
  border-radius:20px;
  border:1px solid rgba(0,255,159,0.36);
  background:linear-gradient(135deg, rgba(11,27,63,0.72), rgba(11,19,43,0.88));
  backdrop-filter:blur(14px) saturate(120%);
  box-shadow:
    0 0 0 4px rgba(0,255,159,0.06),
    0 0 60px rgba(0,255,159,0.12),
    0 24px 80px rgba(0,0,0,0.45);
  overflow:visible;
}

.page-home .terminal-hero::before,
.page-home .terminal-hero::after{
  content:"";
  position:absolute;
  top:-4px;
  left:-4px;
  width:64px;
  height:64px;
  border-top:3px solid var(--c-green);
  border-left:3px solid var(--c-green);
  border-top-left-radius:22px;
  z-index:3;
  pointer-events:none;
}

.page-home .terminal-hero::after{
  top:auto;
  left:auto;
  bottom:-4px;
  right:-4px;
  border:none;
  border-bottom:3px solid var(--c-purple);
  border-right:3px solid var(--c-purple);
  border-bottom-right-radius:22px;
}

.page-home .terminal-hero__bar{
  height:42px;
  display:flex;
  align-items:center;
  gap:8px;
  padding:0 16px;
  border-radius:20px 20px 0 0;
  border-bottom:1px solid rgba(0,255,159,0.14);
  background:rgba(11,19,43,0.62);
}

.page-home .terminal-hero__dot{
  width:10px;
  height:10px;
  border-radius:50%;
  display:block;
}

.page-home .terminal-hero__dot--green{
  background:var(--c-green);
  box-shadow:0 0 8px var(--c-green);
}

.page-home .terminal-hero__dot--cyan{
  background:var(--c-cyan);
  box-shadow:0 0 8px var(--c-cyan);
}

.page-home .terminal-hero__dot--purple{
  background:var(--c-purple);
  box-shadow:0 0 8px var(--c-purple);
}

.page-home .terminal-hero__path{
  font-family:var(--font-head);
  font-size:0.74rem;
  letter-spacing:0.14em;
  color:var(--c-text-dim);
  margin-left:6px;
  text-transform:uppercase;
}

.page-home .terminal-hero__live{
  margin-left:auto;
  font-family:var(--font-head);
  font-size:0.66rem;
  letter-spacing:0.2em;
  color:var(--c-green);
  border:1px solid rgba(0,255,159,0.4);
  border-radius:99px;
  padding:3px 10px;
  background:rgba(0,255,159,0.08);
  animation:pagehome-pulse 2.2s var(--ease) infinite;
}

@keyframes pagehome-pulse{
  0%,100%{ box-shadow:0 0 0 0 rgba(0,255,159,0.35); }
  50%{ box-shadow:0 0 0 6px rgba(0,255,159,0); }
}

.page-home .terminal-hero__grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:32px;
  padding:28px 20px 36px;
}

.page-home .terminal-hero__label{
  margin-top:14px;
}

.page-home .hero-title{
  font-family:var(--font-head);
  font-weight:700;
  font-size:clamp(1.85rem, 6.5vw, 3.1rem);
  line-height:1.24;
  letter-spacing:0.02em;
  color:var(--c-text);
  text-shadow:0 0 14px rgba(0,255,159,0.42);
  text-transform:none;
  margin-top:10px;
}

.page-home .hero-lead{
  max-width:52ch;
  margin-top:16px;
  color:var(--c-text-dim);
  font-size:0.98rem;
  line-height:1.75;
}

.page-home .hero-stats{
  display:flex;
  flex-wrap:wrap;
  gap:12px;
  margin-top:26px;
}

.page-home .hero-stat{
  min-width:112px;
  border:1px solid rgba(255,255,255,0.07);
  border-radius:var(--radius);
  padding:14px 18px;
  background:var(--c-glass);
}

.page-home .hero-stat__num{
  display:block;
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.5rem;
  letter-spacing:0.04em;
  color:var(--c-green);
  text-shadow:0 0 10px rgba(0,255,159,0.35);
}

.page-home .hero-stat__label{
  display:block;
  margin-top:4px;
  font-size:0.78rem;
  letter-spacing:0.08em;
  color:var(--c-text-dim);
}

.page-home .hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:14px;
  margin-top:28px;
}

.page-home .terminal-hero__logs{
  border:1px solid rgba(0,212,255,0.16);
  border-radius:18px;
  padding:22px 18px 16px;
  background:rgba(11,19,43,0.6);
}

.page-home .log-stream{
  list-style:none;
  margin:18px 0 0;
  padding:0;
  display:flex;
  flex-direction:column;
  gap:12px;
}

.page-home .log-entry{
  display:grid;
  grid-template-columns:1fr auto;
  grid-template-areas:
    "code tag"
    "text text";
  gap:4px 10px;
  padding:12px 14px;
  border-radius:12px;
  border-left:2px solid var(--c-green);
  background:rgba(255,255,255,0.04);
  transition:background 0.3s var(--ease), transform 0.3s var(--ease);
}

.page-home .log-entry:hover{
  background:rgba(0,255,159,0.07);
  transform:translateX(4px);
}

.page-home .log-entry__code{
  grid-area:code;
  font-family:var(--font-head);
  font-size:0.68rem;
  letter-spacing:0.16em;
  color:var(--c-green);
}

.page-home .log-entry__tag{
  grid-area:tag;
  justify-self:end;
  font-family:var(--font-head);
  font-size:0.62rem;
  letter-spacing:0.12em;
  color:var(--c-purple);
  border:1px solid rgba(181,55,242,0.3);
  border-radius:99px;
  padding:2px 8px;
}

.page-home .log-entry__text{
  grid-area:text;
  margin:0;
  font-size:0.88rem;
  line-height:1.55;
  color:var(--c-text-dim);
}

.page-home .log-more{
  margin-top:14px;
  padding-top:12px;
  border-top:1px dashed rgba(255,255,255,0.1);
}

.page-home .log-more summary{
  display:inline-flex;
  align-items:center;
  gap:6px;
  list-style:none;
  font-size:0.82rem;
  letter-spacing:0.06em;
  color:var(--c-cyan);
  cursor:pointer;
}

.page-home .log-more summary::-webkit-details-marker{
  display:none;
}

.page-home .log-more summary::after{
  content:"+";
  font-family:var(--font-head);
  color:var(--c-green);
  transition:transform 0.3s var(--ease);
}

.page-home .log-more[open] summary::after{
  transform:rotate(45deg);
}

.page-home .log-more__list{
  margin:10px 0 0;
  padding:0 0 0 16px;
  font-size:0.85rem;
  line-height:1.6;
  color:var(--c-text-dim);
}

.page-home .hero-float{
  position:absolute;
  width:12px;
  height:12px;
  border-radius:4px;
  background:var(--c-green);
  transform:rotate(45deg);
  z-index:3;
  pointer-events:none;
  animation:pagehome-float 3.6s ease-in-out infinite;
}

.page-home .hero-float--cyan{
  top:22%;
  right:8%;
  background:var(--c-cyan);
  box-shadow:0 0 20px rgba(0,212,255,0.8);
  animation-delay:0.2s;
}

.page-home .hero-float--purple{
  bottom:12%;
  left:5%;
  width:18px;
  height:18px;
  border-radius:50%;
  background:var(--c-purple);
  box-shadow:0 0 28px rgba(181,55,242,0.7);
  animation-delay:1.2s;
}

@keyframes pagehome-float{
  0%,100%{ transform:translateY(0) rotate(45deg); }
  50%{ transform:translateY(-14px) rotate(45deg); }
}

.page-home .updates-preview{
  padding:54px 0 70px;
}

.page-home .section-heading{
  margin-bottom:30px;
}

.page-home .section-title{
  margin:8px 0 0;
  font-family:var(--font-head);
  font-weight:700;
  font-size:clamp(1.6rem, 3.5vw, 2.3rem);
  line-height:1.3;
  letter-spacing:0.04em;
  color:var(--c-text);
  text-shadow:0 0 8px rgba(0,255,159,0.4);
  text-transform:none;
}

.page-home .section-lead{
  max-width:62ch;
  margin-top:12px;
  font-size:0.95rem;
  line-height:1.7;
  color:var(--c-text-dim);
}

.page-home .updates-grid{
  gap:20px;
}

.page-home .update-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(0,212,255,0.14);
  border-radius:16px;
  padding:22px 20px 18px;
  background:linear-gradient(135deg, rgba(255,255,255,0.06), rgba(255,255,255,0.02));
  transition:border-color 0.3s var(--ease), transform 0.3s var(--ease), background 0.3s var(--ease);
}

.page-home .update-card::before{
  content:"";
  position:absolute;
  top:0;
  right:0;
  width:70px;
  height:70px;
  background:radial-gradient(circle, rgba(0,255,159,0.14), transparent 70%);
  pointer-events:none;
}

.page-home .update-card:hover{
  border-color:rgba(0,255,159,0.4);
  transform:translateY(-4px);
  background:linear-gradient(135deg, rgba(0,255,159,0.08), rgba(255,255,255,0.02));
}

.page-home .update-card__code{
  display:block;
  margin-bottom:12px;
  font-family:var(--font-head);
  font-size:0.72rem;
  letter-spacing:0.22em;
  color:var(--c-text-faint);
}

.page-home .update-card__title{
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.12rem;
  letter-spacing:0.02em;
  color:var(--c-text);
}

.page-home .update-card__desc{
  margin-top:8px;
  font-size:0.9rem;
  line-height:1.6;
  color:var(--c-text-dim);
}

.page-home .update-card__tag{
  display:inline-flex;
  margin-top:14px;
  padding:4px 10px;
  border-radius:99px;
  background:rgba(0,212,255,0.09);
  font-size:0.74rem;
  letter-spacing:0.06em;
  color:var(--c-cyan);
}

.page-home .features{
  padding:54px 0 80px;
  background:
    radial-gradient(800px 500px at 90% 10%, rgba(181,55,242,0.13), transparent 60%),
    linear-gradient(180deg, rgba(11,27,63,0.38), rgba(11,19,43,0.24));
}

.page-home .features-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:30px;
  perspective:1400px;
}

.page-home .feature-card{
  --tilt:0deg;
  position:relative;
  transform:rotate(var(--tilt));
  transition:transform 0.4s var(--ease);
}

.page-home .feature-card--tilt-right{
  --tilt:1.6deg;
}

.page-home .feature-card--tilt-left{
  --tilt:-1.4deg;
}

.page-home .feature-card:hover{
  transform:rotate(0deg) translateY(-6px);
}

.page-home .feature-card__inner{
  --card-min-height:430px;
  position:relative;
  min-height:var(--card-min-height);
  border-radius:18px;
  transform-style:preserve-3d;
  transition:transform 0.6s var(--ease);
}

.page-home .feature-card:hover .feature-card__inner,
.page-home .feature-card:focus-within .feature-card__inner{
  transform:rotateY(180deg);
}

.page-home .feature-card__face{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,0.1);
  border-radius:18px;
  background:linear-gradient(160deg, rgba(255,255,255,0.1), rgba(255,255,255,0.03));
  backdrop-filter:blur(10px);
  box-shadow:0 18px 40px rgba(0,0,0,0.25);
  backface-visibility:hidden;
}

.page-home .feature-card__face--back{
  position:absolute;
  inset:0;
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:14px;
  padding:28px 22px;
  transform:rotateY(180deg);
  border-color:rgba(0,255,159,0.3);
  background:linear-gradient(160deg, rgba(0,255,159,0.12), rgba(11,19,43,0.92));
}

.page-home .feature-card__face--back .feature-card__title{
  font-size:1.2rem;
  text-shadow:0 0 10px rgba(0,255,159,0.35);
}

.page-home .feature-card__face--back .feature-card__desc{
  font-size:0.9rem;
}

.page-home .feature-card__media{
  position:relative;
  height:220px;
  margin:0;
  overflow:hidden;
  border-radius:18px 18px 0 0;
}

.page-home .feature-card__media img{
  display:block;
  width:100%;
  height:100%;
  object-fit:cover;
  transition:transform 0.4s var(--ease);
}

.page-home .feature-card:hover .feature-card__media img{
  transform:scale(1.04);
}

.page-home .feature-card__media[data-caption]::after{
  content:attr(data-caption);
  position:absolute;
  right:12px;
  bottom:10px;
  padding:4px 10px;
  border-radius:4px;
  border-left:2px solid var(--c-cyan);
  background:rgba(11,19,43,0.75);
  backdrop-filter:blur(4px);
  font-family:var(--font-head);
  font-size:0.64rem;
  letter-spacing:0.12em;
  color:var(--c-text);
}

.page-home .feature-card__body{
  padding:18px 20px 24px;
}

.page-home .feature-card__title{
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.1rem;
  letter-spacing:0.02em;
  color:var(--c-text);
}

.page-home .feature-card__desc{
  margin-top:8px;
  font-size:0.88rem;
  line-height:1.55;
  color:var(--c-text-dim);
}

.page-home .feature-card__more{
  display:inline-flex;
  align-items:center;
  margin-top:14px;
  padding:4px 10px;
  border:1px solid rgba(0,255,159,0.3);
  border-radius:99px;
  font-family:var(--font-head);
  font-size:0.66rem;
  letter-spacing:0.2em;
  color:var(--c-green);
}

.page-home .feature-card__link{
  margin-top:6px;
  align-self:flex-start;
}

.page-home .quick-links{
  padding:56px 0 70px;
}

.page-home .quick-links__grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:14px;
}

.page-home .quick-link-card{
  position:relative;
  display:block;
  overflow:hidden;
  padding:20px 44px 18px 58px;
  border:1px solid rgba(255,255,255,0.1);
  border-radius:16px;
  background:var(--c-glass);
  color:var(--c-text);
  text-decoration:none;
  transition:border-color 0.3s var(--ease), transform 0.3s var(--ease), background 0.3s var(--ease);
}

.page-home .quick-link-card::after{
  content:"→";
  position:absolute;
  right:18px;
  top:50%;
  font-family:var(--font-head);
  color:var(--c-green);
  opacity:0;
  transition:opacity 0.3s var(--ease), transform 0.3s var(--ease);
}

.page-home .quick-link-card:hover{
  border-color:rgba(0,255,159,0.4);
  background:rgba(0,255,159,0.06);
  transform:translateX(6px);
}

.page-home .quick-link-card:hover::after{
  opacity:1;
  transform:translateX(4px);
}

.page-home .quick-link-card__code{
  position:absolute;
  left:18px;
  top:20px;
  font-family:var(--font-head);
  font-size:0.72rem;
  letter-spacing:0.16em;
  color:var(--c-cyan);
}

.page-home .quick-link-card__title{
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.02rem;
  letter-spacing:0.04em;
  color:var(--c-text);
}

.page-home .quick-link-card__desc{
  margin-top:6px;
  font-size:0.86rem;
  line-height:1.5;
  color:var(--c-text-dim);
}

.page-home .about-site{
  padding:60px 0 80px;
  background:
    radial-gradient(900px 380px at 10% 100%, rgba(181,55,242,0.14), transparent 65%),
    linear-gradient(0deg, rgba(11,19,43,0.5), rgba(11,19,43,0));
}

.page-home .about-site__grid{
  display:grid;
  grid-template-columns:minmax(0,1fr);
  gap:38px;
  align-items:center;
}

.page-home .about-site__lead{
  margin-top:26px;
  font-size:1.08rem;
  line-height:1.75;
  color:var(--c-text);
}

.page-home .about-site__text{
  max-width:58ch;
  margin-top:16px;
  font-size:0.96rem;
  line-height:1.7;
  color:var(--c-text-dim);
}

.page-home .about-site__content .btn-primary{
  margin-top:24px;
}

.page-home .about-site__facts{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(2, minmax(0,1fr));
  gap:14px;
}

.page-home .about-fact{
  border:1px solid rgba(0,255,159,0.14);
  border-radius:16px;
  padding:24px 18px;
  text-align:center;
  background:linear-gradient(140deg, rgba(255,255,255,0.08), rgba(255,255,255,0.02));
  transition:border-color 0.3s var(--ease), background 0.3s var(--ease);
}

.page-home .about-fact:hover{
  border-color:rgba(0,255,159,0.38);
  background:rgba(0,255,159,0.06);
}

.page-home .about-fact__num{
  display:block;
  font-family:var(--font-head);
  font-weight:700;
  font-size:1.45rem;
  line-height:1.2;
  color:var(--c-green);
  text-shadow:0 0 10px rgba(0,255,159,0.4);
}

.page-home .about-fact__label{
  display:block;
  margin-top:6px;
  font-size:0.82rem;
  letter-spacing:0.06em;
  color:var(--c-text-dim);
}

@media (min-width:720px){
  .page-home .terminal-hero__grid{
    padding:34px 28px 42px;
    gap:38px;
  }

  .page-home .features-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }

  .page-home .quick-links__grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
  }
}

@media (min-width:960px){
  .page-home .hero-terminal{
    padding:64px 0;
  }

  .page-home .terminal-hero__grid{
    grid-template-columns:1.08fr 0.92fr;
    gap:48px;
    padding:44px 48px 52px;
  }

  .page-home .hero-title{
    font-size:clamp(2.2rem, 4.5vw, 3.2rem);
  }

  .page-home .features-grid{
    grid-template-columns:repeat(3, minmax(0,1fr));
    gap:32px;
  }

  .page-home .quick-links__grid{
    grid-template-columns:repeat(5, minmax(0,1fr));
  }

  .page-home .quick-link-card{
    min-height:150px;
    padding:24px 16px 20px 56px;
  }

  .page-home .about-site__grid{
    grid-template-columns:1.05fr 0.95fr;
    gap:64px;
  }
}

@media (prefers-reduced-motion:reduce){
  .page-home .hero-float,
  .page-home .terminal-hero__live{
    animation:none;
  }

  .page-home .feature-card__inner,
  .page-home .feature-card,
  .page-home .update-card,
  .page-home .quick-link-card{
    transition:none;
  }
}
