/* =================================================================
   OFQM v2.1 — FreshToHome-style Shop Page
   Inline add-to-cart, sticky categories, quantity stepper
   ================================================================= */

/* Hide WordPress nav menu when noted with body class (used by "no nav" mode) */
body.ofqm-no-nav .site-header .ofqm-site-nav,
body.ofqm-no-nav .site-header nav,
body.ofqm-no-nav .site-header .elementor-nav-menu--main,
body.ofqm-no-nav nav.elementor-nav-menu--main,
body.ofqm-no-nav .menu-primary-menu-container,
body.ofqm-no-nav #site-navigation,
body.ofqm-no-nav .main-navigation{
    display:none !important;
}

/* ===========================================================
   FRESHTOHOME-STYLE SHOP LAYOUT
   =========================================================== */
.ofqm-shop-wrap{
    max-width:1280px;margin:0 auto;padding:0 6vw;
}

/* Hero strip on top of products page */
.ofqm-shop-hero{
    padding:48px 6vw 28px;
    background:
        radial-gradient(60% 60% at 90% 0%, rgba(31,143,58,.06) 0%, transparent 70%),
        radial-gradient(50% 50% at 0% 100%, rgba(196,0,0,.05) 0%, transparent 70%),
        var(--ofqm-bg);
    border-bottom:1px solid var(--ofqm-line);
    position:relative;
}
.ofqm-shop-hero-inner{max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1.4fr 1fr;gap:30px;align-items:end}
.ofqm-shop-hero h1{
    font-size:clamp(28px,4vw,46px);margin:8px 0 6px;
    font-weight:900;letter-spacing:-.025em;line-height:1.05;color:var(--ofqm-ink);
}
.ofqm-shop-hero h1 .accent{color:var(--ofqm-red)}
.ofqm-shop-hero p.subtitle{margin:0;color:var(--ofqm-ink-2);font-size:15px;max-width:560px}
.ofqm-shop-hero .meta-pills{display:flex;gap:8px;justify-content:flex-end;flex-wrap:wrap}
.ofqm-shop-hero .meta-pills .pill{
    background:#fff;border:1px solid var(--ofqm-line);border-radius:999px;
    padding:8px 14px;font-size:12px;font-weight:700;color:var(--ofqm-ink);
    box-shadow:var(--ofqm-shadow-sm);
    display:inline-flex;align-items:center;gap:6px;
}
.ofqm-shop-hero .meta-pills .pill i{color:var(--ofqm-green)}

/* Sticky category bar */
.ofqm-shop-catbar{
    position:sticky;top:0;z-index:50;
    background:rgba(255,255,255,.92);
    backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    border-bottom:1px solid var(--ofqm-line);
    padding:14px 6vw;
}
body.admin-bar .ofqm-shop-catbar{top:32px}
@media (max-width:782px){body.admin-bar .ofqm-shop-catbar{top:46px}}
.ofqm-shop-catbar-inner{
    max-width:1280px;margin:0 auto;
    display:flex;gap:10px;overflow-x:auto;
    -webkit-overflow-scrolling:touch;scrollbar-width:none;
}
.ofqm-shop-catbar-inner::-webkit-scrollbar{display:none}
.ofqm-cat-chip{
    flex:0 0 auto;
    padding:10px 18px;border-radius:999px;
    border:1.5px solid var(--ofqm-line);background:#fff;
    color:var(--ofqm-ink);font-weight:700;font-size:13px;
    cursor:pointer;white-space:nowrap;text-decoration:none;
    transition:all .25s ease;display:inline-flex;align-items:center;gap:8px;
}
.ofqm-cat-chip i{font-size:14px}
.ofqm-cat-chip:hover{border-color:var(--ofqm-red);color:var(--ofqm-red);transform:translateY(-1px)}
.ofqm-cat-chip.active{background:var(--ofqm-red);border-color:var(--ofqm-red);color:#fff;box-shadow:0 8px 20px -8px rgba(196,0,0,.35)}
.ofqm-cat-chip .count{
    background:rgba(0,0,0,.08);color:inherit;
    padding:2px 8px;border-radius:999px;font-size:11px;font-weight:700;
}
.ofqm-cat-chip.active .count{background:rgba(255,255,255,.25);color:#fff}

/* Product grid — FreshToHome card style */
.ofqm-shop-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill, minmax(220px, 1fr));
    gap:18px;
    padding:30px 0 60px;
}
.ofqm-pcard{
    position:relative;background:#fff;
    border:1px solid var(--ofqm-line-2);border-radius:14px;
    overflow:hidden;
    transition:transform .25s cubic-bezier(.2,.7,.2,1), border-color .25s ease, box-shadow .25s ease;
    display:flex;flex-direction:column;
}
.ofqm-pcard:hover{transform:translateY(-4px);box-shadow:var(--ofqm-shadow-md);border-color:rgba(196,0,0,.2)}
.ofqm-pcard-image{
    position:relative;aspect-ratio:1/1;overflow:hidden;background:var(--ofqm-bg-alt);
}
.ofqm-pcard-image img{
    width:100%;height:100%;object-fit:cover;
    transition:transform .4s ease;
}
.ofqm-pcard:hover .ofqm-pcard-image img{transform:scale(1.06)}
.ofqm-pcard-image .ofqm-discount-badge{
    position:absolute;top:10px;left:10px;
    background:var(--ofqm-red);color:#fff;
    padding:5px 10px;border-radius:6px;
    font-size:11px;font-weight:800;letter-spacing:.04em;
    box-shadow:0 6px 14px -6px rgba(196,0,0,.45);
}
.ofqm-pcard-image .ofqm-cat-tag{
    position:absolute;top:10px;right:10px;
    background:rgba(255,255,255,.94);color:var(--ofqm-ink);
    padding:4px 10px;border-radius:999px;
    font-size:10px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
}
.ofqm-pcard-body{padding:14px 14px 16px;display:flex;flex-direction:column;gap:8px;flex:1}
.ofqm-pcard-title{
    font-family:'Plus Jakarta Sans',sans-serif;
    font-weight:800;font-size:14px;line-height:1.3;color:var(--ofqm-ink);
    margin:0;min-height:36px;
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
}
.ofqm-pcard-title a{color:inherit;text-decoration:none}
.ofqm-pcard-meta{
    display:flex;align-items:center;gap:8px;
    font-size:11px;color:var(--ofqm-muted);font-weight:600;
}
.ofqm-pcard-meta .weight-chip{
    background:var(--ofqm-bg-alt);border:1px solid var(--ofqm-line);
    padding:3px 9px;border-radius:6px;color:var(--ofqm-ink);font-weight:700;
}
.ofqm-pcard-price{
    display:flex;align-items:baseline;gap:8px;margin-top:auto;
}
.ofqm-pcard-price .now{
    color:var(--ofqm-red);font-weight:900;font-size:18px;
    font-family:'Plus Jakarta Sans',sans-serif;
}
.ofqm-pcard-price .was{
    color:var(--ofqm-muted);font-weight:500;font-size:12px;text-decoration:line-through;
}

/* Add button + Quantity Stepper */
.ofqm-pcard-actions{margin-top:6px}
.ofqm-add-btn{
    width:100%;background:#fff;border:1.5px solid var(--ofqm-red);
    color:var(--ofqm-red);padding:9px 12px;border-radius:8px;
    font-weight:800;font-size:13px;letter-spacing:.02em;
    cursor:pointer;display:inline-flex;align-items:center;justify-content:center;gap:6px;
    transition:all .2s ease;font-family:'Plus Jakarta Sans',sans-serif;
}
.ofqm-add-btn:hover{background:var(--ofqm-red);color:#fff;transform:translateY(-1px)}
.ofqm-add-btn .plus{font-size:16px;line-height:1}

.ofqm-qty-stepper{
    display:none;
    background:var(--ofqm-red);border-radius:8px;overflow:hidden;
    align-items:stretch;width:100%;
    box-shadow:0 8px 18px -8px rgba(196,0,0,.4);
}
.ofqm-qty-stepper.active{display:flex}
.ofqm-qty-stepper button{
    background:transparent;border:none;color:#fff;
    width:38px;font-size:18px;font-weight:800;cursor:pointer;
    transition:background .15s ease;
}
.ofqm-qty-stepper button:hover{background:rgba(0,0,0,.15)}
.ofqm-qty-stepper .qty-display{
    flex:1;color:#fff;font-weight:800;font-size:14px;
    display:flex;align-items:center;justify-content:center;gap:5px;
    font-family:'Plus Jakarta Sans',sans-serif;
}
.ofqm-qty-stepper .qty-display .pending{
    width:12px;height:12px;border:2px solid rgba(255,255,255,.4);
    border-top-color:#fff;border-radius:50%;
    animation:ofqmSpin 0.6s linear infinite;display:none;
}
.ofqm-qty-stepper.is-busy .qty-display .pending{display:inline-block}

/* Empty state */
.ofqm-shop-empty{
    text-align:center;padding:60px 24px;color:var(--ofqm-muted);
    border:1px dashed var(--ofqm-line);border-radius:14px;
    grid-column:1/-1;
}
.ofqm-shop-empty i{font-size:48px;color:var(--ofqm-line);margin-bottom:14px;display:block}

/* Floating mini cart bar (slides up after add) */
.ofqm-mini-cart-bar{
    position:fixed;left:50%;bottom:24px;transform:translateX(-50%) translateY(140%);
    background:var(--ofqm-ink);color:#fff;
    border-radius:14px;padding:12px 18px 12px 16px;
    display:flex;align-items:center;gap:14px;z-index:9000;
    box-shadow:0 18px 50px -10px rgba(0,0,0,.4);
    transition:transform .35s cubic-bezier(.2,.7,.2,1);
    max-width:calc(100vw - 32px);
    border:1px solid rgba(255,255,255,.08);
}
.ofqm-mini-cart-bar.visible{transform:translateX(-50%) translateY(0)}
.ofqm-mini-cart-bar .mc-count{
    background:var(--ofqm-red);color:#fff;
    width:32px;height:32px;border-radius:50%;
    display:grid;place-items:center;font-weight:800;font-size:13px;
}
.ofqm-mini-cart-bar .mc-text{font-size:13px;font-weight:600;color:#fff}
.ofqm-mini-cart-bar .mc-text strong{color:var(--ofqm-green);font-family:'Plus Jakarta Sans',sans-serif;font-weight:800}
.ofqm-mini-cart-bar a.mc-go{
    background:var(--ofqm-red);color:#fff;
    padding:9px 16px;border-radius:8px;
    font-weight:800;font-size:12px;text-decoration:none;
    letter-spacing:.04em;text-transform:uppercase;
    display:inline-flex;align-items:center;gap:6px;
    transition:background .2s ease;
}
.ofqm-mini-cart-bar a.mc-go:hover{background:var(--ofqm-red-deep);color:#fff}

/* Responsive */
@media (max-width:640px){
    .ofqm-shop-hero{padding:32px 5vw 20px}
    .ofqm-shop-hero-inner{grid-template-columns:1fr;align-items:start}
    .ofqm-shop-hero .meta-pills{justify-content:flex-start}
    .ofqm-shop-grid{grid-template-columns:repeat(2,1fr);gap:12px;padding:20px 0 40px}
    .ofqm-pcard-title{font-size:13px;min-height:34px}
    .ofqm-pcard-price .now{font-size:16px}
    .ofqm-add-btn{font-size:12px;padding:8px}
    .ofqm-shop-catbar{padding:10px 5vw}
    .ofqm-cat-chip{padding:8px 14px;font-size:12px}
    .ofqm-mini-cart-bar{left:16px;right:16px;transform:translateY(140%);bottom:80px}
    .ofqm-mini-cart-bar.visible{transform:translateY(0)}
}

/* =====================================================================
   v2.2 — Weight select, floating header cart, checkout prompt, sidebar kill
   ===================================================================== */

/* Weight <select> on product card */
.ofqm-weight-select{
    appearance:none;-webkit-appearance:none;-moz-appearance:none;
    background:var(--ofqm-bg-alt);
    border:1px solid var(--ofqm-line);border-radius:6px;
    padding:5px 26px 5px 10px;
    font-family:'Inter',sans-serif;
    font-size:11px;font-weight:700;color:var(--ofqm-ink);
    cursor:pointer;
    background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6' viewBox='0 0 10 6'%3e%3cpath fill='%23c40000' d='M5 6L0 0h10z'/%3e%3c/svg%3e");
    background-repeat:no-repeat;background-position:right 9px center;
    transition:border-color .2s ease;
}
.ofqm-weight-select:hover, .ofqm-weight-select:focus{border-color:var(--ofqm-red);outline:none}
.ofqm-weight-select--single{
    font-size:13px;padding:10px 36px 10px 14px;border-radius:8px;
    background-color:#fff;border-width:1.5px;
    background-image:url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3e%3cpath fill='%23c40000' d='M6 8L0 0h12z'/%3e%3c/svg%3e");
    background-position:right 12px center;
    min-width:200px;
}
.ofqm-single-weight{margin:14px 0 18px}
.ofqm-single-weight-label{
    display:block;font-size:11px;letter-spacing:.18em;text-transform:uppercase;
    color:var(--ofqm-muted);font-weight:700;margin-bottom:8px;
}

/* Floating header (cart + account) — replacement for slide-in cart */
.ofqm-floating-header{
    position:fixed;top:14px;right:14px;z-index:90;
    display:flex;gap:10px;align-items:center;
}
.ofqm-floating-icon{
    position:relative;
    width:46px;height:46px;border-radius:50%;
    background:#fff;border:1px solid var(--ofqm-line);
    color:var(--ofqm-ink);font-size:17px;
    display:grid;place-items:center;text-decoration:none;
    box-shadow:0 14px 30px -14px rgba(0,0,0,.18);
    transition:transform .2s ease, border-color .2s ease, color .2s ease;
}
.ofqm-floating-icon:hover{transform:translateY(-2px);border-color:var(--ofqm-red);color:var(--ofqm-red)}
.ofqm-floating-icon .badge{
    position:absolute;top:-4px;right:-4px;
    background:var(--ofqm-red);color:#fff;border-radius:999px;
    min-width:20px;height:20px;padding:0 6px;
    font-size:10px;font-weight:800;
    display:inline-flex;align-items:center;justify-content:center;
    box-shadow:0 4px 10px -2px rgba(196,0,0,.5);
}
body.admin-bar .ofqm-floating-header{top:46px}
@media (max-width:782px){body.admin-bar .ofqm-floating-header{top:60px}}
@media (max-width:640px){
    .ofqm-floating-header{top:auto;bottom:24px;right:auto;left:24px;}
    .ofqm-floating-icon{width:50px;height:50px;font-size:18px;background:#fff;box-shadow:0 18px 36px -10px rgba(0,0,0,.25)}
}

/* Push hero down a bit on desktop so floating buttons don't overlap */
.ofqm-shop-hero{padding-right:130px}
@media (max-width:640px){ .ofqm-shop-hero{padding-right:5vw} }

/* Checkout register prompt */
.ofqm-checkout-prompt{
    background:linear-gradient(120deg,#fff5f5 0%,#f0fbf3 100%);
    border:1px solid var(--ofqm-line);
    border-left:4px solid var(--ofqm-red);
    border-radius:10px;padding:14px 18px;margin:0 0 20px;
    font-size:14px;color:var(--ofqm-ink);
    display:flex;align-items:center;gap:10px;flex-wrap:wrap;
}
.ofqm-checkout-prompt i{color:var(--ofqm-red);font-size:18px}
.ofqm-checkout-prompt .ofqm-prompt-link{
    color:var(--ofqm-red);font-weight:800;text-decoration:underline;
}

/* Registration form fields styling */
.woocommerce-form-register .ofqm-form-row{margin-bottom:14px}
.woocommerce-form-register .ofqm-form-row label{
    display:block;font-size:11px;letter-spacing:.16em;
    text-transform:uppercase;color:var(--ofqm-muted);
    font-weight:700;margin-bottom:6px;
}
.woocommerce-form-register .ofqm-form-row .input-text{
    width:100%;padding:12px 14px;border-radius:8px;
    border:1.5px solid var(--ofqm-line);
    font-family:'Inter',sans-serif;font-size:14px;
    transition:border-color .2s ease;background:#fff;
}
.woocommerce-form-register .ofqm-form-row .input-text:focus{
    border-color:var(--ofqm-red);outline:none;
}

/* My Account dashboard polish (no design change — just brand colors) */
.woocommerce-MyAccount-navigation ul li.is-active a{
    background:var(--ofqm-red) !important;color:#fff !important;border-radius:8px;
}
.woocommerce-MyAccount-navigation ul li a{
    padding:10px 14px;border-radius:8px;transition:background .2s ease;
}
.woocommerce-MyAccount-navigation ul li a:hover{background:var(--ofqm-bg-alt)}

/* Force full-width products page (kills the white gap on left) */
body.ofqm-full-width .woocommerce-sidebar,
body.ofqm-full-width aside.sidebar,
body.ofqm-full-width #secondary,
body.ofqm-full-width .widget-area,
body.ofqm-full-width .woocommerce-products-header{display:none !important}

body.ofqm-full-width .site-content,
body.ofqm-full-width #primary,
body.ofqm-full-width .content-area,
body.ofqm-full-width main.site-main{
    width:100% !important;max-width:100% !important;
    float:none !important;margin:0 !important;padding:0 !important;
}
body.ofqm-full-width .ofqm-shop-main{padding-top:0 !important;margin-top:0 !important}
body.ofqm-full-width article.page,
body.ofqm-full-width article.post{padding:0 !important;margin:0 !important;border:0 !important}

/* Kill any inherited top gap on shop main */
.ofqm-shop-main > *:first-child{margin-top:0 !important}
.ofqm-shop-main .ofqm-shop-hero{margin-top:0}

/* Single product page: weight select + price label spacing */
.product .ofqm-single-weight{order:2}
.product .ofqm-live-price{order:3}


/* =====================================================================
   v2.3 — 5-col grid, global catbar, my-account proper layout
   ===================================================================== */

/* 5 products per row on desktop (was auto-fill) */
@media (min-width: 1100px) {
    .ofqm-shop-grid{
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }
}
@media (min-width: 1400px) {
    .ofqm-shop-grid{
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
        gap: 18px !important;
    }
}
@media (min-width: 820px) and (max-width: 1099px) {
    .ofqm-shop-grid{ grid-template-columns: repeat(4, minmax(0, 1fr)) !important; }
}
@media (min-width: 640px) and (max-width: 819px) {
    .ofqm-shop-grid{ grid-template-columns: repeat(3, minmax(0, 1fr)) !important; }
}

/* Make product card title smaller / tighter to fit 5-col layout */
.ofqm-pcard-title{font-size:14px;min-height:38px}
.ofqm-pcard-body{padding:12px 12px 14px;gap:6px}
.ofqm-pcard-meta{flex-wrap:wrap;gap:6px}
.ofqm-pcard-price .now{font-size:16px}

/* ----- Global category bar (used on product-category + single product) ----- */
.ofqm-catbar-global{
    margin:0 !important;
    /* sticks below site header */
}

/* On product-category and single-product pages: also kill the default WC
   header noise via body class set by PHP. */
body.ofqm-full-width.archive .woocommerce-products-header,
body.ofqm-full-width.archive .woocommerce-breadcrumb,
body.ofqm-full-width.archive .woocommerce-result-count,
body.ofqm-full-width.archive .woocommerce-ordering,
body.ofqm-full-width.single-product .woocommerce-breadcrumb{display:none !important}

/* WC category pages: render products in OFQM grid look */
body.ofqm-full-width.archive .woocommerce ul.products,
body.ofqm-full-width.archive .woocommerce-page ul.products{
    display:grid !important;
    grid-template-columns: repeat(auto-fill, minmax(220px, 1fr)) !important;
    gap:18px !important;
    margin:30px 6vw 60px !important;padding:0 !important;
}
@media (min-width:1100px){
    body.ofqm-full-width.archive .woocommerce ul.products,
    body.ofqm-full-width.archive .woocommerce-page ul.products{
        grid-template-columns: repeat(5, minmax(0,1fr)) !important;
        gap:16px !important;
    }
}
body.ofqm-full-width.archive .woocommerce ul.products li.product,
body.ofqm-full-width.archive .woocommerce-page ul.products li.product{
    width:auto !important;margin:0 !important;
}

/* Sticky catbar on archive + single product pages */
body.ofqm-full-width.archive .ofqm-catbar-global,
body.ofqm-full-width.single-product .ofqm-catbar-global{
    position:sticky;top:0;z-index:50;
}

/* ----- MY ACCOUNT PAGE proper layout ----- */

/* Hide the parent's giant page title block on /my-account/ */
body.woocommerce-account .entry-header,
body.woocommerce-account .entry-title,
body.woocommerce-account h1.page-title,
body.woocommerce-account header.page-header,
body.woocommerce-account .elementor-page-title{display:none !important}

.ofqm-account-wrap{
    max-width:1180px;margin:0 auto;padding:32px 6vw 60px;
}
.ofqm-account-head{margin-bottom:24px;text-align:left}
.ofqm-account-title{
    font-family:'Plus Jakarta Sans',sans-serif;font-weight:900;
    font-size:clamp(28px,3.5vw,42px);letter-spacing:-.025em;
    color:var(--ofqm-ink);margin:6px 0 8px;
}
.ofqm-account-title .accent{color:var(--ofqm-red)}
.ofqm-account-sub{color:var(--ofqm-ink-2);margin:0;font-size:14px}

.ofqm-account-grid{
    display:grid;
    grid-template-columns:260px 1fr;
    gap:30px;
    align-items:start;
}

/* Sidebar nav */
.woocommerce-MyAccount-navigation{
    background:#fff;
    border:1px solid var(--ofqm-line);border-radius:14px;
    padding:14px;
    position:sticky;top:90px;
    box-shadow:var(--ofqm-shadow-sm);
}
.woocommerce-MyAccount-navigation ul{
    list-style:none !important;margin:0 !important;padding:0 !important;
    display:flex;flex-direction:column;gap:4px;
}
.woocommerce-MyAccount-navigation ul li{
    list-style:none !important;margin:0 !important;padding:0 !important;
}
.woocommerce-MyAccount-navigation ul li a{
    display:flex;align-items:center;gap:10px;
    padding:11px 14px;border-radius:8px;
    color:var(--ofqm-ink) !important;
    text-decoration:none !important;
    font-weight:700;font-size:14px;
    font-family:'Inter',sans-serif;
    transition:background .2s ease, color .2s ease;
    border:none;
}
.woocommerce-MyAccount-navigation ul li a:hover{
    background:var(--ofqm-bg-alt) !important;color:var(--ofqm-red) !important;
}
.woocommerce-MyAccount-navigation ul li.is-active a{
    background:var(--ofqm-red) !important;color:#fff !important;
    box-shadow:0 8px 18px -8px rgba(196,0,0,.4);
}
.woocommerce-MyAccount-navigation ul li a::before{
    font-family:"Font Awesome 6 Free";font-weight:900;font-size:14px;
    width:18px;display:inline-block;text-align:center;
}
.woocommerce-MyAccount-navigation ul li--dashboard a::before        { content:"\f3fd"; }   /* gauge */
.woocommerce-MyAccount-navigation ul li--orders a::before           { content:"\f291"; }   /* shop bag */
.woocommerce-MyAccount-navigation ul li--downloads a::before        { content:"\f019"; }   /* download */
.woocommerce-MyAccount-navigation ul li--edit-address a::before     { content:"\f3c5"; }   /* map-pin */
.woocommerce-MyAccount-navigation ul li--edit-account a::before     { content:"\f007"; }   /* user */
.woocommerce-MyAccount-navigation ul li--customer-logout a::before  { content:"\f2f5"; }   /* logout */

/* Main content card */
.woocommerce-MyAccount-content{
    background:#fff;border:1px solid var(--ofqm-line);border-radius:14px;
    padding:28px clamp(20px,3vw,36px);min-height:420px;
    box-shadow:var(--ofqm-shadow-sm);
}
.woocommerce-MyAccount-content p, .woocommerce-MyAccount-content li{
    color:var(--ofqm-ink-2);font-size:14px;line-height:1.65;
}
.woocommerce-MyAccount-content h2,
.woocommerce-MyAccount-content h3{
    font-family:'Plus Jakarta Sans',sans-serif;
    font-weight:800;color:var(--ofqm-ink);
    margin-top:0;margin-bottom:14px;font-size:20px;letter-spacing:-.015em;
}
.woocommerce-MyAccount-content .col2-set{
    display:grid;grid-template-columns:1fr 1fr;gap:26px;
}
.woocommerce-MyAccount-content .col2-set::after{display:none}
.woocommerce-MyAccount-content .col2-set .col-1,
.woocommerce-MyAccount-content .col2-set .col-2{
    width:auto !important;float:none !important;
    background:var(--ofqm-bg-alt);border-radius:12px;padding:22px;
    border:1px solid var(--ofqm-line-2);
}
.woocommerce-MyAccount-content address{
    font-style:normal;color:var(--ofqm-ink-2);line-height:1.7;
    margin-top:10px;
}
.woocommerce-MyAccount-content .button,
.woocommerce-MyAccount-content button[type="submit"]{
    background:var(--ofqm-red) !important;color:#fff !important;
    padding:12px 22px !important;border-radius:8px !important;
    font-weight:700 !important;text-decoration:none !important;
    display:inline-flex;align-items:center;gap:8px;
    border:none !important;cursor:pointer;
}
.woocommerce-MyAccount-content .button:hover{background:var(--ofqm-red-deep) !important}

/* "Add billing address" / "Add shipping address" buttons styling */
.woocommerce-MyAccount-content .edit{
    display:inline-block;margin-top:14px;
    color:var(--ofqm-red) !important;font-weight:700;text-decoration:underline;
}

/* Account login + register form */
.u-columns.col2-set,
.woocommerce-account .woocommerce > .u-columns,
.woocommerce-account .woocommerce > .col2-set{
    display:grid;grid-template-columns:1fr 1fr;gap:28px;
}
.woocommerce-account form.login,
.woocommerce-account form.register{
    background:#fff;border:1px solid var(--ofqm-line);border-radius:14px;
    padding:28px;box-shadow:var(--ofqm-shadow-sm);
}
.woocommerce-account form.login input[type="text"],
.woocommerce-account form.login input[type="password"],
.woocommerce-account form.register input[type="text"],
.woocommerce-account form.register input[type="email"],
.woocommerce-account form.register input[type="tel"],
.woocommerce-account form.register input[type="password"]{
    width:100%;padding:12px 14px;border-radius:8px;
    border:1.5px solid var(--ofqm-line);
    font-family:'Inter',sans-serif;font-size:14px;
    background:#fff;
}
.woocommerce-account form.login label,
.woocommerce-account form.register label{
    display:block;font-size:11px;letter-spacing:.16em;
    text-transform:uppercase;color:var(--ofqm-muted);
    font-weight:700;margin-bottom:6px;
}

/* Mobile: stack the account grid */
@media (max-width:820px){
    .ofqm-account-grid{grid-template-columns:1fr;gap:18px}
    .woocommerce-MyAccount-navigation{position:static;top:auto}
    .woocommerce-MyAccount-content .col2-set,
    .u-columns.col2-set,
    .woocommerce-account .woocommerce > .u-columns,
    .woocommerce-account .woocommerce > .col2-set{grid-template-columns:1fr;gap:18px}
    .ofqm-account-wrap{padding:24px 5vw 50px}
}

