/*
Theme Name: FIZO
Theme URI: https://fizoclothing.com
Author: FIZO
Description: Editorial WooCommerce theme foundation for FIZO Clothing.
Version: 0.2.0
Text Domain: fizo
*/

:root {
  --fizo-black: #090909;
  --fizo-dark: #111111;
  --fizo-grey: #1b1b1b;
  --fizo-red: #c40018;
  --fizo-white: #ffffff;
  --fizo-muted: #969696;
  --fizo-display: "Outfit", "Inter", sans-serif;
  --fizo-sans: "Inter", sans-serif;
}

html { background: var(--fizo-black); }
body {
  margin: 0;
  background: var(--fizo-black);
  color: var(--fizo-white);
  font-family: var(--fizo-sans);
  -webkit-font-smoothing: antialiased;
}

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

.fizo-shell { min-height: 100vh; }
.fizo-container { width: min(1400px, calc(100% - 48px)); margin-inline: auto; }
.fizo-display { font-family: var(--fizo-display); }
.fizo-accent { color: var(--fizo-red); }

.fizo-site-header { border-bottom: 1px solid rgba(255,255,255,.08); padding: 18px 0; position: relative; z-index: 5; }
.fizo-site-header .fizo-container { display:flex; align-items:center; justify-content:space-between; gap:28px; }
.fizo-brand img { width:86px; display:block; filter:grayscale(1) brightness(0) invert(1); }
.fizo-primary-nav { display:flex; gap:30px; margin-left:auto; }
.fizo-primary-nav ul { display:flex; gap:30px; list-style:none; margin:0; padding:0; }
.fizo-primary-nav a, .fizo-cart-link, .fizo-footer-links a { text-decoration:none; text-transform:uppercase; letter-spacing:.18em; font-size:10px; color:#aaa; }
.fizo-primary-nav a:hover, .fizo-cart-link:hover, .fizo-footer-links a:hover { color:var(--fizo-red); }
.fizo-cart-link { color:#fff; }
.fizo-home { background:var(--fizo-black); }
.fizo-hero { min-height:650px; display:grid; grid-template-columns: .9fr 1.1fr; gap:50px; align-items:center; padding:70px 0 90px; }
.fizo-kicker, .fizo-product-brand { color:var(--fizo-red); font-size:10px; font-weight:700; letter-spacing:.25em; text-transform:uppercase; }
.fizo-hero h1 { font-size:clamp(54px,8vw,118px); line-height:.86; letter-spacing:-.04em; margin:22px 0 28px; }
.fizo-hero h1 span { color:transparent; -webkit-text-stroke:1px rgba(255,255,255,.55); }
.fizo-hero-text { color:#aaa; line-height:1.8; max-width:390px; font-size:14px; }
.fizo-button { display:inline-flex; gap:24px; margin-top:22px; background:var(--fizo-red); color:#fff; padding:16px 22px; text-decoration:none; text-transform:uppercase; letter-spacing:.16em; font-size:10px; font-weight:700; }
.fizo-hero-image { min-height:540px; position:relative; overflow:hidden; background:#161616; }
.fizo-hero-image img { width:100%; height:100%; min-height:540px; object-fit:cover; filter:grayscale(.55) contrast(1.05); }
.fizo-hero-mark { position:absolute; right:18px; bottom:18px; border:1px solid rgba(255,255,255,.35); padding:12px; color:#fff; font-size:9px; line-height:1.5; letter-spacing:.2em; }
.fizo-section { padding:70px 0 100px; }
.fizo-section-heading { display:flex; justify-content:space-between; align-items:end; border-bottom:1px solid rgba(255,255,255,.1); padding-bottom:22px; margin-bottom:28px; }
.fizo-section-heading h2 { font-size:42px; margin:10px 0 0; letter-spacing:.02em; }
.fizo-section-heading a { color:#aaa; text-decoration:none; text-transform:uppercase; letter-spacing:.18em; font-size:10px; }
.fizo-product-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; }
.fizo-product-image { display:block; aspect-ratio:3/4; background:#151515; overflow:hidden; }
.fizo-product-image img { width:100%; height:100%; object-fit:cover; transition:transform .45s ease; }
.fizo-product-card:hover .fizo-product-image img { transform:scale(1.04); }
.fizo-product-card h3 { font-family:var(--fizo-display); font-size:14px; text-transform:uppercase; letter-spacing:.06em; margin:7px 0; }
.fizo-product-card h3 a { text-decoration:none; }
.fizo-product-brand { margin:14px 0 0; font-size:8px; }
.fizo-product-price { color:#ddd; font-size:12px; }
.fizo-site-footer { border-top:1px solid rgba(255,255,255,.08); padding:50px 0 24px; color:#aaa; }
.fizo-site-footer .fizo-container { display:grid; grid-template-columns:2fr 1fr; gap:40px; }
.fizo-footer-copy { max-width:260px; line-height:1.7; font-size:12px; }
.fizo-footer-links { display:flex; flex-direction:column; gap:13px; }
.fizo-footer-links ul { list-style:none; margin:0; padding:0; }
.fizo-footer-legal { grid-column:1/-1; border-top:1px solid rgba(255,255,255,.08); padding-top:18px; font-size:10px; }

@media (max-width: 760px) {
  .fizo-container { width:min(100% - 32px, 1400px); }
  .fizo-primary-nav { gap:12px; }
  .fizo-primary-nav a { font-size:8px; letter-spacing:.1em; }
  .fizo-cart-link { font-size:8px; letter-spacing:.1em; }
  .fizo-hero { grid-template-columns:1fr; padding:45px 0 65px; }
  .fizo-hero-image { min-height:420px; }
  .fizo-hero-image img { min-height:420px; }
  .fizo-product-grid { grid-template-columns:repeat(2,1fr); gap:14px; }
  .fizo-section-heading h2 { font-size:28px; }
}

/* Last cascade overrides for the final storefront polish */
.fizo-site-header,
.fizo-site-header.is-scrolled { background:transparent !important; border-bottom-color:rgba(255,255,255,.06) !important; box-shadow:none !important; }
.fizo-pdp-extra { display:block !important; width:100% !important; flex:0 0 100% !important; }
.fizo-pdp-service { display:grid !important; grid-template-columns:110px minmax(0,1fr) !important; width:100% !important; gap:8px 12px !important; }

@media (max-width: 760px) {
  .fizo-site-header .fizo-container { display:flex !important; flex-wrap:wrap !important; align-items:center; }
  .fizo-primary-nav { order:3 !important; flex:0 0 100% !important; width:100% !important; }
  .fizo-primary-nav:not(.is-open) { display:none !important; }
  .fizo-site-header.nav-open .fizo-primary-nav { display:block !important; }
}

.fizo-menu-toggle { display:none; border:0; background:transparent; padding:4px; cursor:pointer; }
.fizo-menu-toggle span { display:block; width:18px; height:1px; margin:4px 0; background:#fff; transition:.2s ease; }
.woocommerce-account .woocommerce .u-columns { display:grid; grid-template-columns:1fr 1fr; gap:24px; }
.woocommerce-account .woocommerce .u-columns .u-column1,
.woocommerce-account .woocommerce .u-columns .u-column2 { width:auto; float:none; }
.woocommerce-account .woocommerce .u-columns .u-column2 { border-left:1px solid rgba(255,255,255,.1); padding-left:24px; }
.fizo-account-guidance { max-width:520px; margin:0 0 26px; color:#999; font-size:12px; line-height:1.7; }
.fizo-account-guidance p { margin:0 0 8px; }

/* Phone layout: compact header, readable navigation, single-column commerce */
@media (max-width: 760px) {
  .fizo-announcement { min-height:30px; padding:0 12px; font-size:8px; letter-spacing:.14em; text-align:center; }
  .fizo-site-header { padding:10px 0; }
  .fizo-site-header .fizo-container { width:calc(100% - 24px); display:flex; flex-wrap:wrap; gap:10px 12px; }
  .fizo-brand { flex:1 1 auto; min-width:0; }
  .fizo-brand img { max-width:112px; }
  .fizo-header-actions { flex:0 0 auto; gap:10px; }
  .fizo-menu-toggle { display:block; }
  .fizo-header-actions .fizo-icon-link svg { width:17px; height:17px; }
  .fizo-primary-nav { display:none; order:3; flex:0 0 100%; width:100%; overflow-x:auto; overflow-y:hidden; margin:0; -webkit-overflow-scrolling:touch; scrollbar-width:none; }
  .fizo-site-header.nav-open .fizo-primary-nav { display:block; }
  .fizo-site-header.nav-open .fizo-menu-toggle span:nth-child(1) { transform:translateY(5px) rotate(45deg); }
  .fizo-site-header.nav-open .fizo-menu-toggle span:nth-child(2) { opacity:0; }
  .fizo-site-header.nav-open .fizo-menu-toggle span:nth-child(3) { transform:translateY(-5px) rotate(-45deg); }
  .fizo-primary-nav::-webkit-scrollbar { display:none; }
  .fizo-primary-nav ul { width:max-content; justify-content:flex-start; gap:18px; padding:4px 0 3px; }
  .fizo-primary-nav a { font-size:9px; letter-spacing:.1em; white-space:nowrap; }
  .fizo-primary-nav a.is-active { padding-bottom:4px; }
  .fizo-hero { min-height:0; grid-template-columns:1fr; gap:28px; padding:38px 0 54px; }
  .fizo-hero h1 { font-size:clamp(48px,16vw,76px); }
  .fizo-hero-image { min-height:390px; }
  .fizo-hero-image img { min-height:390px; }
  .fizo-section { padding:48px 0 62px; }
  .fizo-section-heading { display:block; padding-bottom:16px; }
  .fizo-section-heading h2 { font-size:28px; }
  .fizo-section-heading a { display:inline-block; margin-top:14px; }
  .fizo-product-grid,.fizo-brand-cards { grid-template-columns:repeat(2,minmax(0,1fr)); gap:18px 10px; }
  .fizo-product-card h3 { font-size:11px; line-height:1.25; }
  .woocommerce-page .fizo-shell > .fizo-container,
  .single-product .fizo-shell > .fizo-container,
  .woocommerce-account .fizo-shell > .fizo-container { width:calc(100% - 32px); padding-top:42px; padding-bottom:64px; }
  .woocommerce .woocommerce-products-header,
  .woocommerce ul.products,
  .woocommerce nav.woocommerce-pagination,
  .woocommerce-shop .fizo-shell h1.page-title,
  .woocommerce-shop .fizo-shell > .fizo-container > .woocommerce-result-count,
  .woocommerce-shop .fizo-shell > .fizo-container > .woocommerce-ordering { width:100%; }
  .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 12px; }
  .woocommerce ul.products li.product { width:auto; margin:0; }
  .fizo-shop-filters { width:100%; gap:10px 14px; margin-bottom:24px; overflow-x:auto; flex-wrap:nowrap; white-space:nowrap; scrollbar-width:none; }
  .fizo-shop-filters::-webkit-scrollbar { display:none; }
  .single-product div.product { grid-template-columns:1fr; gap:34px; }
  .single-product div.product .woocommerce-product-gallery { min-height:0; }
  .single-product div.product .woocommerce-product-gallery__image img { aspect-ratio:4/5; }
  .single-product div.product .summary { padding-top:0; }
  .single-product div.product .product_title { font-size:clamp(32px,10vw,48px); }
  .single-product div.product form.cart { flex-wrap:wrap; }
  .single-product form.cart .quantity { margin-right:0; }
  .single-product .fizo-pdp-spec-list { grid-template-columns:1fr 1fr; }
  .fizo-pdp-service { grid-template-columns:96px minmax(0,1fr) !important; }
  .woocommerce-account .woocommerce form.login,
  .woocommerce-account .woocommerce form.register { padding:20px; }
  .woocommerce-account .woocommerce .u-columns { display:block; }
  .woocommerce-account .woocommerce form.login,
  .woocommerce-account .woocommerce form.register,
  .woocommerce-account .woocommerce .u-columns .u-column1,
  .woocommerce-account .woocommerce .u-columns .u-column2 { width:100%; float:none; }
  .woocommerce-account .woocommerce .u-columns .u-column2 { margin-top:28px; }
  .woocommerce-cart .cart-collaterals .cart_totals,
  .woocommerce-checkout .col2-set,.woocommerce-checkout #order_review { width:100%; float:none; }
  .fizo-site-footer .fizo-container { width:calc(100% - 32px); grid-template-columns:1fr; gap:30px; }
  .fizo-footer-legal { grid-column:auto; line-height:1.7; }
}

/* Final minimal storefront pass */
.fizo-site-header,
.fizo-site-header.is-scrolled { background:transparent !important; border-bottom:0 !important; box-shadow:none !important; }
.fizo-site-header .fizo-container { width:min(1600px, calc(100% - 128px)); margin-inline:auto; }
.fizo-site-footer .fizo-container { width:min(1600px, calc(100% - 128px)); margin-inline:auto; }
.woocommerce-page .fizo-shell > .fizo-container,
.single-product .fizo-shell > .fizo-container { width:min(1320px, calc(100% - 128px)); margin-inline:auto; }
.single-product div.product { width:100%; margin-inline:auto; }
.single-product .woocommerce-tabs,
.single-product .related.products { width:100%; }

.single-product form.cart .quantity { display:flex; align-items:center; margin:0 12px 0 0; }
.single-product form.cart .fizo-qty-button { width:38px; height:44px; padding:0; border:1px solid rgba(255,255,255,.2); background:transparent; color:#fff; font-size:20px; line-height:1; cursor:pointer; }
.single-product form.cart .fizo-qty-button:hover { border-color:var(--fizo-red); color:var(--fizo-red); }
.single-product form.cart .quantity input.qty { width:54px; height:44px; box-sizing:border-box; border:1px solid rgba(255,255,255,.2); border-left:0; border-right:0; border-radius:0; background:#111; color:#fff; text-align:center; }
.single-product form.cart .quantity input.qty::-webkit-inner-spin-button,
.single-product form.cart .quantity input.qty::-webkit-outer-spin-button { appearance:none; margin:0; }
.single-product form.cart .quantity input.qty { appearance:textfield; }
.fizo-pdp-extra { display:block !important; flex:0 0 100%; width:100%; box-sizing:border-box; margin-top:20px; padding-top:18px; border-top:1px solid rgba(255,255,255,.1); color:#888; font-size:12px; line-height:1.7; }
.fizo-pdp-extra > p:not(.fizo-kicker) { max-width:480px; margin:0 0 18px; }
.fizo-pdp-service { display:grid !important; grid-template-columns:110px minmax(0,1fr); gap:8px 12px; width:100%; }
.fizo-pdp-service span { color:#777; font-size:9px; letter-spacing:.14em; }
.fizo-pdp-service strong { color:#ddd; font-size:11px; font-weight:400; }
.fizo-newsletter-success { color:var(--fizo-red) !important; font-size:10px !important; letter-spacing:.12em; text-transform:uppercase; }
.fizo-footer-links a,.fizo-socials a { transition:color .2s ease; }

@media (max-width: 760px) {
  .fizo-site-header .fizo-container,
  .fizo-site-footer .fizo-container,
  .woocommerce-page .fizo-shell > .fizo-container,
  .single-product .fizo-shell > .fizo-container { width:calc(100% - 32px); }
  .fizo-pdp-service { grid-template-columns:100px 1fr; }
}

/* Header match: FIZO reference navigation */
.fizo-announcement { min-height:38px; box-sizing:border-box; display:flex; align-items:center; justify-content:center; font-size:9px; letter-spacing:.25em; color:#9a9ca4; }
.fizo-site-header { min-height:108px; box-sizing:border-box; padding:0; border-bottom:1px solid rgba(255,255,255,.06); display:flex; align-items:center; }
.fizo-site-header .fizo-container { width:min(1700px,calc(100% - 96px)); gap:52px; }
.fizo-brand { flex:0 0 156px; }
.fizo-brand img { width:168px; height:auto; }
.fizo-logo-wrap { position:relative; display:block; width:132px; line-height:0; }
.fizo-logo-wrap img { display:block; width:100%; }
.fizo-logo-white { filter:brightness(0) invert(1); }
.fizo-logo-red { position:absolute; inset:0; clip-path:inset(0 0 28% 66%); filter:none !important; }
.fizo-primary-nav { flex:1; margin:0; }
.fizo-primary-nav ul { width:100%; justify-content:space-between; gap:24px; }
.fizo-primary-nav a { color:#d7d7da; font-size:13px; font-weight:400; letter-spacing:.17em; }
.fizo-primary-nav a:hover { color:#fff; }
.fizo-primary-nav a.is-active { color:#fff; border-bottom:1px solid var(--fizo-red); padding-bottom:7px; }
.fizo-primary-nav .fizo-sale-link { color:#e6001f; }
.fizo-primary-nav .fizo-sale-link:hover { color:#ff5368; }
.fizo-header-actions { display:flex; align-items:center; gap:24px; flex:0 0 auto; }
.fizo-icon-link { position:relative; display:grid; place-items:center; color:#e6e6e8; text-decoration:none; }
.fizo-icon-link svg { width:23px; height:23px; fill:none; stroke:currentColor; stroke-width:1.7; stroke-linecap:round; stroke-linejoin:round; }
.fizo-icon-link:hover { color:#e6001f; }
.fizo-cart-count { position:absolute; top:-8px; right:-10px; min-width:14px; height:14px; padding:0 3px; display:grid; place-items:center; border-radius:20px; background:#e6001f; color:#fff; font-size:9px; line-height:1; }
.fizo-cart-link { color:#e6e6e8; }

@media (max-width: 1180px) {
  .fizo-site-header .fizo-container { width:min(100% - 48px,1700px); gap:28px; }
  .fizo-brand { flex-basis:140px; }
  .fizo-logo-wrap { width:125px; }
  .fizo-primary-nav a { font-size:13px; letter-spacing:.12em; }
  .fizo-header-actions { gap:18px; }
}
@media (max-width: 760px) {
  .fizo-announcement { min-height:38px; font-size:8px; letter-spacing:.16em; }
  .fizo-site-header { min-height:86px; }
  .fizo-site-header .fizo-container { width:calc(100% - 32px); gap:14px; }
  .fizo-brand { flex-basis:82px; }
  .fizo-logo-wrap { width:82px; }
  .fizo-primary-nav { overflow:hidden; }
  .fizo-primary-nav ul { gap:16px; width:max-content; }
  .fizo-primary-nav a { font-size:9px; letter-spacing:.1em; }
  .fizo-header-actions { gap:10px; }
  .fizo-icon-link svg { width:19px; height:19px; }
  .fizo-header-actions .fizo-icon-link:nth-child(2) { display:none; }
}

/* Editorial homepage refinements matching the FIZO coded experience. */
.fizo-announcement { background:#050505; color:#777; border-bottom:1px solid rgba(255,255,255,.05); text-align:center; text-transform:uppercase; letter-spacing:.25em; font-size:9px; padding:10px 16px; }
.fizo-announcement span { color:var(--fizo-red); margin:0 8px; }
.fizo-hero { position:relative; min-height:72vh; padding:0 0 20px; display:flex; flex-direction:column; justify-content:space-between; overflow:hidden; }
.fizo-hero-bg { position:absolute; inset:0; z-index:0; background:#090909; }
.fizo-hero-bg:after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#090909 0%,rgba(9,9,9,.72) 35%,rgba(9,9,9,.08) 100%),linear-gradient(0deg,#090909 0%,transparent 32%,rgba(9,9,9,.3) 100%); }
.fizo-hero-bg img { width:100%; height:100%; object-fit:cover; object-position:center; filter:grayscale(1) brightness(.42); }
.fizo-hero-inner { position:relative; z-index:1; flex:1; display:grid; grid-template-columns:2fr 1fr; gap:34px; align-items:center; padding-top:24px; }
.fizo-hero-copy { align-self:center; }
.fizo-hero h1 { font-size:clamp(52px,7vw,100px); line-height:.9; letter-spacing:-.06em; margin:16px 0 20px; }
.fizo-hero h1 span { color:transparent; -webkit-text-stroke:1px rgba(255,255,255,.35); }
.fizo-hero-text { max-width:420px; font-size:13px; }
.fizo-hero-actions { display:flex; align-items:center; gap:24px; margin-top:22px; }
.fizo-text-link { color:#fff; text-decoration:none; text-transform:uppercase; letter-spacing:.2em; font-size:11px; border-bottom:1px solid rgba(255,255,255,.25); padding:16px 0; }
.fizo-text-link:hover { color:var(--fizo-red); border-color:var(--fizo-red); }
.fizo-trending { justify-self:end; width:min(100%,330px); padding:18px; background:rgba(17,17,17,.72); backdrop-filter:blur(12px); border:1px solid rgba(255,255,255,.12); }
.fizo-trending h3 { margin:12px 0 30px; font-family:var(--fizo-display); font-size:16px; font-weight:400; letter-spacing:.12em; text-transform:uppercase; }
.fizo-trending-bottom { display:flex; align-items:center; justify-content:space-between; }
.fizo-micro-images { display:flex; gap:8px; }
.fizo-micro-images img { width:48px; height:56px; object-fit:cover; filter:grayscale(1); border:1px solid rgba(255,255,255,.08); }
.fizo-arrow-box { display:grid; place-items:center; width:36px; height:36px; background:rgba(255,255,255,.06); font-size:25px; }
.fizo-hero-bottom { position:relative; z-index:1; display:grid; grid-template-columns:repeat(3,1fr); gap:24px; border-top:1px solid rgba(255,255,255,.1); padding-top:14px; }
.fizo-hero-bottom div { display:flex; flex-direction:column; gap:5px; }
.fizo-hero-bottom strong { font-family:var(--fizo-display); font-size:11px; letter-spacing:.16em; }
.fizo-hero-bottom small { color:#777; font-size:9px; letter-spacing:.14em; text-transform:uppercase; }
.fizo-section-heading p:not(.fizo-kicker) { color:#888; font-weight:300; font-size:13px; line-height:1.7; max-width:430px; margin:0; }
.fizo-editor-grid { display:grid; grid-template-columns:7fr 5fr; gap:32px; }
.fizo-editor-large,.fizo-editor-stack a { position:relative; display:block; overflow:hidden; border:1px solid rgba(255,255,255,.06); min-height:320px; }
.fizo-editor-large { aspect-ratio:4/5; }
.fizo-editor-large img,.fizo-editor-stack img { width:100%; height:100%; object-fit:cover; filter:grayscale(1) brightness(.68); transition:transform .8s ease,filter .8s ease; }
.fizo-editor-large:hover img,.fizo-editor-stack a:hover img,.fizo-lookbook-grid img:hover { transform:scale(1.05); filter:grayscale(.2) brightness(.9); }
.fizo-editor-large span,.fizo-editor-stack span { position:absolute; inset:0; display:flex; flex-direction:column; justify-content:flex-end; gap:8px; padding:32px; background:linear-gradient(0deg,rgba(0,0,0,.88),transparent 70%); color:#fff; text-transform:uppercase; letter-spacing:.16em; font-size:10px; }
.fizo-editor-large strong { font-family:var(--fizo-display); font-size:32px; letter-spacing:.08em; }
.fizo-editor-large small { color:#aaa; text-transform:none; letter-spacing:.05em; line-height:1.6; max-width:440px; font-size:12px; }
.fizo-editor-stack { display:flex; flex-direction:column; gap:32px; }
.fizo-editor-stack a { flex:1; min-height:280px; }
.fizo-editor-stack span { padding:24px; }
.fizo-editor-stack strong { font-family:var(--fizo-display); font-size:20px; }
.fizo-brands { background:#0c0c0c; border-top:1px solid rgba(255,255,255,.05); border-bottom:1px solid rgba(255,255,255,.05); padding:90px 0; }
.fizo-brand-matrix { display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.fizo-brand-list a { display:flex; justify-content:space-between; align-items:center; border-bottom:1px solid rgba(255,255,255,.08); padding:15px 0; text-decoration:none; }
.fizo-brand-list a span { color:rgba(255,255,255,.45); font-family:var(--fizo-display); font-weight:700; font-size:28px; letter-spacing:.1em; transition:.3s; }
.fizo-brand-list a:hover span { color:var(--fizo-red); transform:translateX(8px); }
.fizo-brand-list small { color:var(--fizo-red); opacity:0; text-transform:uppercase; letter-spacing:.16em; font-size:9px; transition:.3s; }
.fizo-brand-list a:hover small { opacity:1; }
.fizo-brand-visual { position:relative; aspect-ratio:4/5; overflow:hidden; border:1px solid rgba(255,255,255,.1); }
.fizo-brand-visual img { width:100%; height:100%; object-fit:cover; filter:grayscale(1) brightness(.5); }
.fizo-brand-visual div { position:absolute; inset:auto 24px 24px; }
.fizo-brand-visual b { color:var(--fizo-red); font-size:9px; letter-spacing:.2em; }
.fizo-brand-visual strong { display:block; margin:7px 0; font-family:var(--fizo-display); letter-spacing:.14em; }
.fizo-brand-visual p { margin:0; color:#aaa; font-size:12px; line-height:1.6; }
.fizo-lookbook { display:grid; grid-template-columns:1fr 2fr; gap:70px; align-items:center; padding-top:100px; padding-bottom:110px; }
.fizo-lookbook-copy h2 { font-size:42px; margin:10px 0 24px; }
.fizo-lookbook-copy p:not(.fizo-kicker) { color:#999; font-size:13px; line-height:1.8; }
.fizo-lookbook-copy b { color:#fff; }
.fizo-button-light { background:#fff; color:#090909; }
.fizo-button-light:hover { background:var(--fizo-red); color:#fff; }
.fizo-lookbook-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.fizo-lookbook-grid img { width:100%; aspect-ratio:3/4; object-fit:cover; filter:grayscale(1) brightness(.55); transition:.8s; }
.fizo-footer-brand img { width:90px; filter:grayscale(1) brightness(0) invert(1); margin-bottom:18px; }
.fizo-footer-brand p,.fizo-footer-newsletter p { color:#888; font-size:13px; line-height:1.7; max-width:300px; }
.fizo-socials { display:flex; gap:18px; margin-top:20px; }
.fizo-socials a { color:#fff; text-decoration:none; font-size:18px; }
.fizo-footer-links h4,.fizo-footer-newsletter h4 { color:#fff; font-size:11px; letter-spacing:.22em; margin:0 0 22px; }
.fizo-footer-links a { display:block; margin-bottom:13px; }
.fizo-footer-newsletter form { display:flex; border-bottom:1px solid rgba(255,255,255,.25); }
.fizo-footer-newsletter input { width:100%; background:transparent; border:0; color:#fff; padding:13px 0; outline:0; font-size:10px; letter-spacing:.15em; }
.fizo-footer-newsletter button { background:none; border:0; color:#fff; font-size:18px; }
.fizo-footer-legal span { float:right; }

@media (max-width: 760px) {
  .fizo-hero-inner,.fizo-brand-matrix,.fizo-lookbook { grid-template-columns:1fr; }
  .fizo-hero { min-height:900px; }
  .fizo-trending { justify-self:start; width:auto; }
  .fizo-hero-bottom { grid-template-columns:1fr; gap:14px; }
  .fizo-editor-grid { grid-template-columns:1fr; }
  .fizo-editor-large { min-height:460px; }
  .fizo-brand-list a span { font-size:21px; }
  .fizo-lookbook { gap:35px; }
  .fizo-footer-legal span { float:none; display:block; margin-top:12px; }
}

/* Final spacing pass: tighter navigation and consistent page margins. */
.fizo-container { width:min(1600px, calc(100% - 128px)); }
.fizo-site-header { background:transparent; backdrop-filter:none; -webkit-backdrop-filter:none; }
.fizo-site-header .fizo-container { width:min(1600px, calc(100% - 128px)); gap:28px; }
.fizo-primary-nav ul { justify-content:center; gap:24px; }
.fizo-primary-nav a { font-size:12px; letter-spacing:.14em; }
.fizo-header-actions { gap:18px; }
.fizo-benefits { background:#090909; border-top:1px solid rgba(255,255,255,.1); border-bottom:1px solid rgba(255,255,255,.06); padding:30px 0; }
.fizo-benefits .fizo-hero-bottom { border-top:0; padding-top:0; }
.fizo-section { padding-top:62px; padding-bottom:86px; }
.fizo-brands { padding:76px 0; }
.fizo-lookbook { padding-top:84px; padding-bottom:94px; }

@media (max-width: 1180px) {
  .fizo-container,
  .fizo-site-header .fizo-container { width:min(1600px, calc(100% - 72px)); }
  .fizo-site-header .fizo-container { gap:24px; }
  .fizo-primary-nav ul { justify-content:center; gap:18px; }
  .fizo-primary-nav a { font-size:11px; letter-spacing:.1em; }
  .fizo-header-actions { gap:14px; }
}

@media (max-width: 760px) {
  .fizo-container,
  .fizo-site-header .fizo-container { width:calc(100% - 32px); }
  .fizo-primary-nav ul { gap:12px; }
  .fizo-benefits { padding:24px 0; }
  .fizo-section { padding-top:48px; padding-bottom:64px; }
  .fizo-brands { padding:58px 0; }
  .fizo-lookbook { padding-top:60px; padding-bottom:70px; }
}

/* WooCommerce catalog UI: compact, aligned, and consistent with FIZO. */
.woocommerce-page .fizo-shell > .fizo-container { width:min(1320px, calc(100% - 128px)); padding:64px 0 96px; }
.woocommerce .woocommerce-products-header { display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:34px; border-bottom:1px solid rgba(255,255,255,.1); padding-bottom:22px; }
.woocommerce .woocommerce-products-header,
.woocommerce ul.products,
.woocommerce nav.woocommerce-pagination { width:min(1320px, calc(100% - 128px)); margin-left:auto !important; margin-right:auto !important; }
.woocommerce-shop .fizo-shell h1.page-title,
.woocommerce-shop .fizo-shell > .fizo-container > .woocommerce-result-count,
.woocommerce-shop .fizo-shell > .fizo-container > .woocommerce-ordering { width:min(1320px, calc(100% - 128px)); margin-left:auto !important; margin-right:auto !important; }
.woocommerce .woocommerce-products-header__title { margin:0; font-family:var(--fizo-display); font-size:clamp(34px,4vw,56px); font-weight:500; letter-spacing:-.04em; text-transform:uppercase; }
.woocommerce .woocommerce-result-count { color:#888; margin:0; font-size:11px; letter-spacing:.12em; text-transform:uppercase; }
.woocommerce .woocommerce-ordering { margin:0; }
.woocommerce .woocommerce-ordering select { appearance:none; min-width:180px; border:1px solid rgba(255,255,255,.2); border-radius:0; background:#101010; color:#ddd; padding:11px 30px 11px 12px; font:inherit; font-size:10px; letter-spacing:.08em; }
.woocommerce ul.products { display:grid !important; grid-template-columns:repeat(4,minmax(0,1fr)); gap:42px 28px; margin-top:0 !important; margin-bottom:0 !important; padding:0 !important; }
.woocommerce ul.products::before,.woocommerce ul.products::after { display:none !important; }
.woocommerce ul.products li.product { float:none !important; width:auto !important; margin:0 !important; padding:0 !important; }
.woocommerce ul.products li.product a img { width:100%; aspect-ratio:4/5; object-fit:cover; margin:0 0 16px !important; background:#171717; filter:grayscale(.55) contrast(1.04); transition:filter .35s ease,transform .45s ease; }
.woocommerce ul.products li.product:hover a img { filter:grayscale(.1) contrast(1); transform:scale(1.015); }
.woocommerce ul.products li.product .woocommerce-loop-product__title { padding:0 !important; color:#f4f4f4; font-family:var(--fizo-display); font-size:14px; font-weight:500; letter-spacing:.04em; text-transform:uppercase; }
.woocommerce ul.products li.product .price { margin:8px 0 14px; color:#c7c7c7; font-size:12px; }
.woocommerce ul.products li.product .price ins { color:#fff; text-decoration:none; }
.woocommerce ul.products li.product .button { margin:0; border:1px solid rgba(255,255,255,.25); border-radius:0; background:transparent; color:#fff; padding:11px 14px; text-transform:uppercase; letter-spacing:.14em; font-size:9px; font-weight:600; }
.woocommerce ul.products li.product .button:hover { background:var(--fizo-red); border-color:var(--fizo-red); }
.woocommerce nav.woocommerce-pagination { margin-top:64px; border-top:1px solid rgba(255,255,255,.1); padding-top:24px; }
.woocommerce nav.woocommerce-pagination ul { border:0; display:flex; gap:8px; }
.woocommerce nav.woocommerce-pagination ul li { border:0; }
.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span { display:grid; place-items:center; width:34px; height:34px; padding:0; border:1px solid rgba(255,255,255,.15); color:#aaa; font-size:11px; }
.woocommerce nav.woocommerce-pagination ul li span.current,.woocommerce nav.woocommerce-pagination ul li a:hover { background:var(--fizo-red); border-color:var(--fizo-red); color:#fff; }

@media (max-width: 900px) {
  .woocommerce-page .fizo-shell > .fizo-container { width:min(100% - 72px,1320px); }
  .woocommerce .woocommerce-products-header,
  .woocommerce ul.products,
  .woocommerce nav.woocommerce-pagination { width:calc(100% - 72px); }
  .woocommerce-shop .fizo-shell h1.page-title,
  .woocommerce-shop .fizo-shell > .fizo-container > .woocommerce-result-count,
  .woocommerce-shop .fizo-shell > .fizo-container > .woocommerce-ordering { width:calc(100% - 72px); }
  .woocommerce ul.products { grid-template-columns:repeat(3,minmax(0,1fr)); gap:32px 20px; }
}
@media (max-width: 760px) {
  .woocommerce-page .fizo-shell > .fizo-container { width:calc(100% - 32px); padding:44px 0 70px; }
  .woocommerce .woocommerce-products-header,
  .woocommerce ul.products,
  .woocommerce nav.woocommerce-pagination { width:calc(100% - 32px); }
  .woocommerce-shop .fizo-shell h1.page-title,
  .woocommerce-shop .fizo-shell > .fizo-container > .woocommerce-result-count,
  .woocommerce-shop .fizo-shell > .fizo-container > .woocommerce-ordering { width:calc(100% - 32px); }
  .woocommerce .woocommerce-products-header { display:block; }
  .woocommerce .woocommerce-result-count { margin:12px 0 18px; }
  .woocommerce ul.products { grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 14px; }
  .woocommerce ul.products li.product .woocommerce-loop-product__title { font-size:11px; }
}

/* Search, shop filters, and product detail UI. */
.fizo-search-toggle { border:0; cursor:pointer; background:transparent; font:inherit; }
.fizo-search-panel { position:relative; z-index:8; border-top:1px solid rgba(255,255,255,.08); border-bottom:1px solid rgba(255,255,255,.1); background:rgba(8,8,8,.96); padding:22px max(64px, calc((100% - 1600px)/2)); }
.fizo-search-panel form { max-width:900px; margin:0 auto; }
.fizo-search-panel label { display:block; color:var(--fizo-red); text-transform:uppercase; letter-spacing:.2em; font-size:9px; margin-bottom:10px; }
.fizo-search-panel form > div { display:flex; gap:14px; }
.fizo-search-panel input[type=search] { flex:1; min-width:0; border:0; border-bottom:1px solid rgba(255,255,255,.3); border-radius:0; background:transparent; color:#fff; padding:12px 0; outline:0; font:inherit; font-size:16px; }
.fizo-search-panel button { border:1px solid rgba(255,255,255,.25); border-radius:0; background:transparent; color:#fff; padding:0 18px; text-transform:uppercase; letter-spacing:.14em; font-size:9px; cursor:pointer; }
.fizo-shop-filters { width:min(1320px, calc(100% - 128px)); margin:0 auto 30px; display:flex; flex-wrap:wrap; align-items:center; gap:10px 18px; border-bottom:1px solid rgba(255,255,255,.1); padding:0 0 18px; }
.fizo-shop-filters span { color:#777; font-size:9px; letter-spacing:.18em; margin-right:6px; }
.fizo-shop-filters a { color:#aaa; text-decoration:none; font-size:10px; letter-spacing:.12em; }
.fizo-shop-filters a:hover,.fizo-shop-filters a.is-active { color:#fff; }
.fizo-shop-filters a.is-active { border-bottom:1px solid var(--fizo-red); padding-bottom:5px; }

.single-product .fizo-shell > .fizo-container { width:min(1320px, calc(100% - 128px)); padding:72px 0 100px; }
.single-product div.product { display:grid; grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr); gap:76px; margin:0; }
.single-product div.product .woocommerce-product-gallery { width:100% !important; float:none !important; margin:0 !important; }
.single-product div.product .woocommerce-product-gallery { min-height:620px; background:#171717 url('assets/hero_streetwear_model.jpg') center/cover no-repeat; }
.single-product div.product .woocommerce-product-gallery__image img { width:100%; aspect-ratio:4/5; object-fit:cover; background:#171717; filter:grayscale(.55); }
.single-product div.product .summary { width:100% !important; float:none !important; padding-top:16px; }
.single-product div.product .product_title { margin:0 0 18px; font-family:var(--fizo-display); font-size:clamp(34px,4vw,58px); line-height:.95; letter-spacing:-.04em; text-transform:uppercase; }
.single-product div.product p.price { color:#ddd; font-size:18px; margin:0 0 28px; }
.single-product div.product form.cart { display:flex; gap:10px; align-items:center; margin:0 0 24px; }
.single-product div.product form.cart .quantity input { width:62px; border:1px solid rgba(255,255,255,.25); border-radius:0; background:transparent; color:#fff; padding:13px 8px; }
.single-product div.product form.cart .single_add_to_cart_button { border:1px solid var(--fizo-red); border-radius:0; background:var(--fizo-red); color:#fff; padding:14px 22px; text-transform:uppercase; letter-spacing:.14em; font-size:10px; font-weight:600; }
.single-product div.product .product_meta { border-top:1px solid rgba(255,255,255,.1); padding-top:18px; color:#888; font-size:11px; }
.single-product div.product .product_meta a { color:#ddd; }
.fizo-pdp-specs { border-top:1px solid rgba(255,255,255,.1); margin:28px 0 22px; padding-top:18px; }
.fizo-pdp-spec-list { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.fizo-pdp-spec-list div { display:flex; flex-direction:column; gap:5px; border-bottom:1px solid rgba(255,255,255,.08); padding-bottom:10px; }
.fizo-pdp-spec-list span { color:#777; font-size:9px; letter-spacing:.15em; text-transform:uppercase; }
.fizo-pdp-spec-list strong { color:#eee; font-size:12px; font-weight:400; }
.single-product .woocommerce-tabs { grid-column:1/-1; border-top:1px solid rgba(255,255,255,.1); padding-top:28px; }
.single-product .woocommerce-tabs ul.tabs { margin:0 0 26px !important; padding:0 !important; display:flex; gap:22px; }
.single-product .woocommerce-tabs ul.tabs::before,.single-product .woocommerce-tabs ul.tabs::after { display:none !important; }
.single-product .woocommerce-tabs ul.tabs li { border:0 !important; background:transparent !important; padding:0 !important; margin:0 !important; }
.single-product .woocommerce-tabs ul.tabs li a { color:#777; text-transform:uppercase; letter-spacing:.14em; font-size:10px; }
.single-product .woocommerce-tabs ul.tabs li.active a,.single-product .woocommerce-tabs ul.tabs li a:hover { color:#fff; }
.single-product .woocommerce-tabs .panel h2 { font-family:var(--fizo-display); font-size:22px; text-transform:uppercase; letter-spacing:.06em; }
.single-product .related.products { grid-column:1/-1; margin-top:30px; }
.single-product .related.products > h2 { font-family:var(--fizo-display); font-size:26px; text-transform:uppercase; letter-spacing:.05em; }

.fizo-search-results { padding:70px 0 100px; }
.fizo-search-results ul.products { width:100%; }
.fizo-search-results .fizo-page-intro { margin-bottom:36px; }
.fizo-empty-state { color:#888; padding:70px 0; border-top:1px solid rgba(255,255,255,.1); }
.woocommerce-account .fizo-shell > .fizo-container { width:min(1080px, calc(100% - 128px)); padding:70px 0 100px; }
.woocommerce-account .woocommerce h2 { font-family:var(--fizo-display); font-size:26px; text-transform:uppercase; letter-spacing:.05em; }
.woocommerce-account .woocommerce form.login,.woocommerce-account .woocommerce form.register { border:1px solid rgba(255,255,255,.12); border-radius:0; background:#0c0c0c; padding:30px; }
.woocommerce-account .woocommerce form .form-row label { color:#aaa; font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.woocommerce-account .woocommerce form .input-text,.woocommerce-account .woocommerce form select { width:100%; box-sizing:border-box; border:1px solid rgba(255,255,255,.2); border-radius:0; background:#111; color:#fff; padding:13px; }
.woocommerce-account .woocommerce form .button,.woocommerce-account .woocommerce a.button { border:1px solid var(--fizo-red); border-radius:0; background:var(--fizo-red); color:#fff; padding:13px 18px; text-transform:uppercase; letter-spacing:.13em; font-size:9px; }
.woocommerce-account .woocommerce form .button:hover,.woocommerce-account .woocommerce a.button:hover { background:#fff; border-color:#fff; color:#090909; }
.woocommerce-account .woocommerce-MyAccount-navigation { width:220px; }
.woocommerce-account .woocommerce-MyAccount-navigation ul { list-style:none; margin:0; padding:0; border-top:1px solid rgba(255,255,255,.1); }
.woocommerce-account .woocommerce-MyAccount-navigation li { border-bottom:1px solid rgba(255,255,255,.1); }
.woocommerce-account .woocommerce-MyAccount-navigation a { display:block; color:#aaa; padding:13px 0; text-decoration:none; text-transform:uppercase; letter-spacing:.12em; font-size:10px; }
.woocommerce-account .woocommerce-MyAccount-navigation .is-active a,.woocommerce-account .woocommerce-MyAccount-navigation a:hover { color:#fff; }
.woocommerce-account .woocommerce-MyAccount-content { width:calc(100% - 260px); color:#aaa; line-height:1.7; }
.woocommerce-account .u-column2 { display:none; }
.woocommerce-account .u-column2.is-visible { display:block; }
.fizo-account-create { display:flex; align-items:center; gap:12px; margin-top:18px; color:#777; font-size:10px; letter-spacing:.12em; text-transform:uppercase; }
.fizo-account-create a { color:#fff; text-decoration:none; border-bottom:1px solid var(--fizo-red); padding-bottom:3px; }
.fizo-account-create a:hover { color:var(--fizo-red); }
.fizo-register-intro { margin:0 0 20px; color:#999; font-size:12px; line-height:1.7; }
.fizo-register-intro p { margin:0 0 8px; }

.fizo-brands-page { padding:70px 0 100px; }
.fizo-page-intro { display:flex; align-items:end; justify-content:space-between; gap:36px; border-bottom:1px solid rgba(255,255,255,.1); padding-bottom:30px; margin-bottom:38px; }
.fizo-page-intro h1 { margin:10px 0 0; font-size:clamp(52px,7vw,100px); line-height:.85; letter-spacing:-.06em; }
.fizo-page-intro > p:last-child { max-width:370px; margin:0; color:#888; font-size:13px; line-height:1.7; }
.fizo-brand-cards { display:grid; grid-template-columns:repeat(4,1fr); gap:18px; }
.fizo-brand-card { position:relative; display:block; aspect-ratio:3/4; overflow:hidden; border:1px solid rgba(255,255,255,.1); text-decoration:none; background:#151515; }
.fizo-brand-card img { width:100%; height:100%; object-fit:cover; filter:grayscale(1) brightness(.55); transition:.6s ease; }
.fizo-brand-card:hover img { transform:scale(1.04); filter:grayscale(.2) brightness(.75); }
.fizo-brand-card span { position:absolute; inset:auto 18px 18px; display:flex; flex-direction:column; gap:8px; }
.fizo-brand-card b { font-family:var(--fizo-display); font-size:22px; letter-spacing:.06em; text-transform:uppercase; }
.fizo-brand-card small { color:#aaa; font-size:11px; line-height:1.5; }
.fizo-brand-card em { color:var(--fizo-red); font-size:9px; font-style:normal; letter-spacing:.15em; }
.fizo-brand-directory { display:grid; grid-template-columns:1fr 1.5fr; gap:70px; padding-top:100px; }
.fizo-brand-directory h2 { margin:10px 0 0; font-size:42px; }
.fizo-brand-directory-list a { display:flex; justify-content:space-between; border-bottom:1px solid rgba(255,255,255,.1); padding:15px 0; color:#ddd; text-decoration:none; font-family:var(--fizo-display); font-size:24px; letter-spacing:.07em; }
.fizo-brand-directory-list small { align-self:center; color:#777; font-family:var(--fizo-sans); font-size:9px; letter-spacing:.14em; }
.fizo-brand-directory-list a:hover span,.fizo-brand-directory-list a:hover small { color:var(--fizo-red); }

@media (max-width: 900px) {
  .fizo-shop-filters { width:calc(100% - 72px); }
  .single-product .fizo-shell > .fizo-container { width:calc(100% - 72px); }
  .single-product div.product { grid-template-columns:1fr; gap:40px; }
  .fizo-brand-cards { grid-template-columns:repeat(2,1fr); }
  .fizo-brand-directory { grid-template-columns:1fr; gap:34px; }
}
@media (max-width: 760px) {
  .fizo-search-panel { padding:18px 16px; }
  .fizo-search-panel form > div { display:block; }
  .fizo-search-panel button { margin-top:12px; min-height:38px; }
  .fizo-shop-filters { width:calc(100% - 32px); }
  .single-product .fizo-shell > .fizo-container { width:calc(100% - 32px); padding:44px 0 70px; }
  .fizo-page-intro { display:block; }
  .fizo-page-intro > p:last-child { margin-top:22px; }
  .fizo-brands-page { padding:46px 0 70px; }
  .fizo-brand-cards { grid-template-columns:1fr 1fr; gap:10px; }
  .fizo-brand-card b { font-size:15px; }
  .fizo-brand-directory { padding-top:60px; }
  .fizo-brand-directory h2 { font-size:30px; }
  .fizo-brand-directory-list a { font-size:17px; }
  .woocommerce-account .fizo-shell > .fizo-container { width:calc(100% - 32px); padding:44px 0 70px; }
  .woocommerce-account .woocommerce-MyAccount-navigation,.woocommerce-account .woocommerce-MyAccount-content { float:none; width:100%; }
  .woocommerce-account .woocommerce-MyAccount-content { margin-top:34px; }
}

/* Final cascade overrides */
.fizo-site-header,
.fizo-site-header.is-scrolled { background:transparent !important; border-bottom-color:rgba(255,255,255,.06) !important; box-shadow:none !important; }
.fizo-pdp-extra { display:block !important; width:100% !important; flex:0 0 100% !important; }
.fizo-pdp-service { display:grid !important; grid-template-columns:110px minmax(0,1fr) !important; width:100% !important; gap:8px 12px !important; }

