/*
Theme Name: FOFOWEAR
Theme URI: https://fofowear.com
Author: FOFOWEAR
Description: Luxury fashion WooCommerce theme in a sky-blue and gold colour scheme. Every page, the header and the footer are built with Elementor (free version) using the theme's own widgets, so everything is editable from the Elementor panel (Content and Style tabs) without shortcodes. Includes brand pages, a two-tab category / brand drawer menu, a 3-slide animated hero, pre-order form and a duplicate-safe category/brand importer guard.
Version: 4.3.0
Requires at least: 6.0
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: fofowear
Tags: e-commerce, woocommerce, custom-menu, custom-logo, translation-ready
*/
:root{--rose:#3f6f9e;--rose-d:#2c5880;--blush:#eef4fa;--blush2:#e6eff8;--sand:#dce8f4;--bar:#cfe0f0;--ink:#1f3a56;--muted:#5b7792;--gold:#c9a04e;--line:#c8d9ea;--serif:'Cormorant Garamond',Georgia,serif;--script:'Great Vibes',cursive;--sans:'Montserrat',Arial,sans-serif;--shadow:0 14px 34px rgba(40,85,130,.14),0 3px 8px rgba(40,85,130,.07)}
*{box-sizing:border-box}
body{margin:0;font-family:var(--sans);color:var(--ink);background:var(--blush);line-height:1.6;-webkit-font-smoothing:antialiased}
img{max-width:100%;height:auto}
a{color:inherit;text-decoration:none}
ul{margin:0;padding:0;list-style:none}
button{font-family:inherit;cursor:pointer}
h1,h2,h3,h4{font-family:var(--serif);font-weight:600;line-height:1.1;margin:0}
.screen-reader-text{position:absolute;left:-9999px}
.fofo-ico{vertical-align:middle;flex:none}
.fofo-wrap{max-width:1240px;margin:0 auto;padding:0 24px}
.fofo-hdr-wrap{position:sticky;top:var(--wp-admin--admin-bar--height,0px);z-index:60;background:var(--blush)}
.fofo-simple-header{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 24px;background:#fff}
.fofo-simple-header ul{display:flex;gap:22px}
.fofo-btn{display:inline-flex;align-items:center;gap:10px;background:linear-gradient(135deg,#f3dfa6,#d9b564 55%,#c9a04e);color:#1f3a56;border:0;border-radius:40px;padding:15px 34px;font-size:14px;font-weight:500;letter-spacing:1px;box-shadow:0 8px 18px rgba(201,160,78,.35);transition:.25s}
.fofo-btn:hover{transform:translateY(-2px);color:#1f3a56;filter:brightness(1.05)}
/* ---------- menu / icons / drawer ---------- */
.fofo-nav ul{display:flex;gap:34px;align-items:center;flex-wrap:wrap}
.fofo-nav a{font-size:15px;font-weight:500;color:var(--ink);padding:6px 0;border-bottom:2px solid transparent;transition:.2s}
.fofo-nav a:hover,.fofo-nav .current-menu-item>a{color:var(--rose);border-color:var(--rose)}
.fofo-nav.is-vertical ul{flex-direction:column;align-items:flex-start;gap:9px}
.fofo-nav.is-vertical a{font-size:13px;color:var(--muted);border:0;padding:0}
.fofo-nav.is-vertical a:hover{color:var(--rose)}
.fofo-icons{display:flex;gap:22px;align-items:center;justify-content:flex-end;position:relative}
.fofo-icons a,.fofo-icons button{background:none;border:0;padding:0;color:var(--ink);position:relative;display:inline-flex;transition:.2s}
.fofo-icons a:hover,.fofo-icons button:hover{color:var(--rose)}
.fofo-cart-count{position:absolute;top:-9px;right:-10px;background:var(--rose);color:#fff;font-size:10px;font-weight:600;min-width:17px;height:17px;border-radius:50%;display:flex;align-items:center;justify-content:center}
.fofo-search{display:none;position:absolute;right:0;top:calc(100% + 16px);width:340px;max-width:90vw;background:#fff;border:1px solid var(--line);border-radius:14px;padding:12px;box-shadow:var(--shadow);z-index:70}
.fofo-search.is-open{display:block}
.fofo-search form{display:flex;gap:8px;margin:0}
.fofo-search input{flex:1;padding:11px 16px;border:1px solid var(--line);border-radius:30px;font:inherit;min-width:0}
.fofo-search button[type=submit]{background:var(--rose);color:#fff;border-radius:30px;padding:10px 18px;font-size:12px}
.fofo-burger{background:none;border:0;padding:6px;color:var(--ink);display:inline-flex;flex-direction:column;gap:5px;width:34px}
.fofo-burger span{display:block;height:2px;background:currentColor;border-radius:2px;transition:.25s}
.fofo-burger span:nth-child(2){width:70%}
.fofo-burger:hover{color:var(--rose)}
.fofo-burger:hover span:nth-child(2){width:100%}
.fofo-overlay{position:fixed;inset:0;background:rgba(15,35,60,.5);opacity:0;visibility:hidden;transition:.3s;z-index:9998}
.fofo-drawer{position:fixed;top:0;left:0;bottom:0;width:380px;max-width:92vw;background:#fff;z-index:9999;transform:translateX(-102%);transition:transform .38s cubic-bezier(.22,.8,.3,1);display:flex;flex-direction:column;box-shadow:12px 0 40px rgba(0,0,0,.18)}
body.fofo-drawer-open .fofo-drawer{transform:none}
body.fofo-drawer-open .fofo-overlay{opacity:1;visibility:visible}
body.fofo-drawer-open{overflow:hidden}
.fofo-drawer__head{display:flex;align-items:center;justify-content:space-between;padding:18px 22px;border-bottom:1px solid var(--line)}
.fofo-drawer__close{background:none;border:0;font-size:30px;line-height:1;color:var(--ink)}
.fofo-tabs-h{display:flex;border-bottom:1px solid var(--line)}
.fofo-tabs-h button{flex:1;background:none;border:0;padding:15px 10px;font-size:13px;font-weight:600;letter-spacing:.5px;color:var(--muted);border-bottom:3px solid transparent}
.fofo-tabs-h button.is-active{color:var(--rose);border-color:var(--rose)}
.fofo-panel{display:none;overflow-y:auto;padding:10px 22px 30px;flex:1}
.fofo-panel.is-active{display:block}
.fofo-panel li>a{display:flex;justify-content:space-between;align-items:center;padding:11px 0;font-size:14px;border-bottom:1px solid var(--blush2)}
.fofo-panel a:hover{color:var(--rose)}
.fofo-panel .sub-menu{display:none;padding:2px 0 8px 14px}
.fofo-panel li.is-open>.sub-menu{display:block}
.fofo-panel .menu-item-has-children>a::after{content:"+";font-size:18px;color:var(--rose)}
.fofo-panel li.is-open>a::after{content:"–"}
.fofo-panel .sub-menu a{font-size:13px;color:var(--muted);border:0;padding:7px 0}
.fofo-brand-search{width:100%;margin:12px 0 4px;padding:11px 16px;border:1px solid var(--line);border-radius:30px;font:inherit;font-size:13px}
/* ---------- hero slider ---------- */
.fofo-hero{position:relative;overflow:hidden;background:var(--blush2)}
.fofo-slides{position:relative;height:var(--fofo-h,560px)}
.fofo-slide{position:absolute;inset:0;background-size:cover;background-position:center;opacity:0;visibility:hidden;transition:opacity 1s ease,visibility 1s}
.fofo-slide.is-active{opacity:1;visibility:visible;z-index:2}
.fofo-slide__bg{position:absolute;inset:0;background-size:cover;background-position:center;transform:scale(1.08);transition:transform 7s ease-out}
.fofo-slide.is-active .fofo-slide__bg{transform:scale(1)}
.fofo-hero.is-slide .fofo-slide{transition:transform .9s ease,opacity .9s ease;transform:translateX(8%)}
.fofo-hero.is-slide .fofo-slide.is-active{transform:none}
.fofo-slide__ov{position:absolute;inset:0}
.fofo-slide__in{position:relative;z-index:3;max-width:1240px;margin:0 auto;padding:0 60px;height:100%;display:flex;flex-direction:column;justify-content:center;align-items:flex-start}
.fofo-s-label{font-size:12px;letter-spacing:4px;text-transform:uppercase;color:var(--muted);font-weight:500}
.fofo-s-title{font-family:var(--serif);font-size:76px;font-weight:500;color:var(--ink);margin:12px 0 0;line-height:1}
.fofo-s-script{font-family:var(--script);font-size:92px;color:var(--rose);line-height:1;margin:-2px 0 12px}
.fofo-s-text{font-size:17px;color:var(--ink);margin:0 0 26px}
.fofo-s-trust{display:flex;gap:22px;flex-wrap:wrap;margin-top:34px;font-size:11px}
.fofo-s-trust span{display:inline-flex;align-items:center;gap:7px}.fofo-s-trust .fofo-ico{color:var(--rose)}
.fofo-slide .fofo-a{opacity:0;transform:translateY(30px)}
.fofo-slide.is-active .fofo-a{animation:fofoUp .9s cubic-bezier(.2,.7,.2,1) forwards;animation-delay:calc(var(--i,0)*.16s + .25s)}
@keyframes fofoUp{to{opacity:1;transform:none}}
.fofo-sarrow{position:absolute;top:50%;z-index:5;width:44px;height:44px;margin-top:-22px;border-radius:50%;border:0;background:rgba(255,255,255,.75);color:var(--ink);display:flex;align-items:center;justify-content:center;transition:.2s}
.fofo-sarrow:hover{background:var(--rose);color:#fff}
.fofo-sarrow.prev{left:18px}.fofo-sarrow.next{right:18px}
.fofo-dots{position:absolute;left:0;right:0;bottom:18px;z-index:5;display:flex;justify-content:center;gap:10px}
.fofo-dots button{width:10px;height:10px;border-radius:50%;border:0;padding:0;background:rgba(255,255,255,.8);transition:.3s}
.fofo-dots button.is-active{background:var(--rose);width:28px;border-radius:10px}
/* ---------- products ---------- */
.fofo-tabs{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;margin-bottom:30px}
.fofo-tabs button{border:1px solid var(--line);background:#fff;color:var(--ink);padding:9px 28px;border-radius:30px;font-size:13px;transition:.2s}
.fofo-tabs button.is-active,.fofo-tabs button:hover{background:var(--rose);border-color:var(--rose);color:#fff}
.fofo-slider{position:relative}
.fofo-track{display:flex;gap:24px;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;padding:12px 6px 30px}
.fofo-track::-webkit-scrollbar{display:none}
.fofo-track .fofo-card{flex:0 0 calc((100% - (var(--cols,4) - 1) * 24px) / var(--cols,4));scroll-snap-align:start}
.fofo-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:24px;padding:12px 0 24px}
.fofo-arrow{position:absolute;top:42%;z-index:5;width:42px;height:42px;border-radius:50%;border:0;background:#fff;color:var(--ink);box-shadow:0 6px 18px rgba(0,0,0,.14);display:flex;align-items:center;justify-content:center}
.fofo-arrow:hover{background:var(--rose);color:#fff}
.fofo-arrow[data-dir="-1"]{left:-18px}.fofo-arrow[data-dir="1"]{right:-18px}
.fofo-card{background:#fff;border-radius:16px;padding:12px 12px 18px;position:relative;border:1px solid #e1ecf7;box-shadow:var(--shadow);transition:transform .3s,box-shadow .3s}
.fofo-card:hover{transform:translateY(-8px);box-shadow:0 22px 44px rgba(40,85,130,.22)}
.fofo-card.is-hidden{display:none}
.fofo-card__img{display:block;position:relative;border-radius:12px;overflow:hidden;margin-bottom:14px;background:var(--blush2)}
.fofo-card__img img{width:100%;aspect-ratio:1/1.05;object-fit:cover;transition:transform .5s}
.fofo-card:hover .fofo-card__img img{transform:scale(1.06)}
.fofo-badge{position:absolute;top:10px;left:10px;background:var(--rose);color:#fff;font-size:12px;padding:6px 14px;border-radius:8px;line-height:1;z-index:2}
.fofo-wish{position:absolute;top:22px;right:22px;z-index:3;background:#fff;border:0;width:32px;height:32px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--ink);box-shadow:0 3px 10px rgba(0,0,0,.12)}
.fofo-wish.is-on{color:#c9a04e}.fofo-wish.is-on svg{fill:#c9a04e}
.fofo-card h3{font-family:var(--sans);font-size:14px;font-weight:400;color:var(--ink);margin-bottom:6px}
.fofo-price{font-size:16px;font-weight:600;color:var(--rose-d);padding-right:50px}
.fofo-price del{color:#a9c0d8;font-weight:400;font-size:13px;margin-left:6px}
.fofo-price ins{text-decoration:none}
.fofo-stars{color:var(--gold);font-size:13px;letter-spacing:1px;margin-top:4px}.fofo-stars small{color:var(--muted);letter-spacing:0;margin-left:4px}
.fofo-cart-btn{position:absolute;right:14px;bottom:16px;width:40px;height:40px;border-radius:50%;background:var(--rose-d);color:#fff;display:flex;align-items:center;justify-content:center;box-shadow:0 6px 14px rgba(44,88,128,.4);transition:.2s}
.fofo-cart-btn:hover{background:var(--ink);color:#fff}.fofo-cart-btn.loading{opacity:.5}
.added_to_cart{display:none!important}
.fofo-empty{text-align:center;padding:30px;background:#fff;border-radius:12px;color:var(--muted)}
/* ---------- chips / terms ---------- */
.fofo-chips{display:flex;flex-wrap:wrap;gap:10px;justify-content:center}
.fofo-chip{display:inline-block;padding:9px 22px;border:1px solid var(--line);border-radius:30px;background:#fff;font-size:13px;color:var(--ink);transition:.2s}
.fofo-chip:hover{background:var(--rose);border-color:var(--rose);color:#fff;transform:translateY(-2px)}
.fofo-terms-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:14px}
.fofo-terms-grid .fofo-chip{border-radius:12px;text-align:center;padding:16px 12px;box-shadow:0 6px 16px rgba(40,85,130,.07)}
/* ---------- forms ---------- */
.fofo-form p{margin:0 0 14px}
.fofo-form input[type=text],.fofo-form input[type=email],.fofo-form input[type=url],.fofo-form input[type=number],.fofo-form textarea,.woocommerce input.input-text,.woocommerce textarea,.woocommerce select{width:100%;padding:13px 18px;border:1px solid var(--line);border-radius:12px;font:inherit;background:#fff}
.fofo-form input:focus,.fofo-form textarea:focus{outline:0;border-color:var(--rose);box-shadow:0 0 0 3px rgba(63,111,158,.18)}
.fofo-grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 16px}.fofo-grid2 .fofo-full{grid-column:1/-1}
.fofo-ok{background:#EAF6EC;border:1px solid #BFE0C5;border-radius:10px;padding:14px 18px;margin-bottom:20px}
.fofo-err{background:#e8f1fa;border:1px solid #c5d9ee;border-radius:10px;padding:14px 18px;margin-bottom:20px}
.fofo-fs{font-size:26px;margin:26px 0 4px}.fofo-fs span{color:var(--rose);margin-right:6px}
.fofo-fs-sub{font-size:13px;color:var(--muted);margin:0 0 14px!important}
.fofo-pills{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:10px}
.fofo-pill input{position:absolute;opacity:0;pointer-events:none}
.fofo-pill span{display:inline-block;padding:9px 20px;border:1px solid var(--line);border-radius:30px;background:#fff;font-size:13px;cursor:pointer;transition:.2s}
.fofo-pill input:checked+span{background:var(--rose);border-color:var(--rose);color:#fff}
.fofo-upload{border:2px dashed var(--line);border-radius:14px;padding:18px;background:var(--blush)}.fofo-upload span{font-size:12px;color:var(--muted)}
.fofo-note{background:var(--blush2);border-radius:12px;padding:14px 18px;font-size:13px;color:var(--muted)}
.fofo-small{font-size:12px;color:var(--muted)}
.fofo-preorder{background:#fff;padding:30px;border-radius:18px;border:1px solid #e1ecf7;box-shadow:var(--shadow)}
.fofo-news{display:flex;background:#fff;border-radius:40px;padding:5px;max-width:380px}
.fofo-news input{flex:1;border:0;background:none;padding:0 16px;font:inherit;font-size:13px;min-width:0;outline:0}
.fofo-news button{background:linear-gradient(135deg,#f3dfa6,#d9b564 55%,#c9a04e);color:#1f3a56;border:0;border-radius:40px;padding:11px 18px;display:flex}
.fofo-pay span{display:inline-block;margin-left:8px;background:#fff;border-radius:4px;padding:3px 9px;font-size:10px;font-weight:700}
/* ---------- generic + woocommerce ---------- */
.fofo-page{max-width:1240px;margin:0 auto;padding:50px 24px;min-height:50vh}.fofo-page h1{font-size:42px;margin-bottom:24px}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.woocommerce a.button.alt,.woocommerce button.button.alt,.woocommerce #respond input#submit{background:var(--rose);color:#fff;border-radius:40px;padding:12px 26px;font-weight:500;font-family:var(--sans)}
.woocommerce a.button:hover,.woocommerce button.button:hover,.woocommerce button.button.alt:hover{background:var(--rose-d);color:#fff}
.woocommerce ul.products{display:grid!important;grid-template-columns:repeat(4,1fr);gap:24px;margin:0 0 30px!important;padding:0}
.woocommerce ul.products::before,.woocommerce ul.products::after{display:none!important}
.woocommerce ul.products li.product{width:auto!important;margin:0!important;float:none!important;background:#fff;border-radius:16px;padding:12px 12px 18px;border:1px solid #e1ecf7;box-shadow:var(--shadow);transition:.3s}
.woocommerce ul.products li.product:hover{transform:translateY(-8px)}
.woocommerce ul.products li.product img{border-radius:12px;margin:0 0 12px!important}
.woocommerce ul.products li.product .woocommerce-loop-product__title{font-family:var(--sans);font-size:14px;font-weight:400;padding:0}
.woocommerce ul.products li.product .price,.woocommerce div.product p.price{color:var(--rose-d)!important;font-weight:600}
.woocommerce span.onsale{background:var(--rose);border-radius:8px;min-width:0;min-height:0;line-height:1;padding:7px 14px;top:22px;left:22px;right:auto;margin:0}
.woocommerce .star-rating span::before{color:var(--gold)}
.woocommerce-message,.woocommerce-info{border-top-color:var(--rose)}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--rose);color:#fff}
/* ---------- responsive ---------- */
@media(max-width:1024px){.fofo-grid{grid-template-columns:repeat(2,1fr)}.fofo-s-title{font-size:56px}.fofo-s-script{font-size:68px}.woocommerce ul.products{grid-template-columns:repeat(2,1fr)}.fofo-arrow[data-dir="-1"]{left:-6px}.fofo-arrow[data-dir="1"]{right:-6px}}
@media(max-width:900px){.fofo-nav-wrap{display:none}}
@media(max-width:768px){.fofo-slide__in{padding:0 24px}.fofo-s-title{font-size:42px}.fofo-s-script{font-size:52px}.fofo-s-text{font-size:14px}.fofo-sarrow{display:none}.fofo-grid{gap:14px}.fofo-arrow{display:none}.fofo-grid2{grid-template-columns:1fr}.fofo-preorder{padding:20px}}
@media(prefers-reduced-motion:reduce){.fofo-slide .fofo-a{opacity:1;transform:none;animation:none!important}.fofo-slide__bg{transition:none}.elementor-invisible{visibility:visible!important}}

/* 4.2.0 - All Categories page (automatic from your live product categories) */
.fofo-allcats__group{margin:0 0 34px;text-align:center}
.fofo-allcats__group h3{font-family:"Cormorant Garamond",serif;font-size:30px;font-weight:600;margin:0 0 14px}
.fofo-allcats__group h3 a{color:var(--ink)}
.fofo-allcats__group h3 a:hover{color:var(--rose)}

/* 4.2.2 - brand pages: hero, own-category chips (active state), product list */
.fofo-bhero{background-size:cover;background-position:center;padding:74px 20px 62px;text-align:center}
.fofo-bhero__in{max-width:900px;margin:0 auto}
.fofo-bhero__k{font-size:12px;letter-spacing:.35em;text-transform:uppercase;color:#5b7792;margin:0 0 10px}
.fofo-bhero h1{font-family:"Cormorant Garamond",serif;font-size:50px;font-weight:600;color:var(--ink);margin:0;line-height:1.1}
.fofo-bhero__s{font-family:"Great Vibes",cursive;font-size:32px;color:var(--rose);margin:8px 0 0}
.fofo-bhero__back{display:inline-block;margin-top:14px;font-size:13px;color:var(--ink);text-decoration:underline}
.fofo-brandnav{background:#eef4fa;padding:22px 16px}
.fofo-brandnav .fofo-chips{max-width:1100px;margin:0 auto}
.fofo-brandlist{max-width:1200px;margin:0 auto;padding:34px 16px 64px}
.fofo-chip.is-active{background:var(--rose);border-color:var(--rose);color:#fff}
.fofo-pager ul{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;list-style:none;padding:0;margin:36px 0 0}
.fofo-pager a,.fofo-pager span{display:inline-block;min-width:38px;padding:8px 12px;text-align:center;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink)}
.fofo-pager .current{background:var(--rose);border-color:var(--rose);color:#fff}
@media(max-width:640px){.fofo-bhero{padding:48px 16px 40px}.fofo-bhero h1{font-size:36px}}
