/*
Theme Name: AutoCleanify Fresh
Theme URI: https://autocleanify.com/
Author: AutoCleanify
Description: Fresh WooCommerce storefront rebuilt from the approved AutoCleanify reference screens. No legacy theme code required.
Version: 1.3.2
Requires at least: 6.5
Tested up to: 7.0
Requires PHP: 8.0
Text Domain: autocleanify
WC requires at least: 9.0
WC tested up to: 11.1
*/

:root{
  --ac-purple:#7a2de5;
  --ac-purple-2:#8a36ff;
  --ac-purple-dark:#5d18c5;
  --ac-purple-soft:#f4ecff;
  --ac-gold:#f5b400;
  --ac-purple-line:#d8baff;
  --ac-ink:#15111f;
  --ac-muted:#6f6878;
  --ac-line:#f1eef6;
  --ac-bg:#ffffff;
  --ac-soft:#faf8fc;
  --ac-green:#eaf7ef;
  --ac-green-text:#1f7a41;

  /* Elevation system — soft shadows replace hard borders across the store. */
  --ac-radius:24px;
  --ac-radius-sm:16px;
  --ac-radius-lg:28px;
  --ac-shadow-sm:0 2px 10px rgba(20,10,40,.05);
  --ac-shadow:0 4px 20px rgba(20,10,40,.06);
  --ac-shadow-lg:0 18px 44px -18px rgba(40,16,80,.22);
  --ac-shadow-hover:0 20px 44px -20px rgba(40,16,80,.30);
  /* Button surface — "Depth": a vertical gradient with a lit top edge and a
     shaded bottom, so the button reads as a raised key rather than a flat
     rectangle with a glow behind it. Every button in the store draws on these. */
  --ac-grad-purple:linear-gradient(180deg,#8f3dff 0%,#7a2de5 52%,#6a20d4 100%);
  --ac-grad-purple-pressed:linear-gradient(180deg,#6a20d4 0%,#7a2de5 60%,#8f3dff 100%);
  --ac-shadow-purple:
    inset 0 1px 0 rgba(255,255,255,.34),
    inset 0 -1px 0 rgba(0,0,0,.16),
    0 2px 3px rgba(30,12,60,.18),
    0 10px 20px -10px rgba(93,24,197,.5);
  --ac-shadow-purple-hover:
    inset 0 1px 0 rgba(255,255,255,.4),
    inset 0 -1px 0 rgba(0,0,0,.16),
    0 4px 6px rgba(30,12,60,.2),
    0 18px 30px -12px rgba(93,24,197,.55);
  --ac-shadow-purple-pressed:
    inset 0 2px 4px rgba(30,12,60,.4),
    0 1px 1px rgba(30,12,60,.2);
  --ac-btn-secondary-shadow:inset 0 0 0 1.5px #e6e0ee, 0 1px 2px rgba(20,10,40,.06);
  --ac-grad-media:linear-gradient(160deg,#f6f2fb 0%,#ece3f8 100%);
  --ac-ring:0 0 0 2.5px var(--ac-purple);
  --ac-max:1180px;
  --ac-font:"Montserrat",Arial,sans-serif;
  --ac-font-body:"Inter",Arial,sans-serif;

  /* Type scale — see plan: 2xs/xs reserved for micro-labels & fine print, everything
     reading-length floors at --ac-fs-xs (12.5px) or above. */
  --ac-fs-2xs:11px;
  --ac-fs-xs:12.5px;
  --ac-fs-sm:13.5px;
  --ac-fs-base:15px;
  --ac-fs-md:16px;
  --ac-fs-lg:18px;
  --ac-fs-xl:22px;
  --ac-fs-2xl:28px;
  --ac-fs-3xl:34px;
  --ac-fs-4xl:42px;
  --ac-fs-5xl:50px;
  --ac-fs-6xl:clamp(34px,5vw,56px);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--ac-bg);color:var(--ac-ink);font-family:var(--ac-font-body);font-size:var(--ac-fs-base);line-height:1.6;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid rgba(122,45,229,.35);outline-offset:2px;border-radius:4px}
img{max-width:100%;height:auto;display:block}
button,input,select,textarea{font:inherit}
body,button,input,select,textarea,.woocommerce,.wc-block-components-button{font-family:var(--ac-font-body)!important}
h1,h2,h3,h4,h5,h6,.ac-heading,.ac-eyebrow,.ac-nav,.ac-btn,.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button,.ac-badge,.ac-card-badge,.ac-card-offer,.ac-hero-pill,.ac-package-ribbon,.ac-single-price,.ac-card-price,.woocommerce ul.products li.product .price,.ac-bundle-price,.ac-package-mini .price,.ac-package-option .ac-package-price,.ac-bundle-upsell-action strong,.ac-product-title,.woocommerce ul.products li.product .woocommerce-loop-product__title,.ac-topbar-message,.ac-mini-item-price,.ac-mini-subtotal strong{font-family:var(--ac-font)!important}
button{cursor:pointer}
.ac-container{width:min(var(--ac-max),calc(100% - 40px));margin-inline:auto}
.ac-section{padding:72px 0}
.ac-eyebrow{display:block;color:var(--ac-purple);font-size:var(--ac-fs-2xs);font-weight:700;letter-spacing:.1em;text-transform:uppercase;margin-bottom:8px}
.ac-heading{font-size:var(--ac-fs-3xl);line-height:1.05;letter-spacing:-.035em;margin:0 0 14px;font-weight:700}
.ac-muted{color:var(--ac-muted)}
.ac-stars{color:var(--ac-gold)!important;display:inline-flex;align-items:center;gap:2px;font-size:var(--ac-fs-sm);font-weight:700;white-space:nowrap}
.ac-stars svg,.stars svg{width:1em;height:1em;flex:none;display:block}
.ac-btn,.button,.woocommerce a.button,.woocommerce button.button,.woocommerce input.button,.wc-block-components-button{
  display:inline-flex;align-items:center;justify-content:center;gap:10px;border:0;border-radius:999px;background:var(--ac-grad-purple);color:#fff!important;font-weight:700;font-size:var(--ac-fs-md);min-height:52px;padding:0 28px;transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;box-shadow:var(--ac-shadow-purple);text-transform:none;line-height:1.1
}
.ac-btn:hover,.button:hover,.woocommerce a.button:hover,.woocommerce button.button:hover{background:var(--ac-grad-purple);filter:brightness(1.07);transform:translateY(-2px);box-shadow:var(--ac-shadow-purple-hover)}
/* Pressed inverts the gradient and sinks the surface, so the click is felt. */
.ac-btn:active,.button:active,.woocommerce a.button:active,.woocommerce button.button:active{background:var(--ac-grad-purple-pressed);filter:none;transform:translateY(1px);box-shadow:var(--ac-shadow-purple-pressed)}
.ac-btn:disabled,.button:disabled,.button.disabled{opacity:.5;pointer-events:none;box-shadow:none;transform:none;filter:none}
/* Secondary: white with a hairline ring, so it reads as a real alternative
   action rather than a tinted block. */
.ac-btn--ghost{background:#fff!important;color:var(--ac-ink)!important;border:0!important;box-shadow:var(--ac-btn-secondary-shadow)}
.ac-btn--ghost:hover{color:var(--ac-purple)!important;background:#fff!important;box-shadow:inset 0 0 0 1.5px var(--ac-purple-line),0 6px 16px -8px rgba(40,16,80,.22);filter:none;transform:translateY(-2px)}
.ac-btn--ghost:active{background:#faf8fc!important;box-shadow:inset 0 0 0 1.5px #ddd3ea;transform:translateY(1px)}

/* Top promotion bar */
.ac-topbar{min-height:36px;border-bottom:0;background:#7126db;color:#fff}
.ac-topbar-inner{min-height:36px;display:flex;align-items:center;justify-content:center}
/* Header */
.ac-site-header{height:72px;background:#fff;border-bottom:1px solid var(--ac-line);position:relative;z-index:70}
.ac-header-inner{height:100%;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:24px}
.ac-logo-link{display:inline-flex;align-items:center;justify-self:start}
.ac-logo-link img{width:146px;height:auto;object-fit:contain;object-position:left center}
.ac-nav{display:flex;align-items:center;font-size:var(--ac-fs-sm);color:#56515f;font-weight:700}
.ac-nav-list{list-style:none;margin:0;padding:0;display:flex;align-items:center;gap:34px}
.ac-nav a{position:relative;padding:25px 0;font-weight:700}
.ac-nav a:hover,.ac-nav .current-menu-item>a{color:var(--ac-purple)}
.ac-header-actions{justify-self:end;display:flex;align-items:center;gap:15px}
.ac-header-icon{position:relative;width:38px;height:44px;border:0!important;border-radius:0!important;padding:0!important;background:transparent!important;color:#14111a!important;display:grid;place-items:center;box-shadow:none!important;transform:none!important}
.ac-header-icon:hover{color:var(--ac-purple)!important;background:transparent!important;transform:none!important}
.ac-header-icon svg{width:29px;height:29px;display:block;stroke-width:1.85}
.ac-cart-count{position:absolute;right:-8px;top:-1px;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--ac-purple);color:#fff;font-size:var(--ac-fs-2xs);font-weight:700;display:grid;place-items:center;line-height:1}
.ac-cart-count.is-empty{display:none}
.ac-menu-toggle{display:none;width:40px;height:40px;border:0;border-radius:0;background:transparent;place-items:center;color:#17131d}

/* Hero */
.ac-hero-v2{position:relative;overflow:hidden;min-height:620px;background-color:#07050b;background-image:url('assets/images/hero-car-reference.jpg');background-repeat:no-repeat;background-size:cover;background-position:72% center}
.ac-hero-v2::after{content:none!important;display:none!important}
.ac-hero-v2::before{content:"";position:absolute;inset:0;z-index:1;display:block;background:linear-gradient(100deg,rgba(8,4,16,.86) 0%,rgba(8,4,16,.55) 46%,rgba(8,4,16,.12) 78%);pointer-events:none}
.ac-hero-v2__inner{position:relative;z-index:2;min-height:620px;display:flex;align-items:center;padding:78px 0 74px}
.ac-hero-v2__copy{max-width:680px;color:#fff}
.ac-hero-v2 .ac-hero-pill{display:inline-flex;align-items:center;gap:8px;color:#fff;border:1px solid rgba(255,255,255,.35);background:rgba(255,255,255,.14);backdrop-filter:blur(14px);border-radius:999px;padding:9px 18px;font-size:var(--ac-fs-2xs);font-weight:700;letter-spacing:.06em;text-transform:uppercase;margin-bottom:24px}
.ac-hero-v2 h1{font-size:var(--ac-fs-6xl);line-height:1.03;letter-spacing:-.03em;margin:0 0 22px;font-weight:800;max-width:640px;color:#fff}
.ac-hero-v2 h1 span{color:#fff}
.ac-hero-v2 p{max-width:500px;color:rgba(255,255,255,.86);font-size:var(--ac-fs-md);line-height:1.65;margin:0 0 34px}
.ac-hero-v2__actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;margin-bottom:34px}
.ac-hero-v2__actions .ac-btn{min-height:54px;padding:0 28px;font-size:var(--ac-fs-base);line-height:1;white-space:nowrap;border-radius:999px;font-weight:700}
.ac-hero-primary{background:var(--ac-grad-purple)!important;color:#fff!important;border:0!important;box-shadow:var(--ac-shadow-purple)}
.ac-hero-primary:hover{filter:brightness(1.07);color:#fff!important;transform:translateY(-2px);box-shadow:var(--ac-shadow-purple-hover)}
.ac-hero-secondary{background:rgba(255,255,255,.13)!important;backdrop-filter:blur(14px);color:#fff!important;border:0!important;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.32)!important}
.ac-hero-secondary:hover{background:rgba(255,255,255,.22)!important;color:#fff!important;transform:translateY(-2px);filter:none;box-shadow:inset 0 0 0 1.5px rgba(255,255,255,.55)!important}
.ac-hero-v2__actions .ac-btn svg{width:18px!important;height:18px!important;flex:0 0 18px!important;display:block}


.ac-hero-v2__trust{display:flex;align-items:center;gap:22px;flex-wrap:wrap;color:#fff;font-size:var(--ac-fs-xs)}
.ac-hero-v2__trust span{display:inline-flex;align-items:center;gap:7px}
.ac-hero-v2__trust svg{width:15px;height:15px;color:#fff}
.ac-hero-v2 .ac-stars{color:#914cff}

.ac-hero{position:relative;min-height:530px;overflow:hidden;background:#09070d}
.ac-hero::before{content:"";position:absolute;inset:0;background:url('assets/images/hero-car-reference.jpg') center 56%/cover no-repeat;opacity:1;filter:none;transform:none}
.ac-hero::after{display:none!important;content:none!important}
.ac-hero-inner{position:relative;z-index:2;min-height:530px;display:flex;align-items:center}
.ac-hero-copy{width:min(620px,50%);padding:60px 0 72px;color:#fff}
.ac-hero-pill{display:inline-flex;align-items:center;gap:7px;color:#cda9ff;border:1px solid rgba(174,115,255,.55);background:rgba(34,18,53,.46);backdrop-filter:blur(6px);border-radius:999px;padding:6px 11px;font-size:var(--ac-fs-2xs);font-weight:700;letter-spacing:.05em;text-transform:uppercase;margin-bottom:18px}
.ac-hero h1{font-size:var(--ac-fs-6xl);line-height:1.02;letter-spacing:-.045em;margin:0 0 18px;font-weight:700;max-width:600px;color:#fff;text-shadow:0 2px 18px rgba(0,0,0,.18)}
.ac-hero h1 span{color:#8a36ff}
.ac-hero p{max-width:560px;color:rgba(255,255,255,.78);font-size:var(--ac-fs-md);margin:0 0 26px;text-shadow:0 1px 10px rgba(0,0,0,.24)}
.ac-hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:23px}
.ac-hero .ac-btn--ghost{background:rgba(255,255,255,.94);border-color:rgba(255,255,255,.9);color:#17131d}
.ac-hero .ac-btn--ghost:hover{background:#fff;border-color:#fff}
.ac-hero-trust{display:flex;align-items:center;gap:24px;flex-wrap:wrap;color:rgba(255,255,255,.78);font-size:var(--ac-fs-xs)}
.ac-hero-trust span{display:inline-flex;align-items:center;gap:7px}
.ac-hero-trust svg{width:15px;height:15px;color:#9d5dff}
.ac-hero .ac-stars{color:#914cff}


/* Featured product */
.ac-featured{padding:80px 0 64px}
.ac-featured-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:58px;align-items:center}
.ac-featured-image{position:relative;border-radius:var(--ac-radius-lg);overflow:hidden;background:var(--ac-grad-media);aspect-ratio:1/1;box-shadow:0 40px 70px -32px rgba(40,16,80,.28)}
.ac-featured-image img{width:100%;height:100%;object-fit:cover}
.ac-badge{position:absolute;top:20px;left:20px;background:var(--ac-ink);color:#fff;border-radius:999px;padding:8px 16px;font-size:var(--ac-fs-2xs);font-weight:700;letter-spacing:.03em;z-index:2}
.ac-featured-copy h2{font-size:var(--ac-fs-4xl);line-height:1.05;letter-spacing:-.03em;margin:2px 0 12px;font-weight:800}
.ac-rating-row{display:flex;align-items:center;gap:8px;color:#6f6878;font-size:var(--ac-fs-sm);margin-bottom:16px}
.ac-featured-copy>p{color:#514b5a;font-size:var(--ac-fs-md);line-height:1.65;margin:0 0 22px}
.ac-package-mini-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:20px 0 14px}
.ac-package-mini{border:0;border-radius:var(--ac-radius-sm);padding:18px 16px;position:relative;min-height:104px;background:#fff;box-shadow:inset 0 0 0 1.5px #e6e1ee,var(--ac-shadow-sm)}
.ac-package-mini.is-featured{border:0;box-shadow:inset 0 0 0 1.5px #e6e1ee,var(--ac-shadow-sm)}
.ac-package-mini small{display:block;color:#8a8390;font-size:var(--ac-fs-xs)}
.ac-package-mini strong{display:block;font-size:var(--ac-fs-sm);margin-bottom:4px}
.ac-package-mini .price{color:var(--ac-ink);font-size:var(--ac-fs-lg);font-weight:800}.ac-package-mini em{display:block;margin-top:5px;color:var(--ac-green-text);font-style:normal;font-size:var(--ac-fs-2xs);font-weight:700}
.ac-package-ribbon{position:absolute;left:50%;top:-11px;transform:translateX(-50%);white-space:nowrap;background:var(--ac-purple);color:#fff;border-radius:999px;padding:4px 12px;font-size:var(--ac-fs-2xs);font-weight:700;letter-spacing:.04em}
.ac-inline-link{display:inline-flex;align-items:center;gap:6px;color:var(--ac-purple);font-size:var(--ac-fs-xs);font-weight:700;margin-top:8px}

/* Product cards */
.ac-products-section{padding:74px 0}
.ac-section-head{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:26px}
.ac-section-head h2{font-size:var(--ac-fs-3xl);line-height:1.1;letter-spacing:-.035em;margin:0}
.ac-section-link{color:var(--ac-purple);font-size:var(--ac-fs-xs);font-weight:700}
.ac-product-grid,.products{list-style:none!important;margin:0!important;padding:0!important;display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px!important}
.ac-product-card,.woocommerce ul.products li.product{margin:0!important;width:auto!important;float:none!important;border:0;border-radius:var(--ac-radius);overflow:hidden;background:#fff;position:relative;transition:transform .2s ease,box-shadow .2s ease;box-shadow:var(--ac-shadow)}
.ac-product-card:hover,.woocommerce ul.products li.product:hover{transform:translateY(-4px);box-shadow:var(--ac-shadow-hover)}
.ac-product-image,.woocommerce ul.products li.product .ac-product-image{display:block;aspect-ratio:1/1;overflow:hidden;background:var(--ac-grad-media);position:relative}
.ac-product-image img{width:100%!important;height:100%!important;object-fit:cover!important;margin:0!important;transition:transform .4s ease}
.ac-product-card:hover .ac-product-image img,.woocommerce ul.products li.product:hover .ac-product-image img{transform:scale(1.06)}
.ac-card-badge{position:absolute;left:14px;top:14px;background:var(--ac-ink);color:#fff;font-size:var(--ac-fs-2xs);font-weight:700;border-radius:999px;padding:5px 11px;letter-spacing:.02em;z-index:2}
.ac-card-offer{position:absolute;left:14px;bottom:12px;background:rgba(255,255,255,.94);backdrop-filter:blur(8px);color:var(--ac-ink);font-size:var(--ac-fs-2xs);font-weight:700;border-radius:999px;padding:5px 11px;z-index:2}
.ac-product-info{padding:20px;min-height:172px;position:relative;display:flex;flex-direction:column}
.ac-card-rating{display:flex;align-items:center;gap:5px;font-size:var(--ac-fs-2xs);color:#8a8390;font-weight:600;margin-bottom:8px}
.ac-card-rating .stars{display:inline-flex;align-items:center;gap:1px;color:var(--ac-gold);font-weight:700}
.ac-product-title,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-weight:700!important;font-size:var(--ac-fs-base)!important;line-height:1.3!important;padding:0!important;margin:0 0 6px!important;letter-spacing:-.01em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(2 * 1.3em)}
.ac-product-excerpt{color:#8a8390;font-size:var(--ac-fs-xs);line-height:1.5;margin-bottom:14px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(2 * 1.5em)}
.ac-card-bottom{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:auto}
.ac-card-price,.woocommerce ul.products li.product .price{display:flex!important;align-items:baseline;gap:7px;color:var(--ac-ink)!important;font-size:var(--ac-fs-lg)!important;font-weight:800!important;margin:0!important}
.ac-card-price del,.woocommerce ul.products li.product .price del{color:#a89fb0!important;font-size:var(--ac-fs-xs)!important;font-weight:500!important;opacity:1!important}
.ac-card-price ins,.woocommerce ul.products li.product .price ins{text-decoration:none!important}
.ac-quick-add,.woocommerce ul.products li.product a.add_to_cart_button{width:44px!important;height:44px!important;min-height:44px!important;padding:0!important;border-radius:50%!important;font-size:22px!important;line-height:1!important;flex:0 0 44px;display:grid!important;place-items:center!important;position:relative!important;margin:0!important;background:var(--ac-grad-purple)!important;color:#fff!important;text-indent:-9999px;overflow:hidden;box-shadow:var(--ac-shadow-purple);transition:transform .15s ease,box-shadow .15s ease}
.ac-quick-add:hover,.woocommerce ul.products li.product a.add_to_cart_button:hover{transform:translateY(-2px) scale(1.06);box-shadow:var(--ac-shadow-purple-hover)}
.ac-quick-add:active,.woocommerce ul.products li.product a.add_to_cart_button:active{background:var(--ac-grad-purple-pressed)!important;transform:translateY(1px) scale(1);box-shadow:var(--ac-shadow-purple-pressed)}
.ac-quick-add::after,.woocommerce ul.products li.product a.add_to_cart_button::after{content:"+";text-indent:0;position:absolute;inset:0;display:grid;place-items:center;font-size:22px;font-weight:400}
.woocommerce ul.products li.product a.added_to_cart{display:none!important}

/* Bundles */
.ac-bundles{padding:68px 0 80px;background:#fff}
.ac-bundle-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}
.ac-bundle-card{border:0;border-radius:var(--ac-radius);padding:20px;display:grid;grid-template-columns:165px 1fr;gap:22px;align-items:center;position:relative;background:#fff;box-shadow:var(--ac-shadow);transition:transform .2s ease,box-shadow .2s ease}
.ac-bundle-card:hover{transform:translateY(-4px);box-shadow:var(--ac-shadow-hover)}
.ac-bundle-image{aspect-ratio:1/1;border-radius:var(--ac-radius-sm);overflow:hidden;background:var(--ac-grad-media)}
.ac-bundle-image img{width:100%;height:100%;object-fit:cover}
.ac-bundle-copy{display:flex;flex-direction:column;min-width:0}
.ac-bundle-copy h3{font-size:var(--ac-fs-lg);margin:0 0 4px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.ac-bundle-copy p{color:#8a8390;font-size:var(--ac-fs-sm);margin:0 0 10px;line-height:1.5;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(2 * 1.5em)}
.ac-bundle-list{list-style:none;padding:0;margin:0 0 12px;font-size:var(--ac-fs-sm);color:#6c6671}
.ac-bundle-list li::before{content:"✓";color:var(--ac-purple);font-weight:700;margin-right:6px}
.ac-bundle-bottom{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}
.ac-bundle-price{font-size:var(--ac-fs-xl);font-weight:700}
.ac-bundle-price del{font-size:var(--ac-fs-2xs);color:#96909b;font-weight:500;margin-left:6px}
.ac-bundle-card .ac-btn{min-height:38px;padding:0 16px;font-size:var(--ac-fs-xs)}

/* Reviews + CTA */
/* Footer */
/* Shop archive */
.ac-shop-hero{padding:76px 0 24px}
.ac-shop-hero h1{font-size:var(--ac-fs-5xl);letter-spacing:-.045em;line-height:1;margin:0 0 12px}
.ac-shop-hero p{color:#716b78;font-size:var(--ac-fs-base);max-width:660px;margin:0}.ac-shop-description{max-width:760px;color:#716b78;font-size:var(--ac-fs-base)}.ac-shop-description p{margin:0}
.ac-filter-pills{display:flex;gap:10px;flex-wrap:wrap;margin:28px 0 34px}
.ac-filter-pills a{border:0;border-radius:999px;padding:11px 20px;font-size:var(--ac-fs-sm);font-weight:600;color:#5e5964;background:#f4f0fa;transition:background-color .15s ease,color .15s ease}
.ac-filter-pills a.is-active{background:var(--ac-grad-purple);border-color:transparent;color:#fff;box-shadow:0 12px 24px -12px rgba(93,24,197,.5)}
.ac-filter-pills a:hover{background:#e5daf5;color:var(--ac-purple)}
.ac-filter-pills a.is-active:hover{background:var(--ac-grad-purple);color:#fff}
.ac-shop-grid-wrap{padding-bottom:86px}
.woocommerce .woocommerce-result-count,.woocommerce .woocommerce-ordering{display:none!important}
.woocommerce nav.woocommerce-pagination{margin:36px 0 0}
.woocommerce nav.woocommerce-pagination ul{border:0!important;display:flex;gap:8px;justify-content:center;align-items:center;list-style:none!important;margin:0!important;padding:0!important}
.woocommerce nav.woocommerce-pagination ul li{border:0!important;list-style:none!important;margin:0!important;padding:0!important;float:none!important}
.woocommerce nav.woocommerce-pagination ul li::marker{content:""}.woocommerce nav.woocommerce-pagination ul li a,.woocommerce nav.woocommerce-pagination ul li span{width:36px;height:36px;border:1px solid var(--ac-line)!important;border-radius:50%;display:grid!important;place-items:center;padding:0!important}
.woocommerce nav.woocommerce-pagination ul li span.current{background:var(--ac-purple)!important;color:#fff!important;border-color:var(--ac-purple)!important}

/* Single product */
.ac-product-page{padding:40px 0 0}
.ac-back-link{display:inline-flex;align-items:center;gap:7px;color:#8a8390;font-size:var(--ac-fs-xs);font-weight:500;margin-bottom:26px}
.ac-single-grid{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,1fr);gap:72px;align-items:start}
.ac-single-media{position:sticky;top:26px;display:flex;flex-direction:column;gap:16px}
.ac-single-main-image{position:relative;border-radius:var(--ac-radius-lg);overflow:hidden;background:var(--ac-grad-media);aspect-ratio:1/1;box-shadow:0 40px 70px -32px rgba(40,16,80,.28)}
.ac-single-main-image img{width:100%;height:100%;object-fit:cover}

/* PDP thumbnail gallery */
.ac-single-thumbs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin:0;padding:0;list-style:none}
.ac-single-thumb{position:relative;padding:0;border:0;background:var(--ac-grad-media);border-radius:var(--ac-radius-sm);overflow:hidden;aspect-ratio:1/1;cursor:pointer;box-shadow:0 6px 16px -10px rgba(40,16,80,.18);opacity:.55;transition:opacity .16s ease,box-shadow .16s ease,transform .16s ease}
.ac-single-thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ac-single-thumb:hover{opacity:.85;transform:translateY(-2px)}
.ac-single-thumb.is-active{opacity:1;box-shadow:var(--ac-ring),0 10px 22px -12px rgba(40,16,80,.25)}
.ac-single-thumb:focus-visible{outline:3px solid rgba(122,45,229,.3);outline-offset:3px}

.ac-single-info{padding-top:2px}
.ac-single-title{font-size:var(--ac-fs-5xl);line-height:1.04;letter-spacing:-.03em;margin:10px 0 14px;font-weight:800}
.ac-single-subtitle{font-size:var(--ac-fs-md);line-height:1.65;color:#514b5a;margin:0 0 22px;max-width:500px}
.ac-single-price{display:flex;align-items:baseline;gap:14px;color:var(--ac-purple);font-size:var(--ac-fs-3xl);font-weight:800;margin:0 0 24px}
.ac-single-price del{color:#a89fb0;font-size:var(--ac-fs-md);font-weight:500}
.ac-offer-label{display:flex;align-items:center;gap:8px;font-size:var(--ac-fs-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em;margin:0 0 14px}
.ac-offer-label svg{color:var(--ac-purple);width:15px;height:15px}
.ac-package-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:16px}
.ac-package-option{position:relative;border:0;border-radius:var(--ac-radius-sm);padding:18px 16px 16px;cursor:pointer;min-height:112px;background:#fff;box-shadow:inset 0 0 0 1.5px #e6e1ee,var(--ac-shadow-sm);transition:transform .15s ease,box-shadow .15s ease}
.ac-package-option:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1.5px var(--ac-purple-line),var(--ac-shadow)}
.ac-package-option input{position:absolute;opacity:0;pointer-events:none}
.ac-package-option.is-selected{border:0;background:#fbf8ff;box-shadow:var(--ac-ring),0 16px 30px -16px rgba(93,24,197,.35)}
.ac-package-option strong{display:block;font-size:var(--ac-fs-sm);margin-bottom:3px}
.ac-package-option small{display:block;color:#8a8390;font-size:var(--ac-fs-xs);min-height:17px}
.ac-package-option .ac-package-price{display:block;color:var(--ac-ink);font-size:var(--ac-fs-lg);font-weight:800;margin-top:9px}
.ac-package-option.is-selected .ac-package-price{color:var(--ac-purple)}
.ac-package-option del{font-size:var(--ac-fs-2xs);color:#a89fb0;display:block}.ac-package-option em{display:block;margin-top:5px;color:var(--ac-green-text);font-style:normal;font-size:var(--ac-fs-2xs);font-weight:700}
.ac-free-note{background:var(--ac-green);color:var(--ac-green-text);border-radius:14px;padding:12px 16px;font-size:var(--ac-fs-sm);font-weight:600;margin-bottom:22px;display:none}
.ac-free-note.is-visible{display:block}
.ac-single-cart-form{margin:0 0 16px!important}
.ac-single-cart-form .single_add_to_cart_button{width:100%;min-height:58px!important;font-size:var(--ac-fs-md)!important}
.ac-bundle-upsell{margin:64px 0 0;border:0;background:#fbf8ff;border-radius:var(--ac-radius);padding:26px 30px;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center;box-shadow:var(--ac-shadow)}
.ac-bundle-upsell-inner{display:grid;grid-template-columns:92px 1fr;gap:18px;align-items:center}
.ac-bundle-upsell-image{width:92px;height:80px;border-radius:var(--ac-radius-sm);overflow:hidden;background:var(--ac-grad-media)}
.ac-bundle-upsell-image img{width:100%;height:100%;object-fit:cover}
.ac-bundle-upsell small{color:var(--ac-purple);font-size:var(--ac-fs-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.08em}
.ac-bundle-upsell h3{font-size:var(--ac-fs-lg);margin:4px 0 2px}
.ac-bundle-upsell p{font-size:var(--ac-fs-sm);color:#8a8390;margin:0}
.ac-bundle-upsell-action{text-align:right}
.ac-bundle-upsell-action strong{display:block;color:var(--ac-purple);font-size:var(--ac-fs-xl);font-weight:800;margin-bottom:10px}
.ac-related-wrap{padding:72px 0 88px}
.ac-related-wrap h2{font-size:var(--ac-fs-2xl);font-weight:800;letter-spacing:-.02em;margin:0 0 26px}

/* Cart drawer */
.ac-drawer-overlay{position:fixed;inset:0;background:rgba(18,13,27,.38);z-index:900;opacity:0;visibility:hidden;transition:.2s}
.ac-cart-drawer{position:fixed;right:0;top:0;width:min(420px,92vw);height:100dvh;background:#fff;z-index:910;transform:translateX(100%);transition:.23s ease;display:flex;flex-direction:column;box-shadow:-20px 0 50px rgba(25,15,35,.12)}
body.ac-cart-open .ac-drawer-overlay{opacity:1;visibility:visible}
body.ac-cart-open .ac-cart-drawer{transform:none}
.ac-cart-drawer-head{height:68px;padding:0 20px;border-bottom:1px solid var(--ac-line);display:flex;align-items:center;justify-content:space-between}
.ac-cart-drawer-head strong{font-size:var(--ac-fs-lg)}
.ac-drawer-close{width:40px;height:40px;border:1px solid var(--ac-line);border-radius:50%;background:#fff;font-size:18px;transition:border-color .15s ease,color .15s ease}
.ac-drawer-close:hover{border-color:var(--ac-purple-line);color:var(--ac-purple)}
.ac-cart-drawer-body{flex:1;overflow:auto;padding:18px 20px}
.ac-mini-item{display:grid;grid-template-columns:74px 1fr auto;gap:12px;padding:12px 0;border-bottom:1px solid var(--ac-line)}
.ac-mini-item img{width:74px;height:74px;object-fit:cover;border-radius:10px;background:#f4f2f6}
.ac-mini-item h4{font-size:var(--ac-fs-sm);line-height:1.3;margin:2px 0 5px}
.ac-mini-item p{font-size:var(--ac-fs-xs);color:#7c7680;margin:0}
.ac-mini-item-price{font-size:var(--ac-fs-sm);font-weight:700}
.ac-mini-remove{font-size:19px;color:#a29ca5;padding:9px;border-radius:50%;transition:color .15s ease,background-color .15s ease}
.ac-mini-remove:hover{color:#e04747;background:#fbeeee}
.ac-cart-empty{text-align:center;color:#807a85;padding:60px 10px}
.ac-cart-drawer-foot{border-top:1px solid var(--ac-line);padding:18px 20px 22px}.ac-cart-shipping-note{margin:0 0 10px;color:var(--ac-green-text);font-size:var(--ac-fs-xs);font-weight:700;text-align:center}
.ac-mini-subtotal{display:flex;justify-content:space-between;align-items:center;font-size:var(--ac-fs-sm);margin-bottom:13px}
.ac-mini-subtotal strong{font-size:var(--ac-fs-lg)}
.ac-cart-drawer-foot .ac-btn{width:100%}


/* Account modal */
body.ac-auth-open{overflow:hidden}
.ac-auth-modal{position:fixed;inset:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:20px;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .18s ease,visibility .18s ease}
body.ac-auth-open .ac-auth-modal{opacity:1;visibility:visible;pointer-events:auto}
.ac-auth-backdrop{position:absolute;inset:0;border:0;background:rgba(12,8,17,.58);backdrop-filter:blur(4px)}
.ac-auth-dialog{position:relative;z-index:1;width:min(430px,100%);max-height:min(720px,calc(100dvh - 32px));overflow:auto;background:#fff;border-radius:20px;padding:30px;box-shadow:0 28px 90px rgba(22,12,34,.25)}
.ac-auth-close{position:absolute;right:14px;top:12px;width:40px;height:40px;border:0;background:#f7f5f9;border-radius:50%;font-size:24px;line-height:1;color:#5f5966;display:grid;place-items:center;transition:background-color .15s ease,color .15s ease}
.ac-auth-close:hover{background:#efe8fa;color:var(--ac-purple)}
.ac-auth-brand{display:flex;justify-content:center;margin-bottom:24px}
.ac-auth-brand img{width:150px;height:auto}
.ac-auth-panel{display:none}
.ac-auth-panel.is-active{display:block}
.ac-auth-eyebrow{margin:0 0 7px;color:var(--ac-purple);font-size:var(--ac-fs-2xs);font-weight:700;letter-spacing:.08em;text-transform:uppercase}
.ac-auth-dialog h2{margin:0 0 8px;font-size:var(--ac-fs-2xl);line-height:1.15;letter-spacing:-.035em}
.ac-auth-subtitle{margin:0 0 22px;color:#77717f;font-size:var(--ac-fs-sm)}
.ac-auth-form{display:grid;gap:14px}
.ac-auth-form label{display:grid;gap:7px;font-size:var(--ac-fs-xs);font-weight:700;color:#3f3945}
.ac-auth-form input[type="text"],.ac-auth-form input[type="email"],.ac-auth-form input[type="password"]{width:100%;height:52px;border:0;border-radius:14px;background:var(--ac-soft);box-shadow:inset 0 0 0 1.5px #ece7f2;padding:0 15px;color:#17131d;outline:none;font-size:var(--ac-fs-md);transition:box-shadow .15s ease,background-color .15s ease}
.ac-auth-form input:focus{background:#fff;box-shadow:inset 0 0 0 2px var(--ac-purple)}
.ac-auth-form small{margin-top:-7px;color:#8a8490;font-size:var(--ac-fs-xs)}
.ac-auth-row{display:flex;justify-content:space-between;align-items:center;gap:12px}
.ac-auth-check{display:flex!important;grid-template-columns:auto 1fr!important;align-items:center;gap:7px!important;font-weight:500!important;color:#6d6673!important}
.ac-auth-check input{accent-color:var(--ac-purple)}
.ac-auth-text-link{border:0;background:none;padding:0;color:var(--ac-purple);font-size:var(--ac-fs-xs);font-weight:700;cursor:pointer}
.ac-auth-submit{width:100%;margin-top:2px}
.ac-auth-switch{text-align:center;margin:20px 0 0;color:#77717f;font-size:var(--ac-fs-xs)}
.ac-auth-message{display:none;border-radius:10px;padding:10px 12px;font-size:var(--ac-fs-xs);line-height:1.45}
.ac-auth-message.is-visible{display:block;background:#f5f1fb;color:#51475c}
.ac-auth-message.is-error{background:#fff1f1;color:#9b2c2c}
.ac-auth-message.is-success{background:#eef9f1;color:#26733c}
.ac-auth-form.is-loading .ac-auth-submit{opacity:.65;pointer-events:none}

/* Woo cart / checkout / account generic cleanup */
.woocommerce{--wc-primary:var(--ac-purple)}
/* WooCommerce notices. Core floats the inline .button right and relies on a
   clearfix, which collapses into overlapping text once the button is a tall
   pill — so lay the notice out as flex and stop the float. */
.woocommerce-message,.woocommerce-info,.woocommerce-error{
  display:flex!important;align-items:center;justify-content:space-between;
  gap:18px;flex-wrap:wrap;
  border:0!important;
  background:#fff!important;
  border-radius:var(--ac-radius-sm)!important;
  box-shadow:var(--ac-shadow);
  color:var(--ac-ink)!important;
  padding:18px 22px!important;margin:0 0 18px!important;
  font-size:var(--ac-fs-sm);
  list-style:none!important;
}
.woocommerce-message::before,.woocommerce-info::before,.woocommerce-error::before{
  display:none!important;
}
.woocommerce-message{box-shadow:var(--ac-shadow),inset 3px 0 0 var(--ac-green-text)}
.woocommerce-info{box-shadow:var(--ac-shadow),inset 3px 0 0 var(--ac-purple)}
.woocommerce-error{box-shadow:var(--ac-shadow),inset 3px 0 0 #d24747;color:#8f2f2f!important}
.woocommerce-message .button,.woocommerce-info .button,.woocommerce-error .button{
  float:none!important;margin:0!important;flex:0 0 auto;
  min-height:44px!important;padding:0 22px!important;font-size:var(--ac-fs-sm)!important;
}
.woocommerce-error li{list-style:none;margin:0}
.woocommerce-message::before,.woocommerce-info::before{color:var(--ac-purple)!important}
.woocommerce table.shop_table{border:1px solid var(--ac-line)!important;border-radius:14px!important;border-collapse:separate!important;overflow:hidden}
.woocommerce table.shop_table th,.woocommerce table.shop_table td{border-top:1px solid var(--ac-line)!important;padding:14px!important}
.woocommerce form .form-row input.input-text,.woocommerce form .form-row textarea,.woocommerce form .form-row select,.select2-container--default .select2-selection--single{border:1px solid #d9d4df!important;border-radius:10px!important;min-height:47px!important;padding:10px 12px!important;background:#fff!important}
.woocommerce-checkout #payment{background:#faf9fc!important;border:1px solid var(--ac-line);border-radius:14px!important}
.woocommerce-checkout #payment div.payment_box{background:#f4effb!important;border-radius:10px!important}
.woocommerce-checkout #payment div.payment_box::before{border-bottom-color:#f4effb!important}
.ac-content-page{padding:58px 0 90px}
.ac-content-page h1{font-size:var(--ac-fs-4xl);letter-spacing:-.04em}

/* Sticky mobile add */
.ac-mobile-sticky{display:none}

@media (max-width:980px){
  .ac-container{width:min(var(--ac-max),calc(100% - 30px))}
  .ac-site-header{height:66px}
  .ac-header-inner{grid-template-columns:auto 1fr auto}
  .ac-menu-toggle{display:grid}
  .ac-logo-link{justify-self:center}
  .ac-logo-link img{width:138px}
  .ac-nav{display:none;position:absolute;left:15px;right:15px;top:60px;background:#fff;border:1px solid var(--ac-line);border-radius:16px;padding:10px;box-shadow:var(--ac-shadow)}
  .ac-nav.is-open{display:block}
  .ac-nav-list{display:flex;flex-direction:column;align-items:stretch;gap:0}
  .ac-nav a{display:block;padding:12px 10px}
  .ac-hero{min-height:540px}
  .ac-hero-v2{min-height:540px;background-position:70% center}
  .ac-hero-v2__inner{min-height:540px;padding:72px 0 60px}
  .ac-hero-v2__copy{max-width:58vw}
  .ac-hero::before{inset:0;background-position:60% 56%;opacity:1;filter:none}
  .ac-hero::after{display:none!important}
  .ac-hero-inner{min-height:540px}
  .ac-hero-copy{width:58%}
  .ac-featured-grid,.ac-single-grid{gap:32px}
  .ac-product-grid,.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  }

@media (max-width:720px){
  .ac-container{width:calc(100% - 28px)}
  .ac-site-header{position:sticky;top:0;z-index:100}
  .ac-hero{min-height:540px;padding:0;background:#09070d}
  .ac-hero-v2{min-height:560px;background-position:72% center}
  .ac-hero-v2__inner{min-height:560px;align-items:flex-end;padding:82px 0 40px}
  .ac-hero-v2__copy{max-width:100%}
  .ac-hero-v2 h1{max-width:390px}
  .ac-hero-v2 p{font-size:var(--ac-fs-sm);max-width:360px;color:rgba(255,255,255,.82)}
  .ac-hero-v2__actions{display:grid;grid-template-columns:1fr;gap:10px}
  .ac-hero-v2__actions .ac-btn{width:100%}
  .ac-hero-v2__trust{gap:12px;font-size:var(--ac-fs-2xs);color:rgba(255,255,255,.82)}
  .ac-hero::before{position:absolute;display:block;inset:0;height:auto;background-position:62% center;opacity:1;filter:none;order:initial}
  .ac-hero::after{display:none!important}
  .ac-hero-inner{min-height:540px;display:flex;align-items:flex-end}
  .ac-hero-copy{width:76%;padding:64px 0 38px}
  .ac-hero h1{max-width:470px}
  .ac-hero p{font-size:var(--ac-fs-sm);max-width:450px;color:rgba(255,255,255,.8)}
  .ac-hero-trust{gap:12px;font-size:var(--ac-fs-xs);color:rgba(255,255,255,.8)}
  .ac-ticker span{padding:9px 18px}
  .ac-featured{padding:52px 0}
  .ac-featured-grid,.ac-single-grid{grid-template-columns:1fr;gap:28px}
  .ac-featured-copy h2,.ac-single-title{font-size:var(--ac-fs-3xl)}
  .ac-package-mini-grid,.ac-package-grid{grid-template-columns:1fr;gap:8px}
  .ac-package-mini,.ac-package-option{min-height:auto}
  .ac-package-option small{min-height:0}
  .ac-products-section{padding:56px 0}
  .ac-section-head h2{font-size:var(--ac-fs-2xl)}
  .ac-product-grid,.products{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:10px!important}
  .ac-product-info{padding:10px;min-height:153px}
  .ac-product-title,.woocommerce ul.products li.product .woocommerce-loop-product__title{font-weight:600!important;font-size:var(--ac-fs-sm)!important}
  .ac-product-excerpt{font-size:var(--ac-fs-xs)}
  .ac-card-price,.woocommerce ul.products li.product .price{font-size:var(--ac-fs-md)!important}
  .ac-bundle-grid{grid-template-columns:1fr}
  .ac-bundle-card{grid-template-columns:116px 1fr;padding:12px;gap:13px}
  .ac-bundle-bottom{align-items:flex-start;flex-direction:column}
.ac-shop-hero{padding:48px 0 14px}
  .ac-shop-hero h1{font-size:var(--ac-fs-4xl)}
  .ac-filter-pills{margin:20px 0 24px;overflow-x:auto;flex-wrap:nowrap;padding-bottom:3px}
  .ac-filter-pills a{white-space:nowrap}
  .ac-product-page{padding-top:30px}
  .ac-single-media{position:static}
  .ac-bundle-upsell{grid-template-columns:1fr;padding:16px}
  .ac-bundle-upsell-action{text-align:left;display:flex;align-items:center;justify-content:space-between}
  .ac-related-wrap{padding:44px 0 95px}
  .ac-mobile-sticky{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:80;background:#fff;border-top:1px solid var(--ac-line);padding:10px 14px calc(10px + env(safe-area-inset-bottom));gap:10px;align-items:center;box-shadow:0 -8px 30px rgba(35,20,50,.08)}
  .ac-mobile-sticky .ac-btn{flex:1;min-height:44px;width:100%}
}

@media (max-width:430px){
  .ac-header-inner{gap:8px}
  .ac-logo-link img{width:124px}
  .ac-cart-button,.ac-menu-toggle{width:40px;height:40px}
  .ac-hero-actions .ac-btn{width:100%}
  .ac-hero::before{height:auto}
  .ac-product-grid,.products{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ac-card-badge{font-size:var(--ac-fs-2xs);padding:3px 6px;left:7px;top:7px}
  .ac-card-offer{font-size:var(--ac-fs-2xs);padding:3px 6px;left:7px;bottom:7px}
  .ac-product-info{min-height:148px;padding:9px}
  .ac-product-excerpt{min-height:39px}
  .ac-quick-add,.woocommerce ul.products li.product a.add_to_cart_button{width:34px!important;height:34px!important;min-height:34px!important;flex-basis:34px}
  .ac-bundle-card{grid-template-columns:95px 1fr}
.ac-single-title{font-size:var(--ac-fs-3xl)}
  }

/* ===== v1.1 storefront corrections ===== */
.ac-menu-toggle svg{width:18px;height:18px}
.ac-nav-list>li{margin:0;padding:0;list-style:none}
.ac-nav-list>li>a{display:block}
.ac-hero-pill svg,.ac-hero-actions .ac-btn svg,.ac-ticker svg{width:14px;height:14px;flex:0 0 14px}
.ac-ticker span{align-items:center}
.ac-ticker svg{color:var(--ac-purple)}

/* Homepage offer selector */
.ac-package-mini{
  appearance:none;-webkit-appearance:none;text-align:left;width:100%;font:inherit;color:var(--ac-ink);cursor:pointer
}
.ac-package-mini{transition:transform .16s ease,box-shadow .16s ease}
.ac-package-mini:hover{transform:translateY(-2px);box-shadow:inset 0 0 0 1.5px var(--ac-purple-line),var(--ac-shadow)}
.ac-package-mini.is-selected{border:0;background:#fbf8ff;box-shadow:var(--ac-ring),0 16px 30px -16px rgba(93,24,197,.35)}
.ac-package-mini:focus-visible{outline:3px solid rgba(122,45,229,.3);outline-offset:3px}
/* Single product page: exact custom layout, never default WooCommerce stack */
.single-product .ac-site-header+main{min-height:60vh}
.ac-product-page>.ac-container{max-width:1180px}
.ac-single-grid{grid-template-columns:minmax(0,1.02fr) minmax(0,.98fr);gap:50px}
.ac-single-main-image{box-shadow:0 18px 46px rgba(122,45,229,.16)}
.ac-single-main-image::after{content:"";position:absolute;left:8%;right:8%;bottom:-34px;height:62px;background:rgba(122,45,229,.13);filter:blur(28px);z-index:-1;pointer-events:none}
.ac-single-title{max-width:560px}
.ac-package-option{display:block}
.ac-package-option:hover{border-color:var(--ac-purple-line)}
.ac-free-note{align-items:center;gap:8px}
.ac-free-note.is-visible{display:flex}
.ac-free-note svg{width:15px;height:15px;flex:0 0 15px}
.ac-single-cart-form .single_add_to_cart_button.is-loading{opacity:.65;pointer-events:none}
.ac-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
.ac-bundle-upsell-action .price del,.ac-bundle-upsell-action del{color:#99929e;font-size:var(--ac-fs-2xs);margin-left:5px}

/* Informational/support pages created by the theme */
.ac-content-page article{max-width:100%}
.ac-content-page article>h1{margin:0 0 32px}
.ac-info-intro{max-width:760px;margin:0 0 34px}
.ac-info-intro h2{font-size:var(--ac-fs-3xl);line-height:1.08;letter-spacing:-.035em;margin:0 0 12px}
.ac-info-intro p{color:var(--ac-muted);font-size:var(--ac-fs-base)}
.ac-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin:24px 0 34px}
.ac-info-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
.ac-info-card,.ac-contact-card,.ac-info-note{border:0;border-radius:20px;background:#fff;padding:28px;box-shadow:var(--ac-shadow);transition:transform .18s ease,box-shadow .18s ease}
.ac-info-card:hover,.ac-contact-card:hover{transform:translateY(-3px);box-shadow:var(--ac-shadow-hover)}
.ac-info-card h3,.ac-contact-card h3{margin:0 0 8px;font-size:var(--ac-fs-lg)}
.ac-info-card p,.ac-contact-card p,.ac-info-note p{margin:0;color:var(--ac-muted);font-size:var(--ac-fs-sm);line-height:1.65}
.ac-step-number{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:var(--ac-purple);color:#fff;font-weight:700;margin-bottom:16px}
.ac-info-note{background:var(--ac-purple-soft);box-shadow:none;margin-top:20px}
.ac-info-note strong{display:block;font-size:var(--ac-fs-lg);margin-bottom:6px}
.ac-faq-list{display:grid;gap:12px;max-width:900px}
.ac-faq-list details{border:0;border-radius:18px;padding:2px 22px;background:#fff;box-shadow:var(--ac-shadow-sm);transition:box-shadow .15s ease}
.ac-faq-list details:hover{box-shadow:var(--ac-shadow)}
.ac-faq-list details[open]{box-shadow:var(--ac-shadow)}
.ac-faq-list summary{cursor:pointer;font-weight:700;padding:19px 30px 19px 0;position:relative;list-style:none}
.ac-faq-list summary::-webkit-details-marker{display:none}
.ac-faq-list summary::after{content:"+";position:absolute;right:0;top:50%;transform:translateY(-50%);color:var(--ac-purple);font-size:22px;font-weight:500}
.ac-faq-list details[open] summary::after{content:"–"}
.ac-faq-list details p{margin:0;padding:0 0 18px;color:var(--ac-muted);font-size:var(--ac-fs-sm);line-height:1.65}
.ac-contact-card{max-width:620px}

/* WooCommerce pages not covered by custom archive/single */
.woocommerce-cart .ac-content-page,.woocommerce-checkout .ac-content-page{padding-top:44px}

@media (max-width:980px){
  .ac-nav{z-index:80}
  .ac-nav-list{width:100%}
  .ac-nav-list>li+li{border-top:1px solid var(--ac-line)}
  .ac-nav a{padding:13px 12px}
  .ac-related-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
  .ac-info-grid--3{grid-template-columns:1fr 1fr}
}

@media (max-width:720px){
  .ac-header-inner{gap:10px}
  .ac-nav{top:58px;left:14px;right:14px;padding:6px;border-radius:14px}
  .ac-nav a{font-size:var(--ac-fs-sm);padding:13px 11px}
  .ac-hero-actions{gap:10px}
  .ac-hero-actions .ac-btn{min-height:44px;padding-inline:17px}
  .ac-package-mini-grid{gap:10px}
  .ac-package-mini{padding:14px 14px;min-height:92px}
  .ac-product-page{padding-top:24px}
  .ac-back-link{margin-bottom:16px}
  .ac-single-grid{gap:24px}
  .ac-single-main-image{border-radius:15px}
  .ac-single-title{font-size:var(--ac-fs-4xl);line-height:1.07;margin-top:4px}
  .ac-single-subtitle{font-size:var(--ac-fs-sm)}
  .ac-single-price{font-size:var(--ac-fs-xl);margin-bottom:16px}
  .ac-package-grid{grid-template-columns:1fr;gap:9px}
  .ac-package-option{padding:14px 14px;min-height:86px}
  .ac-package-option strong{font-size:var(--ac-fs-sm)}
  .ac-package-option small{font-size:var(--ac-fs-xs)}
  .ac-package-option .ac-package-price{font-size:var(--ac-fs-lg);margin-top:5px}
  .ac-package-ribbon{top:-9px}
  .ac-free-note{margin-bottom:12px}
  .ac-single-cart-form .single_add_to_cart_button{min-height:48px!important}
  .ac-bundle-upsell{margin-top:42px;gap:14px}
  .ac-bundle-upsell-inner{grid-template-columns:78px 1fr;gap:12px}
  .ac-bundle-upsell-image{width:78px;height:70px}
  .ac-bundle-upsell-action{gap:12px}
  .ac-bundle-upsell-action .ac-btn{min-height:40px;padding-inline:15px}
  .ac-related-wrap h2{font-size:var(--ac-fs-xl)}
  .ac-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}

  .ac-info-intro h2{font-size:var(--ac-fs-2xl)}
  .ac-info-grid,.ac-info-grid--3{grid-template-columns:1fr}
  .ac-info-card,.ac-contact-card,.ac-info-note{padding:19px}
}

@media (max-width:430px){
  .ac-site-header{height:60px}
  .ac-logo-link img{width:118px}
  .ac-menu-toggle,.ac-cart-button{width:36px;height:36px}
  .ac-nav{top:54px}
  .ac-hero-copy{padding-top:34px}
  .ac-hero-actions .ac-btn{width:100%}
  .ac-featured{padding:46px 0}
  .ac-featured-copy h2{font-size:var(--ac-fs-2xl)}
  .ac-package-mini{min-height:84px}
  .ac-product-grid,.products{gap:9px!important}
  .ac-product-info{min-height:145px;padding:9px}
  .ac-product-excerpt{font-size:var(--ac-fs-xs);line-height:1.4}
  .ac-bundle-card{padding:11px;gap:11px}
  .ac-bundle-card .ac-btn{width:auto;min-height:34px;padding-inline:12px}

  .ac-single-title{font-size:var(--ac-fs-3xl)}
  .ac-offer-label{font-size:var(--ac-fs-2xs)}
  .ac-related-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ac-bundle-upsell{padding:14px}
  .ac-bundle-upsell-inner{grid-template-columns:64px 1fr}
  .ac-bundle-upsell-image{width:64px;height:60px}
  .ac-bundle-upsell h3{font-size:var(--ac-fs-lg)}
  .ac-bundle-upsell p{font-size:var(--ac-fs-xs)}
  .ac-bundle-upsell-action strong{font-size:var(--ac-fs-lg)}
  .ac-mobile-sticky{padding-left:12px;padding-right:12px}
}

@media (max-width:782px){body.admin-bar .ac-site-header{top:46px}}


/* v1.1.3 — full-bleed approved hero + update-safe package */
@media (max-width:560px){
  .ac-hero{min-height:520px}
  .ac-hero::before{background-position:64% center}
  .ac-hero-inner{min-height:520px}
  .ac-hero-copy{width:88%;padding:54px 0 30px}
  .ac-hero h1{line-height:1.03}
  .ac-hero-actions{margin-bottom:17px}
  .ac-hero-actions .ac-btn{min-height:43px}
  .ac-hero-trust{max-width:340px}
}

@media (max-width:560px){
  .ac-hero-v2{min-height:520px;background-position:74% center}
  .ac-hero-v2__inner{min-height:520px;padding:72px 0 32px}
  .ac-hero-v2 h1{max-width:300px}
  .ac-hero-v2 p{font-size:var(--ac-fs-sm);max-width:290px}
  .ac-hero-v2__trust{gap:9px}
  .ac-hero-v2__trust span{font-size:var(--ac-fs-xs)}
}




/* v1.1.8 responsive header / topbar / auth / hero CTA normalization */
@media (max-width:980px){
  .ac-topbar{height:34px;font-size:var(--ac-fs-2xs)}
  .ac-site-header{height:64px}
  .ac-header-inner{grid-template-columns:40px 1fr auto;gap:10px}
  .ac-menu-toggle{display:grid}
  .ac-logo-link{justify-self:center}
  .ac-logo-link img{width:132px}
  .ac-header-actions{gap:11px}
  .ac-header-icon{width:30px;height:40px}
  .ac-header-icon svg{width:23px;height:23px}
  .ac-nav{top:58px}
}
@media (max-width:720px){
  .ac-header-inner{width:calc(100% - 22px)}
  .ac-logo-link img{width:124px}
  .ac-header-actions{gap:8px}
  .ac-header-icon{width:29px;height:38px}
  .ac-header-icon svg{width:22px;height:22px}
  .ac-cart-count{right:-6px;top:0;min-width:16px;height:16px}
  .ac-hero-v2__actions{display:grid;grid-template-columns:1fr;gap:10px}
  .ac-hero-v2__actions .ac-btn{width:100%;min-height:48px;padding:0 18px;font-size:var(--ac-fs-sm)}
  .ac-auth-dialog{padding:27px 20px 22px;border-radius:18px}
  .ac-auth-dialog h2{font-size:var(--ac-fs-2xl)}
}
@media (max-width:420px){
  .ac-topbar{height:32px;font-size:var(--ac-fs-2xs)}
  .ac-site-header{height:60px}
  .ac-header-inner{grid-template-columns:34px 1fr auto;gap:6px}
  .ac-menu-toggle{width:34px;height:36px}
  .ac-logo-link img{width:112px}
  .ac-header-actions{gap:6px}
  .ac-header-icon{width:27px;height:36px}
  .ac-header-icon svg{width:21px;height:21px}
  .ac-auth-modal{padding:12px}
}


/* v1.1.9: static brand trust bar + reference header icons + Montserrat hierarchy */
@media (max-width:720px){
  .ac-topbar-inner{grid-template-columns:1fr 1fr}
  .ac-topbar-secure{display:none!important}
  .ac-topbar span{font-size:var(--ac-fs-2xs);gap:5px}
  .ac-topbar span:nth-child(2){border-left:1px solid #dfd2f1}
  .ac-topbar svg{width:12px;height:12px;flex-basis:12px}
}
@media (max-width:420px){
  .ac-topbar{height:30px}
  .ac-topbar-inner{width:calc(100% - 16px)}
  .ac-topbar span{letter-spacing:-.01em}
  .ac-topbar strong{font-weight:600}
}


/* v1.1.10 — exact header icon direction, stronger top bar, simplified hero */
@media (max-width:980px){
  .ac-header-actions{gap:11px}
  .ac-header-icon{width:34px;height:42px}
  .ac-header-icon svg{width:27px;height:27px}
  .ac-nav a{font-weight:700}
  .ac-hero-v2__copy{max-width:55vw}
  .ac-hero-v2 h1{max-width:530px}
  .ac-hero-v2 p{font-size:var(--ac-fs-base);max-width:500px}
}
@media (max-width:720px){
  .ac-topbar{height:34px}
  .ac-topbar span{color:#fff}
  .ac-topbar span:nth-child(2){border-left:1px solid rgba(255,255,255,.24)}
  .ac-header-actions{gap:8px}
  .ac-header-icon{width:31px;height:40px}
  .ac-header-icon svg{width:25px;height:25px}
  .ac-hero-v2{min-height:570px;background-position:72% center}
  .ac-hero-v2__inner{min-height:570px;align-items:flex-end;padding:72px 0 34px}
  .ac-hero-v2__copy{max-width:100%}
  .ac-hero-v2 .ac-hero-pill{font-size:var(--ac-fs-2xs);margin-bottom:14px}
  .ac-hero-v2 h1{line-height:1.05;max-width:380px;margin-bottom:14px}
  .ac-hero-v2 p{font-size:var(--ac-fs-sm);line-height:1.55;max-width:350px;margin-bottom:20px}
  .ac-hero-v2__actions{display:grid;grid-template-columns:1fr;gap:9px;width:min(100%,360px)}
  .ac-hero-v2__actions .ac-btn{width:100%;min-height:46px;padding:0 16px;font-size:var(--ac-fs-xs);border-radius:10px}
  .ac-hero-v2__trust{gap:9px 14px;font-size:var(--ac-fs-xs);max-width:370px}
}
@media (max-width:480px){
  .ac-topbar{height:32px}
  .ac-topbar-inner{width:calc(100% - 14px)}
  .ac-header-actions{gap:5px}
  .ac-header-icon{width:29px;height:38px}
  .ac-header-icon svg{width:23px;height:23px}
  .ac-hero-v2{min-height:540px;background-position:74% center}
  .ac-hero-v2__inner{min-height:540px;padding:64px 0 28px}
  .ac-hero-v2 h1{max-width:310px}
  .ac-hero-v2 p{font-size:var(--ac-fs-xs);max-width:295px}
  .ac-hero-v2__trust{display:grid;grid-template-columns:1fr 1fr;gap:8px 10px}
  }


.ac-topbar-message{
  display:block;
  margin:0;
  color:#fff;
  text-align:center;
  font-size:var(--ac-fs-2xs);
  line-height:1.2;
  font-weight:700;
  letter-spacing:.025em;
  text-transform:uppercase;
  white-space:normal;
}


/* v1.1.11 — rebuilt homepage proof strip */
.ac-home-proof{
  background:var(--ac-soft);
  border-top:0;
  border-bottom:0;
  padding:44px 0;
}
.ac-home-proof__grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:24px;
}
.ac-home-proof__item{
  min-width:0;
  display:grid;
  grid-template-columns:52px minmax(0,1fr);
  gap:16px;
  align-items:center;
  padding:0;
}
.ac-home-proof__item:first-child{padding-left:0}
.ac-home-proof__item:last-child{padding-right:0}
.ac-home-proof__item + .ac-home-proof__item{border-left:0}
.ac-home-proof__icon{
  width:52px;
  height:52px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 16px 30px -14px rgba(93,24,197,.3);
  color:var(--ac-purple);
  display:grid;
  place-items:center;
  flex:0 0 52px;
}
.ac-home-proof__icon svg{
  width:22px;
  height:22px;
  display:block;
  stroke-width:1.8;
}
.ac-home-proof__item strong{
  display:block;
  margin:0 0 3px;
  color:#17131c;
  font-size:var(--ac-fs-sm);
  line-height:1.3;
  font-weight:700;
}
.ac-home-proof__item p{
  margin:0;
  color:#7a7480;
  font-size:var(--ac-fs-xs);
  line-height:1.45;
  font-weight:400;
}


@media (max-width:980px){
  .ac-topbar,.ac-topbar-inner{min-height:34px}
  .ac-home-proof{padding:18px 0}
  .ac-home-proof__grid{grid-template-columns:repeat(2,minmax(0,1fr));row-gap:18px}
  .ac-home-proof__item{padding:0 18px}
  .ac-home-proof__item:nth-child(odd){padding-left:0;border-left:0}
  .ac-home-proof__item:nth-child(even){padding-right:0}
  .ac-home-proof__item:nth-child(3){border-left:0}
}
@media (max-width:560px){
  .ac-topbar,.ac-topbar-inner{min-height:32px}
  .ac-topbar-message{
    line-height:1.25;
    letter-spacing:.01em;
    text-transform:none;
  }
  .ac-home-proof{padding:16px 0}
  .ac-home-proof__grid{grid-template-columns:1fr;gap:0}
  .ac-home-proof__item,
  .ac-home-proof__item:first-child,
  .ac-home-proof__item:last-child,
  .ac-home-proof__item:nth-child(odd),
  .ac-home-proof__item:nth-child(even){
    padding:13px 0;
    border-left:0;
    border-top:1px solid #eeeaf1;
    grid-template-columns:38px minmax(0,1fr);
    gap:10px;
  }
  .ac-home-proof__item:first-child{border-top:0;padding-top:0}
  .ac-home-proof__item:last-child{padding-bottom:0}
  .ac-home-proof__icon{width:38px;height:38px;border-radius:11px}
  .ac-home-proof__icon svg{width:18px;height:18px}
}


/* v1.1.12 — rebuilt final CTA */
.ac-final-cta{
  position:relative;
  overflow:hidden;
  background:linear-gradient(135deg,#5f17c8 0%,#7a2de5 52%,#8b3cff 100%);
  color:#fff;
  border:0;
  padding:64px 20px;
  text-align:center;
}
.ac-final-cta::before{
  content:"";
  position:absolute;
  top:-40%;
  left:-12%;
  width:560px;
  height:560px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(255,255,255,.18) 0%,rgba(255,255,255,.06) 45%,rgba(255,255,255,0) 72%);
  pointer-events:none;
}
.ac-final-cta::after{
  content:"";
  position:absolute;
  right:-140px;
  bottom:-220px;
  width:520px;
  height:520px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(20,4,46,.4) 0%,rgba(20,4,46,.12) 45%,rgba(20,4,46,0) 72%);
  pointer-events:none;
}
.ac-final-cta__inner{
  position:relative;
  z-index:1;
  max-width:760px;
}
.ac-final-cta__eyebrow{
  display:block;
  margin:0 0 10px;
  color:rgba(255,255,255,.82);
  font-size:var(--ac-fs-2xs);
  line-height:1.2;
  font-weight:700;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.ac-final-cta h2{
  margin:0 0 12px;
  color:#fff;
  font-size:var(--ac-fs-4xl);
  line-height:1.08;
  letter-spacing:-.035em;
  font-weight:700;
}
.ac-final-cta p{
  max-width:620px;
  margin:0 auto 24px;
  color:rgba(255,255,255,.84);
  font-size:var(--ac-fs-sm);
  line-height:1.55;
  font-weight:400;
}
.ac-final-cta__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:9px;
  min-height:48px;
  padding:0 24px;
  border:1px solid #fff;
  border-radius:12px;
  background:#fff;
  color:#6420ce;
  font-size:var(--ac-fs-sm);
  font-weight:700;
  line-height:1;
  transition:.18s ease;
}
.ac-final-cta__button:hover{
  background:#f8f3ff;
  color:#5715bd;
  transform:translateY(-1px);
}
.ac-final-cta__button span{
  font-size:16px;
  line-height:1;
}
@media (max-width:720px){
  .ac-final-cta{padding:52px 16px}
  .ac-final-cta h2{font-size:var(--ac-fs-3xl)}
  .ac-final-cta p{font-size:var(--ac-fs-xs);max-width:500px}
  .ac-final-cta__button{min-height:46px;padding:0 20px;font-size:var(--ac-fs-xs)}
}
@media (max-width:420px){
  .ac-final-cta{padding:46px 14px}
  .ac-final-cta__eyebrow{font-size:var(--ac-fs-2xs)}
  .ac-final-cta h2{font-size:var(--ac-fs-2xl)}
  .ac-final-cta p{font-size:var(--ac-fs-xs);margin-bottom:20px}
  .ac-final-cta__button{width:100%;max-width:290px}
}

/* v1.1.13 — offer selector state fix */
.ac-package-mini.is-featured:not(.is-selected){
  border:0!important;
  background:#fff!important;
  box-shadow:inset 0 0 0 1.5px #e6e1ee,var(--ac-shadow-sm)!important;
}
.ac-package-mini.is-selected{
  border:0!important;
  background:#fbf8ff!important;
  box-shadow:var(--ac-ring),0 16px 30px -16px rgba(93,24,197,.35)!important;
}


/* v1.1.14 — slightly smaller brand mark */
.ac-logo-link img{width:130px}
@media (max-width:980px){.ac-logo-link img{width:120px}}
@media (max-width:720px){.ac-logo-link img{width:110px}}
@media (max-width:420px){.ac-logo-link img{width:104px}}

.ac-hero-v2__trust .ac-stars{color:#fff;font-size:var(--ac-fs-xs)}
#ac-reviews{scroll-margin-top:120px}
#reviews{scroll-margin-top:120px}


/* v1.1.15 — premium reviews section */
.ac-reviews{
  padding:78px 0 82px;
  background:linear-gradient(180deg,#faf7ff 0%,#fff 100%);
  border-top:1px solid #eee7f6;
}
.ac-reviews-head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:40px;
  margin-bottom:30px;
}
.ac-reviews-head>div:first-child{max-width:650px}
.ac-reviews-eyebrow{
  display:block;
  margin:0 0 7px;
  color:#7a2de5;
  font-size:var(--ac-fs-2xs);
  line-height:1.2;
  font-weight:700;
  letter-spacing:.13em;
  text-transform:uppercase;
}
.ac-reviews h2{
  margin:0 0 9px;
  color:#15121c;
  font-size:var(--ac-fs-3xl);
  line-height:1.08;
  letter-spacing:-.035em;
  font-weight:700;
  text-align:left;
}
.ac-reviews-head p{
  max-width:610px;
  margin:0;
  color:#746e7a;
  font-size:var(--ac-fs-sm);
  line-height:1.6;
}
.ac-reviews-summary{
  flex:0 0 auto;
  display:flex;
  align-items:center;
  gap:15px;
  min-width:210px;
  padding:18px 22px;
  border:1px solid var(--ac-purple-line);
  border-radius:16px;
  background:linear-gradient(135deg,#faf6ff 0%,#fff 72%);
  box-shadow:0 10px 28px rgba(89,35,152,.10);
}
.ac-reviews-summary>strong{
  color:#17131c;
  font-size:var(--ac-fs-4xl);
  line-height:1;
  letter-spacing:-.04em;
  font-weight:700;
}
.ac-reviews-summary .ac-stars{font-size:var(--ac-fs-xs)}
.ac-reviews-summary span{
  display:block;
  margin-top:2px;
  color:#756f7a;
  font-size:var(--ac-fs-xs);
  font-weight:500;
}
.ac-review-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:22px;
}
.ac-review{
  min-width:0;
  min-height:218px;
  display:flex;
  flex-direction:column;
  padding:26px;
  border:0;
  border-radius:22px;
  background:#fff;
  box-shadow:var(--ac-shadow);
  transition:transform .18s ease,box-shadow .18s ease;
}
.ac-review:hover{
  transform:translateY(-4px);
  box-shadow:var(--ac-shadow-hover);
}
.ac-review-top{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  gap:11px;
  align-items:center;
  margin-bottom:14px;
}
.ac-review-avatar{
  width:44px;
  height:44px;
  display:grid;
  place-items:center;
  border-radius:50%;
  background:linear-gradient(135deg,#f0e6ff 0%,#e2cdff 100%);
  color:#5d18c5;
  font-size:var(--ac-fs-xs);
  font-weight:700;
}
.ac-review-top strong{
  display:block;
  margin:0;
  color:#1a1620;
  font-size:var(--ac-fs-sm);
  line-height:1.3;
  font-weight:700;
}
.ac-review-verified{
  display:inline-flex;
  align-items:center;
  gap:4px;
  margin-top:4px;
  padding:2px 8px 2px 6px;
  border-radius:999px;
  background:var(--ac-green);
  color:var(--ac-green-text);
  font-size:var(--ac-fs-2xs);
  line-height:1.4;
  font-weight:700;
}
.ac-review-verified svg{
  width:10px;
  height:10px;
  color:var(--ac-green-text);
}
.ac-review-top>.ac-stars{
  align-self:start;
  margin-top:2px;
  font-size:var(--ac-fs-2xs);
}
.ac-review h3{
  margin:0 0 7px;
  color:#17131c;
  font-size:var(--ac-fs-lg);
  line-height:1.35;
  font-weight:700;
}
.ac-review h3::before{
  content:"\201C";
  display:block;
  font-family:Georgia,"Times New Roman",serif;
  font-size:34px;
  line-height:.6;
  color:var(--ac-purple-line);
  margin-bottom:6px;
}
.ac-review p{
  margin:0 0 16px;
  color:#625c68;
  font-size:var(--ac-fs-sm);
  line-height:1.65;
  font-weight:400;
}
.ac-review>a{
  display:inline-flex;
  align-items:center;
  margin-top:auto;
  color:#7a2de5;
  font-size:var(--ac-fs-xs);
  line-height:1.3;
  font-weight:600;
}
.ac-reviews-bottom{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  margin-top:22px;
  padding-top:20px;
  border-top:1px solid #e9e3ee;
}
.ac-reviews-bottom span{
  display:inline-flex;
  align-items:center;
  gap:7px;
  color:#655e6b;
  font-size:var(--ac-fs-xs);
  font-weight:500;
}
.ac-reviews-bottom span svg{
  width:14px;
  height:14px;
  color:#7a2de5;
}
.ac-reviews-bottom>a{
  color:#7a2de5;
  font-size:var(--ac-fs-xs);
  font-weight:700;
}
@media (max-width:980px){
  .ac-reviews{padding:64px 0 68px}
  .ac-reviews-head{align-items:flex-start}
  .ac-review-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .ac-reviews{padding:54px 0 58px}
  .ac-reviews-head{display:block;margin-bottom:22px}
  .ac-reviews h2{font-size:var(--ac-fs-2xl)}
  .ac-reviews-head p{font-size:var(--ac-fs-xs)}
  .ac-reviews-summary{width:max-content;margin-top:17px;min-width:175px}
  .ac-review-grid{grid-template-columns:1fr}
  .ac-review{min-height:auto;padding:18px}
  .ac-reviews-bottom{align-items:flex-start;flex-direction:column}
}
@media (max-width:420px){
  .ac-reviews h2{font-size:var(--ac-fs-xl)}
  .ac-reviews-summary>strong{font-size:var(--ac-fs-2xl)}
  .ac-review-top{grid-template-columns:38px minmax(0,1fr) auto}
  .ac-review-avatar{width:38px;height:38px}
}


/* Product-page purchase reassurance: one light inline row, not blocks */
.ac-product-trustline{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:14px 28px;
  margin:22px 0 28px;
  padding:22px 0 0;
  border-top:1px solid var(--ac-line);
  color:#514b5a;
  font-size:var(--ac-fs-sm);
  font-weight:500;
}
.ac-product-trustline span{
  display:inline-flex;
  align-items:center;
  gap:9px;
  padding:0;
  line-height:1.35;
}
.ac-product-trustline span:first-child{padding-left:0}
.ac-product-trustline span+span{border-left:0}
.ac-product-trustline svg{width:18px;height:18px;color:#7a2de5;flex:0 0 18px}
.ac-stock-line{
  display:inline-flex;
  align-items:center;
  gap:6px;
  margin:-10px 0 16px;
  color:#287f48;
  font-size:var(--ac-fs-xs);
  font-weight:600;
}
.ac-stock-line span{width:7px;height:7px;border-radius:50%;background:#31a45b}
.ac-rating-link{width:max-content;color:#706978;text-decoration:none}
.ac-rating-link:hover{color:#7a2de5}

/* Product reviews + customer submission */
.ac-pdp-reviews{
  margin:58px 0 52px;
  padding:34px;
  border:0;
  border-radius:var(--ac-radius-lg);
  background:var(--ac-soft);
}
.ac-pdp-reviews__head{
  display:flex;
  align-items:end;
  justify-content:space-between;
  gap:36px;
  margin-bottom:36px;
}
.ac-pdp-reviews__head>div:first-child{max-width:620px}
.ac-pdp-reviews__head h2{margin:0 0 10px;font-size:var(--ac-fs-2xl);font-weight:800;line-height:1.12;letter-spacing:-.02em}
.ac-pdp-reviews__head p{margin:0;color:var(--ac-muted);font-size:var(--ac-fs-sm);line-height:1.6}
.ac-pdp-reviews__score{
  display:flex;
  align-items:center;
  gap:18px;
  padding:20px 26px;
  border:0;
  border-radius:20px;
  background:linear-gradient(135deg,#faf6ff 0%,#fff 75%);
  box-shadow:0 20px 40px -22px rgba(93,24,197,.3);
  flex:0 0 auto;
}
.ac-pdp-reviews__score>strong{font-size:var(--ac-fs-4xl);line-height:1;font-weight:800;letter-spacing:-.03em}
.ac-pdp-reviews__score .ac-stars{font-size:var(--ac-fs-xs)}
.ac-pdp-reviews__score span{display:block;margin-top:4px;color:var(--ac-muted);font-size:var(--ac-fs-2xs);font-weight:600}
.ac-pdp-reviews__aside{display:flex;flex-direction:column;align-items:flex-end;gap:14px;flex:0 0 auto}
.ac-pdp-reviews__aside .ac-btn{min-height:46px;padding:0 24px;font-size:var(--ac-fs-sm);white-space:nowrap}
.ac-pdp-reviews__layout{display:block}
.ac-pdp-review-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}
.ac-pdp-review{
  min-height:142px;
  padding:24px;
  border:0;
  border-radius:22px;
  background:#fff;
  box-shadow:var(--ac-shadow);
  transition:box-shadow .18s ease,transform .18s ease;
}
.ac-pdp-review:hover{box-shadow:var(--ac-shadow-hover);transform:translateY(-3px)}
.ac-pdp-review__top{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:12px}
.ac-pdp-review__top strong{display:block;font-size:var(--ac-fs-sm)}
.ac-pdp-review__top span{display:inline-flex;align-items:center;gap:4px;margin-top:4px;padding:2px 8px 2px 6px;border-radius:999px;background:var(--ac-green);color:var(--ac-green-text);font-size:var(--ac-fs-2xs);font-weight:700}
.ac-pdp-review__top span svg{width:9px;height:9px;color:var(--ac-green-text)}
.ac-pdp-review__top .ac-stars{font-size:var(--ac-fs-2xs)}
.ac-pdp-review h3{margin:0 0 5px;font-size:var(--ac-fs-md);line-height:1.35}
.ac-pdp-review p{margin:0;color:#69626f;font-size:var(--ac-fs-sm);line-height:1.58}
/* Review modal — opened from the "Write a review" button in the reviews head */
body.ac-review-open{overflow:hidden}
.ac-review-modal{
  position:fixed;inset:0;z-index:1200;
  display:flex;align-items:center;justify-content:center;
  padding:20px;
  opacity:0;visibility:hidden;pointer-events:none;
  transition:opacity .18s ease,visibility .18s ease;
}
body.ac-review-open .ac-review-modal{opacity:1;visibility:visible;pointer-events:auto}
.ac-review-modal__backdrop{
  position:absolute;inset:0;border:0;padding:0;
  background:rgba(12,8,17,.58);
  backdrop-filter:blur(4px);
  cursor:pointer;
}
.ac-review-modal__dialog{
  position:relative;z-index:1;
  width:min(500px,100%);
  max-height:min(760px,calc(100dvh - 40px));
  overflow:auto;
  background:#fff;
  border-radius:var(--ac-radius);
  padding:34px;
  box-shadow:0 40px 90px -30px rgba(22,12,34,.45);
  transform:translateY(8px) scale(.985);
  transition:transform .2s ease;
}
body.ac-review-open .ac-review-modal__dialog{transform:none}
.ac-review-modal__close{
  position:absolute;right:16px;top:14px;
  width:40px;height:40px;
  border:0;border-radius:50%;
  background:#f7f5f9;color:#5f5966;
  font-size:24px;line-height:1;
  display:grid;place-items:center;
  transition:background-color .15s ease,color .15s ease;
}
.ac-review-modal__close:hover{background:#efe8fa;color:var(--ac-purple)}
.ac-review-modal__dialog h3{margin:6px 0 8px;font-size:var(--ac-fs-2xl);font-weight:800;letter-spacing:-.02em}
.ac-review-modal__intro{margin:0 0 24px;color:var(--ac-muted);font-size:var(--ac-fs-sm);line-height:1.6}
.ac-review-modal .comment-form{margin:0}
.ac-review-field{margin:0 0 16px}
.ac-review-field label{display:block;margin-bottom:7px;color:#342e39;font-size:var(--ac-fs-xs);font-weight:700}
/* WooCommerce injects <p class="stars"><span><a class="star-1">1 of 5 stars</a>…  —
   the anchors are inline and carry visible label text, so they need to be boxed
   and their text collapsed before the star mask can render. */
.ac-review-field p.stars,.ac-review-modal p.stars,#commentform p.stars{display:flex!important;gap:6px;margin:0;padding:0;line-height:1}
.ac-review-field p.stars>span,.ac-review-modal p.stars>span,#commentform p.stars>span{display:flex;gap:6px}
.ac-review-field p.stars a,.ac-review-modal p.stars a,#commentform p.stars a{
  position:relative;
  display:inline-block;
  width:32px;height:32px;
  font-size:0!important;
  line-height:0;
  text-indent:0;
  overflow:hidden;
  color:#ddd6e4;
  cursor:pointer;
  transition:color .12s ease,transform .12s ease;
}
.ac-review-field p.stars a::before,.ac-review-modal p.stars a::before,#commentform p.stars a::before{
  content:"";
  position:absolute;inset:0;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.7l2.87 5.94 6.53.96-4.73 4.62 1.12 6.5L12 17.7l-5.79 3.02 1.12-6.5-4.73-4.62 6.53-.96L12 2.7Z'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 2.7l2.87 5.94 6.53.96-4.73 4.62 1.12 6.5L12 17.7l-5.79 3.02 1.12-6.5-4.73-4.62 6.53-.96L12 2.7Z'/%3E%3C/svg%3E") center/contain no-repeat;
}
.ac-review-field p.stars a:hover,.ac-review-modal p.stars a:hover,#commentform p.stars a:hover,
.ac-review-field p.stars a:has(~ a:hover),.ac-review-modal p.stars a:has(~ a:hover),#commentform p.stars a:has(~ a:hover),
.ac-review-field p.stars a.active,.ac-review-modal p.stars a.active,#commentform p.stars a.active,
.ac-review-field p.stars a:has(~ a.active),.ac-review-modal p.stars a:has(~ a.active),#commentform p.stars a:has(~ a.active){color:var(--ac-gold);transform:scale(1.06)}
/* WooCommerce hides the select itself; keep it hidden even before its JS runs. */
.ac-review-field select#rating,#commentform select#rating{display:none!important}
.ac-review-field input,
.ac-review-field select,
.ac-review-field textarea{
  width:100%;
  min-height:48px;
  border:0;
  border-radius:14px;
  background:var(--ac-soft);
  box-shadow:inset 0 0 0 1.5px #ece7f2;
  padding:12px 14px;
  color:#17131c;
  font-size:var(--ac-fs-md);
  outline:none;
  transition:box-shadow .15s ease,background-color .15s ease;
}
.ac-review-field textarea{min-height:110px;resize:vertical}
.ac-review-field input:focus,
.ac-review-field select:focus,
.ac-review-field textarea:focus{background:#fff;box-shadow:inset 0 0 0 2px var(--ac-purple)}
.ac-review-submit{
  width:100%;
  min-height:52px;
  border:0;
  border-radius:999px;
  background:var(--ac-grad-purple);
  color:#fff;
  font-family:var(--ac-font);
  font-size:var(--ac-fs-md);
  font-weight:700;
  cursor:pointer;
  box-shadow:var(--ac-shadow-purple);
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
}
.ac-review-submit:hover{filter:brightness(1.07);transform:translateY(-2px);box-shadow:var(--ac-shadow-purple-hover)}
.ac-review-submit:active{background:var(--ac-grad-purple-pressed);transform:translateY(1px);box-shadow:var(--ac-shadow-purple-pressed)}
.ac-review-closed{color:#766f7c;font-size:var(--ac-fs-xs)}

@media (max-width:980px){
  .ac-pdp-review-list{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (max-width:720px){
  .ac-product-trustline{gap:9px 14px}
  .ac-product-trustline span{padding:0;border-left:0!important}
  .ac-pdp-reviews{margin:44px 0;padding:22px}
  .ac-pdp-reviews__head{display:block}
  .ac-pdp-reviews__aside{align-items:flex-start;flex-direction:row;flex-wrap:wrap;margin-top:18px}
  .ac-pdp-reviews__score{width:max-content}
  .ac-pdp-review-list{grid-template-columns:1fr}
}
@media (max-width:480px){
  .ac-product-trustline{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:22px}
  .ac-pdp-reviews{padding:18px;border-radius:16px}
  .ac-pdp-reviews__head h2{font-size:var(--ac-fs-xl)}
}


/* v1.1.18 — simple professional footer */
.ac-footer-simple{
  margin:0;
  padding:0;
  background:#fff;
  color:#17131c;
  border:0;
}
.ac-footer-simple::before,
.ac-footer-simple::after{
  content:none!important;
  display:none!important;
}
.ac-footer-simple__main{
  display:grid;
  grid-template-columns:1.65fr .78fr .82fr .82fr;
  gap:64px;
  padding:62px 0 48px;
}
.ac-footer-simple__brand{
  max-width:400px;
}
.ac-footer-simple__logo{
  display:inline-flex;
  align-items:center;
  margin-bottom:20px;
}
.ac-footer-simple__logo img{
  width:128px;
  height:auto;
  display:block;
}
.ac-footer-simple__brand p{
  max-width:360px;
  margin:0;
  color:#77717d;
  font-size:var(--ac-fs-sm);
  line-height:1.75;
  font-weight:400;
}
.ac-footer-simple__col h3{
  margin:0 0 18px;
  color:#211c27;
  font-size:var(--ac-fs-2xs);
  line-height:1.2;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.ac-footer-simple__col a{
  display:block;
  width:max-content;
  max-width:100%;
  margin:0 0 12px;
  color:#726b77;
  font-size:var(--ac-fs-xs);
  line-height:1.45;
  font-weight:500;
  transition:color .16s ease;
}
.ac-footer-simple__col a:hover{
  color:#7a2de5;
}
.ac-footer-simple__bottom{
  min-height:62px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:24px;
  border-top:1px solid #e7e2e9;
  color:#958e99;
  font-size:var(--ac-fs-xs);
  font-weight:400;
}
.ac-footer-simple__legal{
  display:flex;
  align-items:center;
  gap:22px;
  flex-wrap:wrap;
}
.ac-footer-simple__legal a{
  color:#7d7582;
  font-weight:500;
}
.ac-footer-simple__legal a:hover{
  color:#7a2de5;
}

/* Remove the previous purple/double line before the footer */
.ac-final-cta{
  border-bottom:0!important;
  margin-bottom:0!important;
}
.ac-final-cta + .ac-footer-simple{
  border-top:0!important;
}

@media (max-width:980px){
  .ac-footer-simple__main{
    grid-template-columns:1.35fr repeat(3,.8fr);
    gap:36px;
    padding:54px 0 42px;
  }
}
@media (max-width:720px){
  .ac-footer-simple__main{
    grid-template-columns:1fr 1fr;
    gap:34px 28px;
    padding:46px 0 36px;
  }
  .ac-footer-simple__brand{
    grid-column:1/-1;
    max-width:100%;
  }
  .ac-footer-simple__brand p{
    max-width:500px;
  }
  .ac-footer-simple__bottom{
    min-height:auto;
    padding:18px 0;
    align-items:flex-start;
    flex-direction:column;
    gap:10px;
  }
}
@media (max-width:480px){
  .ac-footer-simple__main{
    grid-template-columns:1fr;
    gap:26px;
    padding:40px 0 30px;
  }
  .ac-footer-simple__brand{
    grid-column:auto;
  }
  .ac-footer-simple__logo img{
    width:116px;
  }
  .ac-footer-simple__brand p{
    font-size:var(--ac-fs-xs);
  }
  .ac-footer-simple__legal{
    gap:14px;
  }
}


/* v1.1.20 — high-brand informational pages */
.ac-brand-page{background:#fff;color:#17131c}
.ac-brand-kicker{display:block;margin:0 0 10px;color:#7a2de5;font-size:var(--ac-fs-2xs);font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.ac-brand-hero{padding:72px 0 58px;background:linear-gradient(180deg,#faf7ff 0%,#fff 100%)}
.ac-brand-hero--center{text-align:center}
.ac-brand-hero--center .ac-container{max-width:820px}
.ac-brand-hero h1,.ac-about-hero h1{margin:0 0 14px;font-size:var(--ac-fs-5xl);line-height:1.06;letter-spacing:-.045em;font-weight:700}
.ac-brand-hero p,.ac-about-hero p{max-width:700px;margin:0 auto;color:#706977;font-size:var(--ac-fs-base);line-height:1.7}

/* Guides */
.ac-guides-featured{padding:0 0 68px}
.ac-guide-feature{position:relative;display:block;overflow:hidden;border-radius:24px;min-height:480px;background:#0d0913;box-shadow:0 20px 55px rgba(59,24,98,.14)}
.ac-guide-feature img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ac-guide-feature::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(10,7,14,.88) 0%,rgba(10,7,14,.52) 48%,rgba(10,7,14,.08) 100%)}
.ac-guide-feature__overlay{position:absolute;z-index:2;left:48px;bottom:48px;max-width:520px;color:#fff}
.ac-guide-feature__overlay>span{display:inline-block;margin-bottom:10px;color:#d3b7ff;font-size:var(--ac-fs-2xs);font-weight:700;letter-spacing:.13em;text-transform:uppercase}
.ac-guide-feature__overlay h2{margin:0 0 10px;font-size:var(--ac-fs-4xl);line-height:1.08;letter-spacing:-.04em}
.ac-guide-feature__overlay p{margin:0 0 18px;color:rgba(255,255,255,.76);font-size:var(--ac-fs-sm);line-height:1.6}
.ac-guide-feature__overlay b{font-size:var(--ac-fs-2xs)}
.ac-guides-library{padding:72px 0 82px;background:#fbf9fd}
.ac-section-title--center{text-align:center;max-width:720px;margin:0 auto 30px}
.ac-section-title--center>span{display:block;color:#7a2de5;font-size:var(--ac-fs-2xs);font-weight:700;letter-spacing:.13em;text-transform:uppercase;margin-bottom:7px}
.ac-section-title--center h2{margin:0;font-size:var(--ac-fs-3xl);line-height:1.12;letter-spacing:-.035em}
.ac-guide-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.ac-guide-card{overflow:hidden;border-radius:var(--ac-radius);background:#fff;border:0;box-shadow:var(--ac-shadow);transition:transform .2s ease,box-shadow .2s ease}
.ac-guide-card:hover{transform:translateY(-3px);box-shadow:0 15px 34px rgba(70,31,112,.09)}
.ac-guide-card__image{position:relative;aspect-ratio:16/10;background:#15101d;overflow:hidden}
.ac-guide-card__image img{width:100%;height:100%;object-fit:cover}
.ac-guide-card__image span{position:absolute;left:13px;top:13px;padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.94);color:#5f18c5;font-size:var(--ac-fs-2xs);font-weight:700;text-transform:uppercase}
.ac-guide-card__body{padding:18px}
.ac-guide-card__body h3{margin:0 0 7px;font-size:var(--ac-fs-lg);line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(2 * 1.35em)}
.ac-guide-card__body p{margin:0 0 13px;color:#77707d;font-size:var(--ac-fs-sm);line-height:1.55;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-height:calc(2 * 1.55em)}
.ac-guide-card__body b{color:#7a2de5;font-size:var(--ac-fs-2xs)}
.ac-page-cta{padding:55px 0;background:#7a2de5;color:#fff}
.ac-page-cta__inner{display:flex;align-items:center;justify-content:space-between;gap:30px}
.ac-page-cta span{display:block;color:rgba(255,255,255,.72);font-size:var(--ac-fs-2xs);font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.ac-page-cta h2{margin:5px 0 0;font-size:var(--ac-fs-2xl);letter-spacing:-.03em}
.ac-page-cta a{display:inline-flex;align-items:center;min-height:44px;padding:0 18px;border-radius:11px;background:#fff;color:#6420ce;font-size:var(--ac-fs-sm);font-weight:700}

/* FAQ */
.ac-brand-hero--faq{padding:64px 0;background:linear-gradient(135deg,#f7f0ff 0%,#fff 70%)}
.ac-brand-hero__faq-inner{display:grid;grid-template-columns:1.35fr .65fr;align-items:center;gap:50px}
.ac-brand-hero__faq-copy h1{margin:0 0 12px;font-size:var(--ac-fs-5xl);line-height:1.06;letter-spacing:-.045em}
.ac-brand-hero__faq-copy p{margin:0;max-width:620px;color:#706977;font-size:var(--ac-fs-base);line-height:1.7}
.ac-brand-hero__faq-image{justify-self:end;width:250px;height:250px;border-radius:28px;overflow:hidden;box-shadow:0 18px 50px rgba(93,32,157,.14)}
.ac-brand-hero__faq-image img{width:100%;height:100%;object-fit:cover}
.ac-faq-pro{padding:64px 0 82px}
.ac-faq-pro__nav{display:flex;justify-content:center;gap:8px;flex-wrap:wrap;margin-bottom:40px}
.ac-faq-pro__nav span{padding:8px 13px;border-radius:999px;background:#f5effd;color:#6c27c7;font-size:var(--ac-fs-xs);font-weight:700}
.ac-faq-pro__groups{max-width:920px;margin:0 auto;display:grid;gap:44px}
.ac-faq-pro__groups section>h2{text-align:center;margin:0 0 15px;font-size:var(--ac-fs-xl)}
.ac-faq-pro__list{display:grid;gap:10px}
.ac-faq-pro__list details{border:0;border-radius:18px;background:#fff;padding:2px 24px;box-shadow:var(--ac-shadow-sm);transition:box-shadow .15s ease}
.ac-faq-pro__list details:hover{box-shadow:var(--ac-shadow)}
.ac-faq-pro__list details[open]{box-shadow:var(--ac-shadow)}
.ac-faq-pro__list summary{cursor:pointer;list-style:none;position:relative;padding:18px 42px 18px 0;font-size:var(--ac-fs-base);font-weight:700}
.ac-faq-pro__list summary::-webkit-details-marker{display:none}
.ac-faq-pro__list summary::after{content:"+";position:absolute;right:4px;top:50%;transform:translateY(-50%);color:#7a2de5;font-size:21px;font-weight:500}
.ac-faq-pro__list details[open] summary::after{content:"–"}
.ac-faq-pro__list details p{margin:0;padding:0 46px 19px 0;color:#706977;font-size:var(--ac-fs-sm);line-height:1.65}
.ac-page-contact-cta{text-align:center;padding:58px 20px;background:#fbf8ff;border-top:1px solid #eee7f5}
.ac-page-contact-cta p{margin:0;color:#7a2de5;font-size:var(--ac-fs-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.13em}
.ac-page-contact-cta h2{margin:7px 0 17px;font-size:var(--ac-fs-2xl)}
.ac-page-contact-cta a{display:inline-flex;min-height:42px;align-items:center;padding:0 17px;border-radius:10px;background:#7a2de5;color:#fff;font-size:var(--ac-fs-sm);font-weight:700}

/* About */
.ac-about-hero{padding:70px 0 60px;background:linear-gradient(180deg,#fff 0%,#faf7ff 100%)}
.ac-about-hero__grid{display:grid;grid-template-columns:.9fr 1.1fr;align-items:center;gap:58px}
.ac-about-hero__copy p{margin:0 0 22px;max-width:560px}
.ac-about-hero__copy>a{display:inline-flex;min-height:44px;align-items:center;padding:0 18px;border-radius:11px;background:#7a2de5;color:#fff;font-size:var(--ac-fs-sm);font-weight:700}
.ac-about-hero__image{overflow:hidden;border-radius:24px;aspect-ratio:16/11;box-shadow:0 20px 52px rgba(76,31,124,.13)}
.ac-about-hero__image img{width:100%;height:100%;object-fit:cover}
.ac-about-stats{border-top:1px solid #ece6f0;border-bottom:1px solid #ece6f0;background:#fff}
.ac-about-stats__grid{display:grid;grid-template-columns:repeat(3,1fr)}
.ac-about-stats__grid>div{text-align:center;padding:27px 20px}
.ac-about-stats__grid>div+div{border-left:1px solid #ece6f0}
.ac-about-stats strong{display:block;font-size:var(--ac-fs-2xl);color:#7a2de5;letter-spacing:-.03em}
.ac-about-stats span{display:block;margin-top:2px;color:#77707c;font-size:var(--ac-fs-xs)}
.ac-about-story{padding:78px 0}
.ac-about-story__grid{display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}
.ac-about-story__image{overflow:hidden;border-radius:20px;aspect-ratio:1/1}
.ac-about-story__image img{width:100%;height:100%;object-fit:cover}
.ac-about-story__copy h2{margin:0 0 13px;font-size:var(--ac-fs-3xl);line-height:1.1;letter-spacing:-.035em}
.ac-about-story__copy p{margin:0 0 12px;color:#716a77;font-size:var(--ac-fs-sm);line-height:1.7}
.ac-about-principles{padding:72px 0 80px;background:#fbf9fd}
.ac-about-principles__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:28px;margin-top:32px}
.ac-about-principles__grid>div{padding-top:18px;border-top:2px solid #d6b9fa}
.ac-about-principles b{color:#7a2de5;font-size:var(--ac-fs-2xs)}
.ac-about-principles h3{margin:10px 0 7px;font-size:var(--ac-fs-lg)}
.ac-about-principles p{margin:0;color:#756e7b;font-size:var(--ac-fs-sm);line-height:1.6}

/* Shipping */
.ac-order-journey{padding:18px 0 66px}
.ac-order-journey__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.ac-order-journey__grid>div{position:relative;padding:26px;border:0;border-radius:20px;background:#fff;box-shadow:var(--ac-shadow)}
.ac-order-journey__grid span{width:38px;height:38px;display:grid;place-items:center;border-radius:11px;background:#f1e6ff;color:#7a2de5;margin-bottom:14px}
.ac-order-journey__grid span svg{width:18px;height:18px}
.ac-order-journey__grid b{position:absolute;right:18px;top:17px;color:#d2c7d8;font-size:var(--ac-fs-2xs)}
.ac-order-journey__grid h3{margin:0 0 6px;font-size:var(--ac-fs-lg)}
.ac-order-journey__grid p{margin:0;color:#77707d;font-size:var(--ac-fs-sm)}
.ac-policy-sections{padding:72px 0 82px;background:#fbf9fd}
.ac-policy-sections__grid{display:grid;grid-template-columns:1fr 1fr;gap:24px 54px;align-items:center}
.ac-policy-sections__copy{padding:30px 0}
.ac-policy-sections__copy h2{margin:0 0 12px;font-size:var(--ac-fs-3xl);line-height:1.13;letter-spacing:-.035em}
.ac-policy-sections__copy p{margin:0 0 11px;color:#716a77;font-size:var(--ac-fs-sm)}
.ac-policy-sections__image{overflow:hidden;border-radius:19px;aspect-ratio:16/10}
.ac-policy-sections__image img{width:100%;height:100%;object-fit:cover}
.ac-policy-sections__support{padding:26px;border-left:3px solid #7a2de5;background:#fff}
.ac-policy-sections__support h3{margin:0 0 8px;font-size:var(--ac-fs-lg)}
.ac-policy-sections__support p{margin:0 0 14px;color:#746d79;font-size:var(--ac-fs-sm)}
.ac-policy-sections__support a{color:#7a2de5;font-size:var(--ac-fs-xs);font-weight:700}

/* Contact */
.ac-contact-pro{padding:12px 0 76px}
.ac-contact-pro__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:44px;align-items:stretch}
/* Square by construction: aspect-ratio owns the height and align-self:start
   stops the row from stretching it, so the photo stays 1:1 even if the form
   grows (a validation message, longer copy). The form is tuned to match. */
.ac-contact-pro__visual{position:relative;overflow:hidden;border-radius:var(--ac-radius);aspect-ratio:1/1;height:auto;align-self:start;background:#15101d;box-shadow:0 30px 60px -28px rgba(40,16,80,.30)}
.ac-contact-pro__visual>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.ac-contact-pro__visual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(10,7,14,.05) 40%,rgba(10,7,14,.78) 100%)}
.ac-contact-pro__overlay{position:absolute;z-index:2;left:28px;right:28px;bottom:28px;color:#fff}
.ac-contact-pro__overlay span{display:block;color:#cfb1fb;font-size:var(--ac-fs-2xs);font-weight:700;text-transform:uppercase;letter-spacing:.12em}
.ac-contact-pro__overlay strong{display:block;margin:6px 0 5px;font-size:var(--ac-fs-xl)}
.ac-contact-pro__overlay p{margin:0;color:rgba(255,255,255,.72);font-size:var(--ac-fs-sm)}
.ac-contact-pro__form-wrap{padding:30px;border:0;border-radius:var(--ac-radius);background:#fff;box-shadow:var(--ac-shadow)}
.ac-contact-pro__intro h2{margin:0 0 7px;font-size:var(--ac-fs-2xl);letter-spacing:-.035em}
.ac-contact-pro__intro p{margin:0 0 18px;color:#77707c;font-size:var(--ac-fs-sm)}
.ac-contact-pro__intro a{color:#7a2de5;font-weight:600}
.ac-contact-form{display:grid;gap:13px}
.ac-contact-form__row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.ac-contact-form label{display:grid;gap:6px;color:#342d38;font-size:var(--ac-fs-xs);font-weight:600}
.ac-contact-form label>span{color:#7a2de5}
.ac-contact-form label>small{float:right;color:#99919e;font-weight:400}
.ac-contact-form input,.ac-contact-form select,.ac-contact-form textarea{width:100%;border:0;border-radius:14px;background:var(--ac-soft);box-shadow:inset 0 0 0 1.5px #ece7f2;padding:13px 15px;color:#17131c;font-size:var(--ac-fs-md);outline:none;transition:box-shadow .15s ease,background-color .15s ease}
.ac-contact-form input,.ac-contact-form select{min-height:44px}
.ac-contact-form textarea{resize:vertical}
.ac-contact-form input:focus,.ac-contact-form select:focus,.ac-contact-form textarea:focus{background:#fff;box-shadow:inset 0 0 0 2px var(--ac-purple)}
.ac-contact-form button{min-height:46px;border:0;border-radius:10px;background:#7a2de5;color:#fff;font-size:var(--ac-fs-sm);font-weight:700}
.ac-contact-form button:disabled{opacity:.6}
.ac-contact-form__message{min-height:18px;font-size:var(--ac-fs-xs)}
.ac-contact-form__message.is-success{color:#287f48}
.ac-contact-form__message.is-error{color:#a43838}
.ac-contact-hp{position:absolute!important;left:-9999px!important}
.ac-contact-links{padding:0 0 76px}
.ac-contact-links__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}
.ac-contact-links a{display:grid;grid-template-columns:38px 1fr;gap:11px;align-items:start;padding:17px;border-top:1px solid #e3d9eb}
.ac-contact-links a>span{width:36px;height:36px;display:grid;place-items:center;border-radius:10px;background:#f1e6ff;color:#7a2de5}
.ac-contact-links svg{width:17px;height:17px}
.ac-contact-links strong{display:block;font-size:var(--ac-fs-sm)}
.ac-contact-links p{margin:3px 0 0;color:#77707c;font-size:var(--ac-fs-xs);line-height:1.5}

/* Guide articles */
.ac-guide-article__hero{padding:54px 0 48px;background:#fbf8ff}
.ac-guide-back{display:inline-block;margin-bottom:22px;color:#7a2de5;font-size:var(--ac-fs-xs);font-weight:600}
.ac-guide-article__hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:48px;align-items:center}
.ac-guide-article__hero h1{margin:0;font-size:var(--ac-fs-4xl);line-height:1.08;letter-spacing:-.04em}
.ac-guide-article__hero img{width:100%;aspect-ratio:16/10;object-fit:cover;border-radius:18px}
.ac-guide-article__body{padding:62px 0 78px}
.ac-guide-article__content{max-width:980px}
.ac-guide-article__content .ac-info-intro{max-width:760px;margin-bottom:30px}
.ac-guide-article__content .ac-info-intro h2{font-size:var(--ac-fs-2xl)}
.ac-guide-article__content .ac-info-grid{gap:14px}
.ac-guide-article__content .ac-info-card{background:#fbf9fd;border-color:#e7ddec}
.ac-guide-article__content .ac-info-note{border-left:3px solid #7a2de5;background:#faf6ff}

/* Responsive brand pages */
@media (max-width:980px){
  .ac-guide-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ac-about-hero__grid,.ac-about-story__grid,.ac-contact-pro__grid{gap:36px}
  .ac-brand-hero__faq-inner{grid-template-columns:1fr .45fr}
}
@media (max-width:720px){
  .ac-brand-hero{padding:54px 0 44px}
  .ac-brand-hero h1,.ac-about-hero h1,.ac-brand-hero__faq-copy h1{font-size:var(--ac-fs-3xl)}
  .ac-brand-hero p,.ac-about-hero p,.ac-brand-hero__faq-copy p{font-size:var(--ac-fs-sm)}
  .ac-guide-feature{min-height:420px;border-radius:19px}
  .ac-guide-feature__overlay{left:24px;right:24px;bottom:28px}
  .ac-guide-feature__overlay h2{font-size:var(--ac-fs-2xl)}
  .ac-guide-card-grid{grid-template-columns:1fr}
  .ac-page-cta__inner{display:block;text-align:center}
  .ac-page-cta a{margin-top:18px}
  .ac-brand-hero__faq-inner,.ac-about-hero__grid,.ac-about-story__grid,.ac-policy-sections__grid,.ac-contact-pro__grid,.ac-guide-article__hero-grid{grid-template-columns:1fr}
  .ac-brand-hero__faq-copy{text-align:center}
  .ac-brand-hero__faq-image{justify-self:center;width:190px;height:190px}
  .ac-about-hero__copy{text-align:center}
  .ac-about-hero__copy p{margin-left:auto;margin-right:auto}
  .ac-about-stats__grid{grid-template-columns:1fr}
  .ac-about-stats__grid>div+div{border-left:0;border-top:1px solid #ece6f0}
  .ac-about-principles__grid{grid-template-columns:1fr}
  .ac-order-journey__grid{grid-template-columns:1fr}
  .ac-policy-sections__support{border-left:0;border-top:3px solid #7a2de5}
  .ac-contact-pro__visual{height:auto;min-height:0;aspect-ratio:3/2;border-radius:20px}
  .ac-contact-pro__form-wrap{padding:24px}
  .ac-contact-links__grid{grid-template-columns:1fr}
  .ac-guide-article__hero h1{font-size:var(--ac-fs-3xl)}
}
@media (max-width:480px){
  .ac-brand-hero h1,.ac-about-hero h1,.ac-brand-hero__faq-copy h1{font-size:var(--ac-fs-2xl)}
  .ac-guide-feature{min-height:390px}
  .ac-guide-feature__overlay h2{font-size:var(--ac-fs-xl)}
  .ac-contact-form__row{grid-template-columns:1fr}
  .ac-contact-pro__visual{aspect-ratio:3/2}
  .ac-contact-pro__form-wrap{padding:19px}
  .ac-page-cta h2{font-size:var(--ac-fs-xl)}
}


/* v1.1.21 — homepage selected-offer quick add */
.ac-home-buy-row{
  display:flex;
  align-items:center;
  gap:14px;
  margin-top:16px;
}
.ac-home-add{
  min-height:46px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  padding:0 22px;
  border:0;
  border-radius:11px;
  background:#7a2de5;
  color:#fff;
  font-size:var(--ac-fs-sm);
  font-weight:700;
  line-height:1;
  transition:.18s ease;
}
.ac-home-add:hover{
  background:#6419c9;
  transform:translateY(-1px);
}
.ac-home-add:disabled{
  opacity:.65;
  cursor:wait;
  transform:none;
}
.ac-home-details{
  display:inline-flex;
  align-items:center;
  min-height:42px;
  color:#7a2de5;
  font-size:var(--ac-fs-xs);
  font-weight:700;
}
.ac-home-details:hover{color:#5d18c5}
@media (max-width:720px){
  .ac-home-buy-row{
    display:grid;
    grid-template-columns:1fr;
    gap:8px;
    margin-top:14px;
  }
  .ac-home-add{
    width:100%;
    min-height:46px;
  }
  .ac-home-details{
    justify-content:center;
  }
}


/* v1.1.24 — mobile quick checkout confirmation */
.ac-mobile-quickcart-overlay,.ac-mobile-quickcart{display:none}
@media (max-width:760px){
  body.ac-mobile-quickcart-open{overflow:hidden}
  .ac-mobile-quickcart-overlay{display:block;position:fixed;inset:0;z-index:940;background:rgba(24,16,31,.34);opacity:0;visibility:hidden;transition:opacity .18s ease,visibility .18s ease}
  .ac-mobile-quickcart{display:block;position:fixed;z-index:950;left:12px;right:12px;bottom:calc(12px + env(safe-area-inset-bottom));max-width:430px;margin:auto;padding:18px;border:1px solid #e4d9ee;border-radius:20px;background:#fff;box-shadow:0 20px 60px rgba(37,19,53,.20);opacity:0;visibility:hidden;transform:scale(.985);transform-origin:bottom center;transition:opacity .16s ease,transform .16s ease,visibility .16s ease}
  body.ac-mobile-quickcart-open .ac-mobile-quickcart-overlay{opacity:1;visibility:visible}
  body.ac-mobile-quickcart-open .ac-mobile-quickcart{opacity:1;visibility:visible;transform:scale(1)}
  .ac-mobile-quickcart__close{position:absolute;right:12px;top:10px;width:32px;height:32px;border:0;border-radius:50%;background:#f6f1fb;color:#51485a;font-size:20px;line-height:1}
  .ac-mobile-quickcart__success{display:grid;grid-template-columns:38px 1fr;gap:11px;align-items:center;padding-right:38px}
  .ac-mobile-quickcart__success>span{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#edf8f0;color:#258149}
  .ac-mobile-quickcart__success svg{width:18px;height:18px}
  .ac-mobile-quickcart__success strong{display:block;font-size:var(--ac-fs-lg);line-height:1.2}
  .ac-mobile-quickcart__success small{display:block;margin-top:3px;color:#6f6875;font-size:var(--ac-fs-xs);line-height:1.35}
  .ac-mobile-quickcart__upsell{margin-top:15px;padding:13px;border-radius:14px;background:#faf7ff;border:1px solid #eadff5}
  .ac-mobile-quickcart__upsell>p{margin:0 0 9px;color:#6d25c9;font-size:var(--ac-fs-2xs);font-weight:700;letter-spacing:.11em;text-transform:uppercase}
  .ac-mobile-upsell-row{display:grid;grid-template-columns:48px minmax(0,1fr) auto;gap:12px;align-items:center}
  .ac-mobile-upsell-row img{width:48px;height:48px;object-fit:cover;border-radius:10px;background:#fff}
  .ac-mobile-upsell-row>div{min-width:0}
  .ac-mobile-upsell-row strong{
    display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;
    color:#1d1822;font-size:var(--ac-fs-sm);line-height:1.3;
  }
  .ac-mobile-upsell-row>div>span{display:block;margin-top:3px;color:#7a2de5;font-size:var(--ac-fs-sm);font-weight:700;white-space:nowrap}
  .ac-mobile-upsell-row button{flex:0 0 auto;min-width:64px;height:36px;border:0;border-radius:999px;background:#7a2de5;color:#fff;font-size:var(--ac-fs-xs);font-weight:700;white-space:nowrap}
  .ac-mobile-quickcart__total{display:flex;align-items:center;justify-content:space-between;gap:18px;margin:15px 0 10px;padding-top:13px;border-top:1px solid #ece5f1;color:#6c6572;font-size:var(--ac-fs-sm)}
  .ac-mobile-quickcart__total strong{color:#17131c;font-size:var(--ac-fs-lg)}
  .ac-mobile-quickcart__checkout{width:100%;min-height:48px;display:flex;align-items:center;justify-content:center;border-radius:12px;background:#7a2de5;color:#fff;font-size:var(--ac-fs-sm);font-weight:700}
  .ac-mobile-quickcart__continue{width:100%;min-height:38px;border:0;background:transparent;color:#625b68;font-size:var(--ac-fs-xs);font-weight:600}
}

/* v1.1.27 — checkout recreated from zero: compact premium one-page layout */
.ac-checkout-page{background:#fff!important;color:#17131c;min-height:100vh}
.ac-checkout-header{height:56px;background:#fff;border-bottom:1px solid #eee9f1}
.ac-checkout-header__inner{height:100%;max-width:1080px;display:grid;grid-template-columns:1fr auto 1fr;align-items:center}
.ac-checkout-logo{justify-self:center;display:flex;align-items:center}
.ac-checkout-logo img{width:104px;height:auto;display:block}
.ac-checkout-back{justify-self:start;color:#625b67;font-size:var(--ac-fs-xs);font-weight:600}
.ac-checkout-secure{justify-self:end;display:inline-flex;align-items:center;gap:5px;color:#6f6874;font-size:var(--ac-fs-2xs);font-weight:600}
.ac-checkout-secure svg{width:12px;height:12px;color:#7a2de5}

.acx-checkout{background:#fff}
.acx-form{margin:0!important}
.acx-layout{max-width:1080px;display:grid;grid-template-columns:minmax(0,600px) minmax(300px,360px);gap:64px;align-items:start;padding-top:34px;padding-bottom:54px}
.acx-main{min-width:0}
.acx-title{margin:0 0 24px}
.acx-title h1{margin:0 0 4px;font-size:var(--ac-fs-xl);line-height:1.08;letter-spacing:-.035em;font-weight:700}
.acx-title p{margin:0;color:#918995;font-size:var(--ac-fs-sm);line-height:1.45}

.acx-section{margin:0;padding:0 0 22px}
.acx-section+.acx-section{padding-top:22px;border-top:1px solid #eee9f1}
.acx-section-head{display:flex;align-items:center;justify-content:space-between;gap:14px;margin:0 0 12px}
.acx-section-head h2{margin:0!important;font-size:var(--ac-fs-lg)!important;line-height:1.2!important;letter-spacing:-.02em;font-weight:700!important}
.acx-section-head>span{display:inline-flex;align-items:center;gap:5px;color:#89818d;font-size:var(--ac-fs-2xs);font-weight:500}
.acx-section-head>span svg{width:11px;height:11px;color:#7a2de5}
.acx-login{border:0;background:transparent;padding:0;color:#6d25ce;font-size:var(--ac-fs-xs);font-weight:700;cursor:pointer}

.acx-row{display:grid;gap:10px;margin-bottom:10px;min-width:0}
.acx-row>div{min-width:0}
.acx-row--contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.acx-row--two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.acx-row--country{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.acx-row--full{grid-template-columns:1fr}
.acx-row--cityzip{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.acx-row:last-child{margin-bottom:0}

.woocommerce-checkout .form-row{float:none!important;width:100%!important;margin:0!important;padding:0!important;min-width:0!important}
.woocommerce-checkout .form-row label{display:block!important;margin:0 0 4px!important;color:#514a55!important;font-size:var(--ac-fs-xs)!important;line-height:1.25!important;font-weight:600!important}
.woocommerce-checkout .form-row label .required{color:#7a2de5!important}
.woocommerce-checkout .form-row label .optional{color:#a39ca6!important;font-weight:400!important}
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .select2-container--default .select2-selection--single{width:100%!important;min-width:0!important;height:48px!important;min-height:48px!important;border:0!important;border-radius:12px!important;background:var(--ac-soft)!important;padding:0 14px!important;box-shadow:inset 0 0 0 1.5px #ece7f2!important;color:#17131c!important;font-size:var(--ac-fs-md)!important;font-family:var(--ac-font-body)!important;transition:box-shadow .15s ease,background-color .15s ease}
.woocommerce-checkout .form-row textarea{height:92px!important;padding:12px 14px!important}
.woocommerce-checkout .select2-container{width:100%!important}
.woocommerce-checkout .select2-container--default .select2-selection--single{padding:0 12px!important}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{height:46px!important;line-height:46px!important;padding:0 20px 0 0!important;color:#17131c!important;font-size:var(--ac-fs-md)!important}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{height:46px!important;right:6px!important}
.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .select2-container--open .select2-selection--single{outline:0!important;background:#fff!important;box-shadow:inset 0 0 0 2px var(--ac-purple)!important}

.acx-address2-toggle{width:max-content;margin:-2px 0 10px;border:0;background:transparent;padding:0;color:#6d25ce;font-size:var(--ac-fs-xs);font-weight:600;cursor:pointer}
.acx-address2-toggle.is-hidden{display:none}
.acx-address2-field{display:none;margin-bottom:10px}
.acx-address2-field.is-open{display:block}
.acx-account,.acx-shipping-different{margin:0 0 22px;padding:14px 0 0;border-top:1px solid #eee9f1}
.acx-check{display:flex!important;align-items:center;gap:7px;color:#625b67!important;font-size:var(--ac-fs-xs)!important;font-weight:500!important;cursor:pointer}
.acx-check input{width:13px!important;height:13px!important;min-height:0!important;accent-color:#7a2de5}
.acx-alt-address{margin-top:14px}

/* Payment: one compact continuation of the form, not a separate oversized card. */
.acx-payment{padding-top:22px!important;border-top:1px solid #eee9f1}
.acx-payment #payment{margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important}
.acx-payment #payment ul.payment_methods{margin:0!important;padding:0!important;border:1px solid #ddd6e1!important;border-radius:9px!important;background:#fff!important;overflow:hidden}
.acx-payment #payment ul.payment_methods li{margin:0!important;padding:11px 12px!important;border-top:1px solid #eee9f1!important;background:#fff!important;font-size:var(--ac-fs-sm)!important}
.acx-payment #payment ul.payment_methods li:first-child{border-top:0!important}
.acx-payment #payment ul.payment_methods li>label{color:#2f2933!important;font-size:var(--ac-fs-sm)!important;font-weight:600!important}
.acx-payment #payment div.payment_box{margin:9px 0 0!important;padding:10px 11px!important;border:0!important;border-radius:7px!important;background:#faf8fc!important;color:#756e7a!important;font-size:var(--ac-fs-xs)!important;line-height:1.5!important}
.acx-payment #payment div.payment_box::before{display:none!important}
.acx-payment #payment .place-order{margin:0!important;padding:14px 0 0!important;border:0!important}
.acx-payment #payment .woocommerce-privacy-policy-text{margin:0 0 9px;color:#98909b;font-size:var(--ac-fs-xs);line-height:1.45}
.acx-payment #payment .woocommerce-terms-and-conditions-wrapper{margin-bottom:9px;color:#5f5864;font-size:var(--ac-fs-xs)}
.acx-payment #payment .woocommerce-form__label-for-checkbox{display:flex!important;align-items:flex-start;gap:6px!important}
.acx-payment #payment input[type="checkbox"]{width:13px!important;height:13px!important;min-height:0!important;margin-top:1px!important;accent-color:#7a2de5}
.acx-payment #place_order{width:100%!important;min-height:46px!important;border:0!important;border-radius:8px!important;background:#7a2de5!important;color:#fff!important;font-family:var(--ac-font)!important;font-size:var(--ac-fs-sm)!important;font-weight:700!important;box-shadow:none!important}
.acx-payment #place_order:hover{background:#651acb!important}
.acx-payment #payment .woocommerce-error,.acx-payment #payment .woocommerce-info,.acx-payment #payment .woocommerce-message{margin:0 0 9px!important;padding:9px 10px!important;border:1px solid #e4dee7!important;border-left:2px solid #7a2de5!important;border-radius:7px!important;background:#fff!important;color:#665f6b!important;font-size:var(--ac-fs-xs)!important;line-height:1.45!important}

/* Order summary: compact, sticky, no giant full-height panel. */
.acx-summary{position:sticky;top:78px;min-width:0;padding:0}
.acx-summary-toggle{display:none}
.acx-summary-content{display:block}
.acx-summary-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 0 12px;margin:0 0 2px;border-bottom:1px solid #e7e1ea}
.acx-summary-head h2{margin:0;font-size:var(--ac-fs-lg);line-height:1.2;font-weight:700}
.acx-summary-head>span{color:#96909a;font-size:var(--ac-fs-2xs)}
.acx-review table.shop_table{width:100%!important;margin:0!important;border:0!important;border-collapse:collapse!important;border-radius:0!important;background:transparent!important;font-size:var(--ac-fs-sm)!important}
.acx-review table.shop_table tbody tr{border-bottom:1px solid #eee9f0}
.acx-review table.shop_table th,.acx-review table.shop_table td{padding:10px 0!important;border:0!important;vertical-align:middle!important;background:transparent!important}
.acx-review table.shop_table .product-name{padding-right:10px!important}
.acx-review table.shop_table .product-total{text-align:right!important;color:#17131c!important;font-weight:600!important;white-space:nowrap}
.acx-summary-product{display:flex;align-items:center;gap:9px;min-width:0}
.acx-summary-thumb{position:relative;width:46px;height:46px;flex:0 0 46px;border:1px solid #e1dbe4;border-radius:8px;background:#fff}
.acx-summary-thumb img{width:100%;height:100%;display:block;object-fit:cover;border-radius:7px}
.acx-summary-thumb>span{position:absolute;right:-6px;top:-6px;min-width:17px;height:17px;padding:0 4px;display:grid;place-items:center;border-radius:99px;background:#706873;color:#fff;font-size:var(--ac-fs-2xs);font-weight:700}
.acx-summary-product-copy{min-width:0}
.acx-summary-product-copy>strong{display:block;color:#37303b;font-size:var(--ac-fs-sm);line-height:1.3;font-weight:600}
.acx-summary-product-copy .wc-item-meta,.acx-summary-product-copy dl.variation{margin:2px 0 0!important;color:#918995!important;font-size:var(--ac-fs-xs)!important;line-height:1.35!important}
.acx-summary-product-copy .wc-item-meta p,.acx-summary-product-copy dl.variation p{margin:0!important}
.acx-review table.shop_table tfoot tr{border:0!important}
.acx-review table.shop_table tfoot th,.acx-review table.shop_table tfoot td{padding:5px 0!important;border:0!important;color:#5d5662;font-size:var(--ac-fs-xs)!important;font-weight:500!important}
.acx-review table.shop_table tfoot td{text-align:right!important}
.acx-review table.shop_table tfoot .order-total th,.acx-review table.shop_table tfoot .order-total td{padding-top:11px!important;border-top:1px solid #ddd7e0!important;color:#17131c!important;font-size:var(--ac-fs-lg)!important;font-weight:700!important}
.acx-review #shipping_method{margin:0!important;padding:0!important;list-style:none!important;text-align:right}
.acx-review #shipping_method li{margin:0!important;font-size:var(--ac-fs-sm)!important}
.acx-assurance{display:flex;gap:8px 13px;flex-wrap:wrap;margin-top:12px;padding-top:11px;border-top:1px solid #e7e1ea;color:#756e79;font-size:var(--ac-fs-xs)}
.acx-assurance span{display:inline-flex;align-items:center;gap:4px}
.acx-assurance svg{width:10px;height:10px;color:#7a2de5}

.ac-checkout-footer{background:#fff;border-top:1px solid #eee9f1}
.ac-checkout-footer__inner{min-height:44px;max-width:1080px;display:flex;align-items:center;justify-content:space-between;gap:18px;color:#9b949e;font-size:var(--ac-fs-xs)}
.ac-checkout-footer__inner>div{display:flex;align-items:center;gap:14px}
.ac-checkout-footer__inner a{color:#817a84}
.ac-checkout-footer__inner>div span{display:inline-flex;align-items:center;gap:4px}
.ac-checkout-footer__inner svg{width:10px;height:10px;color:#7a2de5}

@media (max-width:980px){
  .ac-checkout-header__inner,.acx-layout,.ac-checkout-footer__inner{width:calc(100% - 36px)}
  .acx-layout{grid-template-columns:minmax(0,1fr) minmax(280px,34%);gap:36px}
}

@media (max-width:760px){
  .ac-checkout-header{height:52px;position:sticky;top:0;z-index:120}
  body.admin-bar .ac-checkout-header{top:46px}
  .ac-checkout-header__inner{grid-template-columns:34px 1fr 34px;width:calc(100% - 28px)}
  .ac-checkout-logo img{width:92px}

  .acx-layout{width:100%;max-width:none;display:flex;flex-direction:column;gap:0;padding:0}
  .acx-summary{order:1;position:static;width:100%;border-bottom:1px solid #e8e2eb;background:#faf9fb}
  .acx-summary-toggle{width:100%;min-height:50px;display:flex;align-items:center;justify-content:space-between;gap:14px;padding:0 16px;border:0;background:#faf9fb;color:#17131c;text-align:left}
  .acx-summary-toggle>span{display:flex;align-items:baseline;gap:6px}
  .acx-summary-toggle b{font-size:var(--ac-fs-xs)}
  .acx-summary-toggle small{color:#7a2de5;font-size:var(--ac-fs-2xs);font-weight:600}
  .acx-summary-toggle strong{font-size:var(--ac-fs-sm)}
  .acx-summary-content{display:none;padding:0 16px 16px}
  .acx-summary-content.is-open{display:block}
  .acx-summary-head{display:none}

  .acx-main{order:2;width:100%;padding:22px 16px 34px}
  .acx-title{margin-bottom:20px}
  .acx-title p{font-size:var(--ac-fs-xs)}
  .acx-section{padding-bottom:19px}
  .acx-section+.acx-section{padding-top:19px}
  .acx-section-head{margin-bottom:11px}
  .acx-section-head h2{font-size:var(--ac-fs-md)!important}
  .woocommerce-checkout .form-row input.input-text,.woocommerce-checkout .form-row textarea,.woocommerce-checkout .form-row select,.woocommerce-checkout .select2-container--default .select2-selection--single{height:44px!important;min-height:44px!important;font-size:var(--ac-fs-md)!important}
  .woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered,.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{height:42px!important;line-height:42px!important}
  .acx-payment #place_order{min-height:48px!important;font-size:var(--ac-fs-sm)!important}
  .ac-checkout-footer__inner{width:calc(100% - 32px);min-height:auto;padding:12px 0;flex-direction:column;align-items:flex-start;gap:5px}
}

@media (max-width:480px){
  .acx-row{gap:8px;margin-bottom:8px}
  .acx-row--contact{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .acx-row--two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .acx-row--country{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .acx-row--cityzip{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
  .woocommerce-checkout .form-row label{font-size:var(--ac-fs-xs)!important}
}

@media (max-width:390px){
  .acx-row--contact{grid-template-columns:1fr}
  .acx-main{padding-left:13px;padding-right:13px}
  .acx-summary-toggle,.acx-summary-content{padding-left:13px;padding-right:13px}
}

/* v1.1.28 — every paired checkout field is exactly 50 / 50 */
.acx-row--contact,
.acx-row--two,
.acx-row--country,
.acx-row--cityzip{
  grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;
}
.acx-row--contact>div,
.acx-row--two>div,
.acx-row--country>div,
.acx-row--cityzip>div{
  width:100%!important;
  min-width:0!important;
}
@media (max-width:390px){
  .acx-row--contact{grid-template-columns:1fr!important;}
}


/* v1.1.29 — true mobile checkout: one field per row, no iOS input zoom */
@media (max-width:720px){
  .acx-row--contact,
  .acx-row--two,
  .acx-row--country,
  .acx-row--cityzip,
  .acx-extra .acx-row,
  .create-account.acx-row{
    grid-template-columns:1fr!important;
    gap:10px!important;
  }

  .acx-row--contact>div,
  .acx-row--two>div,
  .acx-row--country>div,
  .acx-row--cityzip>div,
  .acx-extra .acx-row>div,
  .create-account.acx-row>div{
    width:100%!important;
    min-width:0!important;
  }

  /* iOS Safari zooms focused form controls below 16px. Keep controls at 16px on mobile. */
  .woocommerce-checkout .form-row input.input-text,
  .woocommerce-checkout .form-row textarea,
  .woocommerce-checkout .form-row select,
  .woocommerce-checkout .select2-container--default .select2-selection--single,
  .woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered,
  .woocommerce-checkout .select2-search--dropdown .select2-search__field{
    font-size:var(--ac-fs-md)!important;
  }

  .woocommerce-checkout .form-row input.input-text,
  .woocommerce-checkout .form-row select,
  .woocommerce-checkout .select2-container--default .select2-selection--single{
    height:48px!important;
    min-height:48px!important;
  }

  .woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered,
  .woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{
    height:46px!important;
    line-height:46px!important;
  }

  .woocommerce-checkout .form-row textarea{
    min-height:100px!important;
    height:auto!important;
    padding-top:12px!important;
    padding-bottom:12px!important;
  }

  .woocommerce-checkout .form-row label{
    font-size:var(--ac-fs-xs)!important;
    margin-bottom:5px!important;
  }

  .acx-row{margin-bottom:10px!important}
}


/* ==========================================================================
   v1.2.0 — modern PDP: tabbed content area
   ========================================================================== */
.ac-pdp-tabs{max-width:980px;margin:0 auto;padding:80px 0 8px}
.ac-pdp-tabs__nav{display:flex;gap:40px;border-bottom:1px solid var(--ac-line);margin-bottom:36px;overflow-x:auto;scrollbar-width:none}
.ac-pdp-tabs__nav::-webkit-scrollbar{display:none}
.ac-pdp-tab{
  flex:0 0 auto;
  appearance:none;-webkit-appearance:none;
  border:0;background:transparent;
  padding:16px 4px;
  font-family:var(--ac-font);
  font-size:var(--ac-fs-base);
  font-weight:700;
  color:#96909f;
  cursor:pointer;
  border-bottom:3px solid transparent;
  margin-bottom:-1px;
  white-space:nowrap;
  transition:color .16s ease,border-color .16s ease;
}
.ac-pdp-tab:hover{color:var(--ac-ink)}
.ac-pdp-tab.is-active{color:var(--ac-ink);border-bottom-color:var(--ac-purple)}
.ac-pdp-tabs__panel{display:none}
.ac-pdp-tabs__panel.is-active{display:block}
.ac-pdp-tabs__split{display:grid;grid-template-columns:1.3fr 1fr;gap:56px;align-items:start}
.ac-pdp-tabs__panel h3{font-size:var(--ac-fs-xl);font-weight:800;margin:0 0 14px}
.ac-pdp-tabs__panel p{font-size:var(--ac-fs-base);line-height:1.75;color:#4a4552;margin:0 0 18px}
.ac-pdp-tabs__panel p:last-child{margin-bottom:0}
.ac-pdp-tabs__checks{list-style:none;padding:0;margin:0;display:grid;gap:16px}
.ac-pdp-tabs__checks li{display:flex;align-items:center;gap:14px;font-size:var(--ac-fs-sm);font-weight:600}
.ac-pdp-tabs__checks li::before{
  content:"✓";
  flex:0 0 36px;width:36px;height:36px;
  border-radius:50%;
  background:#f4f0fa;
  color:var(--ac-purple);
  font-weight:700;
  display:grid;place-items:center;
}
/* How-to-use steps — centered three-up, same language as the rest of the store */
.ac-pdp-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:0 0 32px}
.ac-pdp-step{text-align:center;padding:0 12px;min-width:0}
.ac-pdp-step__num{
  width:64px;height:64px;
  display:grid;place-items:center;
  margin:0 auto 20px;
  border-radius:50%;
  background:#fff;
  box-shadow:0 16px 30px -14px rgba(93,24,197,.3);
  color:var(--ac-purple);
  font-family:var(--ac-font);font-weight:800;font-size:var(--ac-fs-lg);
}
.ac-pdp-step strong{display:block;font-family:var(--ac-font);font-size:var(--ac-fs-lg);font-weight:700;margin-bottom:8px}
.ac-pdp-step__text{display:block;font-size:var(--ac-fs-sm);line-height:1.6;color:var(--ac-muted)}
.ac-pdp-steps__note{
  max-width:640px;margin:0 auto;
  text-align:center;
  font-size:var(--ac-fs-sm)!important;
  line-height:1.7!important;
  color:var(--ac-muted)!important;
}
/* Shipping tab — a delivery timeline, deliberately different content from the
   compact trust row under the add-to-cart button (no repeated badges). */
.ac-ship-timeline{list-style:none;margin:0;padding:0;display:grid;gap:0;counter-reset:acship}
.ac-ship-timeline li{
  position:relative;
  counter-increment:acship;
  padding:0 0 28px 40px;
  min-height:34px;
}
.ac-ship-timeline li:last-child{padding-bottom:0}
.ac-ship-timeline li::before{
  content:counter(acship);
  position:absolute;left:0;top:0;
  width:26px;height:26px;
  border-radius:50%;
  background:var(--ac-grad-purple);
  color:#fff;
  font-family:var(--ac-font);font-weight:700;font-size:var(--ac-fs-2xs);
  display:grid;place-items:center;
  box-shadow:0 8px 16px -8px rgba(93,24,197,.5);
}
.ac-ship-timeline li::after{
  content:"";
  position:absolute;left:12.5px;top:30px;bottom:6px;
  width:1.5px;
  background:linear-gradient(#e5daf5,rgba(229,218,245,0));
}
.ac-ship-timeline li:last-child::after{display:none}
.ac-ship-timeline strong{display:block;font-family:var(--ac-font);font-size:var(--ac-fs-md);margin:2px 0 5px}
.ac-ship-timeline span{display:block;font-size:var(--ac-fs-sm);line-height:1.6;color:var(--ac-muted)}

@media (max-width:900px){
  .ac-pdp-tabs{padding:56px 0 4px}
  .ac-pdp-tabs__split{grid-template-columns:1fr;gap:34px}
  .ac-pdp-tabs__nav{gap:26px;margin-bottom:28px}
}


/* ==========================================================================
   v1.2.3 — the pages the storefront pass missed:
   My Account, cart, order received, order tracking, 404
   ========================================================================== */

/* ---- My Account ---------------------------------------------------------- */
.ac-account{padding:56px 0 96px}
.ac-account__head{margin:0 0 40px;max-width:640px}
.ac-account__head h1{font-size:var(--ac-fs-4xl);font-weight:800;letter-spacing:-.03em;line-height:1.05;margin:10px 0 12px}
.ac-account__head p{margin:0;color:var(--ac-muted);font-size:var(--ac-fs-md);line-height:1.65}
.ac-account__layout{display:grid;grid-template-columns:264px minmax(0,1fr);gap:32px;align-items:start}

.ac-account-nav{position:sticky;top:26px}
.ac-account-nav ul{list-style:none;margin:0;padding:10px;display:grid;gap:4px;background:#fff;border-radius:var(--ac-radius);box-shadow:var(--ac-shadow)}
.ac-account-nav li{margin:0}
.ac-account-nav a{
  display:flex;align-items:center;gap:13px;
  padding:12px 14px;border-radius:14px;
  font-family:var(--ac-font);font-size:var(--ac-fs-sm);font-weight:600;
  color:#514b5a;
  transition:background-color .15s ease,color .15s ease;
}
.ac-account-nav a:hover{background:var(--ac-soft);color:var(--ac-purple)}
.ac-account-nav__icon{
  width:34px;height:34px;flex:0 0 34px;
  display:grid;place-items:center;
  border-radius:50%;
  background:var(--ac-soft);
  color:var(--ac-purple);
  transition:background-color .15s ease,color .15s ease;
}
.ac-account-nav__icon svg{width:17px;height:17px;display:block}
.ac-account-nav .is-active>a{background:var(--ac-grad-purple);color:#fff;box-shadow:0 12px 24px -12px rgba(93,24,197,.5)}
.ac-account-nav .is-active .ac-account-nav__icon{background:rgba(255,255,255,.2);color:#fff}
.ac-account-nav .woocommerce-MyAccount-navigation-link--customer-logout a{color:#9b6b6b}
.ac-account-nav .woocommerce-MyAccount-navigation-link--customer-logout a:hover{color:#c04747;background:#fbeeee}
.ac-account-nav .woocommerce-MyAccount-navigation-link--customer-logout .ac-account-nav__icon{color:#c04747}

.ac-account__content{min-width:0}
.ac-account__content>p:first-child{margin-top:0}

/* Dashboard */
.ac-account-dash__stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:22px}
.ac-account-stat{background:#fff;border-radius:20px;padding:22px;box-shadow:var(--ac-shadow)}
.ac-account-stat strong{display:block;font-family:var(--ac-font);font-size:var(--ac-fs-3xl);font-weight:800;letter-spacing:-.03em;line-height:1;color:var(--ac-purple)}
.ac-account-stat span{display:block;margin-top:7px;color:var(--ac-muted);font-size:var(--ac-fs-xs);font-weight:600}
.ac-account-dash__cards{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-bottom:22px}
.ac-account-card{
  display:block;background:#fff;border-radius:20px;padding:24px;
  box-shadow:var(--ac-shadow);
  transition:transform .18s ease,box-shadow .18s ease;
}
.ac-account-card:hover{transform:translateY(-3px);box-shadow:var(--ac-shadow-hover);color:inherit}
.ac-account-card__icon{
  width:46px;height:46px;display:grid;place-items:center;
  border-radius:50%;background:var(--ac-soft);color:var(--ac-purple);
  margin-bottom:16px;
}
.ac-account-card__icon svg{width:21px;height:21px}
.ac-account-card strong{display:block;font-family:var(--ac-font);font-size:var(--ac-fs-md);font-weight:700;margin-bottom:6px}
.ac-account-card>span:last-child{display:block;color:var(--ac-muted);font-size:var(--ac-fs-sm);line-height:1.6}
.ac-account-help{
  display:flex;align-items:center;justify-content:space-between;gap:24px;flex-wrap:wrap;
  background:var(--ac-purple-soft);border-radius:20px;padding:24px 28px;
}
.ac-account-help strong{display:block;font-family:var(--ac-font);font-size:var(--ac-fs-md);margin-bottom:5px}
.ac-account-help p{margin:0;color:var(--ac-muted);font-size:var(--ac-fs-sm)}
.ac-account-help .ac-btn{background:#fff!important;flex:0 0 auto}

/* WooCommerce tables inside the account area (orders, downloads, addresses) */
.ac-account__content table.shop_table,
.woocommerce-order table.shop_table{
  border:0!important;border-radius:20px!important;
  border-collapse:separate!important;border-spacing:0!important;
  background:#fff!important;box-shadow:var(--ac-shadow);overflow:hidden;
  width:100%;
}
.ac-account__content table.shop_table th,
.woocommerce-order table.shop_table th{
  background:var(--ac-soft)!important;border:0!important;
  padding:15px 18px!important;
  font-family:var(--ac-font);font-size:var(--ac-fs-2xs)!important;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;color:#6f6878!important;text-align:left;
}
.ac-account__content table.shop_table td,
.woocommerce-order table.shop_table td{
  border:0!important;border-top:1px solid var(--ac-line)!important;
  padding:16px 18px!important;font-size:var(--ac-fs-sm);vertical-align:middle!important;
}
.ac-account__content table.shop_table .button,
.woocommerce-order table.shop_table .button{min-height:40px!important;padding:0 18px!important;font-size:var(--ac-fs-xs)!important}
.woocommerce-orders-table__cell-order-status{font-weight:700;color:var(--ac-purple)}

/* Account forms (addresses, account details, login) */
.ac-account__content form .form-row,
.woocommerce-form-login .form-row,
.woocommerce-form-register .form-row{margin:0 0 16px!important;padding:0!important}
.ac-account__content label,
.woocommerce-form-login label,
.woocommerce-form-register label{
  display:block;margin-bottom:7px;
  font-size:var(--ac-fs-xs);font-weight:700;color:#342e39;
}
.ac-account__content input.input-text,
.ac-account__content textarea,
.ac-account__content select,
.woocommerce-form-login input.input-text,
.woocommerce-form-login input[type="password"],
.woocommerce-form-register input.input-text,
.woocommerce-form-register input[type="password"]{
  width:100%;min-height:50px;
  border:0;border-radius:14px;
  background:var(--ac-soft);
  box-shadow:inset 0 0 0 1.5px #ece7f2;
  padding:12px 15px;color:var(--ac-ink);
  font-size:var(--ac-fs-md);outline:none;
  transition:box-shadow .15s ease,background-color .15s ease;
}
.ac-account__content input.input-text:focus,
.ac-account__content textarea:focus,
.ac-account__content select:focus,
.woocommerce-form-login input:focus,
.woocommerce-form-register input:focus{background:#fff;box-shadow:inset 0 0 0 2px var(--ac-purple)}
.ac-account__content fieldset{border:0;padding:24px 0 0;margin:24px 0 0;border-top:1px solid var(--ac-line)}
.ac-account__content fieldset legend{font-family:var(--ac-font);font-size:var(--ac-fs-lg);font-weight:700;padding:0}
.woocommerce-MyAccount-content .woocommerce-Address{background:#fff;border-radius:20px;padding:24px;box-shadow:var(--ac-shadow)}
.woocommerce-MyAccount-content .woocommerce-Address-title h2,
.woocommerce-MyAccount-content .woocommerce-Address-title h3{font-size:var(--ac-fs-lg);font-weight:700;margin:0}
.woocommerce-MyAccount-content .woocommerce-Address address{font-style:normal;color:var(--ac-muted);font-size:var(--ac-fs-sm);line-height:1.7;margin-top:10px}
.woocommerce-Addresses{display:grid;grid-template-columns:1fr 1fr;gap:18px}

/* Login / register (logged-out account page) */
.ac-account .u-columns{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.ac-account .u-column1,.ac-account .u-column2{min-width:0}
.ac-account .woocommerce-form{
  background:#fff;border-radius:var(--ac-radius);padding:30px;
  box-shadow:var(--ac-shadow);border:0;
}
.ac-account h2{font-family:var(--ac-font);font-size:var(--ac-fs-xl);font-weight:800;margin:0 0 18px}

/* ---- Cart ---------------------------------------------------------------- */
.woocommerce-cart .ac-content-page{padding-top:48px}
.woocommerce-cart table.shop_table{
  border:0!important;border-radius:var(--ac-radius)!important;
  border-collapse:separate!important;border-spacing:0!important;
  background:#fff!important;box-shadow:var(--ac-shadow);overflow:hidden;
}
.woocommerce-cart table.shop_table th{
  background:var(--ac-soft)!important;border:0!important;padding:16px 18px!important;
  font-family:var(--ac-font);font-size:var(--ac-fs-2xs)!important;font-weight:700;
  letter-spacing:.08em;text-transform:uppercase;color:#6f6878!important;
}
.woocommerce-cart table.shop_table td{border:0!important;border-top:1px solid var(--ac-line)!important;padding:18px!important}
.woocommerce-cart table.shop_table img{width:72px!important;border-radius:14px;background:var(--ac-grad-media)}
.woocommerce-cart .product-name a{font-family:var(--ac-font);font-weight:700;font-size:var(--ac-fs-sm)}
.woocommerce-cart td.product-remove a.remove{
  width:32px!important;height:32px!important;
  display:grid!important;place-items:center;
  border-radius:50%!important;color:#a29ca5!important;
  font-size:20px!important;background:transparent!important;
  transition:background-color .15s ease,color .15s ease;
}
.woocommerce-cart td.product-remove a.remove:hover{background:#fbeeee!important;color:#e04747!important}
.woocommerce-cart .quantity input.qty{
  width:70px;min-height:44px;border:0;border-radius:12px;
  background:var(--ac-soft);box-shadow:inset 0 0 0 1.5px #ece7f2;
  text-align:center;font-weight:700;
}
.woocommerce-cart .cart-collaterals{margin-top:32px}
.woocommerce-cart .cart_totals{
  background:#fff;border-radius:var(--ac-radius);padding:28px;
  box-shadow:var(--ac-shadow);max-width:460px;margin-left:auto;
}
.woocommerce-cart .cart_totals h2{font-family:var(--ac-font);font-size:var(--ac-fs-xl);font-weight:800;margin:0 0 18px}
.woocommerce-cart .cart_totals table{border:0!important;box-shadow:none!important;background:transparent!important}
.woocommerce-cart .cart_totals table th,
.woocommerce-cart .cart_totals table td{background:transparent!important;padding:12px 0!important;border-top:1px solid var(--ac-line)!important}
.woocommerce-cart .cart_totals .order-total th,
.woocommerce-cart .cart_totals .order-total td{font-size:var(--ac-fs-lg);font-weight:800}
.woocommerce-cart .wc-proceed-to-checkout{padding:18px 0 0!important}
.woocommerce-cart .wc-proceed-to-checkout .checkout-button{width:100%}
.woocommerce-cart .coupon{display:flex;gap:10px;flex-wrap:wrap}
.woocommerce-cart .coupon input#coupon_code{
  min-height:48px;min-width:180px;border:0;border-radius:14px;
  background:var(--ac-soft);box-shadow:inset 0 0 0 1.5px #ece7f2;padding:0 15px;
}
.woocommerce-cart .cart-empty{
  text-align:center;font-family:var(--ac-font);font-size:var(--ac-fs-xl);
  font-weight:700;padding:56px 0 12px;
}
.woocommerce-cart .return-to-shop{text-align:center;padding-bottom:56px}

/* ---- Order received / thank you ----------------------------------------- */
.woocommerce-order{max-width:820px;margin:0 auto}
.woocommerce-notice--success,
.woocommerce-thankyou-order-received{
  background:linear-gradient(135deg,#eaf7ef 0%,#f7fcf9 100%)!important;
  border:0!important;border-radius:var(--ac-radius)!important;
  padding:32px!important;margin:0 0 28px!important;
  color:var(--ac-green-text)!important;
  font-family:var(--ac-font);font-size:var(--ac-fs-xl)!important;font-weight:800;
  text-align:center;
}
.woocommerce-notice--success::before,
.woocommerce-thankyou-order-received::before{display:none!important}
ul.woocommerce-order-overview{
  list-style:none;margin:0 0 28px!important;padding:26px!important;
  display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:20px;
  background:#fff;border-radius:var(--ac-radius);box-shadow:var(--ac-shadow);
  border:0!important;
}
ul.woocommerce-order-overview li{
  border:0!important;padding:0!important;margin:0!important;
  font-size:var(--ac-fs-2xs)!important;font-weight:700;letter-spacing:.08em;
  text-transform:uppercase;color:#6f6878;
}
ul.woocommerce-order-overview li strong{
  display:block;margin-top:8px;
  font-family:var(--ac-font);font-size:var(--ac-fs-lg);font-weight:800;
  letter-spacing:normal;text-transform:none;color:var(--ac-ink);
}
.woocommerce-order h2,.woocommerce-column__title{
  font-family:var(--ac-font);font-size:var(--ac-fs-xl);font-weight:800;margin:0 0 16px;
}
.woocommerce-columns--addresses{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:28px}
.woocommerce-columns--addresses .col-1,
.woocommerce-columns--addresses .col-2{
  background:#fff;border-radius:20px;padding:24px;box-shadow:var(--ac-shadow);width:auto!important;float:none!important;
}
.woocommerce-columns--addresses address{font-style:normal;color:var(--ac-muted);font-size:var(--ac-fs-sm);line-height:1.7}

/* ---- Order tracking ------------------------------------------------------ */
.woocommerce form.track_order{
  max-width:560px;margin:0 auto;
  background:#fff;border-radius:var(--ac-radius);padding:32px;
  box-shadow:var(--ac-shadow);
}
.woocommerce form.track_order .form-row{margin:0 0 16px!important;padding:0!important;width:100%!important;float:none!important}
.woocommerce form.track_order label{display:block;margin-bottom:7px;font-size:var(--ac-fs-xs);font-weight:700;color:#342e39}
.woocommerce form.track_order input.input-text{
  width:100%;min-height:50px;border:0;border-radius:14px;
  background:var(--ac-soft);box-shadow:inset 0 0 0 1.5px #ece7f2;
  padding:12px 15px;font-size:var(--ac-fs-md);outline:none;
  transition:box-shadow .15s ease,background-color .15s ease;
}
.woocommerce form.track_order input.input-text:focus{background:#fff;box-shadow:inset 0 0 0 2px var(--ac-purple)}
.woocommerce form.track_order button{width:100%;margin-top:6px}

/* ---- 404 ----------------------------------------------------------------- */
.ac-404{padding:72px 0 96px}
.ac-404__hero{max-width:640px;margin:0 auto 72px;text-align:center}
.ac-404__hero h1{font-size:var(--ac-fs-5xl);font-weight:800;letter-spacing:-.03em;line-height:1.04;margin:12px 0 16px}
.ac-404__hero>p{margin:0 0 30px;color:var(--ac-muted);font-size:var(--ac-fs-md);line-height:1.65}
.ac-404__actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-bottom:36px}
.ac-404__links{display:flex;gap:14px;justify-content:center;flex-wrap:wrap}
.ac-404__links a{
  display:inline-flex;align-items:center;gap:9px;
  padding:11px 20px;border-radius:999px;
  background:var(--ac-soft);color:#514b5a;
  font-family:var(--ac-font);font-size:var(--ac-fs-sm);font-weight:600;
  transition:background-color .15s ease,color .15s ease;
}
.ac-404__links a:hover{background:#ece4f8;color:var(--ac-purple)}
.ac-404__links svg{width:17px;height:17px;color:var(--ac-purple)}

@media (max-width:900px){
  .ac-account__layout{grid-template-columns:1fr;gap:24px}
  .ac-account-nav{position:static}
  .ac-account-nav ul{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}
  .ac-account-dash__cards,.woocommerce-Addresses,.ac-account .u-columns,.woocommerce-columns--addresses{grid-template-columns:1fr}
  .ac-account-dash__stats{grid-template-columns:1fr}
  .woocommerce-cart .cart_totals{max-width:none}
}
@media (max-width:560px){
  .ac-account{padding:36px 0 64px}
  .ac-account__head h1{font-size:var(--ac-fs-3xl)}
  .ac-account-nav ul{grid-template-columns:1fr}
  .ac-account-help{flex-direction:column;align-items:flex-start}
  .ac-account-help .ac-btn{width:100%}
  .ac-404{padding:48px 0 64px}
  .ac-404__hero h1{font-size:var(--ac-fs-3xl)}
  .ac-404__actions .ac-btn{width:100%}
}

/* Logged-out account page: centre the login/register columns, add the guest note */
.ac-account--guest .ac-account__head{text-align:center;margin-left:auto;margin-right:auto}
.ac-account--guest .ac-account__content{max-width:900px;margin:0 auto}
.ac-account__guest-note{
  display:flex;align-items:center;justify-content:center;gap:9px;flex-wrap:wrap;
  max-width:900px;margin:26px auto 0;
  color:var(--ac-muted);font-size:var(--ac-fs-sm);
}
.ac-account__guest-note svg{width:17px;height:17px;color:var(--ac-purple)}
.ac-account__guest-note a{color:var(--ac-purple);font-weight:700}

/* Account stat: wc_price() wraps the currency symbol in its own span, which was
   breaking onto its own line inside the tight stat card. */
.ac-account-stat strong .woocommerce-Price-amount{display:inline;white-space:nowrap}
.ac-account-stat strong .woocommerce-Price-currencySymbol{display:inline;margin-right:1px}
.ac-account-stat strong bdi{display:inline;white-space:nowrap}

/* WooCommerce's show/hide password toggle rendered as a bare grey stub. */
.woocommerce form .password-input,
.woocommerce-page form .password-input{display:block;position:relative;width:100%}
.woocommerce form .show-password-input,
.woocommerce-page form .show-password-input{
  position:absolute;right:14px;top:50%;transform:translateY(-50%);
  width:34px;height:34px;
  border:0;border-radius:50%;
  background:transparent;
  cursor:pointer;
  display:grid;place-items:center;
  color:#8a8390;
  transition:background-color .15s ease,color .15s ease;
}
.woocommerce form .show-password-input::after,
.woocommerce-page form .show-password-input::after{
  content:"";
  width:19px;height:19px;
  background-color:currentColor;
  -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7-10-7-10-7Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
  mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='black' stroke-width='1.8' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='M2 12s3.6-7 10-7 10 7 10 7-3.6 7-10 7-10-7-10-7Z'/%3E%3Ccircle cx='12' cy='12' r='3'/%3E%3C/svg%3E") center/contain no-repeat;
}
.woocommerce form .show-password-input:hover,
.woocommerce-page form .show-password-input:hover{background:var(--ac-soft);color:var(--ac-purple)}
.woocommerce form .show-password-input.display-password,
.woocommerce-page form .show-password-input.display-password{color:var(--ac-purple)}
.woocommerce form .password-input input{padding-right:56px!important}

/* Account content: WooCommerce prints its own <h2>/<h3> per endpoint. */
.ac-account__content>h2,.ac-account__content>h3{
  font-family:var(--ac-font);font-size:var(--ac-fs-xl);font-weight:800;margin:0 0 18px;
}
.ac-account__content .woocommerce-Message,
.ac-account__content .woocommerce-message{margin-bottom:18px!important}


/* ==========================================================================
   v1.2.4 — checkout brought onto the same design language as the storefront
   (soft-inset fields, gradient pill CTA, elevated summary card)
   ========================================================================== */
.ac-checkout-header{height:68px;border-bottom:1px solid var(--ac-line)}
.ac-checkout-logo img{width:118px}
.ac-checkout-back{font-size:var(--ac-fs-sm);font-weight:600;color:#6f6878;white-space:nowrap}
.ac-checkout-back:hover{color:var(--ac-purple)}
.ac-checkout-secure{font-size:var(--ac-fs-xs);font-weight:600;color:#6f6878}
.ac-checkout-secure svg{width:16px;height:16px}

.acx-layout{gap:72px;padding-top:44px;padding-bottom:72px}
.acx-title{margin:0 0 30px}
.acx-title h1{font-size:var(--ac-fs-3xl);font-weight:800;letter-spacing:-.025em;margin:0 0 8px}
.acx-title p{font-size:var(--ac-fs-sm);color:var(--ac-muted)}

.acx-section{padding-bottom:28px}
.acx-section+.acx-section{padding-top:28px;border-top:1px solid var(--ac-line)}
.acx-section-head{margin:0 0 18px}
.acx-section-head h2{font-size:var(--ac-fs-xl)!important;font-weight:800!important;letter-spacing:-.02em}
.acx-section-head>span{font-size:var(--ac-fs-xs);font-weight:600;color:#8a8390}
.acx-section-head>span svg{width:15px;height:15px}
.acx-login{font-size:var(--ac-fs-xs)}

/* Fields */
.woocommerce-checkout .form-row label{font-size:var(--ac-fs-xs)!important;font-weight:700!important;margin:0 0 7px!important}
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .select2-container--default .select2-selection--single{
  height:52px!important;min-height:52px!important;
  border:0!important;border-radius:14px!important;
  background:var(--ac-soft)!important;
  box-shadow:inset 0 0 0 1.5px #ece7f2!important;
  padding:0 15px!important;
  font-size:var(--ac-fs-md)!important;
}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__rendered{height:50px!important;line-height:50px!important}
.woocommerce-checkout .select2-container--default .select2-selection--single .select2-selection__arrow{height:50px!important}
.woocommerce-checkout .form-row input:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .form-row select:focus,
.woocommerce-checkout .select2-container--open .select2-selection--single{
  background:#fff!important;box-shadow:inset 0 0 0 2px var(--ac-purple)!important;
}
.acx-row{gap:14px;margin-bottom:14px}
.acx-address2-toggle{font-size:var(--ac-fs-xs);font-weight:700}
.acx-check{font-size:var(--ac-fs-sm)!important}

/* Payment */
.acx-payment #payment ul.payment_methods{
  border:0!important;border-radius:var(--ac-radius-sm)!important;
  box-shadow:var(--ac-shadow)!important;background:#fff!important;
}
.acx-payment #payment ul.payment_methods li{
  padding:16px 18px!important;border-top:1px solid var(--ac-line)!important;
  font-size:var(--ac-fs-sm)!important;
}
.acx-payment #payment ul.payment_methods li>label{font-size:var(--ac-fs-sm)!important;font-weight:700!important}
.acx-payment #payment div.payment_box{
  border-radius:12px!important;background:var(--ac-soft)!important;
  padding:14px 16px!important;font-size:var(--ac-fs-sm)!important;
}
.acx-payment #payment .woocommerce-privacy-policy-text{font-size:var(--ac-fs-xs);line-height:1.6;margin:16px 0 12px}
.acx-payment #payment .woocommerce-terms-and-conditions-wrapper{font-size:var(--ac-fs-sm);margin-bottom:16px}
.acx-payment #place_order{
  width:100%!important;min-height:58px!important;
  border:0!important;border-radius:999px!important;
  background:var(--ac-grad-purple)!important;
  color:#fff!important;
  font-family:var(--ac-font)!important;
  font-size:var(--ac-fs-md)!important;font-weight:700!important;
  box-shadow:var(--ac-shadow-purple)!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease;
}
.acx-payment #place_order:hover{
  filter:brightness(1.06);transform:translateY(-2px);
  box-shadow:var(--ac-shadow-purple-hover)!important;
}
.acx-payment #place_order:active{transform:translateY(0)}

/* Order summary — an elevated card, matching product/review cards */
.acx-summary{top:96px}
.acx-summary-content{
  background:#fff;border-radius:var(--ac-radius);
  padding:26px;box-shadow:var(--ac-shadow);
}
.acx-summary-head{padding:0 0 16px;margin:0 0 6px;border-bottom:1px solid var(--ac-line)}
.acx-summary-head h2{font-size:var(--ac-fs-xl);font-weight:800;letter-spacing:-.02em}
.acx-summary-head>span{font-size:var(--ac-fs-xs);font-weight:600;color:#8a8390}
.acx-review table.shop_table{font-size:var(--ac-fs-sm)!important}
.acx-review table.shop_table th,.acx-review table.shop_table td{padding:14px 0!important}
.acx-summary-thumb{
  width:56px;height:56px;flex:0 0 56px;
  border:0;border-radius:12px;
  background:var(--ac-grad-media);
  box-shadow:var(--ac-shadow-sm);
}
.acx-summary-thumb img{border-radius:12px}
.acx-summary-thumb>span{
  min-width:20px;height:20px;font-size:var(--ac-fs-2xs);
  background:var(--ac-purple);right:-7px;top:-7px;
  box-shadow:0 4px 10px -4px rgba(93,24,197,.6);
}
.acx-summary-product{gap:13px}
.acx-summary-product-copy>strong{font-size:var(--ac-fs-sm);font-weight:700}
.acx-summary-product-copy .wc-item-meta,.acx-summary-product-copy dl.variation{font-size:var(--ac-fs-xs)!important}
.acx-review table.shop_table tfoot th,.acx-review table.shop_table tfoot td{
  font-size:var(--ac-fs-sm)!important;padding:9px 0!important;
}
.acx-review table.shop_table tfoot .order-total th,
.acx-review table.shop_table tfoot .order-total td{
  padding-top:16px!important;font-size:var(--ac-fs-xl)!important;font-weight:800!important;
  border-top:1px solid var(--ac-line)!important;
}
.acx-assurance{
  gap:10px 18px;margin-top:18px;padding-top:16px;
  border-top:1px solid var(--ac-line);
  font-size:var(--ac-fs-xs);font-weight:600;color:#6f6878;
}
.acx-assurance svg{width:14px;height:14px}

.ac-checkout-footer{border-top:1px solid var(--ac-line)}
.ac-checkout-footer__inner{min-height:56px;font-size:var(--ac-fs-xs);color:#8a8390}
.ac-checkout-footer__inner svg{width:14px;height:14px}

/* Mobile summary toggle */
@media (max-width:760px){
  .acx-layout{padding-top:0;padding-bottom:0}
  .acx-summary-content{border-radius:0;box-shadow:none;padding:0 16px 18px;background:transparent}
  .acx-summary-toggle{min-height:58px!important;background:var(--ac-soft)!important}
  .acx-summary-toggle b{font-size:var(--ac-fs-sm)}
  .acx-summary-toggle strong{font-size:var(--ac-fs-md)}
  .acx-summary-toggle small{font-size:var(--ac-fs-xs)}
  .acx-title h1{font-size:var(--ac-fs-2xl)}
  .acx-title p{font-size:var(--ac-fs-xs)}
  .acx-section-head h2{font-size:var(--ac-fs-lg)!important}
  .acx-payment #place_order{min-height:56px!important;font-size:var(--ac-fs-md)!important}
}

/* .woocommerce-error is a <ul> of messages — stack it instead of the row layout
   used by the single-message info/message notices. */
.woocommerce-error{flex-direction:column;align-items:stretch;gap:8px}
.woocommerce-error li{width:100%}

/* Cart / order-tracking / thank-you page headers */
.ac-content-page--wc{padding:52px 0 88px}
.ac-content-page--wc>.ac-container>article>h1{
  font-size:var(--ac-fs-4xl);font-weight:800;letter-spacing:-.03em;
  line-height:1.05;margin:0 0 12px;
}
.ac-content-page--wc>.ac-container>article>p:first-of-type{
  color:var(--ac-muted);font-size:var(--ac-fs-md);line-height:1.65;
  max-width:620px;margin:0 0 32px;
}
.ac-account-page{display:block}


/* ==========================================================================
   v1.2.5 — mobile fixes
   ========================================================================== */

/* 1. Sticky buy bar hides while the real add-to-cart button is on screen,
      so the two identical buttons are never visible at the same time. */
.ac-mobile-sticky{transition:transform .22s ease,opacity .22s ease}
.ac-mobile-sticky.is-hidden{transform:translateY(110%);opacity:0;pointer-events:none}

/* 2. wc_price() splits the currency symbol into its own <span>, which wraps to
      a second line in any narrow container. Keep every rendered price on one line. */
.woocommerce-Price-amount,
.woocommerce-Price-amount bdi{white-space:nowrap}
.woocommerce-Price-currencySymbol{display:inline;margin-right:1px}
.ac-card-price,.ac-single-price,.ac-package-price,.ac-bundle-price,
.ac-package-mini .price,.ac-mini-item-price,.ac-mini-subtotal strong,
.ac-mobile-upsell-row span,.ac-account-stat strong,.acx-summary-toggle strong{
  white-space:nowrap;
}
.ac-mobile-upsell-row strong{min-width:0}

/* 3. Mobile checkout could be dragged sideways. Two causes: controls overflowing
      the viewport, and iOS zooming into any field under 16px (which then makes the
      whole page pannable). Clamp the widths here; the 16px floor is below. */
.woocommerce-checkout input,
.woocommerce-checkout select,
.woocommerce-checkout textarea,
.woocommerce-checkout .select2-container{max-width:100%!important}
.select2-container--open .select2-dropdown{max-width:calc(100vw - 24px)!important}
.acx-layout,.acx-main,.acx-summary,.acx-row,.acx-row>div,.acx-section{min-width:0;max-width:100%}
.acx-review table.shop_table{width:100%!important}
.acx-review table.shop_table .product-name{width:auto;padding-right:14px!important}
.acx-review table.shop_table .product-total{width:1%;white-space:nowrap;text-align:right!important}
.acx-summary-product-copy{min-width:0;overflow-wrap:anywhere}
.woocommerce-checkout .form-row{max-width:100%}

@media (max-width:760px){
  /* iOS scrolls the page sideways when a focused field sits in an over-wide row. */
  .acx-row,.acx-row--contact,.acx-row--two,.acx-row--country,.acx-row--cityzip{
    grid-template-columns:1fr!important;
  }
  .acx-summary-toggle{width:100%;max-width:100%}
  .acx-assurance{max-width:100%}
}

/* iOS Safari zooms — and then lets you pan the page — whenever a focused control
   is under 16px. Enforce the floor on every form control, not just checkout. */
@media (max-width:900px){
  input[type="text"],input[type="email"],input[type="tel"],input[type="number"],
  input[type="password"],input[type="search"],input[type="url"],
  select,textarea,
  .select2-container--default .select2-selection--single,
  .select2-container--default .select2-selection--single .select2-selection__rendered,
  .select2-search--dropdown .select2-search__field{
    font-size:16px!important;
  }
}

/* Checkout header on small screens: keep both labels legible rather than the
   old font-size:0 icon-only hack (which doubled up with the arrow glyph). */
@media (max-width:520px){
  .ac-checkout-header__inner{gap:10px}
  .ac-checkout-back,.ac-checkout-secure{font-size:var(--ac-fs-2xs)}
  .ac-checkout-logo img{width:96px}
}

/* ==========================================================================
   v1.2.7 — wc_price() integrity, theme-wide.
   wc_price() renders:
     <span class="woocommerce-Price-amount"><bdi>
       <span class="woocommerce-Price-currencySymbol">$</span>7.99
     </bdi></span>
   Any ancestor rule like `.something span{display:block}` also hits that inner
   currency span and drops the symbol onto its own line. Pin the price internals
   so no ancestor rule can break them, wherever a price is rendered.
   ========================================================================== */
.woocommerce-Price-amount{display:inline-block!important;white-space:nowrap!important}
.woocommerce-Price-amount bdi{display:inline!important;white-space:nowrap!important}
.woocommerce-Price-currencySymbol{display:inline!important;float:none!important;margin:0 1px 0 0!important;font-size:inherit!important;line-height:inherit!important;vertical-align:baseline!important}
del .woocommerce-Price-amount,ins .woocommerce-Price-amount{display:inline-block!important}

/* Order-summary variation meta ("Offer: Buy 3 Get 2 Free") is a <dl> whose
   dt/dd stack by default, wasting two lines and reading as a broken indent. */
.acx-summary-product-copy dl.variation,
.acx-summary-product-copy .wc-item-meta{
  display:flex!important;flex-wrap:wrap;gap:0 5px;
  margin:3px 0 0!important;padding:0!important;
}
.acx-summary-product-copy dl.variation dt,
.acx-summary-product-copy .wc-item-meta strong,
.acx-summary-product-copy .wc-item-meta dt{
  margin:0!important;padding:0!important;font-weight:600!important;float:none!important;
}
.acx-summary-product-copy dl.variation dd,
.acx-summary-product-copy .wc-item-meta dd{
  margin:0!important;padding:0!important;float:none!important;
}
.acx-summary-product-copy dl.variation dd p,
.acx-summary-product-copy .wc-item-meta dd p{margin:0!important}


/* ==========================================================================
   v1.2.8 — Contact Form 7 styled to match the store's field language.
   CF7 wraps every control in <span class="wpcf7-form-control-wrap">, so the
   theme's own .ac-contact-form rules don't reach them.
   ========================================================================== */
.ac-cf7 .wpcf7{margin:0}
.ac-cf7 .wpcf7-form{display:grid;gap:13px;margin:0}
.ac-cf7 .wpcf7-form p{margin:0}
.ac-cf7 .ac-cf7-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ac-cf7 label{
  /* block, not grid: inline bits of the label text (like the "optional" hint)
     must stay on the same line as the label itself. */
  display:block;
  color:#342d38;font-size:var(--ac-fs-xs);font-weight:700;
}
.ac-cf7 .wpcf7-form-control-wrap{margin-top:7px}
.ac-cf7 label .ac-cf7-optional{color:#99919e;font-weight:400}
.ac-cf7 .wpcf7-form-control-wrap{display:block}
.ac-cf7 .ac-cf7-optional{margin-left:4px}
.ac-cf7 .wpcf7-form-control:not(.wpcf7-submit):not([type="checkbox"]):not([type="radio"]){
  width:100%;
  border:0;border-radius:14px;
  background-color:var(--ac-soft);
  box-shadow:inset 0 0 0 1.5px #ece7f2;
  padding:13px 15px;
  color:var(--ac-ink);
  font-family:var(--ac-font-body);
  font-size:var(--ac-fs-md);
  outline:none;
  transition:box-shadow .15s ease,background-color .15s ease;
}
.ac-cf7 select.wpcf7-form-control{min-height:50px;appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%236f6878' stroke-width='2' stroke-linecap='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 14px center;background-size:18px;padding-right:42px}
.ac-cf7 textarea.wpcf7-form-control{height:104px;min-height:104px;resize:vertical}
.ac-cf7 .wpcf7-form-control:focus{background-color:#fff;box-shadow:inset 0 0 0 2px var(--ac-purple)}
.ac-cf7 .wpcf7-submit{
  width:100%;min-height:54px;
  border:0;border-radius:999px;
  background:var(--ac-grad-purple);
  color:#fff;
  font-family:var(--ac-font);font-size:var(--ac-fs-md);font-weight:700;
  cursor:pointer;
  box-shadow:var(--ac-shadow-purple);
  transition:transform .16s ease,box-shadow .16s ease,filter .16s ease;
}
.ac-cf7 .wpcf7-submit:hover{filter:brightness(1.07);transform:translateY(-2px);box-shadow:var(--ac-shadow-purple-hover)}
.ac-cf7 .wpcf7-submit:active{background:var(--ac-grad-purple-pressed);transform:translateY(1px);box-shadow:var(--ac-shadow-purple-pressed)}
.ac-cf7 .wpcf7-spinner{margin:10px auto 0;display:block}

/* CF7 validation + response messages */
.ac-cf7 .wpcf7-not-valid-tip{
  margin-top:6px;color:#c0392b;font-size:var(--ac-fs-xs);font-weight:600;
}
.ac-cf7 .wpcf7-form-control.wpcf7-not-valid{box-shadow:inset 0 0 0 2px #e07a7a}
.ac-cf7 .wpcf7-response-output{
  margin:6px 0 0!important;padding:14px 18px!important;
  border:0!important;border-radius:var(--ac-radius-sm)!important;
  font-size:var(--ac-fs-sm);line-height:1.55;
  background:var(--ac-soft);
}
.ac-cf7 form.sent .wpcf7-response-output{background:var(--ac-green);color:var(--ac-green-text);box-shadow:inset 3px 0 0 var(--ac-green-text)}
.ac-cf7 form.invalid .wpcf7-response-output,
.ac-cf7 form.unaccepted .wpcf7-response-output,
.ac-cf7 form.failed .wpcf7-response-output{background:#fdf1f1;color:#9b2c2c;box-shadow:inset 3px 0 0 #c0392b}
.ac-contact-form__fallback{font-size:var(--ac-fs-sm);color:var(--ac-muted)}
.ac-contact-form__fallback a{color:var(--ac-purple);font-weight:700}

@media (max-width:640px){
  .ac-cf7 .ac-cf7-row{grid-template-columns:1fr}
}

/* Honeypot: off-screen rather than display:none — bots skip hidden fields,
   which is exactly the behaviour we want to catch. */
.ac-hp{position:absolute!important;left:-9999px!important;top:auto!important;width:1px!important;height:1px!important;overflow:hidden!important}

/* Belt-and-braces: if CF7's autop is ever re-enabled elsewhere, keep the
   layout from collapsing into a single stacked column. */
.ac-cf7 .wpcf7-form>p{margin:0;display:contents}
.ac-cf7 .ac-cf7-row>p{display:contents}
.ac-cf7 label br{display:none}
.ac-cf7 .wpcf7-form>br,.ac-cf7 .ac-cf7-row>br{display:none}

/* ---- Review photo upload (inside the Write a review modal) --------------- */
.ac-review-upload__hint{display:block;margin-top:3px;color:#99919e;font-size:var(--ac-fs-2xs);font-weight:500}
.ac-review-upload input[type="file"]{
  width:100%;
  border:0;border-radius:14px;
  background:var(--ac-soft);
  box-shadow:inset 0 0 0 1.5px #ece7f2;
  padding:12px 14px;
  font-size:var(--ac-fs-sm);
  color:#514b5a;
  cursor:pointer;
}
.ac-review-upload input[type="file"]::file-selector-button{
  margin-right:12px;border:0;border-radius:999px;
  background:var(--ac-purple);color:#fff;
  font-family:var(--ac-font);font-size:var(--ac-fs-xs);font-weight:700;
  padding:9px 16px;cursor:pointer;
}
.ac-review-upload input[type="file"]:focus{background:#fff;box-shadow:inset 0 0 0 2px var(--ac-purple);outline:none}
.ac-review-upload__preview{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}
.ac-review-upload__thumb{
  width:64px;height:64px;border-radius:12px;overflow:hidden;
  background:var(--ac-grad-media);box-shadow:var(--ac-shadow-sm);flex:0 0 64px;
}
.ac-review-upload__thumb img{width:100%;height:100%;object-fit:cover;display:block}
.ac-review-upload__error{
  flex:1 1 100%;color:#c0392b;font-size:var(--ac-fs-xs);font-weight:600;line-height:1.5;
}

/* ---- Photos shown on a submitted review --------------------------------- */
.ac-review-photos{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}
.ac-review-photo{
  width:60px;height:60px;border-radius:10px;overflow:hidden;flex:0 0 60px;
  background:var(--ac-grad-media);box-shadow:var(--ac-shadow-sm);
  transition:transform .15s ease,box-shadow .15s ease;
}
.ac-review-photo:hover{transform:translateY(-2px);box-shadow:var(--ac-shadow)}
.ac-review-photo img{width:100%;height:100%;object-fit:cover;display:block}
