/* ===== Home page ===== */
.home .entry-header, .home .page-header, .home .entry-title, .page-id-71 .entry-header, .page-id-71 .entry-title, body.home header.entry-header, .page-id-80 .entry-header, .page-id-80 .entry-title { display: none !important; }
.home .entry-content, .page-id-71 .entry-content, .page-id-80 .entry-content { margin: 0 !important; padding: 0 !important; max-width: none !important; }
body.home, body.page-id-71, body.page-id-80 { background: #0A0A0A !important; }

/* ===== Inner pages (privacy/termini/cookie/spedizioni/resi/contatti) ===== */
.page:not(.home):not(.page-id-71):not(.page-id-80) .entry-header { background: #0A0A0A !important; color: #F5F5F2 !important; padding: 80px 28px 40px !important; border-bottom: 1px solid #2A2A28; }
.page:not(.home):not(.page-id-71):not(.page-id-80) .entry-header .entry-title, .page:not(.home):not(.page-id-71):not(.page-id-80) .entry-header h1 { font-family: 'Archivo Narrow', sans-serif !important; font-weight: 900 !important; text-transform: uppercase !important; letter-spacing: -0.02em !important; font-size: clamp(32px, 5vw, 56px) !important; color: #F5F5F2 !important; max-width: 1400px; margin: 0 auto; }
.page:not(.home):not(.page-id-71):not(.page-id-80) .entry-content { background: #0A0A0A; color: #F5F5F2; padding: 60px 28px 100px; }
.page:not(.home):not(.page-id-71):not(.page-id-80) .entry-content > * { max-width: 800px; margin-left: auto; margin-right: auto; }
.page:not(.home):not(.page-id-71):not(.page-id-80) .entry-content h2 { font-family: 'Archivo Narrow', sans-serif; font-weight: 800; text-transform: uppercase; letter-spacing: -0.01em; color: #F5F5F2; margin-top: 48px; margin-bottom: 16px; font-size: 22px; }
.page:not(.home):not(.page-id-71):not(.page-id-80) .entry-content p { color: #C8C8C3; font-size: 15px; line-height: 1.75; margin-bottom: 16px; }
.page:not(.home):not(.page-id-71):not(.page-id-80) .entry-content a { color: #E50914; text-decoration: underline; }
.page:not(.home):not(.page-id-71):not(.page-id-80) .entry-content a:hover { color: #F5F5F2; }
.page:not(.home):not(.page-id-71):not(.page-id-80) .entry-content em { color: #8A8A85; font-style: italic; }
.page:not(.home):not(.page-id-71):not(.page-id-80) .entry-content strong { color: #F5F5F2; }
body.page:not(.home):not(.page-id-71):not(.page-id-80) { background: #0A0A0A !important; }

/* ===== Product grid (shared shop + home) ===== */
body .woocommerce ul.products { display: grid !important; grid-template-columns: repeat(3, 1fr) !important; gap: 24px !important; margin: 0 !important; padding: 0 !important; list-style: none !important; }
body .woocommerce ul.products::before, body .woocommerce ul.products::after { display: none !important; }
body .woocommerce ul.products li.product { width: 100% !important; margin: 0 !important; padding: 0 !important; background: #151513 !important; border: 1px solid #2A2A28; clear: none !important; float: none !important; transition: border-color .3s ease; }
body .woocommerce ul.products li.product:hover { border-color: #E50914 !important; }
body .woocommerce ul.products li.product a { padding: 16px; display: block; text-decoration: none !important; }
body .woocommerce ul.products li.product a.button { display: none !important; }
body .woocommerce ul.products li.product img { background: #1F1F1D; margin-bottom: 16px; aspect-ratio: 1/1; object-fit: cover; }
body .woocommerce ul.products li.product .woocommerce-loop-product__title { color: #F5F5F2 !important; padding: 8px 0 4px !important; font-family: 'Archivo Narrow', sans-serif !important; font-weight: 900 !important; font-size: 18px !important; text-transform: uppercase !important; letter-spacing: -0.01em !important; text-decoration: none !important; }
body .woocommerce ul.products li.product .price { color: #F5F5F2 !important; font-family: 'JetBrains Mono', monospace !important; font-size: 14px !important; display: block; margin-top: 8px; }
body .woocommerce ul.products li.product .product_categories, body .woocommerce ul.products li.product .tagged_as { display: none !important; }
body .woocommerce ul.products li.product, body .woocommerce ul.products li.product a { color: #F5F5F2 !important; }

/* ===== Sale badge ===== */
.woocommerce span.onsale { background: #E50914 !important; color: #fff !important; font-family: 'JetBrains Mono', monospace !important; border-radius: 0 !important; letter-spacing: .1em !important; text-transform: uppercase !important; font-size: 11px !important; min-height: 2em !important; min-width: 2em !important; padding: 4px 8px !important; line-height: 1 !important; }

@media (max-width: 768px) { body .woocommerce ul.products { grid-template-columns: repeat(2, 1fr) !important; gap: 12px !important; } }

/* ===== Shop archive page ===== */
.woocommerce-shop, body.archive.woocommerce, .post-type-archive-product { background: #0A0A0A !important; color: #F5F5F2 !important; }
.woocommerce-shop .entry-header, .post-type-archive-product .entry-header, .woocommerce-products-header { background: #0A0A0A !important; padding: 100px 28px 48px !important; border-bottom: 1px solid #2A2A28; text-align: left !important; }
.woocommerce-products-header__title, .woocommerce-shop .entry-title, .post-type-archive-product .entry-title, .woocommerce-shop .page-title { font-family: 'Archivo Narrow', sans-serif !important; font-weight: 900 !important; text-transform: uppercase !important; color: #F5F5F2 !important; font-size: clamp(40px, 7vw, 96px) !important; letter-spacing: -0.03em !important; max-width: 1400px; margin: 0 auto !important; line-height: 0.95 !important; }
.woocommerce-shop .entry-content, .post-type-archive-product .entry-content { background: #0A0A0A !important; padding: 48px 28px 100px !important; max-width: 1400px; margin: 0 auto; }
.woocommerce-result-count, .woocommerce-ordering { color: #8A8A85 !important; font-family: 'JetBrains Mono', monospace !important; font-size: 12px !important; letter-spacing: 0.1em !important; text-transform: uppercase !important; }
.woocommerce-ordering select { background: #151513 !important; color: #F5F5F2 !important; border: 1px solid #2A2A28 !important; padding: 10px 14px !important; font-family: 'JetBrains Mono', monospace !important; font-size: 12px !important; border-radius: 0 !important; }
.woocommerce nav.woocommerce-pagination ul { border: none !important; }
.woocommerce nav.woocommerce-pagination ul li { border-right: 1px solid #2A2A28 !important; }
.woocommerce nav.woocommerce-pagination ul li a, .woocommerce nav.woocommerce-pagination ul li span { color: #F5F5F2 !important; background: transparent !important; font-family: 'JetBrains Mono', monospace !important; }
.woocommerce nav.woocommerce-pagination ul li span.current { background: #E50914 !important; color: #fff !important; }

/* ===== Single product page ===== */
.single-product { background: #0A0A0A !important; color: #F5F5F2 !important; }
.single-product .product_title, .single-product h1.entry-title { font-family: 'Archivo Narrow', sans-serif !important; font-weight: 900 !important; text-transform: uppercase !important; color: #F5F5F2 !important; font-size: clamp(32px, 5vw, 56px) !important; letter-spacing: -0.02em !important; line-height: 1 !important; }
.single-product .price { font-family: 'JetBrains Mono', monospace !important; color: #F5F5F2 !important; font-size: 24px !important; }
.single-product .woocommerce-product-details__short-description { color: #C8C8C3 !important; font-size: 15px; line-height: 1.75; }
.single-product .cart button.single_add_to_cart_button { background: #F5F5F2 !important; color: #0A0A0A !important; border-radius: 0 !important; font-family: 'Archivo Narrow', sans-serif !important; text-transform: uppercase !important; letter-spacing: 0.1em !important; padding: 16px 32px !important; }
.single-product .cart button.single_add_to_cart_button:hover { background: #E50914 !important; color: #fff !important; }
.single-product .product_meta, .single-product .product_meta a { color: #8A8A85 !important; font-family: 'JetBrains Mono', monospace !important; font-size: 11px !important; text-transform: uppercase !important; letter-spacing: 0.1em !important; }
.woocommerce-tabs ul.tabs { border: none !important; border-bottom: 1px solid #2A2A28 !important; }
.woocommerce-tabs ul.tabs li { background: transparent !important; border: none !important; border-radius: 0 !important; }
.woocommerce-tabs ul.tabs li a { color: #8A8A85 !important; font-family: 'Archivo Narrow', sans-serif !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; }
.woocommerce-tabs ul.tabs li.active a { color: #F5F5F2 !important; border-bottom: 2px solid #E50914 !important; }

/* ===== Cart / Checkout / Account ===== */
.woocommerce-cart, .woocommerce-checkout, .woocommerce-account { background: #0A0A0A !important; color: #F5F5F2 !important; }
.woocommerce-cart .entry-header, .woocommerce-checkout .entry-header, .woocommerce-account .entry-header { background: #0A0A0A !important; padding: 80px 28px 32px !important; border-bottom: 1px solid #2A2A28; }
.woocommerce-cart .entry-title, .woocommerce-checkout .entry-title, .woocommerce-account .entry-title { font-family: 'Archivo Narrow', sans-serif !important; font-weight: 900 !important; text-transform: uppercase !important; color: #F5F5F2 !important; font-size: clamp(32px, 5vw, 56px) !important; }
.woocommerce-cart .entry-content, .woocommerce-checkout .entry-content, .woocommerce-account .entry-content { background: #0A0A0A !important; padding: 48px 28px 100px !important; max-width: 1400px; margin: 0 auto; }
.woocommerce-cart table.cart, .woocommerce-checkout form, .woocommerce-account .woocommerce-MyAccount-content { color: #F5F5F2 !important; }
.woocommerce-cart table, .woocommerce-checkout table, .woocommerce-account table { background: #151513 !important; }
.woocommerce-cart th, .woocommerce-checkout th, .woocommerce-account th { background: #151513 !important; color: #F5F5F2 !important; font-family: 'JetBrains Mono', monospace !important; text-transform: uppercase !important; font-size: 11px !important; letter-spacing: 0.1em !important; border-color: #2A2A28 !important; }
.woocommerce-cart td, .woocommerce-checkout td, .woocommerce-account td { border-color: #2A2A28 !important; }
.woocommerce-checkout input[type="text"], .woocommerce-checkout input[type="email"], .woocommerce-checkout input[type="tel"], .woocommerce-checkout input[type="password"], .woocommerce-checkout select, .woocommerce-checkout textarea, .woocommerce-account input { background: #151513 !important; color: #F5F5F2 !important; border: 1px solid #2A2A28 !important; border-radius: 0 !important; padding: 14px !important; }
.woocommerce-checkout input:focus, .woocommerce-account input:focus { border-color: #E50914 !important; outline: none !important; }

/* ===== Jetpack subscription block ===== */
.wp-block-jetpack-subscriptions input[type="email"] { background: transparent !important; border: 1px solid #F5F5F2 !important; color: #F5F5F2 !important; padding: 14px 16px !important; border-radius: 0 !important; font-family: 'JetBrains Mono', monospace !important; font-size: 13px !important; }
.wp-block-jetpack-subscriptions input[type="email"]::placeholder { color: #6B6B6B !important; }
.wp-block-jetpack-subscriptions button, .wp-block-jetpack-subscriptions input[type="submit"] { background: #F5F5F2 !important; color: #0A0A0A !important; border: none !important; border-radius: 0 !important; padding: 14px 24px !important; font-family: 'Archivo Narrow', sans-serif !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: 0.1em !important; cursor: pointer; }
.wp-block-jetpack-subscriptions button:hover, .wp-block-jetpack-subscriptions input[type="submit"]:hover { background: #E50914 !important; color: #fff !important; }

/* ===== Messages ===== */
.woocommerce-message, .woocommerce-info, .woocommerce-error { background: #151513 !important; color: #F5F5F2 !important; border-top: 3px solid #E50914 !important; border-radius: 0 !important; }


/* ===== Hero h1 fix: avoid bad wrapping on large screens ===== */
.home h1.wp-block-heading, body.page-id-71 h1.wp-block-heading { font-size: clamp(44px, 8vw, 96px) !important; word-break: keep-all !important; overflow-wrap: break-word !important; hyphens: none !important; }
.page-id-80 h1.wp-block-heading { font-size: clamp(44px, 7vw, 88px) !important; word-break: keep-all !important; }

/* ===== Fix pass 2025-04-24 =====
   Target: product cards, shop archive, single product links, breadcrumbs */

/* Shop archive: 3 cols desktop, left-align heading */
.woocommerce-products-header, .woocommerce-shop .entry-header .entry-title, .post-type-archive-product .entry-header .entry-title { text-align: left !important; }
.woocommerce-shop .entry-header, .post-type-archive-product .entry-header { text-align: left !important; }
body .woocommerce-shop ul.products, body.post-type-archive-product ul.products { grid-template-columns: repeat(3, 1fr) !important; }
.single-product .related ul.products, .single-product .up-sells ul.products, .single-product .cross-sells ul.products { grid-template-columns: repeat(3, 1fr) !important; }
.single-product .related ul.products li.product a.button, .single-product .up-sells ul.products li.product a.button, .single-product .cross-sells ul.products li.product a.button { display: none !important; }

/* Product card titles + cat links on ALL woocommerce pages */
.woocommerce ul.products li.product h2,
.woocommerce ul.products li.product h3,
.woocommerce ul.products li.product .woocommerce-loop-product__title,
.woocommerce ul.products li.product a h2,
.woocommerce ul.products li.product a h3,
.woocommerce ul.products li.product a .woocommerce-loop-product__title {
  color: #F5F5F2 !important;
  opacity: 1 !important;
  padding: 8px 0 4px !important;
  font-family: 'Archivo Narrow', sans-serif !important;
  font-weight: 900 !important;
  font-size: 17px !important;
  text-transform: uppercase !important;
  letter-spacing: -0.01em !important;
  line-height: 1.15 !important;
}
.woocommerce ul.products li.product .product_categories,
.woocommerce ul.products li.product .product_tags { display: none !important; }
.woocommerce ul.products li.product a[rel="tag"],
.woocommerce ul.products li.product .posted_in,
.woocommerce ul.products li.product .term { display: none !important; }

/* Single product page: breadcrumbs + category/tags links white */
.woocommerce .woocommerce-breadcrumb,
.woocommerce .woocommerce-breadcrumb a,
.ct-breadcrumbs, .ct-breadcrumbs a { color: #8A8A85 !important; text-decoration: none !important; }
.woocommerce .woocommerce-breadcrumb a:hover,
.ct-breadcrumbs a:hover { color: #F5F5F2 !important; }

.single-product .product_meta a,
.single-product .product_meta span { color: #F5F5F2 !important; text-decoration: none !important; font-family: 'JetBrains Mono', monospace !important; font-size: 11px !important; letter-spacing: 0.08em !important; }
.single-product .product_meta a:hover { color: #E50914 !important; }
.single-product .product_meta > span { display: block; padding: 4px 0; }
.single-product .product_meta > span strong, .single-product .product_meta > span > span { color: #6B6B6B !important; }

/* Single product: description h3 headings */
.single-product .woocommerce-Tabs-panel h2,
.single-product .woocommerce-Tabs-panel h3,
.single-product .woocommerce-product-details h2,
.single-product .woocommerce-product-details h3 { color: #F5F5F2 !important; font-family: 'Archivo Narrow', sans-serif !important; font-weight: 800 !important; text-transform: uppercase !important; letter-spacing: -0.01em !important; margin-top: 32px !important; margin-bottom: 12px !important; font-size: 18px !important; }
.single-product .woocommerce-Tabs-panel p,
.single-product .woocommerce-Tabs-panel li { color: #C8C8C3 !important; }
.single-product .woocommerce-Tabs-panel ul { padding-left: 20px; }
.single-product .woocommerce-Tabs-panel strong { color: #F5F5F2 !important; }

/* Short description area on single product */
.single-product .woocommerce-product-details__short-description { color: #8A8A85 !important; font-size: 14px !important; }

/* Stock label */
.single-product .stock, .single-product .in-stock { color: #8A8A85 !important; font-family: 'JetBrains Mono', monospace !important; font-size: 12px !important; text-transform: uppercase !important; letter-spacing: 0.1em !important; }

/* Quantity input */
.single-product .cart .quantity input,
.single-product .cart .qty { background: transparent !important; color: #F5F5F2 !important; border: 1px solid #2A2A28 !important; }
.single-product .cart .quantity button { background: transparent !important; color: #F5F5F2 !important; border: 1px solid #2A2A28 !important; }

/* Related products heading */
.single-product .related > h2, .single-product .up-sells > h2 { color: #F5F5F2 !important; font-family: 'Archivo Narrow', sans-serif !important; font-weight: 900 !important; text-transform: uppercase !important; letter-spacing: -0.02em !important; font-size: clamp(28px, 4vw, 42px) !important; margin-top: 64px !important; margin-bottom: 32px !important; }

/* Tab borders */
.woocommerce-tabs ul.tabs::before { border: none !important; }


/* ===== Cart + Checkout button fixes ===== */
.woocommerce-cart a, .woocommerce-checkout a, .woocommerce-account a { color: #F5F5F2 !important; text-decoration: none !important; }
.woocommerce-cart a:hover, .woocommerce-checkout a:hover { color: #E50914 !important; }
.woocommerce-cart .product-name a { color: #F5F5F2 !important; font-family: 'Archivo Narrow', sans-serif !important; font-weight: 700 !important; text-transform: uppercase !important; letter-spacing: -0.01em !important; text-decoration: none !important; }
.woocommerce-cart .product-name a:hover { color: #E50914 !important; }

/* Proceed to checkout + primary buttons */
.woocommerce .wc-proceed-to-checkout a.checkout-button,
.woocommerce a.checkout-button,
.woocommerce-cart .wc-block-components-button,
.woocommerce-checkout button#place_order,
.wc-block-components-button,
.wc-block-components-checkout-place-order-button,
button.wc-block-components-checkout-place-order-button {
  background: #F5F5F2 !important;
  color: #0A0A0A !important;
  border-radius: 0 !important;
  border: 0 !important;
  font-family: 'Archivo Narrow', sans-serif !important;
  font-weight: 800 !important;
  text-transform: uppercase !important;
  letter-spacing: 0.1em !important;
  padding: 16px 32px !important;
  font-size: 14px !important;
  text-decoration: none !important;
  display: inline-block !important;
  text-align: center !important;
}
.woocommerce .wc-proceed-to-checkout a.checkout-button:hover,
.woocommerce a.checkout-button:hover,
.woocommerce-checkout button#place_order:hover {
  background: #E50914 !important;
  color: #fff !important;
}

/* Cart totals box */
.woocommerce-cart .cart_totals, .woocommerce-cart .cart-collaterals { background: #151513; padding: 28px; border: 1px solid #2A2A28; }
.woocommerce-cart .cart_totals h2 { color: #F5F5F2 !important; font-family: 'Archivo Narrow', sans-serif !important; text-transform: uppercase !important; letter-spacing: -0.01em !important; font-weight: 800 !important; font-size: 16px !important; margin-bottom: 20px !important; border-bottom: 1px solid #2A2A28; padding-bottom: 14px; }
.woocommerce-cart .cart_totals .shop_table, .woocommerce-cart .cart_totals table { background: transparent !important; border: none !important; }
.woocommerce-cart .cart_totals tr th, .woocommerce-cart .cart_totals tr td { background: transparent !important; border-bottom: 1px dashed #2A2A28 !important; color: #F5F5F2 !important; padding: 12px 0 !important; }
.woocommerce-cart .cart_totals tr.order-total th, .woocommerce-cart .cart_totals tr.order-total td { border-top: 1px solid #F5F5F2 !important; font-weight: 800 !important; padding-top: 16px !important; }
.woocommerce-cart .cart_totals .includes_tax, .wc-block-components-totals-item__description { color: #8A8A85 !important; font-size: 12px !important; }

/* Coupon dropdown */
.wc-block-components-panel__button { color: #F5F5F2 !important; }
.wc-block-components-totals-coupon input { background: transparent !important; color: #F5F5F2 !important; border: 1px solid #2A2A28 !important; border-radius: 0 !important; }

/* Trash icon + qty */
.woocommerce-cart .product-remove, .wc-block-cart__submit-container { color: #8A8A85 !important; }
.woocommerce-cart .quantity input.qty { background: transparent !important; color: #F5F5F2 !important; border: 1px solid #2A2A28 !important; }
.woocommerce-cart .quantity button { background: transparent !important; color: #F5F5F2 !important; border: 1px solid #2A2A28 !important; }


/* ===== Account sidebar menu ===== */
.woocommerce-MyAccount-navigation ul { list-style: none; margin: 0; padding: 0; border: 1px solid #2A2A28; background: #0A0A0A !important; }
.woocommerce-MyAccount-navigation ul li { background: transparent !important; border-bottom: 1px solid #2A2A28; margin: 0 !important; padding: 0 !important; }
.woocommerce-MyAccount-navigation ul li:last-child { border-bottom: none; }
.woocommerce-MyAccount-navigation ul li a { display: block !important; padding: 14px 20px !important; color: #F5F5F2 !important; background: transparent !important; font-family: 'Archivo Narrow', sans-serif !important; text-transform: uppercase !important; letter-spacing: 0.05em !important; font-size: 13px !important; font-weight: 600 !important; text-decoration: none !important; }
.woocommerce-MyAccount-navigation ul li a:hover { background: #151513 !important; color: #E50914 !important; }
.woocommerce-MyAccount-navigation ul li.is-active a, .woocommerce-MyAccount-navigation ul li.woocommerce-MyAccount-navigation-link--dashboard.is-active a { background: #E50914 !important; color: #fff !important; }
.woocommerce-MyAccount-navigation ul li svg { display: none !important; }
.woocommerce-MyAccount-navigation-link--dashboard.is-active { background: #E50914 !important; }

/* User avatar block */
.woocommerce-account .woocommerce-MyAccount-user, .woocommerce-account .user-block { background: #151513 !important; padding: 20px !important; text-align: center !important; border: 1px solid #2A2A28; border-bottom: none; }

/* Right content text */
.woocommerce-account .woocommerce-MyAccount-content p { color: #C8C8C3 !important; }
.woocommerce-account .woocommerce-MyAccount-content a { color: #E50914 !important; text-decoration: underline !important; }


/* ===== Footer social row (above 4-column grid) ===== */
.site-footer::before { content: '▸ Follow us on Instagram · TikTok · X · YouTube — @designerlondon'; display: block; max-width: 1400px; margin: 0 auto 28px; padding: 14px 0; border-bottom: 1px solid #2A2A28; text-align: center; font-family: 'JetBrains Mono', monospace; font-size: 11px; letter-spacing: 0.15em; text-transform: uppercase; color: #8A8A85; }
.site-footer { padding-top: 40px !important; position: relative; }
