/* ============================================================
   NACIÓN HUERTO · HOJA DE ESTILOS DE LA HOME (v3)
   1. Full-bleed: rompe el contenedor estrecho del tema.
   2. Blindaje: botones y enlaces con !important.
   3. Oculta el índice/TOC que un plugin inserta en la home.
   4. v3: tarjetas con imagen real, sección cultivo interior,
      calendario accesible y micro-interacciones.
============================================================ */

  html{scroll-behavior:smooth}
  @media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

  /* ==================== Design tokens ==================== */
  .nh{
    --ink:#131711;
    --ink-2:#525A4E;
    --bg:#FFFFFF;
    --bg-soft:#F5F6F2;
    --line:#E5E8E1;
    --green-900:#12291A;
    --green-700:#1E4D30;
    --green-100:#E8F0E6;
    --accent:#C7F284;
    --radius-lg:20px;
    --radius-md:12px;
    --shadow-sm:0 1px 2px rgba(19,23,17,.06);
    --shadow-md:0 12px 32px -12px rgba(19,23,17,.18);
    --display:'Sora',system-ui,sans-serif;
    --body:'Inter',system-ui,sans-serif;

    font-family:var(--body);
    color:var(--ink);
    background:var(--bg);
    line-height:1.65;
    font-size:16px;
    -webkit-font-smoothing:antialiased;

    /* Full-bleed: escapa del ancho de columna del tema */
    width:100vw;
    max-width:100vw;
    position:relative;
    left:50%;
    margin:0 0 0 -50vw;
    overflow-x:clip;
  }
  /* Oculta índices/TOC autoinsertados por plugins dentro de la home */
  .nh .ez-toc-container,.nh .ez-toc-v2_0_74,.nh [id*="ez-toc"],
  .nh .lwptoc,.nh #toc_container,.nh .toc_widget,
  .nh [class*="rank-math-toc"],.nh .wp-block-rank-math-toc-block,
  .nh nav.toc,.nh .simpletoc-list,.nh .simpletoc-title{display:none !important}
  .nh *,.nh *::before,.nh *::after{box-sizing:border-box;margin:0}
  .nh img{max-width:100%;display:block}
  .nh a{text-decoration:none !important;color:inherit;box-shadow:none !important;border-bottom:none !important}
  .nh a:focus-visible,.nh button:focus-visible{outline:2px solid var(--green-700);outline-offset:3px;border-radius:6px}
  .nh ul{list-style:none;padding:0}

  .nh-wrap{max-width:1180px;margin:0 auto;padding:0 24px}
  .nh-sec{padding:96px 0}
  .nh-sec--tight{padding:64px 0}
  .nh section{scroll-margin-top:90px}

  /* ==================== Tipografía ==================== */
  .nh-kicker{
    display:inline-flex;align-items:center;gap:8px;
    font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
    color:var(--green-700);margin-bottom:16px;
  }
  .nh-kicker::before{content:"";width:24px;height:1.5px;background:var(--green-700)}
  .nh .nh-h1{
    font-family:var(--display) !important;font-weight:600;letter-spacing:-.03em;
    font-size:clamp(2.4rem,5.2vw,4rem);line-height:1.06;color:var(--ink);
    margin:0;padding:0;
  }
  .nh .nh-h2{
    font-family:var(--display) !important;font-weight:600;letter-spacing:-.02em;
    font-size:clamp(1.7rem,3vw,2.4rem);line-height:1.15;color:var(--ink);
    margin:0 0 16px;padding:0;
  }
  .nh-sub{font-size:1.08rem;color:var(--ink-2);max-width:600px}

  .nh-sec-head{
    display:flex;align-items:flex-end;justify-content:space-between;
    gap:24px;margin-bottom:48px;flex-wrap:wrap;
  }
  .nh-link{
    font-weight:600;font-size:.95rem;color:var(--green-700) !important;
    display:inline-flex;align-items:center;gap:6px;white-space:nowrap;
  }
  .nh-link svg{transition:transform .2s ease}
  .nh-link:hover svg{transform:translateX(3px)}

  /* ==================== Botones ==================== */
  .nh-btn{
    display:inline-flex;align-items:center;gap:10px;
    padding:15px 28px;border-radius:10px;font-weight:600;font-size:.98rem;
    font-family:var(--body);cursor:pointer;border:1px solid transparent;
    transition:background .18s ease,border-color .18s ease,transform .18s ease;
  }
  .nh-btn:active{transform:scale(.98)}
  .nh-btn svg{flex:none}
  .nh-btn--dark{background:var(--green-900) !important;color:#fff !important}
  .nh-btn--dark:hover{background:var(--green-700) !important;color:#fff !important}
  .nh-btn--ghost{background:transparent !important;color:var(--ink) !important;border-color:var(--line)}
  .nh-btn--ghost:hover{border-color:var(--ink)}
  .nh-btn--outline{background:transparent !important;color:#fff !important;border-color:rgba(255,255,255,.35)}
  .nh-btn--outline:hover{border-color:#fff;background:rgba(255,255,255,.08) !important}

  /* ==================== Hero ==================== */
  .nh-hero{padding:88px 0 0;background:var(--bg)}
  .nh-hero-grid{
    display:grid;grid-template-columns:1.05fr .95fr;gap:64px;align-items:center;
  }
  .nh-hero .nh-sub{margin:24px 0 36px;font-size:1.12rem}
  .nh-hero-ctas{display:flex;gap:12px;flex-wrap:wrap}
  .nh-hero-meta{
    display:flex;gap:40px;margin-top:56px;padding-top:28px;border-top:1px solid var(--line);
  }
  .nh-hero-meta div strong{
    display:block;font-family:var(--display);font-weight:600;font-size:1.5rem;
    letter-spacing:-.02em;color:var(--ink);
  }
  .nh-hero-meta div span{font-size:.85rem;color:var(--ink-2)}

  .nh-hero-media{position:relative}
  .nh-hero-media .nh-foto{
    width:100%;aspect-ratio:4/4.6;object-fit:cover;border-radius:var(--radius-lg);
    box-shadow:var(--shadow-md);
  }
  .nh-hero-fallback{
    width:100%;aspect-ratio:4/4.6;border-radius:var(--radius-lg);display:none;
    background:linear-gradient(160deg,var(--green-100),var(--green-700) 130%);
  }
  .nh-hero-card{
    position:absolute;left:-28px;bottom:32px;background:#fff;border:1px solid var(--line);
    border-radius:var(--radius-md);padding:16px 20px;box-shadow:var(--shadow-md);
    display:flex;align-items:center;gap:14px;max-width:290px;
    transition:transform .2s ease,border-color .2s ease;
  }
  .nh-hero-card:hover{transform:translateY(-3px);border-color:var(--green-700)}
  .nh-hero-card .ico{
    width:42px;height:42px;border-radius:10px;background:var(--green-100);
    display:grid;place-items:center;color:var(--green-700);flex:none;
  }
  .nh-hero-card strong{font-size:.92rem;display:block;line-height:1.3}
  .nh-hero-card span{font-size:.8rem;color:var(--ink-2)}

  /* ==================== Franja de valor ==================== */
  .nh-strip{border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:88px;background:var(--bg-soft)}
  .nh-strip .nh-wrap{
    display:grid;grid-template-columns:repeat(3,1fr);
  }
  .nh-strip-item{
    display:flex;gap:14px;align-items:flex-start;padding:28px 32px 28px 0;
  }
  .nh-strip-item + .nh-strip-item{border-left:1px solid var(--line);padding-left:32px}
  .nh-strip-item svg{color:var(--green-700);flex:none;margin-top:2px}
  .nh-strip-item strong{display:block;font-size:.95rem;font-weight:600}
  .nh-strip-item span{font-size:.86rem;color:var(--ink-2)}

  /* ==================== Guías ==================== */
  .nh-guias{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  .nh-guia{
    position:relative;background:var(--bg);border:1px solid var(--line);
    border-radius:var(--radius-lg);overflow:hidden;display:flex;flex-direction:column;
    transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
  }
  .nh-guia:hover{border-color:var(--green-700);box-shadow:var(--shadow-md);transform:translateY(-3px)}
  .nh-guia-media{position:relative;display:block;aspect-ratio:1024/538;overflow:hidden;background:var(--green-100)}
  .nh-guia-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
  .nh-guia:hover .nh-guia-media img{transform:scale(1.045)}
  .nh-guia-media .ico{
    position:absolute;left:16px;bottom:-21px;width:42px;height:42px;border-radius:11px;
    background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-sm);
    color:var(--green-700);display:grid;place-items:center;
  }
  .nh-guia-body{display:flex;flex-direction:column;gap:10px;padding:34px 24px 24px;flex:1}
  .nh .nh-guia h3{font-family:var(--display) !important;font-weight:600;font-size:1.12rem;letter-spacing:-.01em;margin:0;padding:0}
  .nh-guia p{font-size:.93rem;color:var(--ink-2);flex:1}
  .nh-guia-cta{
    display:inline-flex;align-items:center;gap:6px;margin-top:4px;
    font-weight:600;font-size:.9rem;color:var(--green-700);
  }
  .nh-guia-cta svg{transition:transform .2s ease}
  .nh-guia:hover .nh-guia-cta svg{transform:translateX(3px)}

  /* ==================== Proceso ==================== */
  .nh-proceso{background:var(--bg-soft)}
  .nh-pasos{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-left:1px solid var(--line)}
  .nh-paso{padding:8px 28px 0;border-right:1px solid var(--line)}
  .nh-paso i{
    font-style:normal;font-family:var(--display);font-weight:600;font-size:.82rem;
    color:var(--green-700);letter-spacing:.08em;
  }
  .nh .nh-paso h3{font-family:var(--display) !important;font-weight:600;font-size:1.08rem;margin:14px 0 10px;padding:0;letter-spacing:-.01em}
  .nh-paso p{font-size:.92rem;color:var(--ink-2)}

  /* ==================== Calendario ==================== */
  .nh-cal{
    background:var(--green-900);border-radius:24px;padding:56px;color:#fff;overflow:hidden;
    position:relative;
  }
  .nh-cal::before{
    content:"";position:absolute;top:-140px;right:-140px;width:420px;height:420px;border-radius:50%;
    background:radial-gradient(circle,rgba(199,242,132,.14),transparent 65%);pointer-events:none;
  }
  .nh-cal .nh-kicker{color:var(--accent)}
  .nh-cal .nh-kicker::before{background:var(--accent)}
  .nh-cal .nh-h2{color:#fff}
  .nh-cal-sub{color:rgba(255,255,255,.72);max-width:560px;font-size:1rem}
  .nh-cal-meses{
    display:flex;gap:6px;margin:32px 0 28px;overflow-x:auto;padding-bottom:6px;
    scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.25) transparent;
  }
  .nh-mes{
    position:relative;flex:none;background:transparent;border:1px solid rgba(255,255,255,.18);color:rgba(255,255,255,.82);
    padding:9px 18px;border-radius:9px;font-family:var(--body);font-weight:500;font-size:.88rem;
    cursor:pointer;transition:background .15s ease,color .15s ease,border-color .15s ease;
  }
  .nh-mes:hover{border-color:rgba(255,255,255,.45)}
  .nh-mes.activo{background:#fff;border-color:#fff;color:var(--green-900);font-weight:600}
  .nh-mes--hoy::after{
    content:"";position:absolute;top:6px;right:6px;width:6px;height:6px;border-radius:50%;
    background:var(--accent);
  }
  .nh-mes--hoy.activo::after{background:var(--green-700)}
  .nh-cal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
  .nh-cal-col{
    background:rgba(255,255,255,.05);border:1px solid rgba(255,255,255,.09);
    border-radius:var(--radius-md);padding:24px;
  }
  .nh-cal-col header{
    display:flex;align-items:center;gap:10px;margin-bottom:16px;
    font-size:.78rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:var(--accent);
  }
  .nh-cal-col li{
    padding:9px 0;font-size:.95rem;color:rgba(255,255,255,.92);
    border-bottom:1px solid rgba(255,255,255,.08);
  }
  .nh-cal-col li:last-child{border-bottom:none}
  .nh-cal-pie{
    margin-top:28px;display:flex;justify-content:space-between;align-items:center;gap:20px;flex-wrap:wrap;
  }
  .nh-cal-pie p{font-size:.84rem;color:rgba(255,255,255,.6)}
  .nh-cal-pie a{color:var(--accent) !important;font-weight:600;font-size:.92rem}

  /* ==================== Productos / afiliados ==================== */
  .nh-prods{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
  .nh-prod{
    border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;background:#fff;
    display:flex;flex-direction:column;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
  }
  .nh-prod:hover{border-color:var(--green-700);box-shadow:var(--shadow-md);transform:translateY(-3px)}
  .nh-prod-link{display:flex;flex-direction:column;flex:1}
  .nh-prod-media{
    aspect-ratio:16/9;position:relative;overflow:hidden;background:var(--green-100);
  }
  .nh-prod-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
  .nh-prod:hover .nh-prod-media img{transform:scale(1.045)}
  .nh-prod-tag{
    position:absolute;top:14px;left:14px;z-index:1;background:#fff;border:1px solid var(--line);
    font-size:.72rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;
    padding:6px 12px;border-radius:999px;color:var(--ink);box-shadow:var(--shadow-sm);
  }
  .nh-prod-body{padding:24px 26px 28px;display:flex;flex-direction:column;gap:10px;flex:1}
  .nh .nh-prod-body h3{font-family:var(--display) !important;font-weight:600;font-size:1.1rem;letter-spacing:-.01em;margin:0;padding:0}
  .nh-prod-body p{font-size:.93rem;color:var(--ink-2);flex:1}
  .nh-prod-body .nh-link{margin-top:6px}
  .nh-prod:hover .nh-prod-body .nh-link svg{transform:translateX(3px)}
  .nh-aviso{
    margin-top:32px;font-size:.82rem;color:var(--ink-2);
    border-left:2px solid var(--line);padding:4px 0 4px 18px;max-width:820px;
  }

  /* ==================== Cultivo interior ==================== */
  .nh-int{display:grid;grid-template-columns:repeat(4,1fr);gap:20px}
  .nh-int-card{
    background:#fff;border:1px solid var(--line);border-radius:var(--radius-lg);overflow:hidden;
    display:flex;flex-direction:column;
    transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
  }
  .nh-int-card:hover{border-color:var(--green-700);box-shadow:var(--shadow-md);transform:translateY(-3px)}
  .nh-int-media{display:block;aspect-ratio:16/10;overflow:hidden;background:var(--green-100)}
  .nh-int-media img{width:100%;height:100%;object-fit:cover;transition:transform .35s ease}
  .nh-int-card:hover .nh-int-media img{transform:scale(1.045)}
  .nh-int-body{display:block;padding:18px 20px 22px}
  .nh .nh-int-body h3{
    font-family:var(--display) !important;font-weight:600;font-size:1rem;
    letter-spacing:-.01em;margin:0 0 6px;padding:0;
  }
  .nh-int-body p{font-size:.87rem;color:var(--ink-2)}

  /* ==================== Sobre / texto SEO ==================== */
  .nh-sobre{display:grid;grid-template-columns:.9fr 1.1fr;gap:48px;align-items:start}
  .nh-sobre p{color:var(--ink-2);font-size:.98rem;max-width:56ch}
  @media (max-width:900px){.nh-sobre{grid-template-columns:1fr;gap:20px}}

  /* ==================== FAQ ==================== */
  .nh-faq{max-width:780px}
  .nh-faq details{border-bottom:1px solid var(--line)}
  .nh-faq summary{
    list-style:none;cursor:pointer;padding:24px 0;display:flex;
    justify-content:space-between;align-items:center;gap:16px;
    font-family:var(--display);font-weight:600;font-size:1.05rem;letter-spacing:-.01em;
  }
  .nh-faq summary:hover .nh-faq-q{color:var(--green-700)}
  .nh-faq summary::-webkit-details-marker{display:none}
  .nh .nh-faq-q{font:inherit !important;letter-spacing:inherit;color:inherit;margin:0 !important;padding:0;transition:color .15s ease}
  .nh-faq summary svg{flex:none;color:var(--ink-2);transition:transform .25s ease}
  .nh-faq details[open] summary svg{transform:rotate(45deg);color:var(--green-700)}
  .nh-faq details p{padding:0 40px 24px 0;color:var(--ink-2);font-size:.97rem}
  .nh-faq details p a{color:var(--green-700) !important;font-weight:600}

  /* ==================== CTA final ==================== */
  .nh-final{background:var(--green-900);color:#fff}
  .nh-final .nh-wrap{
    display:flex;justify-content:space-between;align-items:center;gap:32px;flex-wrap:wrap;
  }
  .nh-final .nh-h2{color:#fff;margin-bottom:8px}
  .nh-final p{color:rgba(255,255,255,.7);max-width:480px}
  .nh-final-ctas{display:flex;gap:12px;flex-wrap:wrap}
  .nh-final .nh-btn--light{background:#fff !important;color:var(--green-900) !important}
  .nh-final .nh-btn--light:hover{background:var(--accent) !important;color:var(--green-900) !important}

  /* ==================== Reveal ==================== */
  .nh-reveal{opacity:0;transform:translateY(18px);transition:opacity .55s ease,transform .55s ease}
  .nh-reveal.visible{opacity:1;transform:none}
  @media (prefers-reduced-motion:reduce){
    .nh-reveal{opacity:1;transform:none;transition:none}
    .nh *{transition:none !important}
  }

  /* ==================== Responsive ==================== */
  @media (max-width:1000px){
    .nh-hero-grid{grid-template-columns:1fr;gap:48px}
    .nh-hero-media{max-width:560px}
    .nh-guias,.nh-prods,.nh-cal-grid{grid-template-columns:repeat(2,1fr)}
    .nh-int{grid-template-columns:repeat(2,1fr)}
    .nh-pasos{grid-template-columns:repeat(2,1fr);row-gap:40px}
    .nh-strip .nh-wrap{grid-template-columns:1fr}
    .nh-strip-item{padding:20px 0;border-left:none !important}
    .nh-strip-item + .nh-strip-item{border-top:1px solid var(--line);padding-left:0}
  }
  @media (max-width:640px){
    .nh-sec{padding:64px 0}
    .nh-hero{padding-top:56px}
    .nh-guias,.nh-prods,.nh-cal-grid,.nh-pasos,.nh-int{grid-template-columns:1fr}
    .nh-paso{border-right:none}
    .nh-cal{padding:36px 24px;border-radius:18px}
    .nh-hero-card{left:12px;bottom:16px}
    .nh-hero-meta{gap:24px;flex-wrap:wrap}
    .nh-final .nh-wrap{flex-direction:column;align-items:flex-start}
    .nh-btn{width:100%;justify-content:center}
  }