/*
 Theme Name:   HELLO Ninihilista
 Description:  Child de Hello  
 Author:       TanRandom!
 Author URI:   https://tanrandom.com
 Template:     hello-elementor  
 Version:      1.0.1
 Text Domain:  hello-child
*/

/* Aquí empiezan tus estilos CSS personalizados */

/* Globales — Ninihilista */
:root {
  --nn-bg: #0a0a0a;
  --nn-text: #f3f3ee;
  --nn-muted: rgba(243, 243, 238, .58);
  --nn-line: rgba(243, 243, 238, .34);
  --nn-accent: #F0FF21;
}

* {
  box-sizing: border-box;
}

html {
  scroll-behavior: smooth;
}

body {
  margin: 0;
  background: var(--nn-bg);
  color: var(--nn-text);
  font-family: Inter, Arial, sans-serif;
  letter-spacing: 0;
  -webkit-font-smoothing: antialiased;
}

a {
  color: inherit;
  text-decoration: none;
}

img {
  display: block;
  max-width: 100%;
}

.nn-brand {
  font-family: Syne, Inter, sans-serif;
}

.nn-brand .thin {
  font-weight: 400;
}

.nn-brand .bold {
  font-weight: 800;
}

.nn-section {
  position: relative;
  padding: clamp(72px, 9vw, 128px) clamp(18px, 5vw, 64px);
}

.nn-section-title {
  font-family: Inter, sans-serif;
  font-size: clamp(3.2rem, 9vw, 8rem);
  font-weight: 300;
  line-height: .92;
  letter-spacing: -0.01em;
  margin: 0;
}

.nn-broken-line {
  position: relative;
  width: 110px;
  height: 6px;
  margin-top: 22px;
}

.nn-broken-line:before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 110px;
  height: 1px;
  background: currentColor;
}

.nn-broken-line:after {
  content: "";
  position: absolute;
  left: 110px;
  top: 3px;
  width: 14px;
  height: 1px;
  background: currentColor;
}

.nn-page-ghost {
  position: absolute;
  right: clamp(14px, 3vw, 36px);
  bottom: clamp(14px, 3vw, 28px);
  font-size: .72rem;
  line-height: 1;
  color: rgba(243, 243, 238, .36);
}

.nn-accent {
  color: var(--nn-accent);
}

.nn-hero-title {
  font-size: 120px !important
}

.negro h2 {
  color: #000 !important;
}

.negro span {
  color: #000 !important;
}

.invertir h2 {
  transition: color 0.3s ease;
}

.invertir:hover h2 {
  filter: invert(1);
}

a {
  text-decoration: none !important;
}

.nn-footer a {
  font-size: 13px !important;
}

.nn-footer .base-p {
  font-size: 13px !important;
}

.nn-footer-title {
  font-size: 15px !important;
}

.trans a:hover {
  font-family: 'syne', serif !important;
  color: #F0FF21 !important;
  text-transform: lowercase !important;
  font-weight: 800 !important;
  transform: scale(0.99);
  /* efecto visual suave */
}

.nn-hero-cell img {
  filter: grayscale(100%) !important;
}


/* ========================== MENÚ PRINCIPAL movil ========================== */
.nav-list {
  list-style: none !important;
}

/* ========================== LINKS ========================== */
.link-sith {
  display: block;
  padding: .8rem 0;
  color: #000;
  text-decoration: none;
  font-size: 16px;
  font-weight: 400;
  transition: .25s;
  letter-spacing: 0.09em;
}

/* ========================== SUBMENÚ ========================== */
.submenu-force {
  list-style: none;
  padding: 0px !important;
}

.submenu-item .link-sith {
  padding: .5rem 1rem;
  white-space: nowrap;
}

.offcanvas-sidebar-button {
  color: white !important;
}



/* ========================== responsive ========================== */

/* Mobile pequeño */
@media (max-width: 479px) {
  .syne-mani h2 {
    font-size: 22px !important;
  }

  .negro h2 {
    font-size: 40px !important;
  }

  .limoncio h1 {
    font-size: 40px !important;
  }
}

/* Mobile */
@media (min-width: 480px) and (max-width: 767px) {
  .syne-mani h2 {
    font-size: 22px !important;
  }

  .negro h2 {
    font-size: 40px !important;
  }

  .limoncio h1 {
    font-size: 70px !important;
  }
}

/* Tablet */
@media (min-width: 768px) and (max-width: 1023px) {
  .syne-mani h2 {
    font-size: 20px !important;
  }

  .limoncio h1 {
    font-size: 70px !important;
  }
}