/*
Theme Name:        Nexus
Theme URI:         https://lafactorie.es/nexus
Author:            Lafactorie
Author URI:        https://lafactorie.es
Description:       Nexus is a premium ultra-minimalist WordPress theme engineered for performance, security, and conversion. Built with native WooCommerce, WPBakery, dual navigation, extreme SEO, military-grade security, and full translation readiness.
Version:           1.0.0
Requires at least: 6.0
Tested up to:      6.7
Requires PHP:      8.1
License:           Nexus Commercial License
License URI:       https://lafactorie.es/nexus/license
Text Domain:       nexus
Tags:              blog, e-commerce, portfolio, custom-colors, custom-logo, custom-menu, featured-images, full-width-template, sticky-post, theme-options, threaded-comments, translation-ready, woocommerce, wide-blocks, rtl-language-support, accessibility-ready

WC requires at least: 7.0
WC tested up to:   8.9
*/

/* ═══════════════════════════════════════════
   NEXUS DESIGN SYSTEM — CSS CUSTOM PROPERTIES
   Lafactorie · lafactorie.es
   ═══════════════════════════════════════════ */
:root {
  --nx-black:           #0a0a0a;
  --nx-white:           #ffffff;
  --nx-accent:          #ff3b00;
  --nx-accent-dark:     #cc2f00;
  --nx-accent-light:    #ff6b3d;
  --nx-gray-50:         #fafafa;
  --nx-gray-100:        #f5f5f5;
  --nx-gray-200:        #e8e8e8;
  --nx-gray-300:        #d4d4d4;
  --nx-gray-400:        #a3a3a3;
  --nx-gray-500:        #737373;
  --nx-gray-600:        #525252;
  --nx-gray-700:        #404040;
  --nx-gray-800:        #262626;
  --nx-gray-900:        #171717;
  --nx-color-primary:       var(--nx-black);
  --nx-color-secondary:     var(--nx-gray-100);
  --nx-color-text:          #1a1a1a;
  --nx-color-text-muted:    var(--nx-gray-500);
  --nx-color-text-light:    var(--nx-gray-400);
  --nx-color-border:        var(--nx-gray-200);
  --nx-color-border-dark:   var(--nx-gray-300);
  --nx-color-surface:       var(--nx-white);
  --nx-color-surface-alt:   var(--nx-gray-50);
  --nx-color-overlay:       rgba(10,10,10,0.88);
  --nx-color-success:       #16a34a;
  --nx-color-warning:       #d97706;
  --nx-color-error:         #dc2626;
  --nx-color-info:          #2563eb;
  --nx-font-primary:    'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Helvetica, Arial, sans-serif;
  --nx-font-display:    'Playfair Display', 'Georgia', 'Times New Roman', serif;
  --nx-font-mono:       'JetBrains Mono', 'Fira Code', 'Courier New', monospace;
  --nx-font-size-xs:    0.75rem;
  --nx-font-size-sm:    0.875rem;
  --nx-font-size-base:  1rem;
  --nx-font-size-lg:    1.125rem;
  --nx-font-size-xl:    1.25rem;
  --nx-font-size-2xl:   1.5rem;
  --nx-font-size-3xl:   1.875rem;
  --nx-font-size-4xl:   2.25rem;
  --nx-font-size-5xl:   3rem;
  --nx-font-size-6xl:   3.75rem;
  --nx-font-size-7xl:   4.5rem;
  --nx-font-weight-normal: 400;
  --nx-font-weight-medium: 500;
  --nx-font-weight-semi:   600;
  --nx-font-weight-bold:   700;
  --nx-font-weight-black:  900;
  --nx-line-height-tight:  1.1;
  --nx-line-height-snug:   1.375;
  --nx-line-height-normal: 1.5;
  --nx-line-height-relaxed:1.75;
  --nx-letter-tight:   -0.04em;
  --nx-letter-normal:  -0.01em;
  --nx-letter-wide:    0.05em;
  --nx-letter-wider:   0.1em;
  --nx-letter-widest:  0.2em;
  --nx-space-1:0.25rem;--nx-space-2:0.5rem;--nx-space-3:0.75rem;--nx-space-4:1rem;
  --nx-space-5:1.25rem;--nx-space-6:1.5rem;--nx-space-8:2rem;--nx-space-10:2.5rem;
  --nx-space-12:3rem;--nx-space-16:4rem;--nx-space-20:5rem;--nx-space-24:6rem;--nx-space-32:8rem;
  --nx-container:1320px;--nx-container-sm:720px;--nx-container-md:1024px;--nx-container-lg:1520px;
  --nx-gutter:clamp(1rem,3vw,2.5rem);--nx-header-h:72px;--nx-vnav-w:280px;--nx-sidebar-w:300px;
  --nx-radius-sm:2px;--nx-radius:4px;--nx-radius-md:6px;--nx-radius-lg:10px;--nx-radius-xl:16px;--nx-radius-full:9999px;
  --nx-shadow-xs:0 1px 2px rgba(0,0,0,0.06);
  --nx-shadow-sm:0 1px 4px rgba(0,0,0,0.08),0 2px 8px rgba(0,0,0,0.04);
  --nx-shadow:0 4px 12px rgba(0,0,0,0.08),0 8px 24px rgba(0,0,0,0.05);
  --nx-shadow-md:0 8px 24px rgba(0,0,0,0.10),0 16px 48px rgba(0,0,0,0.06);
  --nx-shadow-lg:0 16px 48px rgba(0,0,0,0.12),0 32px 80px rgba(0,0,0,0.08);
  --nx-shadow-xl:0 32px 80px rgba(0,0,0,0.16),0 64px 120px rgba(0,0,0,0.10);
  --nx-ease-out:cubic-bezier(0.0,0.0,0.2,1.0);
  --nx-ease-in:cubic-bezier(0.4,0.0,1.0,1.0);
  --nx-ease:cubic-bezier(0.4,0.0,0.2,1.0);
  --nx-ease-spring:cubic-bezier(0.34,1.56,0.64,1.0);
  --nx-dur-fast:150ms;--nx-dur-base:250ms;--nx-dur-slow:400ms;--nx-dur-slower:700ms;
  --nx-t-base:var(--nx-dur-base) var(--nx-ease);
  --nx-t-fast:var(--nx-dur-fast) var(--nx-ease);
  --nx-t-slow:var(--nx-dur-slow) var(--nx-ease);
  --nx-z-0:0;--nx-z-10:10;--nx-z-nav:100;--nx-z-sticky:200;--nx-z-modal:400;--nx-z-toast:500;--nx-z-top:9999;
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{font-size:16px;-webkit-text-size-adjust:100%;scroll-behavior:smooth;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}
body{font-family:var(--nx-font-primary);font-size:1rem;line-height:var(--nx-line-height-relaxed);color:var(--nx-color-text);background:var(--nx-color-surface);overflow-x:hidden}
img,picture,video,canvas,svg{display:block;max-width:100%;height:auto}
input,button,textarea,select{font:inherit}
ul,ol{list-style:none}
a{color:inherit;text-decoration:none}
table{border-collapse:collapse}
::selection{background:var(--nx-black);color:var(--nx-white)}
h1,h2,h3,h4,h5,h6{font-family:var(--nx-font-primary);font-weight:var(--nx-font-weight-bold);line-height:var(--nx-line-height-tight);color:var(--nx-color-primary);letter-spacing:var(--nx-letter-tight)}
h1{font-size:clamp(2.25rem,6vw,var(--nx-font-size-7xl))}
h2{font-size:clamp(1.75rem,4.5vw,var(--nx-font-size-5xl))}
h3{font-size:clamp(1.375rem,3vw,var(--nx-font-size-3xl))}
h4{font-size:var(--nx-font-size-2xl)}h5{font-size:var(--nx-font-size-xl)}h6{font-size:var(--nx-font-size-lg)}
p{margin-bottom:var(--nx-space-4)}p:last-child{margin-bottom:0}
strong,b{font-weight:var(--nx-font-weight-bold)}
.nx-eyebrow{display:inline-block;font-size:var(--nx-font-size-xs);font-weight:var(--nx-font-weight-bold);letter-spacing:var(--nx-letter-widest);text-transform:uppercase;color:var(--nx-accent)}
.nx-lead{font-size:var(--nx-font-size-xl);line-height:var(--nx-line-height-relaxed);color:var(--nx-color-text-muted);font-weight:var(--nx-font-weight-normal)}
.nx-overline{font-size:var(--nx-font-size-xs);letter-spacing:var(--nx-letter-widest);text-transform:uppercase;font-weight:var(--nx-font-weight-bold);color:var(--nx-color-text-muted)}
.nx-wrap{width:100%;max-width:var(--nx-container);margin-inline:auto;padding-inline:var(--nx-gutter)}
.nx-wrap--sm{max-width:var(--nx-container-sm)}.nx-wrap--md{max-width:var(--nx-container-md)}
.nx-site{display:flex;flex-direction:column;min-height:100vh}
.nx-site__main{flex:1;padding-top:var(--nx-header-h)}
.nx-grid{display:grid;gap:var(--nx-gutter)}
.nx-grid--2{grid-template-columns:repeat(2,1fr)}
.nx-grid--3{grid-template-columns:repeat(3,1fr)}
.nx-grid--4{grid-template-columns:repeat(4,1fr)}
.nx-grid--auto{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}
.nx-grid--content-sidebar{grid-template-columns:1fr var(--nx-sidebar-w);align-items:start}
.nx-header{position:fixed;top:0;left:0;right:0;height:var(--nx-header-h);background:var(--nx-color-surface);border-bottom:1px solid var(--nx-color-border);z-index:var(--nx-z-sticky);transition:background var(--nx-t-base),box-shadow var(--nx-t-base),transform var(--nx-t-base)}
.nx-header.is-scrolled{box-shadow:var(--nx-shadow-sm)}
.nx-header.is-hidden{transform:translateY(-100%)}
.nx-header.is-transparent{background:transparent;border-color:transparent}
.nx-header.is-transparent.is-scrolled{background:rgba(255,255,255,0.96);backdrop-filter:blur(12px);border-color:var(--nx-color-border)}
.nx-header__inner{display:flex;align-items:center;justify-content:space-between;height:100%;max-width:var(--nx-container);margin-inline:auto;padding-inline:var(--nx-gutter)}
.nx-logo{display:flex;align-items:center;gap:var(--nx-space-3);font-weight:var(--nx-font-weight-black);font-size:1.2rem;letter-spacing:var(--nx-letter-tight);color:var(--nx-color-primary);flex-shrink:0;transition:opacity var(--nx-t-fast)}
.nx-logo:hover{opacity:0.75;color:var(--nx-color-primary)}
.nx-logo img{height:38px;width:auto;object-fit:contain}
.nx-nav{display:flex;align-items:center}
.nx-nav__list{display:flex;align-items:center;gap:0}
.nx-nav__item{position:relative}
.nx-nav__link{display:flex;align-items:center;gap:var(--nx-space-1);padding:var(--nx-space-2) var(--nx-space-4);font-size:var(--nx-font-size-xs);font-weight:var(--nx-font-weight-semi);letter-spacing:var(--nx-letter-wider);text-transform:uppercase;color:var(--nx-color-text);white-space:nowrap;transition:color var(--nx-t-fast);position:relative}
.nx-nav__link::after{content:'';position:absolute;bottom:-1px;left:var(--nx-space-4);right:var(--nx-space-4);height:2px;background:var(--nx-accent);transform:scaleX(0);transition:transform var(--nx-t-base);transform-origin:left}
.nx-nav__link:hover::after,.nx-nav__item.current-menu-item>.nx-nav__link::after{transform:scaleX(1)}
.nx-dropdown{position:absolute;top:calc(100% + 8px);left:0;min-width:220px;background:var(--nx-color-surface);border:1px solid var(--nx-color-border);box-shadow:var(--nx-shadow-md);opacity:0;visibility:hidden;transform:translateY(6px);transition:all var(--nx-t-base);z-index:var(--nx-z-nav);border-top:2px solid var(--nx-accent)}
.nx-nav__item:hover>.nx-dropdown{opacity:1;visibility:visible;transform:translateY(0)}
.nx-dropdown li a{display:block;padding:10px var(--nx-space-5);font-size:var(--nx-font-size-sm);color:var(--nx-color-text-muted);border-bottom:1px solid var(--nx-color-border);transition:all var(--nx-t-fast)}
.nx-dropdown li a:hover{color:var(--nx-accent);padding-left:calc(var(--nx-space-5) + 8px);background:var(--nx-color-surface-alt)}
.nx-header__right{display:flex;align-items:center;gap:var(--nx-space-2)}
.nx-icon-btn{display:flex;align-items:center;justify-content:center;width:40px;height:40px;color:var(--nx-color-text);border:1px solid transparent;transition:all var(--nx-t-fast);border-radius:var(--nx-radius-sm);position:relative}
.nx-icon-btn:hover{background:var(--nx-color-secondary);color:var(--nx-color-primary)}
.nx-cart-badge{position:absolute;top:4px;right:4px;min-width:16px;height:16px;padding:0 3px;background:var(--nx-accent);color:var(--nx-white);font-size:9px;font-weight:var(--nx-font-weight-black);border-radius:var(--nx-radius-full);display:flex;align-items:center;justify-content:center;line-height:1}
.nx-burger{display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;cursor:pointer;background:none;border:none;padding:0}
.nx-burger__line{display:block;height:1.5px;background:var(--nx-color-primary);transition:all var(--nx-t-base);transform-origin:center}
.nx-burger.is-active .nx-burger__line:nth-child(1){transform:translateY(6.5px) rotate(45deg)}
.nx-burger.is-active .nx-burger__line:nth-child(2){opacity:0;transform:scaleX(0)}
.nx-burger.is-active .nx-burger__line:nth-child(3){transform:translateY(-6.5px) rotate(-45deg)}
.nx-mobile-nav{position:fixed;top:0;left:0;width:100%;height:100vh;background:var(--nx-color-surface);transform:translateX(-100%);transition:transform var(--nx-t-slow);z-index:var(--nx-z-modal);overflow-y:auto;display:flex;flex-direction:column;padding:var(--nx-space-8)}
.nx-mobile-nav.is-open{transform:translateX(0)}
.nx-mobile-nav ul li a{display:block;padding:var(--nx-space-4) 0;font-size:var(--nx-font-size-xl);font-weight:var(--nx-font-weight-semi);border-bottom:1px solid var(--nx-color-border);color:var(--nx-color-text);transition:color var(--nx-t-fast)}
.nx-mobile-nav ul li a:hover{color:var(--nx-accent)}
.nx-vnav{position:fixed;top:0;left:0;width:var(--nx-vnav-w);height:100vh;background:var(--nx-black);color:var(--nx-white);display:flex;flex-direction:column;z-index:var(--nx-z-sticky);overflow-y:auto;scrollbar-width:thin;scrollbar-color:var(--nx-gray-700) transparent}
.nx-vnav__header{padding:var(--nx-space-8) var(--nx-space-6);border-bottom:1px solid rgba(255,255,255,0.08)}
.nx-vnav__menu{flex:1;padding:var(--nx-space-4) 0}
.nx-vnav__link{display:flex;align-items:center;gap:var(--nx-space-3);padding:11px var(--nx-space-6);font-size:var(--nx-font-size-sm);font-weight:var(--nx-font-weight-medium);color:rgba(255,255,255,0.55);transition:all var(--nx-t-fast);border-left:2px solid transparent}
.nx-vnav__link:hover,.nx-vnav__item.current-menu-item .nx-vnav__link{color:var(--nx-white);border-left-color:var(--nx-accent);background:rgba(255,255,255,0.05)}
.nx-vnav__sub{background:rgba(0,0,0,0.2);overflow:hidden;max-height:0;transition:max-height 0.4s var(--nx-ease-out)}
.nx-vnav__item.is-open .nx-vnav__sub{max-height:600px}
.nx-vnav__sub a{display:block;padding:9px var(--nx-space-6) 9px calc(var(--nx-space-6) + 24px);font-size:var(--nx-font-size-xs);color:rgba(255,255,255,0.4);border-bottom:1px solid rgba(255,255,255,0.04);transition:all var(--nx-t-fast)}
.nx-vnav__sub a:hover{color:var(--nx-white)}
.nx-vnav__footer{padding:var(--nx-space-6);border-top:1px solid rgba(255,255,255,0.08)}
.nx-search{position:fixed;inset:0;background:rgba(10,10,10,0.96);z-index:var(--nx-z-modal);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all var(--nx-t-base)}
.nx-search.is-open{opacity:1;visibility:visible}
.nx-search__inner{width:min(640px,92vw)}
.nx-search__input{width:100%;background:transparent;border:none;outline:none;font-size:clamp(1.5rem,4vw,2.5rem);font-weight:var(--nx-font-weight-medium);color:var(--nx-white);padding:var(--nx-space-4) 0;border-bottom:2px solid rgba(255,255,255,0.2);caret-color:var(--nx-accent)}
.nx-search__close{position:absolute;top:var(--nx-space-8);right:var(--nx-space-8);color:rgba(255,255,255,0.5);font-size:1.5rem;cursor:pointer;transition:color var(--nx-t-fast);display:flex;align-items:center;justify-content:center;width:48px;height:48px;background:none;border:none}
.nx-hero{position:relative;overflow:hidden;display:flex;align-items:center}
.nx-hero--full{min-height:100svh}.nx-hero--large{min-height:90vh}.nx-hero--medium{min-height:70vh}.nx-hero--small{min-height:50vh}
.nx-hero__media{position:absolute;inset:0;will-change:transform;overflow:hidden;background:var(--nx-black)}
.nx-hero__media img,.nx-hero__media video{width:100%;height:100%;object-fit:cover;opacity:0.7;transform:scale(1.06);transition:transform 8s var(--nx-ease-out)}
.nx-hero__overlay{position:absolute;inset:0;background:linear-gradient(135deg,rgba(10,10,10,0.75) 0%,rgba(10,10,10,0.15) 100%)}
.nx-hero__content{position:relative;z-index:var(--nx-z-10);color:var(--nx-white);padding-block:var(--nx-space-32);width:100%}
.nx-hero__title{color:var(--nx-white);margin-bottom:var(--nx-space-6)}
.nx-hero__subtitle{font-size:var(--nx-font-size-xl);color:rgba(255,255,255,0.75);margin-bottom:var(--nx-space-10);max-width:640px;font-weight:var(--nx-font-weight-normal)}
.nx-hero__actions{display:flex;flex-wrap:wrap;gap:var(--nx-space-4)}
.nx-btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--nx-space-2);padding:13px var(--nx-space-8);font-size:var(--nx-font-size-xs);font-weight:var(--nx-font-weight-bold);letter-spacing:var(--nx-letter-wider);text-transform:uppercase;border:2px solid transparent;cursor:pointer;transition:all var(--nx-t-base);white-space:nowrap;position:relative;overflow:hidden;border-radius:var(--nx-radius-sm)}
.nx-btn--primary{background:var(--nx-black);color:var(--nx-white);border-color:var(--nx-black)}
.nx-btn--primary:hover{background:var(--nx-gray-800);border-color:var(--nx-gray-800);color:var(--nx-white)}
.nx-btn--accent{background:var(--nx-accent);color:var(--nx-white);border-color:var(--nx-accent)}
.nx-btn--accent:hover{background:var(--nx-accent-dark);border-color:var(--nx-accent-dark);color:var(--nx-white)}
.nx-btn--outline{background:transparent;color:var(--nx-black);border-color:var(--nx-black)}
.nx-btn--outline:hover{background:var(--nx-black);color:var(--nx-white)}
.nx-btn--ghost{background:transparent;border-color:transparent;color:var(--nx-color-text)}
.nx-btn--ghost:hover{color:var(--nx-accent)}
.nx-btn--white{background:var(--nx-white);color:var(--nx-black);border-color:var(--nx-white)}
.nx-btn--white:hover{background:transparent;color:var(--nx-white)}
.nx-btn--white-outline{background:transparent;color:var(--nx-white);border-color:var(--nx-white)}
.nx-btn--white-outline:hover{background:var(--nx-white);color:var(--nx-black)}
.nx-btn--sm{padding:10px var(--nx-space-5)}.nx-btn--lg{padding:17px var(--nx-space-12);font-size:var(--nx-font-size-sm)}.nx-btn--xl{padding:20px var(--nx-space-16);font-size:var(--nx-font-size-base)}.nx-btn--full{width:100%}
.nx-card{background:var(--nx-color-surface);border:1px solid var(--nx-color-border);overflow:hidden;transition:all var(--nx-t-base);position:relative}
.nx-card:hover{box-shadow:var(--nx-shadow-md);transform:translateY(-3px)}
.nx-card__thumb{position:relative;overflow:hidden;background:var(--nx-color-surface-alt)}
.nx-card__thumb img{width:100%;height:100%;object-fit:cover;transition:transform var(--nx-dur-slower) var(--nx-ease-out)}
.nx-card:hover .nx-card__thumb img{transform:scale(1.05)}
.nx-card__thumb--16-9{aspect-ratio:16/9}.nx-card__thumb--4-3{aspect-ratio:4/3}.nx-card__thumb--3-2{aspect-ratio:3/2}.nx-card__thumb--1-1{aspect-ratio:1/1}
.nx-card__body{padding:var(--nx-space-6)}
.nx-card__cat{display:inline-block;font-size:9px;font-weight:var(--nx-font-weight-black);letter-spacing:var(--nx-letter-widest);text-transform:uppercase;color:var(--nx-accent);margin-bottom:var(--nx-space-3)}
.nx-card__title{font-size:var(--nx-font-size-lg);line-height:var(--nx-line-height-snug);margin-bottom:var(--nx-space-3);font-weight:var(--nx-font-weight-semi);letter-spacing:var(--nx-letter-tight)}
.nx-card__excerpt{font-size:var(--nx-font-size-sm);color:var(--nx-color-text-muted);line-height:var(--nx-line-height-relaxed)}
.nx-card__footer{padding:var(--nx-space-4) var(--nx-space-6);border-top:1px solid var(--nx-color-border);display:flex;align-items:center;justify-content:space-between;font-size:var(--nx-font-size-xs);color:var(--nx-color-text-muted)}
.nx-card__read-more{display:flex;align-items:center;gap:4px;font-size:var(--nx-font-size-xs);font-weight:var(--nx-font-weight-bold);letter-spacing:var(--nx-letter-wider);text-transform:uppercase;color:var(--nx-color-primary);transition:gap var(--nx-t-fast)}
.nx-card:hover .nx-card__read-more{gap:8px;color:var(--nx-accent)}
.nx-card--horizontal{display:grid;grid-template-columns:280px 1fr}
.nx-section{padding-block:var(--nx-space-32)}
.nx-section--sm{padding-block:var(--nx-space-16)}.nx-section--lg{padding-block:calc(var(--nx-space-32)*1.5)}
.nx-section--dark{background:var(--nx-black);color:var(--nx-white)}
.nx-section--dark h1,.nx-section--dark h2,.nx-section--dark h3{color:var(--nx-white)}
.nx-section--gray{background:var(--nx-color-surface-alt)}
.nx-section--accent{background:var(--nx-accent);color:var(--nx-white)}
.nx-section__header{margin-bottom:var(--nx-space-16)}
.nx-section__header--center{text-align:center}
.nx-entry{max-width:var(--nx-container-sm);margin-inline:auto}
.nx-entry__header{margin-bottom:var(--nx-space-12)}
.nx-entry__meta{display:flex;flex-wrap:wrap;gap:var(--nx-space-5);margin-bottom:var(--nx-space-6);font-size:var(--nx-font-size-xs);color:var(--nx-color-text-muted);letter-spacing:var(--nx-letter-wide)}
.nx-entry__content>*+*{margin-top:var(--nx-space-6)}
.nx-entry__content a{color:var(--nx-accent);text-decoration:underline;text-underline-offset:3px}
.nx-entry__content blockquote{border-left:3px solid var(--nx-accent);padding:var(--nx-space-6) var(--nx-space-8);background:var(--nx-color-surface-alt);font-family:var(--nx-font-display);font-size:var(--nx-font-size-xl);font-style:italic}
.nx-entry__content code{font-family:var(--nx-font-mono);font-size:.875em;background:var(--nx-color-surface-alt);border:1px solid var(--nx-color-border);padding:2px 6px}
.nx-entry__content pre{background:var(--nx-gray-900);color:var(--nx-gray-200);padding:var(--nx-space-6);overflow-x:auto;font-family:var(--nx-font-mono);font-size:var(--nx-font-size-sm)}
.nx-entry__content ul,.nx-entry__content ol{padding-left:var(--nx-space-6)}
.nx-entry__content ul{list-style:disc}.nx-entry__content ol{list-style:decimal}
.nx-sidebar{position:sticky;top:calc(var(--nx-header-h) + var(--nx-space-6));display:flex;flex-direction:column;gap:var(--nx-space-8)}
.nx-widget__title{font-size:var(--nx-font-size-xs);font-weight:var(--nx-font-weight-black);letter-spacing:var(--nx-letter-widest);text-transform:uppercase;margin-bottom:var(--nx-space-5);padding-bottom:var(--nx-space-3);border-bottom:2px solid var(--nx-black);color:var(--nx-color-primary)}
.nx-breadcrumbs{display:flex;flex-wrap:wrap;align-items:center;gap:6px;padding:var(--nx-space-4) 0;font-size:var(--nx-font-size-xs);color:var(--nx-color-text-muted)}
.nx-breadcrumbs a:hover{color:var(--nx-accent)}
.nx-breadcrumbs .current{color:var(--nx-color-primary);font-weight:var(--nx-font-weight-medium)}
.nx-pagination{display:flex;align-items:center;justify-content:center;gap:var(--nx-space-2);margin-top:var(--nx-space-16)}
.nx-pagination a,.nx-pagination .page-numbers{display:inline-flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 var(--nx-space-3);font-size:var(--nx-font-size-sm);font-weight:var(--nx-font-weight-semi);border:2px solid var(--nx-color-border);transition:all var(--nx-t-fast)}
.nx-pagination a:hover{border-color:var(--nx-black);background:var(--nx-black);color:var(--nx-white)}
.nx-pagination .current{background:var(--nx-black);color:var(--nx-white);border-color:var(--nx-black)}
.nx-input,.nx-textarea,.nx-select{width:100%;padding:12px var(--nx-space-4);border:2px solid var(--nx-color-border);background:var(--nx-color-surface);font-size:var(--nx-font-size-base);color:var(--nx-color-text);outline:none;transition:border-color var(--nx-t-fast);font-family:inherit}
.nx-input:focus,.nx-textarea:focus,.nx-select:focus{border-color:var(--nx-black)}
.nx-tag{display:inline-flex;align-items:center;gap:4px;padding:4px 12px;font-size:var(--nx-font-size-xs);font-weight:var(--nx-font-weight-semi);border:1px solid var(--nx-color-border);color:var(--nx-color-text-muted);transition:all var(--nx-t-fast);border-radius:var(--nx-radius-full)}
.nx-tag:hover{border-color:var(--nx-black);color:var(--nx-black)}
.nx-tag--filled{background:var(--nx-color-secondary)}.nx-tag--accent{background:var(--nx-accent);border-color:var(--nx-accent);color:var(--nx-white)}
.nx-alert{padding:var(--nx-space-4) var(--nx-space-6);border-left:3px solid;display:flex;align-items:flex-start;gap:var(--nx-space-3);font-size:var(--nx-font-size-sm)}
.nx-alert--info{background:#eff6ff;border-color:var(--nx-color-info);color:#1e40af}
.nx-alert--success{background:#f0fdf4;border-color:var(--nx-color-success);color:#166534}
.nx-alert--warning{background:#fffbeb;border-color:var(--nx-color-warning);color:#92400e}
.nx-alert--error{background:#fef2f2;border-color:var(--nx-color-error);color:#991b1b}
.nx-notice-bar{background:var(--nx-black);color:var(--nx-white);text-align:center;padding:10px var(--nx-gutter);font-size:var(--nx-font-size-xs);letter-spacing:var(--nx-letter-wide);position:relative}
.nx-notice-bar a{color:var(--nx-accent-light);text-decoration:underline}
.nx-notice-bar__close{position:absolute;right:var(--nx-space-4);top:50%;transform:translateY(-50%);color:rgba(255,255,255,.5);cursor:pointer;background:none;border:none;font-size:1rem}
.nx-page-title{padding:var(--nx-space-16) 0 var(--nx-space-12);border-bottom:1px solid var(--nx-color-border);background:var(--nx-color-surface-alt)}
.nx-page-title--dark{background:var(--nx-black);border-color:transparent}
.nx-page-title--dark .nx-page-title__title{color:var(--nx-white)}
.nx-footer{background:var(--nx-black);color:rgba(255,255,255,.6)}
.nx-footer__top{display:grid;grid-template-columns:1.8fr repeat(3,1fr);gap:var(--nx-space-12);padding-block:var(--nx-space-24)}
.nx-footer__brand .nx-logo{color:var(--nx-white);margin-bottom:var(--nx-space-5)}
.nx-footer__desc{font-size:var(--nx-font-size-sm);line-height:var(--nx-line-height-relaxed);max-width:280px}
.nx-footer__heading{font-size:var(--nx-font-size-xs);font-weight:var(--nx-font-weight-black);letter-spacing:var(--nx-letter-wider);text-transform:uppercase;color:var(--nx-white);margin-bottom:var(--nx-space-5)}
.nx-footer__nav li{margin-bottom:var(--nx-space-3)}
.nx-footer__nav a{font-size:var(--nx-font-size-sm);color:rgba(255,255,255,.5);transition:color var(--nx-t-fast)}
.nx-footer__nav a:hover{color:var(--nx-white)}
.nx-footer__bottom{border-top:1px solid rgba(255,255,255,.08);padding-block:var(--nx-space-6);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--nx-space-4);font-size:var(--nx-font-size-xs)}
.nx-footer__social{display:flex;gap:var(--nx-space-4)}
.nx-footer__social a{color:rgba(255,255,255,.3);transition:color var(--nx-t-fast);display:flex;align-items:center;width:32px;height:32px}
.nx-footer__social a:hover{color:var(--nx-white)}
.nx-footer__newsletter-form{display:flex}
.nx-footer__newsletter-form input{flex:1;background:rgba(255,255,255,.07);border:1px solid rgba(255,255,255,.10);border-right:none;padding:10px var(--nx-space-4);font-size:var(--nx-font-size-sm);color:var(--nx-white);outline:none}
.nx-footer__newsletter-form button{padding:10px var(--nx-space-5);background:var(--nx-accent);color:var(--nx-white);font-size:var(--nx-font-size-xs);font-weight:var(--nx-font-weight-bold);letter-spacing:var(--nx-letter-wider);text-transform:uppercase;border:none;cursor:pointer}
.nx-top-btn{position:fixed;bottom:var(--nx-space-8);right:var(--nx-space-8);width:48px;height:48px;display:flex;align-items:center;justify-content:center;background:var(--nx-black);color:var(--nx-white);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(16px);transition:all var(--nx-t-base);z-index:var(--nx-z-sticky);border:none;border-radius:var(--nx-radius-sm)}
.nx-top-btn.is-visible{opacity:1;visibility:visible;transform:translateY(0)}
.nx-top-btn:hover{background:var(--nx-accent)}
.nx-loader{position:fixed;inset:0;background:var(--nx-white);display:flex;align-items:center;justify-content:center;z-index:var(--nx-z-top);transition:opacity .4s ease,visibility .4s ease}
.nx-loader.is-done{opacity:0;visibility:hidden}
.nx-loader__bar{width:120px;height:2px;background:var(--nx-color-border);overflow:hidden}
.nx-loader__progress{height:100%;background:var(--nx-accent);animation:nx-load 1.2s ease forwards}
@keyframes nx-load{0%{width:0}40%{width:60%}100%{width:100%}}
.nx-overlay{position:fixed;inset:0;background:rgba(10,10,10,.5);z-index:calc(var(--nx-z-modal) - 1);opacity:0;visibility:hidden;transition:all var(--nx-t-base)}
.nx-overlay.is-visible{opacity:1;visibility:visible}
[data-nx-reveal]{opacity:0;transform:translateY(28px);transition:opacity .8s var(--nx-ease),transform .8s var(--nx-ease)}
[data-nx-reveal].is-visible{opacity:1;transform:none}
[data-nx-reveal="left"]{transform:translateX(-28px)}[data-nx-reveal="left"].is-visible{transform:none}
[data-nx-reveal="right"]{transform:translateX(28px)}[data-nx-reveal="right"].is-visible{transform:none}
[data-nx-delay="100"]{transition-delay:.1s}[data-nx-delay="200"]{transition-delay:.2s}[data-nx-delay="300"]{transition-delay:.3s}[data-nx-delay="400"]{transition-delay:.4s}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap}
.nx-hidden{display:none!important}.nx-overflow-hidden{overflow:hidden}.nx-relative{position:relative}
.nx-divider{border:none;height:1px;background:var(--nx-color-border);margin-block:var(--nx-space-8)}
.nx-mini-cart{position:fixed;top:0;right:0;width:420px;height:100vh;background:var(--nx-color-surface);box-shadow:var(--nx-shadow-xl);transform:translateX(100%);transition:transform var(--nx-t-slow);z-index:var(--nx-z-modal);display:flex;flex-direction:column}
.nx-mini-cart.is-open{transform:translateX(0)}
.nx-mini-cart__header{display:flex;align-items:center;justify-content:space-between;padding:var(--nx-space-6);border-bottom:1px solid var(--nx-color-border)}
.nx-mini-cart__body{flex:1;overflow-y:auto;padding:var(--nx-space-6)}
.nx-mini-cart__footer{padding:var(--nx-space-6);border-top:1px solid var(--nx-color-border)}
.nx-modal{position:fixed;inset:0;background:rgba(10,10,10,.85);z-index:var(--nx-z-modal);display:flex;align-items:center;justify-content:center;opacity:0;visibility:hidden;transition:all var(--nx-t-base)}
.nx-modal.is-open{opacity:1;visibility:visible}
.nx-modal__inner{background:var(--nx-white);width:min(860px,92vw);max-height:90vh;overflow-y:auto;position:relative;padding:var(--nx-space-10)}
.nx-modal__close{position:absolute;top:var(--nx-space-4);right:var(--nx-space-4)}
.nx-author-box{display:flex;gap:var(--nx-space-6);padding:var(--nx-space-8);background:var(--nx-color-surface-alt);border:1px solid var(--nx-color-border);margin-top:var(--nx-space-12)}
.nx-author-box__avatar{width:80px;height:80px;border-radius:50%;flex-shrink:0;object-fit:cover}
.nx-tabs{border-bottom:2px solid var(--nx-color-border);display:flex;gap:0;margin-bottom:var(--nx-space-6)}
.nx-tab{padding:var(--nx-space-3) var(--nx-space-5);font-size:var(--nx-font-size-sm);font-weight:var(--nx-font-weight-semi);color:var(--nx-color-text-muted);cursor:pointer;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all var(--nx-t-fast);background:none;border-left:none;border-right:none;border-top:none}
.nx-tab.is-active{color:var(--nx-black);border-bottom-color:var(--nx-black)}
.nx-tab-panel{display:none}.nx-tab-panel.is-active{display:block}
.nx-social-links{display:flex;gap:var(--nx-space-4);flex-wrap:wrap}
.nx-social-link{display:flex;align-items:center;justify-content:center;width:36px;height:36px;color:var(--nx-color-text-muted);transition:color var(--nx-t-fast)}
.nx-social-link:hover{color:var(--nx-accent)}
.nx-post-list{display:flex;flex-direction:column}
.nx-post-list__item{display:grid;grid-template-columns:1fr 180px;gap:var(--nx-space-6);align-items:center;padding:var(--nx-space-6) 0;border-bottom:1px solid var(--nx-color-border)}
.nx-product-card__thumb{position:relative;overflow:hidden;background:var(--nx-color-surface-alt);border:1px solid var(--nx-color-border)}
.nx-product-card__thumb img{width:100%;height:100%;object-fit:cover;transition:transform var(--nx-dur-slower) var(--nx-ease-out)}
.nx-product-card:hover .nx-product-card__thumb img{transform:scale(1.05)}
.nx-product-card__body{padding:var(--nx-space-4) 0}
.nx-product-card__title{font-size:var(--nx-font-size-base);font-weight:var(--nx-font-weight-medium);line-height:var(--nx-line-height-snug);margin-bottom:var(--nx-space-2)}
.nx-qty-input{display:flex;align-items:center;border:2px solid var(--nx-color-border)}
.nx-qty-input__btn{width:44px;height:44px;display:flex;align-items:center;justify-content:center;cursor:pointer;background:none;border:none;font-size:1.2rem;transition:all var(--nx-t-fast)}
.nx-qty-input__btn:hover{background:var(--nx-black);color:var(--nx-white)}
.nx-qty-input input{width:60px;height:44px;text-align:center;border:none;border-left:2px solid var(--nx-color-border);border-right:2px solid var(--nx-color-border);font-weight:var(--nx-font-weight-bold);outline:none}
@media(max-width:1280px){:root{--nx-container:1140px}}
@media(max-width:1100px){.nx-grid--4{grid-template-columns:repeat(2,1fr)}.nx-footer__top{grid-template-columns:1fr 1fr;gap:var(--nx-space-8)}}
@media(max-width:900px){:root{--nx-gutter:1.25rem}.nx-nav{display:none}.nx-burger{display:flex}.nx-grid--3{grid-template-columns:repeat(2,1fr)}.nx-grid--content-sidebar{grid-template-columns:1fr}.nx-sidebar{position:static}.nx-vnav{transform:translateX(-100%);transition:transform var(--nx-t-slow)}.nx-vnav.is-open{transform:translateX(0)}}
@media(max-width:640px){:root{--nx-gutter:1rem;--nx-space-32:4rem;--nx-space-24:3rem;--nx-space-16:2.5rem}.nx-grid--2,.nx-grid--3,.nx-grid--4{grid-template-columns:1fr}.nx-footer__top{grid-template-columns:1fr}.nx-footer__bottom{flex-direction:column;text-align:center}.nx-mini-cart{width:100%}}
@media print{.nx-header,.nx-footer,.nx-sidebar,.nx-top-btn,.nx-loader{display:none!important}.nx-site__main{padding-top:0}}
