/* =====================================================================
   3D STEVANOVIĆ — Modern 2026 redesign
   Brand palette pulled from the logo: near-black #17181A -> scarlet #E63329
   Loaded last (see functions.php) so it overrides the parent Best Shop theme.
   ===================================================================== */

:root {
  --c-red:        #E63329;   /* brand scarlet (from logo) */
  --c-red-dark:   #C21D14;   /* hover / active */
  --c-red-soft:   #FCEBE9;   /* tint backgrounds */
  --c-maroon:     #7A241A;   /* deep maroon from logo mid-gradient (dark accents) */
  --c-maroon-dk:  #5C170F;   /* maroon hover */
  --c-ink:        #17181A;   /* near-black — used for TEXT only */
  --c-ink-2:      #26282C;
  --c-footer:     #1E1412;   /* warm dark (logo dark end) for footer surface */
  --c-body:       #3C3F45;   /* body text */
  --c-muted:      #7A7E86;
  --c-line:       #ECECEF;   /* hairline borders */
  --c-bg:         #FFFFFF;
  --c-bg-soft:    #F6F6F8;   /* alt section bg */
  --c-green:      #1E9E5A;   /* in-stock */

  --r:      16px;
  --r-sm:   10px;
  --r-pill: 999px;
  --sh:     0 4px 18px rgba(20,20,25,.07);
  --sh-md:  0 10px 30px rgba(20,20,25,.10);
  --sh-lg:  0 20px 46px rgba(20,20,25,.16);
  --t:      .28s cubic-bezier(.4,0,.2,1);

  /* re-point the parent theme's own variables to the brand palette */
  --gbl-primary-color:   #E63329;
  --gbl-secondary-color: #7A241A;
  --glb-primary-color:   #E63329;
  --glb-secondary-color: #7A241A;
}

/* ------------------------------------------------------------------ base */
body {
  color: var(--c-body);
  background: var(--c-bg);
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
a { transition: color var(--t); }
h1,h2,h3,h4,h5,h6,
.site-title,
.woocommerce-loop-product__title,
.product_title { color: var(--c-ink); letter-spacing: -.01em; }

img { max-width: 100%; height: auto; }

::selection { background: var(--c-red); color:#fff; }

/* wider, breathier container on big screens */
.container { max-width: 1280px; }

/* ------------------------------------------------------------- buttons */
.woocommerce a.button,
.woocommerce button.button,
.woocommerce input.button,
.woocommerce #respond input#submit,
.woocommerce ul.products li.product .button,
.woocommerce a.button.alt,
.woocommerce button.button.alt,
.btn-3ds {
  background: var(--c-red);
  color: #fff !important;
  border: 0;
  border-radius: var(--r-pill);
  font-weight: 600;
  font-family: "Jost", "Poppins", sans-serif;
  letter-spacing: .01em;
  padding: .72em 1.5em;
  box-shadow: 0 6px 16px rgba(230,51,41,.24);
  transition: transform var(--t), box-shadow var(--t), background var(--t);
  text-transform: none;
  line-height: 1.35;
}
.woocommerce a.button:hover,
.woocommerce button.button:hover,
.woocommerce input.button:hover,
.woocommerce #respond input#submit:hover,
.woocommerce ul.products li.product .button:hover,
.woocommerce a.button.alt:hover,
.woocommerce button.button.alt:hover,
.btn-3ds:hover {
  background: var(--c-red-dark);
  color:#fff !important;
  transform: translateY(-2px);
  box-shadow: 0 12px 24px rgba(230,51,41,.32);
}
/* keep inline icons inside buttons/links from blowing up (no width attr on the SVG) */
.btn-3ds { display:inline-flex; align-items:center; gap:9px; }
.btn-3ds svg { width:19px; height:19px; flex:0 0 auto; fill:currentColor; stroke:none; }
.tds-seeall { display:inline-flex; align-items:center; gap:7px; }
.tds-seeall svg { width:16px; height:16px; flex:0 0 auto; fill:currentColor; stroke:none; }
.tds-footer__links li svg { width:16px; height:16px; flex:0 0 auto; stroke:var(--c-red); vertical-align:-3px; }

/* ghost / dark variant */
.btn-3ds--ghost {
  background: transparent;
  color:#fff !important;
  border: 1.5px solid rgba(255,255,255,.55);
  box-shadow:none;
}
.btn-3ds--ghost:hover {
  background:#fff; color: var(--c-ink) !important; border-color:#fff;
}
.btn-3ds--dark {
  background: var(--c-maroon); box-shadow: 0 6px 16px rgba(122,36,26,.28);
}
.btn-3ds--dark:hover { background: var(--c-maroon-dk); box-shadow:0 12px 24px rgba(122,36,26,.36); }

/* ------------------------------------------------------------- header */
#masthead {
  box-shadow: 0 1px 0 var(--c-line), 0 6px 24px rgba(20,20,25,.05) !important;
  background:#fff;
}
#masthead.site-header { position: relative; z-index: 50; }

.site-branding .site-title { font-family:"Jost",sans-serif; font-weight:700; }
.site-branding .site-title a { color: var(--c-ink); }
.site-branding .site-description { color: var(--c-muted); font-weight:500; letter-spacing:.02em; }

/* the categories + search + icons bar */
.woocommerce-bar {
  background:#fff !important;
  border-top:1px solid var(--c-line);
  padding-top:10px !important; padding-bottom:10px !important;
}
.woocommerce-bar .categories-menu-first {
  background: var(--c-maroon) !important;
  color:#fff !important;
  border-radius: var(--r-pill);
  padding: 12px 22px !important;
  font-family:"Jost",sans-serif; font-weight:600; letter-spacing:.02em;
  transition: background var(--t);
}
.woocommerce-bar .categories-menu-first:hover { background: var(--c-red) !important; }
.woocommerce-bar .categories-menu-first i,
.woocommerce-bar .categories-menu-first svg { color:#fff !important; }

/* search field — flex row so input + button stay centered and contained */
div.product-search-form {
  display:flex !important;
  align-items:center;
  border: 1.5px solid var(--c-line) !important;
  border-radius: var(--r-pill) !important;
  overflow: hidden;
  background:#fff;
  padding: 4px 5px 4px 0;
  transition: border-color var(--t), box-shadow var(--t);
}
div.product-search-form:focus-within {
  border-color: var(--c-red) !important;
  box-shadow: 0 0 0 4px var(--c-red-soft);
}
.product-search-form input.header-search-input,
.product-search-form input.product-search-field,
.product-search-form input[type="search"] {
  flex:1 1 auto; min-width:0; border:0 !important; background:transparent; box-shadow:none !important;
  height:40px; margin:0 !important;
}
.product-search-form button.header-search-button {
  flex:0 0 auto; align-self:center;
  border-radius: var(--r-pill) !important;
  border:0; margin:0 !important; padding:0 !important; min-height:0;
  width:46px; height:38px;
  transition: background var(--t);
  /* theme renders this button empty, so paint a white magnifier icon */
  background: var(--c-red) url("data:image/svg+xml,%3Csvg%20xmlns='http://www.w3.org/2000/svg'%20width='20'%20height='20'%20viewBox='0%200%2024%2024'%20fill='none'%20stroke='%23ffffff'%20stroke-width='2.2'%20stroke-linecap='round'%20stroke-linejoin='round'%3E%3Ccircle%20cx='11'%20cy='11'%20r='7'/%3E%3Cpath%20d='m21%2021-4.35-4.35'/%3E%3C/svg%3E") center/19px no-repeat !important;
}
.product-search-form button.header-search-button:hover { background-color: var(--c-red-dark) !important; }
.product-search-form button.header-search-button svg { display:none; }

/* cart / wishlist / account icons */
.woocommerce-bar-icons a,
.header-wrapper .nav-wrap a { color: var(--c-ink); transition: color var(--t); }
.woocommerce-bar-icons a:hover { color: var(--c-red); }
.woocommerce-bar-icons .cart-amount,
.woocommerce-bar-icons .amount-cart,
.header-cart-amount {
  background: var(--c-red) !important; color:#fff !important;
  border-radius: var(--r-pill); font-weight:600;
}
/* cart counter bubble */
.woocommerce-bar-icons .cart-count,
.header-cart .count,
.cart-contents-count {
  background: var(--c-red) !important; color:#fff !important;
}

/* primary nav (Kategorije dropdown etc.) */
.main-navigation ul li a,
.header-left ul li a { font-family:"Jost",sans-serif; font-weight:500; color:var(--c-ink); }
.main-navigation ul li a:hover { color: var(--c-red); }

/* ------------------------------------------------------ product cards */
.woocommerce ul.products {
  gap: 26px 24px;
  display: grid !important;
  grid-template-columns: repeat(4, 1fr);
  margin: 0 0 10px !important;
}
.woocommerce ul.products::before,
.woocommerce ul.products::after { content:none !important; display:none !important; }

.woocommerce ul.products li.product,
.woocommerce ul.products li.product:nth-child(n) {
  width:100% !important; margin:0 !important; padding:0 !important; float:none !important;
  background:#fff;
  border:1px solid var(--c-line);
  border-radius: var(--r);
  overflow: hidden;
  display:flex; flex-direction:column;
  transition: transform var(--t), box-shadow var(--t), border-color var(--t);
  box-shadow: 0 1px 2px rgba(20,20,25,.04);
}
.woocommerce ul.products li.product:hover {
  transform: translateY(-6px) scale(1) !important;
  box-shadow: var(--sh-md);
  border-color: transparent;
}
/* product image */
.woocommerce ul.products li.product a img,
.woocommerce ul.products li.product img {
  margin:0 !important;
  aspect-ratio: 1/1;
  object-fit: cover;
  width:100%;
  border-radius:0;
  background: var(--c-bg-soft);
  transition: transform .6s cubic-bezier(.2,.6,.2,1);
}
.woocommerce ul.products li.product .hover-area,
.woocommerce ul.products li.product > a:first-child { position:relative; display:block; overflow:hidden; }
.woocommerce ul.products li.product:hover img { transform: scale(1.06); }

/* text block */
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3 {
  font-size: 15px !important; line-height:1.35; font-weight:600 !important;
  padding: 16px 16px 4px !important; margin:0 !important;
  min-height: 0;
}
.woocommerce ul.products li.product .price {
  color: var(--c-red) !important; font-weight:700; font-family:"Jost",sans-serif;
  font-size: 17px !important; padding: 0 16px 12px !important; margin:0 !important;
  display:block;
}
.woocommerce ul.products li.product .price del { color: var(--c-muted); font-weight:500; opacity:.7; }
.woocommerce ul.products li.product .price ins { text-decoration:none; }

.woocommerce ul.products li.product .button,
.woocommerce ul.products li.product .added_to_cart {
  margin: auto 16px 16px !important;
  text-align:center;
  display:block;
}
.woocommerce ul.products li.product .added_to_cart {
  background:var(--c-maroon); color:#fff !important; border-radius:var(--r-pill);
  padding:.6em 1.2em; font-weight:600;
}

/* rating stars */
.woocommerce ul.products li.product .star-rating { margin: 0 16px 8px !important; color: var(--c-red); }

/* sale badge */
.woocommerce span.onsale,
.woocommerce ul.products li.product .onsale {
  background: var(--c-red) !important; color:#fff !important;
  border-radius: var(--r-pill); min-height:0; min-width:0;
  padding:.35em .8em; font-weight:600; font-size:12px;
  top:12px; left:12px; right:auto; margin:0;
  box-shadow: 0 4px 12px rgba(230,51,41,.3);
}

/* wishlist / quick-view icons on card */
.woocommerce ul.products li.product .yith-wcwl-add-to-wishlist,
.woocommerce ul.products li.product .yith-wcqv-button {
  border-radius: var(--r-pill);
}

/* --------------------------------------------- result count + ordering */
.woocommerce .woocommerce-result-count {
  color: var(--c-muted); font-style:normal; font-size:14px; margin:0;
}
.woocommerce .woocommerce-ordering select,
.woocommerce select.orderby {
  border:1.5px solid var(--c-line); border-radius: var(--r-pill);
  padding:.55em 2.4em .55em 1.1em; background-color:#fff; color:var(--c-ink);
  font-weight:500; cursor:pointer; transition:border-color var(--t);
}
.woocommerce .woocommerce-ordering select:focus { border-color:var(--c-red); outline:none; }

/* toolbar row spacing */
.woocommerce .products-toolbar,
.woocommerce-notices-wrapper + .woocommerce-result-count { margin-bottom:6px; }

/* ------------------------------------------------------- pagination */
.woocommerce nav.woocommerce-pagination ul { border:0; gap:8px; display:flex; justify-content:center; }
.woocommerce nav.woocommerce-pagination ul li { border:0 !important; margin:0; }
.woocommerce nav.woocommerce-pagination ul li a,
.woocommerce nav.woocommerce-pagination ul li span {
  border-radius: var(--r-pill) !important;
  width:44px; height:44px; line-height:44px !important; padding:0 !important;
  display:flex; align-items:center; justify-content:center;
  background:#fff; border:1.5px solid var(--c-line) !important;
  color: var(--c-ink); font-weight:600; transition: all var(--t);
}
.woocommerce nav.woocommerce-pagination ul li a:hover {
  background: var(--c-maroon); color:#fff; border-color:var(--c-maroon) !important;
}
.woocommerce nav.woocommerce-pagination ul li span.current {
  background: var(--c-red) !important; color:#fff !important;
  border-color: var(--c-red) !important;
  box-shadow: 0 6px 16px rgba(230,51,41,.3);
}

/* --------------------------------------------- single product page */
.single-product div.product .product_title { font-size: clamp(26px, 3vw, 38px); font-weight:700; }
.single-product div.product p.price,
.single-product div.product span.price {
  color: var(--c-red) !important; font-weight:700; font-size:28px; font-family:"Jost",sans-serif;
}
.single-product .woocommerce-product-gallery { border:1px solid var(--c-line); border-radius:var(--r); overflow:hidden; }
.single-product .woocommerce-product-gallery__trigger { border-radius:var(--r-pill); }

.single-product form.cart div.quantity input.qty,
.woocommerce .quantity input.qty {
  border:1.5px solid var(--c-line); border-radius: var(--r-sm);
  height:52px; width:76px; text-align:center; font-weight:600; color:var(--c-ink);
}
.single-product form.cart .button { height:52px; padding:0 2em; font-size:16px; }

.single-product .stock.in-stock,
.woocommerce .stock.in-stock { color: var(--c-green) !important; font-weight:600; }
.single-product .stock.out-of-stock { color: var(--c-red) !important; }

.single-product .product_meta { color:var(--c-muted); font-size:14px; }
.single-product .product_meta a { color:var(--c-ink); }
.single-product .product_meta a:hover { color:var(--c-red); }

/* product tabs */
.woocommerce div.product .woocommerce-tabs ul.tabs { border:0; padding:0; margin-bottom:0; }
.woocommerce div.product .woocommerce-tabs ul.tabs::before { border-bottom:2px solid var(--c-line); }
.woocommerce div.product .woocommerce-tabs ul.tabs li {
  background:transparent !important; border:0 !important; border-radius:0; margin:0 6px 0 0; padding:0;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li a {
  font-family:"Jost",sans-serif; font-weight:600; color:var(--c-muted) !important;
  padding:14px 20px !important; border-radius:var(--r-sm) var(--r-sm) 0 0; transition:color var(--t);
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a,
.woocommerce div.product .woocommerce-tabs ul.tabs li a:hover { color:var(--c-red) !important; }
.woocommerce div.product .woocommerce-tabs ul.tabs li.active {
  border-bottom:3px solid var(--c-red) !important;
}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::before,
.woocommerce div.product .woocommerce-tabs ul.tabs li::after { display:none !important; }
.woocommerce-Tabs-panel h2 { font-size:22px; }

/* related / upsell headings */
.woocommerce .related > h2, .woocommerce .upsells > h2,
.woocommerce .cross-sells > h2, .products.related h2 {
  font-family:"Jost",sans-serif; font-weight:700; color:var(--c-ink);
}

/* ------------------------------------------------------ cart / checkout */
.woocommerce table.shop_table {
  border:1px solid var(--c-line); border-radius:var(--r); overflow:hidden; border-collapse:separate;
}
.woocommerce table.shop_table th { background:var(--c-bg-soft); color:var(--c-ink); font-family:"Jost",sans-serif; }
.woocommerce .cart-collaterals .cart_totals,
.woocommerce-cart .cart-collaterals .cart_totals { }
.woocommerce .cart_totals h2, .woocommerce-checkout #order_review_heading { font-family:"Jost",sans-serif; }
.woocommerce #payment, .woocommerce-checkout #payment { border-radius:var(--r); }
.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea,
.woocommerce-checkout .input-text {
  border:1.5px solid var(--c-line) !important; border-radius:var(--r-sm) !important; padding:.7em .9em;
}
.woocommerce form .form-row input.input-text:focus,
.woocommerce-checkout .input-text:focus { border-color:var(--c-red) !important; box-shadow:0 0 0 3px var(--c-red-soft); outline:none; }
.woocommerce .coupon .button, .woocommerce .cart .button { }
.wc-empty-cart-message, .cart-empty { font-family:"Jost",sans-serif; color:var(--c-ink); font-weight:600; }

/* notices */
.woocommerce-message, .woocommerce-info, .woocommerce-error {
  border-top-color: var(--c-red) !important; border-radius:var(--r-sm);
}
.woocommerce-message::before, .woocommerce-info::before { color: var(--c-red); }
.woocommerce-message a.button, .woocommerce-info a.button { background:var(--c-ink); }

/* ===================================================================
   HOMEPAGE SECTIONS (hero, category tiles, featured strip)
   =================================================================== */

/* section shell */
.tds-section { padding: 58px 0; }
.tds-section .container { max-width:1280px; margin:0 auto; padding:0 20px; }
.tds-head { text-align:center; margin-bottom:34px; }
.tds-head .eyebrow {
  display:inline-block; color:var(--c-red); font-weight:700; letter-spacing:.14em;
  text-transform:uppercase; font-size:12px; margin-bottom:10px;
}
.tds-head h2 {
  font-family:"Jost",sans-serif; font-weight:700; color:var(--c-ink);
  font-size: clamp(24px, 3vw, 34px); margin:0; letter-spacing:-.02em;
}
.tds-head p { color:var(--c-muted); margin:10px auto 0; max-width:560px; }
.tds-head--row {
  display:flex; align-items:flex-end; justify-content:space-between; text-align:left; gap:20px;
}
.tds-head--row h2 { text-align:left; }
.tds-seeall {
  color:var(--c-ink); font-weight:600; white-space:nowrap; display:inline-flex; align-items:center; gap:6px;
  border-bottom:2px solid transparent; transition:color var(--t), border-color var(--t);
}
.tds-seeall:hover { color:var(--c-red); border-color:var(--c-red); }

/* ---------- HERO ---------- */
.tds-hero {
  position:relative; overflow:hidden;
  background:
    radial-gradient(1200px 500px at 82% -10%, rgba(230,51,41,.55), transparent 60%),
    radial-gradient(900px 600px at 100% 120%, rgba(230,51,41,.32), transparent 55%),
    linear-gradient(120deg, #101012 0%, #1c1d20 55%, #241012 100%);
  color:#fff;
}
.tds-hero__inner {
  max-width:1280px; margin:0 auto; padding:76px 20px 84px;
  display:grid; grid-template-columns: 1.15fr .85fr; gap:40px; align-items:center;
}
.tds-hero__badge {
  display:inline-flex; align-items:center; gap:8px;
  background:rgba(255,255,255,.10); border:1px solid rgba(255,255,255,.18);
  color:#fff; padding:7px 14px; border-radius:var(--r-pill); font-size:13px; font-weight:600;
  letter-spacing:.02em; margin-bottom:22px; backdrop-filter: blur(4px);
}
.tds-hero__badge .dot { width:8px; height:8px; border-radius:50%; background:var(--c-red); box-shadow:0 0 0 4px rgba(230,51,41,.3); }
.tds-hero h1 {
  font-family:"Jost",sans-serif; font-weight:800; color:#fff;
  font-size: clamp(34px, 5vw, 58px); line-height:1.05; letter-spacing:-.02em; margin:0 0 18px;
}
.tds-hero h1 .accent {
  background: linear-gradient(90deg,#fff 0%, #ff6a5f 55%, var(--c-red) 100%);
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent;
}
.tds-hero p.lead { color:rgba(255,255,255,.78); font-size:18px; line-height:1.6; margin:0 0 30px; max-width:520px; }
.tds-hero__cta { display:flex; flex-wrap:wrap; gap:14px; }
.tds-hero__cta .btn-3ds { padding:.9em 1.8em; font-size:16px; }
.tds-hero__stats { display:flex; gap:30px; margin-top:36px; }
.tds-hero__stats .stat b { display:block; font-family:"Jost",sans-serif; font-size:26px; color:#fff; line-height:1; }
.tds-hero__stats .stat span { color:rgba(255,255,255,.62); font-size:13px; }

/* hero visual — icon tiles echoing the logo row */
.tds-hero__visual { position:relative; }
.tds-hero__grid {
  display:grid; grid-template-columns:repeat(3,1fr); gap:14px;
}
.tds-hero__tile {
  aspect-ratio:1/1; border-radius:20px; display:flex; flex-direction:column; gap:8px;
  align-items:center; justify-content:center; text-align:center;
  background:rgba(255,255,255,.06); border:1px solid rgba(255,255,255,.10);
  color:#fff; transition:transform var(--t), background var(--t), border-color var(--t);
  text-decoration:none;
}
.tds-hero__tile:hover { transform:translateY(-4px); background:rgba(230,51,41,.16); border-color:rgba(230,51,41,.5); color:#fff; }
.tds-hero__tile svg { width:38px; height:38px; stroke:#fff; }
.tds-hero__tile span { font-size:13px; font-weight:600; color:rgba(255,255,255,.85); }
.tds-hero__tile:hover span { color:#fff; }

/* ---------- CATEGORY TILES ---------- */
.tds-cats { background:var(--c-bg); }
.tds-cats__grid {
  display:grid; grid-template-columns:repeat(4,1fr); gap:20px;
}
.tds-cat {
  position:relative; display:block; border-radius:var(--r); overflow:hidden;
  aspect-ratio: 4/3; text-decoration:none; box-shadow:var(--sh);
  transition:transform var(--t), box-shadow var(--t);
}
.tds-cat:hover { transform:translateY(-6px); box-shadow:var(--sh-lg); }
.tds-cat__img { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; transition:transform .6s cubic-bezier(.2,.6,.2,1); }
.tds-cat:hover .tds-cat__img { transform:scale(1.08); }
.tds-cat__overlay {
  position:absolute; inset:0;
  background:linear-gradient(180deg, rgba(23,24,26,0) 30%, rgba(23,24,26,.86) 100%);
}
.tds-cat__body { position:absolute; left:0; right:0; bottom:0; padding:18px 18px 16px; color:#fff; }
.tds-cat__body h3 { color:#fff; font-family:"Jost",sans-serif; font-weight:700; margin:0; font-size:19px; letter-spacing:-.01em; }
.tds-cat__body .count {
  display:inline-flex; align-items:center; gap:6px; margin-top:6px;
  font-size:12.5px; color:rgba(255,255,255,.8); font-weight:500;
}
.tds-cat__pill {
  position:absolute; top:14px; right:14px; width:38px; height:38px; border-radius:50%;
  background:rgba(255,255,255,.16); backdrop-filter:blur(6px); border:1px solid rgba(255,255,255,.25);
  display:flex; align-items:center; justify-content:center; transition:background var(--t), transform var(--t);
}
.tds-cat:hover .tds-cat__pill { background:var(--c-red); transform:rotate(-45deg); border-color:var(--c-red); }
.tds-cat__pill svg { width:16px; height:16px; fill:#fff; stroke:none; }

/* ---------- FEATURED STRIP ---------- */
.tds-featured { background:var(--c-bg-soft); }
.tds-featured .woocommerce ul.products,
.tds-featured ul.products { grid-template-columns:repeat(4,1fr); }

/* ---------- ALL PRODUCTS heading before the main grid ---------- */
.tds-shop-heading { max-width:1280px; margin:8px auto 0; padding:0 20px; }

/* smooth in-page anchor scrolling + offset so targets aren't cramped at top */
html { scroll-behavior: smooth; }
#proizvodi, #tds-kategorije { scroll-margin-top: 22px; }

/* ===================================================================
   FOOTER (light rose — tinted with the brand red)
   =================================================================== */
.site-footer#colophon {
  background: linear-gradient(180deg, rgba(229,61,61,.06) 0%, rgba(229,61,61,.17) 100%);
  border-top: 3px solid var(--c-red);
  color: var(--c-body);
  margin-top:0;
}
.tds-footer { padding:0; }
.tds-footer__top {
  max-width:1280px; margin:0 auto; padding:64px 20px 44px;
  display:grid; grid-template-columns: 1.6fr 1fr 1.2fr 1fr; gap:40px;
}
.tds-footer__brandname {
  font-family:"Jost",sans-serif; font-weight:800; font-size:26px; color:var(--c-ink); letter-spacing:.01em; margin:0 0 14px;
}
.tds-footer__brandname .r { color:var(--c-red); }
.tds-footer__about { color:var(--c-body); line-height:1.65; max-width:340px; margin:0 0 20px; font-size:14.5px; }
.tds-footer img.tds-footer__logo { max-height:54px; width:auto; margin-bottom:16px; }

.tds-footer h4 {
  color:var(--c-ink); font-family:"Jost",sans-serif; font-weight:700; font-size:15px;
  letter-spacing:.08em; text-transform:uppercase; margin:0 0 18px;
}
.tds-footer ul { list-style:none; margin:0; padding:0; }
.tds-footer ul li { margin-bottom:11px; }
.tds-footer a { color:var(--c-body); transition:color var(--t), padding var(--t); }
.tds-footer a:hover { color:var(--c-red); }
.tds-footer__links a:hover { padding-left:5px; color:var(--c-red); }

.tds-footer__contact li { display:flex; gap:12px; align-items:flex-start; color:var(--c-ink-2); font-size:14.5px; margin-bottom:14px; }
.tds-footer__contact li small { color:var(--c-muted) !important; }
.tds-footer__contact svg { width:18px; height:18px; stroke:var(--c-red); flex:0 0 18px; margin-top:2px; }
.tds-footer__contact a { color:var(--c-ink-2); }
.tds-footer__contact a:hover { color:var(--c-red); }

.tds-footer__social { display:flex; gap:10px; margin-top:4px; }
.tds-footer__social a {
  width:42px; height:42px; border-radius:50%; display:flex; align-items:center; justify-content:center;
  background:#fff; border:1px solid rgba(23,24,26,.10); box-shadow:0 2px 8px rgba(20,20,25,.06); transition:all var(--t);
}
.tds-footer__social a:hover { background:var(--c-red); border-color:var(--c-red); transform:translateY(-3px); }
.tds-footer__social svg { width:19px; height:19px; fill:var(--c-ink); }
.tds-footer__social a:hover svg { fill:#fff; }

.tds-footer__bottom {
  border-top:1px solid rgba(23,24,26,.10);
}
.tds-footer__bottom .inner {
  max-width:1280px; margin:0 auto; padding:20px; display:flex; flex-wrap:wrap; gap:12px;
  align-items:center; justify-content:space-between; font-size:13.5px; color:var(--c-muted);
}
.tds-footer__bottom a { color:var(--c-body); }
.tds-footer__bottom .pay { display:flex; align-items:center; gap:10px; }
.tds-footer__bottom .pay span {
  border:1px solid rgba(23,24,26,.14); border-radius:6px; padding:3px 9px; font-size:12px; color:var(--c-body); background:rgba(255,255,255,.5);
}

/* back-to-top */
#scroll-to-top, .scrollup, .back-to-top {
  background:var(--c-red) !important; border-radius:50% !important; box-shadow:0 8px 22px rgba(230,51,41,.4) !important;
}

/* ===================================================================
   RESPONSIVE
   =================================================================== */
@media (max-width: 1199px){
  .woocommerce ul.products,
  .tds-featured .woocommerce ul.products { grid-template-columns:repeat(3,1fr); }
  .tds-cats__grid { grid-template-columns:repeat(3,1fr); }
}
@media (max-width: 900px){
  .tds-hero__inner { grid-template-columns:1fr; gap:34px; padding:56px 20px 60px; }
  .tds-hero__visual { max-width:440px; }
  .tds-footer__top { grid-template-columns:1fr 1fr; gap:32px; }
}
@media (max-width: 782px){
  .woocommerce ul.products,
  .tds-featured .woocommerce ul.products { grid-template-columns:repeat(2,1fr); gap:16px; }
  .tds-cats__grid { grid-template-columns:repeat(2,1fr); gap:14px; }
  .tds-section { padding:44px 0; }
  .tds-head--row { flex-direction:column; align-items:flex-start; }
  .tds-hero__stats { gap:22px; flex-wrap:wrap; }
  .tds-hero__visual { max-width:100%; }
}
/* prevent any accidental horizontal scroll on small screens */
@media (max-width: 782px){ html, body { overflow-x:hidden; } }
@media (max-width: 560px){
  .tds-cats__grid { grid-template-columns:1fr 1fr; }
  .tds-hero h1 { font-size:34px; }
  .tds-hero__grid { grid-template-columns:repeat(3,1fr); }
  .tds-footer__top { grid-template-columns:1fr; }
  .woocommerce ul.products,
  .tds-featured .woocommerce ul.products { gap:14px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:14px !important; }
}
