@import url('https://fonts.googleapis.com/css2?family=Anton&family=Bai+Jamjuree:wght@400;500;600;700&display=swap');

/* ===========================================================================
   NOCIV — Dark monochrome streetwear theme override
   Loaded LAST (after inline :root from DB theme settings) so it wins.
   Referință: Sunic "Street Style" home-5. Paletă: negru/alb/gri, zero accent.
   =========================================================================== */

:root {
  --color-primary: #FFFFFF;
  --color-primary-rgb: 255, 255, 255;
  --color-primary-dark: #000000;
  --color-primary-light: #E0E0E0;
  --color-primary-lightest: #161616;
  --color-text: #F2F2F2;
  --color-text-secondary: #9A9A9A;
  --color-text-light: #6E6E6E;
  --color-border: #2A2A2A;
  --color-bg: #0B0B0B;
  --color-white: #141414;
  --bs-primary: #FFFFFF;
  --bs-body-bg: #0B0B0B;
  --bs-body-color: #F2F2F2;
  --border-radius: 0px;
  --border-radius-sm: 0px;
  --border-radius-lg: 0px;
}

/* ---- Base ---- */
html, body {
  background-color: #0B0B0B;
  color: #F2F2F2;
  font-family: 'Bai Jamjuree', -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif;
  letter-spacing: 0.01em;
}
h1, h2, h3, h4, h5, h6,
.section-title, .navbar-logo, .display-1, .display-2, .display-3, .display-4 {
  font-family: 'Anton', 'Bai Jamjuree', sans-serif !important;
  font-weight: 400;
  letter-spacing: 0.03em;
  text-transform: uppercase;
  color: #FFFFFF;
}
a { color: #FFFFFF; }
a:hover { color: #BFBFBF; }
hr, .border, .border-top, .border-bottom { border-color: #2A2A2A !important; }

/* ---- Buttons: monochrome, sharp, invert on hover ---- */
.btn-primary, .btn.btn-primary {
  background-color: #FFFFFF; border-color: #FFFFFF; color: #0B0B0B;
  border-radius: 0; text-transform: uppercase; letter-spacing: 0.15em;
  font-weight: 600;
}
.btn-primary:hover, .btn.btn-primary:hover {
  background-color: #0B0B0B; color: #FFFFFF; border-color: #FFFFFF;
}
.btn-outline-primary {
  border-color: #FFFFFF; color: #FFFFFF; background: transparent;
  border-radius: 0; text-transform: uppercase; letter-spacing: 0.15em;
}
.btn-outline-primary:hover { background-color: #FFFFFF; color: #0B0B0B; }
.btn { border-radius: 0; }

/* ---- Forms / inputs ---- */
.form-control, .form-select, input[type="text"], input[type="email"],
input[type="search"], input[type="password"], input[type="tel"], textarea, select {
  background-color: #141414; color: #F2F2F2;
  border: 1px solid #2A2A2A; border-radius: 0;
}
.form-control::placeholder, input::placeholder { color: #6E6E6E; }
.form-control:focus, .form-select:focus, input:focus, textarea:focus, select:focus {
  background-color: #161616; color: #FFFFFF; border-color: #FFFFFF; box-shadow: none;
}

/* ---- Promo bar ---- */
.navbar-promo-bar { background-color: #000000; color: #FFFFFF; border-bottom: 1px solid #1C1C1C; }
.navbar-promo-bar a, .navbar-promo-inner, .navbar-promo-inner strong { color: #FFFFFF; }

/* ---- Header / navbar ---- */
.site-navbar { background-color: #0B0B0B !important; border-bottom: 1px solid #1C1C1C; }
.site-navbar .navbar-row { background-color: transparent; }
.navbar-row-bottom { border-top: 1px solid #1C1C1C; }
.navbar-logo, .navbar-logo img { filter: none; }
.navbar-logo img { height: 46px !important; width: auto !important; }
.navbar-nav a, .navbar-menu a, .navbar-contact-link, .navbar-icon-btn {
  color: #E8E8E8; text-transform: uppercase; letter-spacing: 0.12em; font-size: 13px;
}
.navbar-nav a:hover, .navbar-menu a:hover, .navbar-contact-link:hover, .navbar-icon-btn:hover { color: #FFFFFF; }
.navbar-icon-btn .badge { background:#FFFFFF; color:#0B0B0B; }

/* Menu mutat in randul de sus (in locul search-ului) */
@media (min-width: 992px){
  .navbar-menu-top { flex:1 1 auto; display:flex !important; justify-content:center; }
  .navbar-menu-top .navbar-nav { display:flex; gap:32px; margin:0; padding:0; list-style:none; align-items:center; }
  .navbar-menu-top .nav-item { position:relative; }
  .navbar-menu-top .nav-link { display:flex; align-items:center; gap:7px; white-space:nowrap; }
}

/* search dual (was hardcoded #fff) */
.navbar-search-inline { background-color: #141414; border: 1px solid #2A2A2A; border-radius: 0; }
.navbar-search-cat, .navbar-search-input-inline {
  background-color: #141414 !important; color: #F2F2F2 !important; border: none;
}
.navbar-search-cat option { background:#141414; color:#F2F2F2; }
.navbar-search-divider { background-color: #2A2A2A; }
.navbar-search-submit { background-color: #FFFFFF; color: #0B0B0B; border-radius: 0; text-transform: uppercase; letter-spacing: 0.12em; }
.navbar-search-submit:hover { background-color: #BFBFBF; }

/* dropdowns / mini-cart */
.navbar-menu .dropdown-menu, .mini-cart-dropdown, .dropdown-menu {
  background-color: #141414; border: 1px solid #2A2A2A; border-radius: 0; color: #F2F2F2;
}
.dropdown-item { color: #E8E8E8; }
.dropdown-item:hover { background-color: #1F1F1F; color: #FFFFFF; }
/* header nav dropdown (subcategorii Barbati/Femei/Accesorii) */
.nav-dropdown { background-color: #141414 !important; border: 1px solid #2A2A2A !important; border-radius: 0 !important; box-shadow: none !important; }
.nav-dropdown-item { color: #E8E8E8 !important; text-transform: uppercase; letter-spacing: .1em; font-size: 12px; }
.nav-dropdown-item:hover { background-color: #1F1F1F !important; color: #FFFFFF !important; }
.nav-dropdown-icon { color: #6E6E6E !important; }

/* mobile menu drawer */
.navbar-menu.is-open, #navbarMenu { background-color: #0B0B0B; }

/* ---- Cards / surfaces ---- */
.card, .product-card, .qv-dialog, .modal-content, .box, .panel {
  background-color: #141414; border: 1px solid #2A2A2A; border-radius: 0; color: #F2F2F2;
}
.product-card .product-title, .product-card a { color: #FFFFFF; }
.product-card .price, .product-card .product-price { color: #FFFFFF; }
.product-card .old-price, del { color: #6E6E6E; }
.badge, .product-badge { border-radius: 0; }

/* generic light-fill utilities → dark */
.bg-light, .bg-white, .section-light { background-color: #141414 !important; color: #F2F2F2 !important; }
.text-dark { color: #F2F2F2 !important; }
.text-muted { color: #9A9A9A !important; }
.text-primary { color: #FFFFFF !important; }

/* ---- Footer ---- */
.site-footer { background-color: #000000; color: #9A9A9A; border-top: 1px solid #1C1C1C; }
.site-footer a { color: #9A9A9A; }
.site-footer a:hover { color: #FFFFFF; }
.footer-title { color: #FFFFFF; text-transform: uppercase; letter-spacing: 0.15em; font-size: 13px; margin-bottom: 1rem; }
.footer-bottom { border-top: 1px solid #1C1C1C; margin-top: 2.5rem; padding-top: 1.5rem; }
.footer-description { color: #8A8A8A; line-height: 1.7; max-width: 380px; margin: 1rem 0 0.8rem; }
.footer-tagline { font-family: 'Anton', sans-serif; color: #FFFFFF; letter-spacing: .06em; font-size: 14px; margin: 0 0 1rem; }
.footer-links { list-style: none; padding: 0; margin: 0; }
.footer-links li { margin-bottom: .55rem; }
.footer-links a { color: #9A9A9A; font-size: 14px; }
.footer-links a:hover { color: #FFFFFF; }
.footer-social { display: flex; gap: 12px; margin-top: .2rem; }
.footer-social a { width: 38px; height: 38px; border: 1px solid #2A2A2A; display: flex; align-items: center; justify-content: center; color: #CFCFCF; font-size: 15px; transition: .25s; }
.footer-social a:hover { background: #FFFFFF; color: #0B0B0B; border-color: #FFFFFF; }
.footer-credit { font-size: 12px; color: #6E6E6E; margin: 0; }
.footer-credit a { color: #9A9A9A; }
.footer-tagline-mini { font-family: 'Anton', sans-serif; color: #5A5A5A; letter-spacing: .35em; font-size: 12px; }
.footer-legal-links a { font-size: 11px; letter-spacing: .12em; color: #8A8A8A; margin-left: 16px; text-transform: uppercase; }
.footer-legal-links a:hover { color: #FFFFFF; }

/* ---- Cookie / consent modal ---- */
.cookie-consent-dialog { background-color: #141414; color: #F2F2F2; border: 1px solid #2A2A2A; border-radius: 0; }
.cookie-consent-btn-primary { background:#FFFFFF; color:#0B0B0B; border-radius:0; }
.cookie-consent-btn-secondary { background:transparent; color:#FFFFFF; border:1px solid #FFFFFF; border-radius:0; }

/* ---- Misc ---- */
.back-to-top { background:#FFFFFF; color:#0B0B0B; border-radius:0; }
.whatsapp-float { display: none !important; } /* firma necunoscuta -> ascuns deocamdata */
::selection { background:#FFFFFF; color:#0B0B0B; }

/* ---- HERO (full-bleed dark, stil Sunic "Built for the night") ---- */
.hero-static { background-color: #0B0B0B !important; min-height: 82vh !important; align-items: flex-end !important; }
.hero-static-bg { background-position: center 14% !important; background-size: cover !important; }
.hero-static-bg::after {
  content: ""; position: absolute; inset: 0;
  background: linear-gradient(0deg, rgba(0,0,0,.65) 0%, rgba(0,0,0,.10) 35%, rgba(0,0,0,0) 60%);
}
.hero-static-content { max-width: 620px !important; z-index: 3; padding-bottom: 3.2rem !important; }
.hero-static-content p {
  color: #BDBDBD !important; text-transform: uppercase; letter-spacing: .35em;
  font-size: .8rem !important; text-shadow: none !important; margin-bottom: 1.2rem !important;
}
.hero-static-content h1, .hero-static-content h2 {
  font-family: 'Anton', sans-serif !important; color: #FFFFFF !important;
  font-weight: 400 !important; line-height: .98 !important; letter-spacing: .02em !important;
  font-size: clamp(1.9rem, 4.2vw, 3.4rem) !important; margin-bottom: .15rem !important; text-shadow: none !important;
}
.hero-static-content h2 { margin-bottom: 1.6rem !important; }
/* slide curat: fara subtitlu (Drop 01) si fara buton */
.hero-static .hero-static-content p { display: none !important; }
.hero-static .btn-hero-static { display: none !important; }
.hero-highlight { background: transparent !important; color: #FFFFFF !important; padding: 0 !important; border-radius: 0 !important; }
.btn-hero-static {
  background-color: #FFFFFF !important; color: #0B0B0B !important; border: 1px solid #FFFFFF !important;
  border-radius: 0 !important; box-shadow: none !important; letter-spacing: .2em; padding: 15px 38px !important;
}
.btn-hero-static:hover { background-color: transparent !important; color: #FFFFFF !important; }
/* vertical social rail (din referinta) */
.hero-social-rail {
  position: absolute; right: 28px; top: 50%; transform: translateY(-50%); z-index: 4;
  display: flex; flex-direction: column; gap: 18px; writing-mode: vertical-rl;
  font-size: 11px; letter-spacing: .25em; color: #CFCFCF;
}
.hero-social-rail a { color: #CFCFCF; } .hero-social-rail a:hover { color: #FFFFFF; }
@media (max-width: 767.98px){ .hero-social-rail{ display:none; } .hero-static-content h1,.hero-static-content h2{ color:#FFFFFF !important; } }

/* ---- NOCIV marquee (banda continua, fara gol) ---- */
.nociv-marquee { background:#FFFFFF; color:#0B0B0B; overflow:hidden; border-top:1px solid #1C1C1C; border-bottom:1px solid #1C1C1C; }
.nociv-marquee-track { display:flex; width:max-content; animation: nociv-marq 45s linear infinite; }
.nociv-marquee-group { display:flex; align-items:center; flex:0 0 auto; }
.nociv-marquee span { display:inline-block; padding:11px 0; font-family:'Anton',sans-serif; font-size:14px; letter-spacing:.22em; white-space:nowrap; }
.nociv-marquee-sep { padding:0 22px !important; color:#0B0B0B; }
@keyframes nociv-marq { from { transform: translateX(0);} to { transform: translateX(-50%);} }

/* ---- NOCIV category tiles ---- */
.nociv-cats { padding:4.5rem 1.5rem 1rem; }
.nociv-cats-head { text-align:center; margin-bottom:2rem; }
.nociv-cats-head .section-title { font-size:clamp(2rem,5vw,3.2rem); }
.nociv-cats-head span { display:block; color:#9A9A9A; text-transform:uppercase; letter-spacing:.3em; font-size:12px; margin-top:.3rem; }
.nociv-cats-grid { display:grid; grid-template-columns:repeat(auto-fit,minmax(220px,1fr)); gap:2px; max-width:1400px; margin:0 auto; }
.nociv-cat-tile { position:relative; aspect-ratio:3/4; background:#141414; display:flex; flex-direction:column; justify-content:flex-end; align-items:flex-start; padding:24px; overflow:hidden; border:1px solid #1C1C1C; }
.nociv-cat-bg { position:absolute; inset:0; background-size:cover; background-position:center; z-index:0; transition:transform .8s cubic-bezier(.2,.8,.2,1), filter .5s ease; will-change:transform; }
.nociv-cat-tile:hover .nociv-cat-bg { transform:scale(1.09); filter:brightness(1.08); }
.nociv-cat-tile:hover .nociv-cat-cta { color:#FFFFFF; letter-spacing:.32em; }
.nociv-cat-tile:hover .nociv-cat-name { transform:translateY(-4px); }
.nociv-cat-name { position:relative; z-index:1; font-family:'Anton',sans-serif; font-size:clamp(1.6rem,2.5vw,2.4rem); color:#FFFFFF; letter-spacing:.03em; line-height:1; text-transform:uppercase; transition:transform .4s ease; }
.nociv-cat-cta { position:relative; z-index:1; font-size:11px; letter-spacing:.25em; color:#9A9A9A; margin-top:8px; transition:.4s ease; }

/* ---- NOCIV brand statement ---- */
.nociv-statement { background:#000000; text-align:center; padding:6rem 1.5rem; border-top:1px solid #1C1C1C; border-bottom:1px solid #1C1C1C; }
.nociv-statement-kicker { color:#7d7d7d; text-transform:uppercase; letter-spacing:.5em; font-size:11px; margin-bottom:1.2rem; }
.nociv-statement-title { font-family:'Anton',sans-serif !important; color:#FFFFFF !important; font-size:clamp(2.4rem,7vw,5.5rem) !important; line-height:.95 !important; letter-spacing:.02em; margin:0 0 1.2rem !important; }
.nociv-statement-sub { color:#9A9A9A; max-width:560px; margin:0 auto; line-height:1.7; letter-spacing:.02em; }
.nociv-statement-btn { margin-top:1.8rem !important; }

/* ===== MOD DEMO / COMING SOON (fara achizitie, doar waitlist) ===== */
.product-card-price, .product-price, .product-actions { display: none !important; }
.navbar-cart-btn, .mini-cart-wrapper { display: none !important; }
.product-card .btn-add-to-cart, .product-card .btn-pick-variant { display: none !important; }
.btn-notify-stock {
  display:inline-flex; align-items:center; justify-content:center; gap:8px;
  height:42px; padding:0 20px; background:#FFFFFF !important; color:#0B0B0B !important;
  border:none !important; border-radius:0; font-weight:600; font-size:13px;
  text-transform:uppercase; letter-spacing:.06em; white-space:nowrap; text-decoration:none;
  box-shadow:0 6px 20px rgba(0,0,0,.35); transition:.25s; opacity:1 !important;
}
.btn-notify-stock:hover, .btn-notify-stock:focus, .btn-notify-stock:active {
  background:#E2E2E2 !important; color:#0B0B0B !important; transform:scale(1.04);
}
.btn-notify-stock i, .btn-notify-stock span { color:#0B0B0B !important; }
/* overlay deasupra imaginii de hover (sa nu fie acoperit butonul) */
.product-card-overlay { z-index:4 !important; }
/* Back-in-stock box on-brand */
.back-in-stock-box { background:#141414 !important; border:1px solid #2A2A2A; padding:1.3rem !important; margin-top:1rem; border-radius:0 !important; }
.back-in-stock-title { font-family:'Anton',sans-serif; color:#fff; letter-spacing:.04em; display:flex; align-items:center; gap:8px; font-size:18px; text-transform:uppercase; }
.back-in-stock-desc { color:#9A9A9A; font-size:14px; margin:.5rem 0 1rem; }
.back-in-stock-form { display:flex; gap:8px; flex-wrap:wrap; }
.back-in-stock-form input { flex:1; min-width:200px; background:#0B0B0B !important; border:1px solid #2A2A2A !important; color:#fff !important; padding:12px 14px; border-radius:0 !important; }
.back-in-stock-form button { background:#FFFFFF !important; color:#0B0B0B !important; border:none !important; border-radius:0 !important; padding:12px 22px; text-transform:uppercase; letter-spacing:.12em; font-weight:600; white-space:nowrap; }
.back-in-stock-msg { margin-top:.6rem; font-size:14px; }
.back-in-stock-msg.success { color:#8CFF8C; }
.back-in-stock-msg.error { color:#ff6b6b; }

/* ---- Product gallery arrows ---- */
.product-gallery-main { position: relative; }
.product-gallery-nav { position:absolute; top:50%; transform:translateY(-50%); z-index:5; width:46px; height:46px; background:rgba(0,0,0,.55); color:#fff; border:1px solid #2A2A2A; border-radius:0; display:flex; align-items:center; justify-content:center; cursor:pointer; transition:.2s; }
.product-gallery-nav:hover { background:#fff; color:#0B0B0B; }
.product-gallery-prev { left:12px; } .product-gallery-next { right:12px; }

/* ---- Product card hover image swap (fata -> spate) ---- */
.product-card-image { position:relative; overflow:hidden; }
.product-card-image-hover { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; opacity:0; transition:opacity .45s ease; z-index:1; }
.product-card:hover .product-card-image-hover { opacity:1; }

/* ---- Product card: titlu lizibil + pret alb (fix Anton/negru-pe-negru) ---- */
.product-card-title, .product-card-title a { font-family:'Bai Jamjuree',sans-serif !important; font-weight:600 !important; text-transform:uppercase; letter-spacing:.06em; color:#FFFFFF !important; line-height:1.3 !important; }
.product-card-title a:hover { color:#BFBFBF !important; }
.product-card-price .current-price { color:#FFFFFF !important; }
.product-card-price .price-prefix, .product-card-price .old-price { color:#9A9A9A !important; }
.product-card-category { color:#7d7d7d !important; letter-spacing:.12em; }
/* Ascunde badge-urile NOU/BESTSELLER/-% (strica pozele) - desktop + mobil */
.product-card-badges, .product-gallery-badges { display: none !important; }

/* Pagina categorie: header = imagine hero (cover) + titlu Anton, fara panou gri */
.category-hero { background-color:#0B0B0B !important; background-size:cover !important; background-position:center 25% !important; background-repeat:no-repeat !important; min-height:54vh; display:flex; align-items:flex-end; border-bottom:1px solid #1C1C1C; padding:0 !important; border-radius:0 !important; box-shadow:none !important; }
.category-hero, .category-hero-inner, .category-hero-content { border-radius:0 !important; box-shadow:none !important; }
@media (max-width:991.98px){ .category-hero { background-position:center 20% !important; } }
.category-hero .container { width:100%; }
.category-hero-inner { padding:2.5rem 0 !important; display:block !important; background:transparent !important; }
.category-hero-badge, .category-hero-image { display:none !important; }
.category-hero-title { font-family:'Anton',sans-serif !important; color:#FFFFFF !important; font-size:clamp(2.4rem,6vw,4.5rem) !important; text-transform:uppercase; letter-spacing:.03em; margin:0 !important; line-height:1; }
.category-hero-desc { color:#BDBDBD !important; margin-top:.6rem; max-width:560px; }
.category-hero-meta { margin-top:1rem; }
.category-hero-count { color:#CFCFCF !important; background:rgba(0,0,0,.4) !important; border:1px solid #2A2A2A; text-transform:uppercase; letter-spacing:.2em; font-size:12px; padding:6px 14px; border-radius:0 !important; }
@media (max-width:767.98px){ .category-hero { min-height:30vh; } }

/* Meniu mobil: fundal imagine (accesorii) cu overlay dark */
@media (max-width: 991.98px){
  #navbarMenu {
    background-image: linear-gradient(rgba(8,8,8,.80), rgba(8,8,8,.96)), url('/uploads/categories/cat-accesorii.webp') !important;
    background-size: cover !important;
    background-position: center top !important;
    background-repeat: no-repeat !important;
  }
}

/* ---- Newsletter dark (JOIN THE CULT) ---- */
.newsletter-section { background:#0B0B0B !important; border-top:1px solid #1C1C1C; }
.newsletter-section h2, .newsletter-section .section-title { font-family:'Anton',sans-serif !important; color:#FFFFFF !important; letter-spacing:.04em; }
.newsletter-section p { color:#9A9A9A !important; }
.newsletter-section input[type="email"] { background:#141414 !important; border:1px solid #2A2A2A !important; color:#fff !important; border-radius:0 !important; }
.newsletter-section button { background:#FFFFFF !important; color:#0B0B0B !important; border-radius:0 !important; text-transform:uppercase; letter-spacing:.15em; border:none !important; }
