/*
Theme Name: DigiZone
Theme URI: https://example.com/
Author: Plantilla académica
Description: Tema WordPress profesional para tienda de tecnología, preparado para WooCommerce, Yoast SEO, MetaSlider, WPForms y WP Mail SMTP.
Version: 2.0.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: digizone
*/

:root{
  --dz-primary:#0b3b36;
  --dz-primary-2:#0f5c52;
  --dz-blue:#0ea5e9;
  --dz-blue-2:#16a34a;
  --dz-green:#16a34a;
  --dz-bg:#f3faf7;
  --dz-white:#fff;
  --dz-text:#0f172a;
  --dz-muted:#64748b;
  --dz-border:#e2e8f0;
  --dz-shadow:0 12px 35px rgba(8,75,63,.10);
  --dz-radius:18px;
  --dz-container:1240px;
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--dz-bg);color:var(--dz-text);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;line-height:1.6}
img{max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
a:hover{color:var(--dz-blue)}
button,input,select,textarea{font:inherit}
.container{width:min(calc(100% - 36px),var(--dz-container));margin-inline:auto}

/* Top utility bar */
.dz-utility{background:var(--dz-primary);color:#cbd5e1;font-size:.82rem}
.dz-utility-inner{min-height:34px;display:flex;justify-content:space-between;align-items:center;gap:20px}
.dz-utility-left,.dz-utility-right{display:flex;gap:20px;align-items:center}

/* Main navbar */
.site-header{background:#fff;border-bottom:1px solid var(--dz-border);position:sticky;top:0;z-index:1000;box-shadow:0 2px 10px rgba(15,23,42,.04)}
.dz-header-main{min-height:78px;display:grid;grid-template-columns:auto minmax(250px,1fr) auto;gap:24px;align-items:center}
.dz-brand{display:flex;align-items:center;gap:10px;min-width:170px}
.dz-logo-mark{height:42px;width:42px;border-radius:12px;background:linear-gradient(135deg,var(--dz-blue),#06b6d4);color:#fff;display:grid;place-items:center;font-weight:900;font-size:1rem;box-shadow:0 10px 22px rgba(37,99,235,.22)}
.custom-logo{max-height:44px;width:auto}
.dz-brand-text{display:flex;flex-direction:column;line-height:1}
.dz-brand-name{font-weight:900;font-size:1.25rem;letter-spacing:-.03em}
.dz-brand-tag{font-size:.68rem;color:var(--dz-muted);margin-top:5px;font-weight:600}
.dz-search{display:flex;max-width:650px;justify-self:center;width:100%}
.dz-search input{width:100%;height:44px;border:1px solid var(--dz-border);border-right:0;border-radius:12px 0 0 12px;padding:0 15px;background:#f8fafc;outline:none}
.dz-search input:focus{border-color:#93c5fd;background:#fff}
.dz-search button{height:44px;min-width:54px;border:0;border-radius:0 12px 12px 0;background:var(--dz-blue);color:#fff;cursor:pointer;font-size:1rem}
.dz-search button:hover{background:var(--dz-blue-2)}
.dz-actions{display:flex;align-items:center;gap:9px}
.dz-action{min-width:42px;height:42px;border:1px solid var(--dz-border);background:#fff;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;position:relative}
.dz-action:hover{border-color:#86efac;background:#e9f9f2;color:var(--dz-blue)}
.dz-cart-count{position:absolute;right:-5px;top:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:99px;background:var(--dz-blue);color:#fff;font-size:.68rem;display:grid;place-items:center;font-weight:800}
.dz-menu-toggle{display:none}

/* Main nav row */
.dz-nav-wrap{background:#fff;border-top:1px solid #f1f5f9}
.dz-nav{min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:18px}
.dz-nav-primary,.dz-nav-primary ul{list-style:none;padding:0;margin:0;display:flex;align-items:center;gap:4px}
.dz-nav-primary a{display:inline-flex;align-items:center;padding:9px 13px;border-radius:10px;font-weight:750;font-size:.9rem;color:#334155}
.dz-nav-primary a:hover,.dz-nav-primary .current-menu-item>a{background:#e9f9f2;color:var(--dz-blue)}
.dz-nav-shop{display:inline-flex;align-items:center;gap:7px;background:#e9f9f2!important;color:var(--dz-blue)!important;font-weight:850!important}
.dz-nav-sale{color:#dc2626!important}
.dz-support-link{font-size:.86rem;font-weight:750;color:#475569}

/* Hero */
.dz-hero{padding:26px 0 0}
.dz-hero-slider .metaslider,.dz-hero-slider .nivoSlider,.dz-hero-slider .rslides{border-radius:20px;overflow:hidden;box-shadow:var(--dz-shadow)}
.dz-hero-fallback{border-radius:22px;overflow:hidden;background:radial-gradient(circle at 78% 18%,rgba(14,165,233,.55),transparent 31%),radial-gradient(circle at 20% 85%,rgba(22,163,74,.42),transparent 30%),linear-gradient(135deg,#063b35,#0b4f75);color:#fff;min-height:420px;position:relative}
.dz-hero-grid{display:grid;grid-template-columns:1.1fr .9fr;align-items:center;min-height:420px}
.dz-hero-content{padding:60px 30px 60px 60px}
.dz-kicker{display:inline-flex;padding:7px 12px;border-radius:99px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);font-size:.78rem;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.dz-hero h1{font-size:clamp(2.4rem,5vw,4.4rem);line-height:1.02;margin:17px 0 17px;letter-spacing:-.055em}
.dz-hero p{font-size:1rem;color:#cbd5e1;max-width:600px;margin-bottom:24px}
.dz-hero-actions{display:flex;gap:12px;flex-wrap:wrap}
.dz-hero-art{height:100%;min-height:420px;display:flex;align-items:center;justify-content:center;padding:30px}
.dz-tech-orb{width:min(350px,80%);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle at 35% 30%,#86efac,#0ea5e9 42%,#064e3b 72%);box-shadow:0 0 100px rgba(37,99,235,.45);position:relative}
.dz-tech-orb:after{content:"";position:absolute;inset:15%;border:1px solid rgba(255,255,255,.25);border-radius:50%}

/* Buttons */
.dz-btn{display:inline-flex;align-items:center;justify-content:center;border:0;border-radius:12px;padding:12px 18px;font-weight:850;cursor:pointer}
.dz-btn-primary{background:#fff;color:var(--dz-primary)!important}
.dz-btn-blue{background:var(--dz-blue);color:#fff!important}
.dz-btn-dark{background:var(--dz-primary);color:#fff!important}
.dz-btn:hover{transform:translateY(-1px);box-shadow:0 8px 20px rgba(15,23,42,.12)}

/* Sections */
.dz-section{padding:58px 0}
.dz-section-head{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:22px}
.dz-section-title{margin:0;font-size:clamp(1.6rem,3vw,2.25rem);letter-spacing:-.04em;line-height:1.1}
.dz-section-subtitle{margin:7px 0 0;color:var(--dz-muted)}
.dz-see-all{font-weight:800;color:var(--dz-blue);font-size:.92rem}

/* Category buttons */
.dz-category-grid{display:grid;grid-template-columns:repeat(6,1fr);gap:14px}
.dz-category{
  background:#fff;
  border:1px solid #dbe7e3;
  border-radius:12px;
  padding:16px 14px;
  text-align:center;
  font-weight:850;
  color:#0b3b36;
  transition:transform .18s,box-shadow .18s,border-color .18s,background .18s,color .18s;
  position:relative;
}
.dz-category:after{
  content:"→";
  display:block;
  font-size:.82rem;
  margin-top:4px;
  color:#0ea5e9;
}
.dz-category:hover{
  transform:translateY(-2px);
  box-shadow:0 8px 22px rgba(8,75,63,.10);
  border-color:#86efac;
  background:linear-gradient(135deg,#f0fdf4,#eff6ff);
  color:#0f766e;
}
.dz-category-icon{display:none}

/* Features */
.dz-features{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}
.dz-feature{background:#fff;border:1px solid var(--dz-border);border-radius:16px;padding:20px;display:flex;gap:12px;align-items:flex-start}
.dz-feature-icon{width:42px;height:42px;border-radius:12px;background:#ecfdf5;display:grid;place-items:center;font-size:1.1rem}
.dz-feature strong{display:block;font-size:.92rem;margin-bottom:3px}
.dz-feature span{display:block;color:var(--dz-muted);font-size:.82rem}

/* Product grid */
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin:0!important;padding:0!important}
.woocommerce ul.products li.product{width:auto!important;float:none!important;margin:0!important;background:#fff;border:1px solid var(--dz-border);border-radius:16px;padding:14px;overflow:hidden;transition:transform .18s,box-shadow .18s}
.woocommerce ul.products li.product:hover{transform:translateY(-3px);box-shadow:var(--dz-shadow)}
.woocommerce ul.products li.product img{border-radius:12px;margin-bottom:12px}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-size:.98rem;font-weight:800;min-height:48px}
.woocommerce ul.products li.product .price{font-weight:900;color:var(--dz-text)}
.woocommerce span.onsale{background:#dc2626;min-height:42px;min-width:42px;line-height:42px}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--dz-primary);color:#fff!important;border-radius:10px;font-weight:800;padding:10px 14px}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:var(--dz-blue)}

/* Contact */
.dz-contact{background:linear-gradient(180deg,#fff,#f8fafc);border-top:1px solid var(--dz-border);border-bottom:1px solid var(--dz-border)}
.dz-contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:25px;align-items:stretch}
.dz-contact-card{border-radius:18px;background:#fff;border:1px solid var(--dz-border);padding:30px;box-shadow:0 8px 24px rgba(15,23,42,.04)}
.dz-contact-card h2{margin:0 0 10px;font-size:1.7rem}
.dz-contact-card p{color:var(--dz-muted)}

/* Generic WP content */
.page-header{padding:46px 0 20px}
.page-header h1{font-size:clamp(2rem,4vw,3.2rem);margin:0}
.content-area{padding-bottom:65px}
.entry-content{background:#fff;border:1px solid var(--dz-border);border-radius:18px;padding:30px}
.site-main{min-height:55vh}
.breadcrumbs{font-size:.85rem;color:var(--dz-muted);padding:17px 0}

/* Footer */
.site-footer{background:#062e2a;color:#cbd5e1;padding:50px 0 22px;margin-top:50px}
.footer-grid{display:grid;grid-template-columns:1.7fr 1fr 1fr;gap:35px}
.footer-title{color:#fff;font-size:1rem;font-weight:850}
.site-footer a{color:#e2e8f0}
.site-footer a:hover{color:#60a5fa}
.footer-bottom{border-top:1px solid #243041;margin-top:30px;padding-top:18px;color:#94a3b8;font-size:.82rem}

/* Form styling */
input[type=text],input[type=email],input[type=tel],input[type=number],input[type=url],input[type=password],select,textarea{width:100%;border:1px solid #cbd5e1;border-radius:10px;padding:12px 14px;background:#fff}
textarea{min-height:145px}
.wpforms-container .wpforms-field{margin-bottom:15px}
.wpforms-container button[type=submit]{background:var(--dz-blue)!important;border-radius:10px!important;font-weight:850!important}

/* Mobile */
@media(max-width:1100px){
  .dz-header-main{grid-template-columns:auto 1fr auto}
  .dz-category-grid{grid-template-columns:repeat(3,1fr)}
  .dz-features{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:820px){
  .dz-utility-right{display:none}
  .dz-header-main{grid-template-columns:auto auto;justify-content:space-between}
  .dz-search{grid-column:1 / -1;grid-row:2;max-width:none;padding-bottom:12px}
  .dz-menu-toggle{display:inline-flex;width:42px;height:42px;border:1px solid var(--dz-border);background:#fff;border-radius:12px;align-items:center;justify-content:center}
  .dz-nav-wrap{display:none}
  .dz-nav-wrap.is-open{display:block}
  .dz-nav{display:block;padding:8px 0 14px}
  .dz-nav-primary,.dz-nav-primary ul{display:block}
  .dz-nav-primary a{display:flex}
  .dz-support-link{display:block;padding:9px 13px}
  .dz-hero-grid{grid-template-columns:1fr}
  .dz-hero-art{display:none}
  .dz-hero-content{padding:50px 30px}
  .dz-contact-grid{grid-template-columns:1fr}
  .footer-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:560px){
  .container{width:min(calc(100% - 24px),var(--dz-container))}
  .dz-utility-left{gap:10px;font-size:.72rem}
  .dz-brand-tag{display:none}
  .dz-brand-name{font-size:1.1rem}
  .dz-actions{gap:6px}
  .dz-action{width:38px;height:38px;min-width:38px}
  .dz-category-grid{grid-template-columns:repeat(2,1fr);gap:10px}
  .dz-features{grid-template-columns:1fr}
  .woocommerce ul.products{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
  .dz-section{padding:42px 0}
  .dz-section-head{display:block}
  .dz-see-all{display:inline-block;margin-top:10px}
  .footer-grid{grid-template-columns:1fr}
}
@media(max-width:430px){
  .woocommerce ul.products{grid-template-columns:1fr}
}

/* Identidad verde + azul DigiZone */
.dz-brand-name{background:linear-gradient(90deg,#16a34a,#0ea5e9);-webkit-background-clip:text;background-clip:text;color:transparent}
.dz-logo-mark{background:linear-gradient(135deg,#16a34a,#0ea5e9)}
.dz-search button{background:linear-gradient(135deg,#16a34a,#0ea5e9)}
.dz-search button:hover{background:linear-gradient(135deg,#15803d,#0284c7)}
.dz-nav-primary .current-menu-item>a{background:#e9f9f2;color:#15803d}
.dz-nav-sale{color:#15803d!important}
.dz-btn-blue,.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce input.button:hover{background:linear-gradient(135deg,#16a34a,#0ea5e9)!important}
.dz-category-icon{background:linear-gradient(135deg,#e9f9f2,#eff6ff);color:#0284c7}
.dz-contact{background:linear-gradient(180deg,#ffffff,#f0fdf4)}

/* Logo de DigiZone: solo nombre, sin icono lateral */
.dz-brand-name-only{min-width:170px}
.dz-brand-name-only .dz-brand-name{
  font-size:1.45rem;
  font-weight:950;
  letter-spacing:-.045em;
  line-height:1;
  background:linear-gradient(90deg,#16a34a,#0ea5e9);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
@media(max-width:560px){
  .dz-brand-name-only{min-width:auto}
  .dz-brand-name-only .dz-brand-name{font-size:1.25rem}
}

.dz-feature-icon:empty{display:none}
.dz-feature-icon:empty + div{margin-left:0}

.dz-category:focus-visible{outline:3px solid rgba(14,165,233,.35);outline-offset:2px}
