:root {
  --navy:#091426; --navy2:#102a52; --blue:#247bfa;
  --text:#172943; --subtle:#65758c; --line:#e1e8f1; --bg:#f3f6fb;
}
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; font-family:'Segoe UI',Arial,sans-serif; color:var(--text); background:var(--bg); }
a { color:inherit; text-decoration:none; }
.danac-bar { min-height:66px; background:var(--navy); color:#fff; display:flex; justify-content:space-between; align-items:center; gap:12px; padding:12px max(5%, calc((100vw - 1160px) / 2)); }
.danac-name { font-size:21px; font-weight:800; letter-spacing:2px; }
.danac-name span { font-size:10px; letter-spacing:1px; font-weight:500; color:#8fb8eb; }
.return-link { border:1px solid #5282c2; padding:9px 14px; border-radius:9px; font-size:13px; }
.return-link:hover { background:#1b4381; }
main { width:min(1160px,92%); margin:0 auto; }
.demo-notice { margin:20px 0 16px; padding:11px 16px; border:1px solid #b6d7f5; background:#e7f3ff; color:#315a85; border-radius:10px; font-size:13px; display:flex; flex-wrap:wrap; gap:8px; }
.demo-notice span { color:#1469d4; font-weight:800; }
.store-hero { min-height:280px; overflow:hidden; position:relative; padding:40px 48px; display:grid; grid-template-columns:1.25fr .75fr; align-items:center; border-radius:22px; background:radial-gradient(circle at 83% 42%,#247bfa82,transparent 36%),linear-gradient(120deg,#07162e,#153d7b); color:white; }
.store-tag,.section-label { font-size:11px; font-weight:800; letter-spacing:2px; color:#7dcdff; }
.store-hero h1 { font-size:clamp(38px,5vw,64px); margin:9px 0; letter-spacing:2px; line-height:1.05; }
.store-hero h1 span { color:#75c7ff; }
.store-hero p { color:#c5d8ef; max-width:520px; font-size:15px; line-height:1.6; }
.hero-link { display:inline-block; margin-top:17px; border-radius:9px; padding:11px 18px; background:#3c9bfa; color:#061b38; font-weight:700; font-size:14px; }
.hero-link:hover { background:#73c0ff; }
.store-hero-art { min-height:205px; display:grid; place-items:center; position:relative; }
.art-orbit { width:220px; height:220px; border:2px solid #6cbeff65; border-radius:50%; box-shadow:0 0 70px #398fff70, inset 0 0 45px #398fff35; }
.art-device { position:absolute; font-size:86px; filter:drop-shadow(0 18px 15px #0007); transform:rotate(-14deg); }
.art-spark { position:absolute; color:#b4e3ff; font-size:34px; }
.spark-one { top:15px; right:38px; } .spark-two { bottom:15px; left:30px; }
.store-nav { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:9px; padding:18px 0; }
.nav-item { min-height:65px; border-radius:10px; text-align:center; font-size:13px; font-weight:700; display:flex; flex-direction:column; justify-content:center; align-items:center; gap:3px; padding:8px; border:1px solid var(--line); background:#fff; }
.nav-item.active { background:#e2efff; color:#1257a9; border-color:#98c6ff; }
.nav-item.locked { color:#8491a4; background:#f8fafc; }
.nav-item small { font-size:9px; font-weight:400; }
.products-section { padding:31px 0 45px; }
.section-head { display:flex; align-items:flex-end; justify-content:space-between; gap:18px; margin-bottom:24px; }
.section-label { color:#277acb; }
.section-head h2 { font-size:30px; margin:6px 0; }
.section-head p { font-size:14px; color:var(--subtle); margin:0; }
.product-count { background:#e3ecf8; padding:9px 12px; border-radius:20px; font-size:12px; white-space:nowrap; color:#355e8b; }
.product-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:18px; }
.product-card { background:white; border:1px solid var(--line); border-radius:15px; overflow:hidden; box-shadow:0 4px 18px #152c4810; transition:transform .2s,box-shadow .2s; }
.product-card:hover { transform:translateY(-4px); box-shadow:0 12px 26px #152c4820; }
.product-art { height:175px; display:grid; place-items:center; position:relative; background:linear-gradient(145deg,var(--tone-start),var(--tone-end)); }
.product-emoji { font-size:76px; filter:drop-shadow(0 9px 12px #14243b25); }
.product-badge { position:absolute; top:12px; left:12px; background:#ffffffed; color:#335677; font-size:10px; font-weight:700; padding:5px 9px; border-radius:30px; }
.product-body { padding:17px; }
.product-category { font-size:10px; text-transform:uppercase; letter-spacing:1px; color:#427fbc; font-weight:800; }
.product-body h3 { font-size:16px; margin:8px 0; }
.product-body p { color:#7d899a; font-size:12px; line-height:1.5; min-height:36px; margin:0 0 10px; }
.product-price { font-size:22px; font-weight:800; color:#145cb7; }
.product-footer { border-top:1px solid var(--line); margin-top:13px; padding-top:10px; font-size:11px; color:#8693a3; }
.bottom-banner { background:linear-gradient(105deg,#112b57,#164689); border-radius:17px; color:white; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:25px 30px; margin:0 0 38px; }
.bottom-banner p { color:#baceea; font-size:13px; margin:5px 0 0; }
.bottom-banner a { border:1px solid #81beff; padding:11px 17px; border-radius:9px; font-size:13px; white-space:nowrap; }
.bottom-banner a:hover { background:#1d5dba; }
footer { background:#091426; color:#b5c6dc; text-align:center; font-size:12px; padding:23px 12px; }
@media(max-width:920px) { .product-grid {grid-template-columns:repeat(2,minmax(0,1fr));} .store-nav {grid-template-columns:repeat(3,minmax(0,1fr));} }
@media(max-width:600px) { .danac-bar {padding:13px 4%;} .danac-name {font-size:18px;} .danac-name span {display:none;} .store-hero {grid-template-columns:1fr;padding:28px 23px;} .store-hero-art {min-height:125px;} .art-orbit {width:130px;height:130px;} .art-device {font-size:58px;} .section-head {align-items:flex-start;} .section-head h2 {font-size:25px;} .product-grid {gap:12px;} .product-art {height:125px;} .product-emoji {font-size:53px;} .product-body {padding:12px;} .product-body h3 {font-size:14px;} .product-price {font-size:18px;} .store-nav {grid-template-columns:repeat(2,minmax(0,1fr));} .bottom-banner {flex-direction:column;align-items:flex-start;padding:22px;} }
@media(max-width:350px) { .product-grid {grid-template-columns:1fr;} .product-art {height:165px;} }
@media(prefers-reduced-motion:reduce) {html {scroll-behavior:auto;} .product-card {transition:none;} }

/* WhatsApp comercial de DANAC (no envía pedidos reales) */
.nav-whatsapp-demo { background:#e9f4ff; color:#155cad; border-color:#9dc9fa; transition:background .2s, transform .2s; }
.nav-whatsapp-demo:hover { background:#d6eaff; transform:translateY(-2px); }
.nav-whatsapp-demo:focus-visible { outline:3px solid #247bfa; outline-offset:3px; }

/* DANAC Catálogo V1.4.3: categorías, búsqueda, carrito y pedidos ficticios */
[hidden] { display:none !important; }
button,input,textarea { font:inherit; }
button { cursor:pointer; }
.store-nav .nav-item { cursor:pointer; color:#526b8c; }
.store-nav .nav-item:hover { border-color:#8abdf9; color:#1257a9; }
.store-nav .nav-item.active { color:#1257a9; }
#contenido { scroll-margin-top:16px; }
.filters-area { margin-bottom:22px; }
.category-controls { display:flex; flex-wrap:wrap; gap:10px; }
.filter-chip { background:#fff; border:1px solid #bfd1e5; border-radius:30px; padding:10px 17px; color:#34526f; }
.filter-chip.selected { background:#185fb7; color:white; border-color:#185fb7; }
.search-controls { display:flex; flex-direction:column; gap:7px; max-width:560px; }
.search-controls label,.field label { color:#34526f; font-size:13px; font-weight:700; }
.search-controls input,.field input,.field textarea { width:100%; background:#fff; border:1px solid #b8cbe0; border-radius:9px; padding:12px; color:#172943; outline-offset:2px; }
.product-actions { display:flex; gap:8px; border-top:1px solid var(--line); margin-top:14px; padding-top:12px; }
.product-actions button { flex:1; border-radius:8px; padding:10px 7px; font-size:12px; font-weight:700; }
.secondary-action { background:#f3f7fd; color:#2465ae; border:1px solid #bed4ee; }
.small-primary,.primary-action { background:#176fd3; color:white; border:1px solid #176fd3; }
.small-primary:hover,.primary-action:hover { background:#1257a9; }
.cart-pulse { box-shadow:0 0 0 3px #69b9ff; }
.panel-section { background:white; border-radius:16px; border:1px solid var(--line); margin:30px 0 45px; padding:30px; }
.panel-section h2 { font-size:29px; margin:9px 0; }
.section-desc { color:var(--subtle); line-height:1.5; }
.empty-state { padding:20px; border-radius:12px; background:#eaf3ff; color:#3d648d; margin:18px 0; }
.cart-row { display:grid; grid-template-columns:minmax(0,2fr) 125px 95px 70px; gap:14px; align-items:center; padding:17px 0; border-bottom:1px solid var(--line); }
.cart-item-info { display:flex; flex-direction:column; gap:4px; }
.cart-item-info span { color:var(--subtle); font-size:12px; }
.quantity-control { display:flex; align-items:center; justify-content:space-between; gap:6px; }
.quantity-btn { border:1px solid #bdd1e8; background:#eef5ff; border-radius:7px; width:31px; height:31px; font-weight:bold; }
.remove-btn { border:0; color:#a52e40; background:transparent; font-size:12px; }
.cart-summary { display:flex; justify-content:space-between; padding:24px 0; font-size:19px; }
.cart-summary strong { color:#145cb7; }
.primary-action { display:inline-block; border-radius:10px; padding:12px 18px; font-weight:700; }
.primary-action:disabled { opacity:.45; cursor:not-allowed; }
.order-form { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px; margin-top:25px; }
.field { display:flex; flex-direction:column; gap:7px; }
.field.full,.order-actions,.form-error { grid-column:1 / -1; }
.field textarea { resize:vertical; }
.form-error { color:#aa2638; margin:0; }
.order-preview { white-space:pre-wrap; word-break:break-word; background:#edf5ff; border:1px solid #c5def8; padding:24px; border-radius:12px; color:#193b65; font:14px/1.7 'Segoe UI',Arial,sans-serif; }
.copy-feedback { color:#1665aa; font-size:13px; min-height:20px; }
.demo-contact { padding:21px; margin-top:25px; background:#f2f7ff; border:1px solid #d1e3fa; border-radius:12px; }
.demo-contact p { font-size:13px; color:var(--subtle); }
.consult-link { display:inline-block; padding:11px 16px; border-radius:9px; background:#d9ecff; border:1px solid #96c5fb; color:#145cb7; font-size:13px; font-weight:700; }
.product-dialog { position:fixed; max-width:min(480px,92vw); width:100%; border:0; border-radius:18px; padding:0; box-shadow:0 22px 75px #0006; overflow:hidden; }
.product-dialog::backdrop { background:#061427a8; }
.dialog-close { position:absolute; right:14px; top:13px; z-index:2; width:36px; height:36px; background:white; border:0; border-radius:50%; font-size:17px; }
.dialog-art { min-height:195px; display:grid; place-items:center; font-size:90px; }
.dialog-body { padding:23px; }
.dialog-body h2 { margin:7px 0; font-size:25px; }
.dialog-body p { color:var(--subtle); }
.dialog-body .product-price { display:block; margin:14px 0; }
@media(max-width:700px) { .cart-row {grid-template-columns:1fr auto;gap:9px;} .cart-item-info {grid-column:1 / -1;} .order-form {grid-template-columns:1fr;} .product-actions {flex-direction:column;} }
@media(max-width:420px) { .panel-section {padding:19px;} .cart-summary {font-size:16px;} }
