/*
Theme Name: CaptaVerba
Theme URI: https://captaverba.com/
Author: Elio Petrelli
Description: Tema WordPress proprietario per CAPTAVERBA™. Home prodotto, funzionalità, licenze WooCommerce, download e supporto.
Version: 1.1.71
Requires at least: 6.4
Requires PHP: 8.0
Text Domain: captaverba
License: Proprietary
*/
:root{--cv-bg:#f5f7fb;--cv-surface:#fff;--cv-ink:#172033;--cv-muted:#667085;--cv-line:#e4e8f0;--cv-primary:#1f5eff;--cv-primary-2:#1746bf;--cv-accent:#eaf0ff;--cv-good:#0a8f63;--cv-action-red:#d83b3f;--cv-dark:#0e1525;--cv-radius:24px;--cv-shadow:0 20px 55px rgba(28,43,78,.10);--cv-max:1180px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cv-bg);color:var(--cv-ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;line-height:1.65}a{color:var(--cv-primary);text-decoration:none}a:hover{text-decoration:none}img{max-width:100%;height:auto}.cv-wrap{width:min(calc(100% - 36px),var(--cv-max));margin-inline:auto}.screen-reader-text{position:absolute;clip:rect(1px,1px,1px,1px);width:1px;height:1px;overflow:hidden}.skip-link:focus{clip:auto;width:auto;height:auto;left:16px;top:16px;z-index:9999;background:#fff;padding:10px 14px;border-radius:10px}
.site-header{position:sticky;top:0;z-index:50;background:rgba(245,247,251,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(228,232,240,.85)}.header-inner{min-height:78px;display:flex;align-items:center;gap:26px}.brand{display:flex;align-items:center;gap:12px;font-weight:800;letter-spacing:.03em;color:var(--cv-ink);font-size:1.15rem}.brand-mark{width:38px;height:38px;border-radius:12px;background:linear-gradient(145deg,var(--cv-primary),#7b9cff);box-shadow:0 8px 20px rgba(31,94,255,.24);position:relative}.brand-mark:after{content:"C";position:absolute;inset:0;display:grid;place-items:center;color:#fff;font-weight:900}.tm{font-size:.53em;vertical-align:super;margin-left:2px}.main-nav{margin-left:auto}.main-nav ul{display:flex;align-items:center;gap:26px;list-style:none;padding:0;margin:0}.main-nav a{color:#354052;font-weight:600;font-size:.95rem}.cv-header-account{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border:1px solid var(--cv-line);border-radius:13px;background:#fff;color:#354052;transition:.18s border-color,.18s color,.18s box-shadow,.18s transform}.cv-header-account:hover{color:var(--cv-primary);border-color:#cbd7f5;box-shadow:0 8px 20px rgba(31,55,105,.08);transform:translateY(-1px)}.cv-header-account svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round}.cv-account-online{position:absolute;right:4px;bottom:4px;width:8px;height:8px;border-radius:50%;background:var(--cv-good);border:2px solid #fff}.header-buy{display:inline-flex;align-items:center;justify-content:center;padding:11px 17px;border-radius:13px;background:var(--cv-primary);color:#fff;font-weight:750;box-shadow:0 10px 22px rgba(31,94,255,.22)}.menu-toggle{display:none;border:1px solid var(--cv-line);background:#fff;border-radius:12px;width:42px;height:42px;padding:0;align-items:center;justify-content:center}.menu-toggle-lines{display:flex;flex-direction:column;gap:4px;width:18px}.menu-toggle-lines span{display:block;height:2px;border-radius:2px;background:var(--cv-ink);width:100%}
.hero{padding:84px 0 52px;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:58px;align-items:center}.eyebrow{display:inline-flex;align-items:center;gap:8px;padding:7px 11px;border:1px solid #d7e0ff;background:#f7f9ff;color:#3151a5;border-radius:999px;font-size:.82rem;font-weight:750;letter-spacing:.02em}.hero h1{font-size:clamp(2.75rem,6vw,5.7rem);line-height:.97;letter-spacing:-.055em;margin:20px 0 22px}.hero h1 span{color:var(--cv-primary)}.hero p{font-size:1.15rem;color:var(--cv-muted);max-width:690px;margin:0 0 30px}.actions{display:flex;flex-wrap:wrap;gap:12px}.btn{display:inline-flex;align-items:center;justify-content:center;min-height:50px;padding:0 20px;border-radius:14px;font-weight:780;border:1px solid transparent;transition:.2s transform,.2s box-shadow}.btn:hover{transform:translateY(-1px)}.btn-primary{background:var(--cv-primary);color:#fff;box-shadow:0 12px 28px rgba(31,94,255,.23)}.btn-secondary{background:#fff;color:var(--cv-ink);border-color:var(--cv-line)}.hero-note{display:flex;gap:18px;flex-wrap:wrap;margin-top:26px;color:#657086;font-size:.88rem}.hero-note span:before{content:"✓";margin-right:7px;color:var(--cv-good);font-weight:900}
.product-window{background:var(--cv-dark);border-radius:28px;box-shadow:0 30px 70px rgba(13,22,43,.22);padding:14px;transform:rotate(1deg)}.window-top{display:flex;align-items:center;gap:7px;padding:5px 4px 13px}.dot{width:9px;height:9px;border-radius:50%;background:#4d5870}.window-body{background:linear-gradient(160deg,#17223a,#101827);border:1px solid #29334a;border-radius:19px;padding:20px;color:#fff}.app-title{display:flex;align-items:center;justify-content:space-between;margin-bottom:18px}.app-title strong{font-size:.97rem}.status-pill{font-size:.72rem;background:rgba(61,206,154,.13);color:#78e4bd;border:1px solid rgba(80,222,173,.2);border-radius:999px;padding:6px 9px}.app-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-bottom:16px}.app-tab{font-size:.72rem;text-align:center;padding:8px;border-radius:9px;background:#202d49;color:#9eabc4}.app-tab.active{background:#2b62e9;color:#fff}.drop-zone{border:1px dashed #47618e;border-radius:15px;padding:28px 16px;text-align:center;color:#c9d2e6;background:rgba(255,255,255,.025)}.drop-icon{font-size:2rem}.app-row{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:12px}.app-card{background:#1a2740;border:1px solid #2b3a57;border-radius:12px;padding:12px}.app-card small{color:#93a0ba}.app-card strong{display:block;margin-top:4px;font-size:.88rem}
.section{padding:72px 0}.section.white{background:#fff}.section-head{max-width:760px;margin-bottom:34px}.section-head.center{text-align:center;margin-inline:auto;margin-bottom:42px}.section h2{font-size:clamp(2rem,4vw,3.25rem);line-height:1.08;letter-spacing:-.035em;margin:10px 0 14px}.section-head p{color:var(--cv-muted);font-size:1.04rem}.kicker{text-transform:uppercase;letter-spacing:.12em;font-size:.75rem;font-weight:850;color:var(--cv-primary)}
.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.feature-card{background:#fff;border:1px solid var(--cv-line);border-radius:20px;padding:24px;min-height:210px}.white .feature-card{background:#f9fbff}.icon-box{width:46px;height:46px;border-radius:14px;display:grid;place-items:center;background:var(--cv-accent);font-size:1.35rem;margin-bottom:16px}.feature-card h3{margin:0 0 8px;font-size:1.08rem}.feature-card p{margin:0;color:var(--cv-muted);font-size:.94rem}
.workflow{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.step{position:relative;padding:22px;border-radius:18px;background:#fff;border:1px solid var(--cv-line)}.step-num{font-weight:900;color:var(--cv-primary);font-size:.8rem}.step h3{margin:12px 0 7px;font-size:1rem}.step p{margin:0;color:var(--cv-muted);font-size:.9rem}
.pricing-grid{display:grid;grid-template-columns:repeat(2,minmax(0,460px));justify-content:center;gap:22px}.price-card{background:#fff;border:1px solid var(--cv-line);border-radius:26px;padding:30px;box-shadow:var(--cv-shadow);position:relative}.price-card.is-linked-product{cursor:pointer;transition:.18s transform,.18s box-shadow,.18s border-color}.price-card.is-linked-product:hover{transform:translateY(-2px);box-shadow:0 24px 62px rgba(28,43,78,.14)}.price-card-hit{position:absolute;inset:0;border-radius:inherit;z-index:1}.price-card .badge,.price-card h3,.price-card .price-sub,.price-card .price,.price-card .price-list,.price-card .price-foot{position:relative;z-index:0}.price-card .btn{position:relative;z-index:2}.price-card.featured{border:2px solid var(--cv-primary)}.badge{position:absolute;top:18px;right:18px;border-radius:999px;background:var(--cv-accent);color:var(--cv-primary-2);font-size:.72rem;font-weight:800;padding:7px 9px}.price-card h3{margin:0 0 7px;font-size:1.28rem}.price-sub{color:var(--cv-muted);margin-bottom:22px}.price{display:flex;align-items:flex-end;gap:7px;margin:18px 0 20px}.price strong{font-size:2.5rem;line-height:1;letter-spacing:-.04em}.price span{color:var(--cv-muted);font-size:.9rem}.price-list{list-style:none;padding:0;margin:0 0 24px}.price-list li{padding:8px 0;border-bottom:1px solid #eef1f6;color:#465166}.price-list li:before{content:"✓";color:var(--cv-good);font-weight:900;margin-right:8px}.price-card .btn{width:100%}.price-foot{margin-top:12px;color:#7a8495;font-size:.8rem}.price-placeholder{font-size:1.25rem!important;letter-spacing:0!important}
.split{display:grid;grid-template-columns:1fr 1fr;gap:42px;align-items:start}.panel{background:#fff;border:1px solid var(--cv-line);border-radius:22px;padding:27px}.panel h3{margin-top:0}.check-list{padding:0;list-style:none}.check-list li{margin:10px 0;padding-left:26px;position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--cv-good);font-weight:900}.notice{padding:17px 19px;border-radius:16px;background:#eef3ff;color:#35456e;border:1px solid #dce6ff;font-size:.93rem}
.page-hero{padding:64px 0 26px}.page-hero h1{font-size:clamp(2.4rem,5vw,4.5rem);line-height:1;letter-spacing:-.045em;margin:8px 0 18px}.page-hero p{max-width:750px;color:var(--cv-muted);font-size:1.08rem}.content-prose{background:#fff;border:1px solid var(--cv-line);border-radius:22px;padding:30px}.content-prose h2,.content-prose h3{line-height:1.18}.faq details{background:#fff;border:1px solid var(--cv-line);border-radius:16px;padding:17px 19px;margin-bottom:11px}.faq summary{font-weight:750;cursor:pointer}.faq details p{color:var(--cv-muted);margin-bottom:0}
.site-footer{background:var(--cv-dark);color:#c5cede;margin-top:60px;padding:54px 0 24px}.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:32px}.footer-brand{color:#fff;font-weight:850;font-size:1.16rem}.footer-col h4{color:#fff;margin-top:0}.footer-col a{display:block;color:#b9c3d8;margin:7px 0;font-size:.92rem}.footer-bottom{border-top:1px solid #28344c;margin-top:35px;padding-top:20px;display:flex;justify-content:space-between;gap:16px;font-size:.82rem;color:#8f9cb6}
.woocommerce a.button,.woocommerce button.button,.woocommerce input.button{background:var(--cv-primary)!important;color:#fff!important;border-radius:12px!important;padding:.8em 1.2em!important}.woocommerce div.product,.woocommerce-cart-form,.woocommerce-checkout{background:#fff;border:1px solid var(--cv-line);border-radius:20px;padding:24px}
@media(max-width:900px){.hero-grid,.split{grid-template-columns:1fr}.grid-3{grid-template-columns:repeat(2,1fr)}.workflow{grid-template-columns:repeat(2,1fr)}.footer-grid{grid-template-columns:1fr 1fr}.main-nav{display:none;position:absolute;left:18px;right:18px;top:72px;background:#fff;border:1px solid var(--cv-line);border-radius:18px;padding:16px;box-shadow:var(--cv-shadow)}.main-nav.open{display:block}.main-nav ul{flex-direction:column;align-items:stretch;gap:4px}.main-nav a{display:block;padding:9px 6px}.cv-header-account{margin-left:auto}.menu-toggle{display:inline-flex;margin-left:0}.header-buy{display:none}.product-window{transform:none;max-width:620px}.pricing-grid{grid-template-columns:1fr}}
@media(max-width:620px){.cv-wrap{width:min(calc(100% - 24px),var(--cv-max))}.hero{padding-top:55px}.hero h1{font-size:3rem}.grid-3,.workflow,.footer-grid{grid-template-columns:1fr}.section{padding:54px 0}.header-inner{min-height:68px}.pricing-grid{gap:15px}.price-card{padding:24px}.footer-bottom{flex-direction:column}.app-row{grid-template-columns:1fr}}


/* Area personale WooCommerce / CaptaVerba */
.cv-header-account{display:inline-flex;align-items:center;justify-content:center;min-height:43px;padding:0 14px;border:1px solid var(--cv-line);background:#fff;color:var(--cv-ink);border-radius:13px;font-weight:720;font-size:.9rem;white-space:nowrap}.cv-header-account:hover{border-color:#cbd5e6;background:#fbfcff}
.woocommerce-account .woocommerce{display:grid;grid-template-columns:240px minmax(0,1fr);gap:26px;align-items:start}.woocommerce-account .woocommerce-MyAccount-navigation{background:#fff;border:1px solid var(--cv-line);border-radius:20px;padding:12px;position:sticky;top:100px}.woocommerce-account .woocommerce-MyAccount-navigation ul{list-style:none;margin:0;padding:0}.woocommerce-account .woocommerce-MyAccount-navigation li{margin:2px 0}.woocommerce-account .woocommerce-MyAccount-navigation a{display:block;padding:11px 13px;border-radius:11px;color:#465166;font-weight:650}.woocommerce-account .woocommerce-MyAccount-navigation li.is-active a,.woocommerce-account .woocommerce-MyAccount-navigation a:hover{background:var(--cv-accent);color:var(--cv-primary-2)}.woocommerce-account .woocommerce-MyAccount-content{float:none!important;width:auto!important;background:#fff;border:1px solid var(--cv-line);border-radius:22px;padding:28px;min-width:0}.woocommerce-account .woocommerce-MyAccount-navigation{float:none!important;width:auto!important}
.cv-account-welcome{display:flex;align-items:center;justify-content:space-between;gap:24px;background:linear-gradient(135deg,#f8faff,#eef3ff);border:1px solid #dce5ff;border-radius:20px;padding:24px;margin:20px 0}.cv-account-welcome h2{font-size:1.65rem;letter-spacing:-.025em;margin:5px 0 7px}.cv-account-welcome p{margin:0;color:var(--cv-muted)}.cv-account-status{display:flex;align-items:center;gap:8px;white-space:nowrap;background:#fff;border:1px solid #dfe6f3;border-radius:999px;padding:8px 12px;font-size:.82rem;font-weight:700;color:#526078}.cv-status-dot{width:8px;height:8px;border-radius:50%;background:var(--cv-good);box-shadow:0 0 0 4px rgba(10,143,99,.10)}.cv-account-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin:18px 0}.cv-account-card{display:flex;flex-direction:column;min-height:155px;padding:20px;border:1px solid var(--cv-line);border-radius:18px;background:#fff;color:var(--cv-ink);transition:.18s transform,.18s border-color,.18s box-shadow}.cv-account-card:hover{transform:translateY(-2px);border-color:#cbd7f5;box-shadow:0 12px 28px rgba(31,55,105,.08)}.cv-account-icon{font-size:1.45rem;margin-bottom:14px}.cv-account-card strong{font-size:1rem}.cv-account-card small{display:block;margin-top:6px;color:var(--cv-muted);line-height:1.45}
.cv-license-heading h2{font-size:2rem;letter-spacing:-.03em;margin:5px 0 8px}.cv-license-heading p{color:var(--cv-muted);max-width:720px}.cv-license-placeholder{display:flex;gap:18px;align-items:flex-start;border:1px dashed #c8d4ee;background:#f8faff;border-radius:18px;padding:22px;margin-top:24px}.cv-license-placeholder-icon{display:grid;place-items:center;flex:0 0 46px;width:46px;height:46px;border-radius:14px;background:var(--cv-accent);font-size:1.25rem}.cv-license-placeholder h3{margin:0 0 6px}.cv-license-placeholder p{margin:0;color:var(--cv-muted)}
.woocommerce-account table.shop_table,.woocommerce-account .woocommerce-orders-table{border:1px solid var(--cv-line)!important;border-radius:14px!important;overflow:hidden}.woocommerce-account .woocommerce-Address{background:#fbfcff;border:1px solid var(--cv-line);border-radius:16px;padding:18px}.woocommerce-account fieldset{border:1px solid var(--cv-line);border-radius:16px;padding:18px;margin-top:20px}
@media(max-width:900px){.woocommerce-account .woocommerce{grid-template-columns:1fr}.woocommerce-account .woocommerce-MyAccount-navigation{position:static}.cv-account-grid{grid-template-columns:1fr}.cv-account-welcome{align-items:flex-start;flex-direction:column}}

/* Vetrina licenze WooCommerce dinamica — v1.1.6 */
.license-products-grid{grid-template-columns:repeat(auto-fit,minmax(280px,1fr));max-width:1120px;margin-inline:auto}
.license-products-grid.license-count-1{grid-template-columns:minmax(0,520px)}
.license-products-grid.license-count-2{grid-template-columns:repeat(2,minmax(0,460px))}
.license-product-card{display:flex;flex-direction:column;min-height:100%}
.license-product-card .product-short-description{margin-bottom:10px;line-height:1.55}
.license-product-card .product-short-description p{margin:0 0 10px}
.license-product-card .product-short-description ul{margin:10px 0 0;padding-left:20px;color:#465166}
.license-product-card .product-short-description li{margin:6px 0}
.license-product-card .product-price{margin-top:auto;padding-top:16px}
.license-product-card .product-price strong{font-size:2rem;line-height:1.15}
.license-product-card .product-price del{font-size:1.05rem;color:#8a94a6;font-weight:600;margin-right:7px}
.license-product-card .product-price ins{text-decoration:none}
.license-empty-state{max-width:760px;margin:0 auto;text-align:center;padding:28px;border:1px dashed #c8d4ee;background:#f8faff;border-radius:18px;color:#526078}
.license-empty-state strong{display:block;color:var(--cv-ink);font-size:1.05rem;margin-bottom:6px}
.license-empty-state p{margin:0}
@media(max-width:900px){.license-products-grid.license-count-2,.license-products-grid{grid-template-columns:1fr}}


/* Header tools: account + cart remain outside the hamburger menu — v1.1.7 */
.cv-header-tools{display:flex;align-items:center;gap:8px}
.cv-header-cart{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 42px;width:42px;height:42px;border:1px solid var(--cv-line);border-radius:13px;background:#fff;color:#354052;transition:.18s border-color,.18s color,.18s box-shadow,.18s transform}
.cv-header-cart:hover{color:var(--cv-primary);border-color:#cbd7f5;box-shadow:0 8px 20px rgba(31,55,105,.08);transform:translateY(-1px)}
.cv-header-cart svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cv-cart-count{position:absolute;top:-5px;right:-5px;min-width:19px;height:19px;padding:0 5px;border-radius:999px;display:grid;place-items:center;background:var(--cv-primary);color:#fff;border:2px solid var(--cv-bg);font-size:.66rem;font-weight:850;line-height:1}

/* Vetrina licenze: ritorno al linguaggio grafico delle prime versioni */
.license-products-grid{align-items:stretch}
/* Evidenziazione licenze — una sola card “Consigliata” scelta dal Customizer. */
.license-product-card{display:flex;flex-direction:column;min-height:100%;padding:30px;background:#fff;border:1px solid var(--cv-line);border-radius:26px;box-shadow:var(--cv-shadow);transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;isolation:isolate;overflow:visible}
/* Le card normali restano neutre; il blu compare solo in hover/focus. */
.license-product-card:not(.recommended):hover,.license-product-card:not(.recommended):focus-within{transform:translateY(-3px);border-color:var(--cv-primary);box-shadow:0 0 0 1px rgba(31,94,255,.58),0 0 0 5px rgba(31,94,255,.10),0 16px 40px rgba(31,94,255,.16)}
/* La licenza consigliata usa il rosso CaptaVerba come contorno permanente. */
.license-product-card.recommended{border:2px solid var(--cv-action-red);box-shadow:0 18px 48px rgba(28,43,78,.10),0 0 0 1px rgba(216,59,63,.06)}
.license-product-card.recommended:hover,.license-product-card.recommended:focus-within{transform:translateY(-2px);border-color:var(--cv-action-red);box-shadow:0 0 0 3px rgba(216,59,63,.10),0 20px 52px rgba(216,59,63,.14)}
.license-product-card.recommended .recommended-badge{background:var(--cv-accent);color:var(--cv-primary-2)}
.license-product-card .price-sub{min-height:3.1em;margin-bottom:10px;color:var(--cv-muted)}
.license-product-card .product-price{margin:18px 0 20px;padding-top:0}
.license-product-card .product-price strong{font-size:2.5rem;line-height:1;letter-spacing:-.04em;color:var(--cv-ink)}
.license-product-card .product-price .woocommerce-Price-amount{font-size:inherit;font-weight:inherit}
.license-product-card .product-price del{font-size:1rem;color:#8a94a6;font-weight:600;margin-right:8px;opacity:.9}
.license-product-card .product-price del .woocommerce-Price-amount{font-size:inherit}
.license-product-card .product-price ins{text-decoration:none;color:var(--cv-ink)}
.license-product-card .price-list{margin-bottom:24px}
.license-product-card .btn{margin-top:auto}
.license-product-card .price-foot{margin-top:12px}

@media(max-width:900px){
  .cv-header-tools{margin-left:auto}
  .cv-header-account{margin-left:0}
}
@media(max-width:620px){
  .header-inner{gap:8px}
  .brand{margin-right:auto}
  .cv-header-tools{margin-left:0;gap:6px}
  .cv-header-account,.cv-header-cart,.menu-toggle{width:40px;height:40px;flex-basis:40px;border-radius:12px}
  .cv-header-account svg,.cv-header-cart svg{width:21px;height:21px}
  .license-product-card{padding:24px}
}

/* Pulsante delle licenze non consigliate: feedback hover più evidente — v1.1.12 */
.license-product-card:not(.recommended) .btn-secondary{transition:background-color .18s ease,color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}
.license-product-card:not(.recommended) .btn-secondary:hover,.license-product-card:not(.recommended) .btn-secondary:focus-visible{background:var(--cv-primary);color:#fff;border-color:var(--cv-primary);box-shadow:0 10px 24px rgba(31,94,255,.24);transform:translateY(-1px)}


/* WooCommerce single product refresh */
.cv-product-hero{padding:58px 0 22px}
.cv-product-hero .eyebrow{margin-bottom:14px}
.cv-product-hero h1{max-width:920px;margin:0 0 12px}
.cv-product-hero p{max-width:760px}
.cv-single-product-section{padding-top:18px}
.woocommerce div.product{background:#fff;border:1px solid var(--cv-line);border-radius:28px;padding:30px;box-shadow:0 22px 58px rgba(25,40,76,.08)}
.woocommerce div.product .product_title{font-size:clamp(2rem,4vw,2.8rem);line-height:1.05;letter-spacing:-.04em;margin:0 0 12px}
.woocommerce div.product p.price,.woocommerce div.product span.price{color:var(--cv-ink)!important;font-size:1.95rem!important;font-weight:850;display:flex;align-items:flex-end;gap:10px;flex-wrap:wrap;margin:0 0 16px}
.woocommerce div.product p.price del,.woocommerce div.product span.price del{font-size:1rem;opacity:.55}
.woocommerce div.product p.price ins,.woocommerce div.product span.price ins{text-decoration:none;color:var(--cv-ink)}
.woocommerce div.product .summary{background:linear-gradient(180deg,#fff, #fbfcff);border:1px solid #edf1f7;border-radius:24px;padding:28px;box-shadow:0 10px 30px rgba(31,53,105,.05)}
.woocommerce-product-details__short-description{color:#566173;font-size:1.03rem}
.woocommerce-product-details__short-description p:first-child{font-size:1.08rem;color:#465166}
.woocommerce-product-details__short-description ul{list-style:none;padding:0;margin:18px 0}
.woocommerce-product-details__short-description li{position:relative;padding:8px 0 8px 28px;border-bottom:1px solid #eef2f8;color:#465166}
.woocommerce-product-details__short-description li:before{content:"✓";position:absolute;left:0;top:8px;color:var(--cv-good);font-weight:900}
.woocommerce div.product form.cart{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:22px 0 18px}
.woocommerce .quantity .qty{min-height:48px;border:1px solid var(--cv-line);border-radius:14px;padding:0 12px;width:84px}
.woocommerce div.product form.cart .button{min-height:50px;border-radius:14px!important;padding:0 22px!important;font-weight:800!important;box-shadow:0 12px 28px rgba(31,94,255,.22)}
.woocommerce .product_meta{margin-top:18px;padding-top:16px;border-top:1px solid #edf1f7;color:#75809a;font-size:.92rem}
.woocommerce .product_meta .posted_in a{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#f3f6fd;color:#3651a3;margin-left:6px}
.woocommerce span.onsale{left:20px!important;right:auto!important;top:20px!important;min-height:auto!important;line-height:1!important;padding:9px 12px!important;border-radius:999px!important;background:rgba(216,59,63,.10)!important;color:var(--cv-action-red)!important;border:1px solid rgba(216,59,63,.22)!important;font-size:.78rem!important;font-weight:800!important;box-shadow:none!important}
.woocommerce div.product div.images{margin-bottom:0}
.woocommerce div.product div.images .woocommerce-product-gallery__wrapper{background:linear-gradient(180deg,#f8fbff,#f1f5fd);border:1px solid #e8eef9;border-radius:24px;padding:18px;min-height:430px;display:flex;align-items:center;justify-content:center}
.woocommerce div.product div.images .woocommerce-product-gallery__image,
.woocommerce div.product div.images .woocommerce-product-gallery__image--placeholder{width:100%}
.woocommerce div.product div.images .woocommerce-product-gallery__image img,
.woocommerce div.product div.images .woocommerce-product-gallery__image--placeholder img{border-radius:18px;display:block;margin:auto;max-height:380px;object-fit:contain;box-shadow:0 14px 34px rgba(36,56,102,.08)}
.woocommerce div.product .woocommerce-tabs{margin-top:28px}
.woocommerce div.product .woocommerce-tabs ul.tabs{padding:0!important;margin:0 0 14px!important;border:0!important;display:flex;gap:10px;flex-wrap:wrap}
.woocommerce div.product .woocommerce-tabs ul.tabs li{border:0!important;background:#eef3ff!important;border-radius:14px!important;margin:0!important;padding:0!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li a{padding:10px 14px!important;color:#425178!important;font-weight:700!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active{background:var(--cv-primary)!important}
.woocommerce div.product .woocommerce-tabs ul.tabs li.active a{color:#fff!important}
.woocommerce div.product .woocommerce-tabs .panel{background:#fbfcff;border:1px solid #e9eef6;border-radius:20px;padding:24px;margin:0}
.woocommerce div.product .related.products{margin-top:28px}
.woocommerce div.product .related.products > h2{font-size:1.9rem;letter-spacing:-.03em;margin-bottom:18px}
.woocommerce div.product .related.products ul.products{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px}
.woocommerce div.product .related.products ul.products li.product{width:auto!important;float:none!important;margin:0!important;background:#fff;border:1px solid var(--cv-line);border-radius:20px;padding:18px;box-shadow:0 12px 30px rgba(23,35,67,.06)}
.woocommerce div.product .related.products ul.products li.product img{border-radius:14px;background:#f7f9fd;padding:10px}
.woocommerce div.product .related.products ul.products li.product .price{font-size:1rem!important;margin:.45em 0 .8em!important}
.cv-single-product-trust{margin-top:18px;border-top:1px solid #edf1f7;padding-top:18px}
.cv-trust-items{display:grid;grid-template-columns:1fr;gap:8px;margin-bottom:12px}
.cv-trust-items span{display:flex;align-items:center;gap:10px;color:#45526b;font-weight:650}
.cv-trust-items span:before{content:"";width:9px;height:9px;border-radius:50%;background:linear-gradient(145deg,var(--cv-primary),#7ca0ff);box-shadow:0 0 0 4px rgba(31,94,255,.12);flex:0 0 9px}
.cv-trust-note{margin:0;padding:13px 14px;border-radius:16px;background:#f6f9ff;border:1px solid #e1eafe;color:#4b5a76;font-size:.92rem}
.woocommerce-message,.woocommerce-info,.woocommerce-error{border-radius:16px;border:1px solid var(--cv-line);box-shadow:none;background:#fff}
@media (max-width:900px){
  .woocommerce div.product{padding:20px;border-radius:22px}
  .woocommerce div.product .summary{padding:22px}
  .woocommerce div.product div.images .woocommerce-product-gallery__wrapper{min-height:280px}
  .cv-product-hero{padding-top:38px}
}


.product-window-image .screenshot-body{padding:10px;background:linear-gradient(180deg,#0f1828,#0b1320)}
.hero-screenshot{display:block;width:100%;height:auto;border-radius:16px;box-shadow:0 18px 40px rgba(7,12,24,.28)}


/* Hero screenshot: straight image without dark mockup container */
.hero-screenshot-frame{background:#fff;border:1px solid #dfe7f5;border-radius:26px;padding:14px;box-shadow:0 28px 60px rgba(13,22,43,.12);transform:none;align-self:start}
.hero-screenshot-frame .hero-screenshot{display:block;width:100%;height:auto;border-radius:18px;box-shadow:none}
.product-window-image,.product-window-image .window-body,.product-window-image .window-top{transform:none}
@media(max-width:900px){.hero-screenshot-frame{max-width:620px}}


/* Larger real-program screenshot in the Home hero — v1.1.19 */
.hero-has-screenshot .hero-grid{grid-template-columns:minmax(330px,.86fr) minmax(0,1.14fr);gap:36px;align-items:center}
.hero-has-screenshot .cv-wrap{width:min(calc(100% - 36px),var(--cv-max))}
.hero-has-screenshot .hero-screenshot-frame{width:100%;max-width:none;padding:8px;border-radius:20px;background:#fff;border:1px solid #dfe7f5;box-shadow:0 26px 60px rgba(13,22,43,.13)}
.hero-has-screenshot .hero-screenshot{width:100%;max-width:none;height:auto;border-radius:14px;object-fit:contain}
@media(max-width:1100px){
  .hero-has-screenshot .hero-grid{grid-template-columns:.82fr 1.18fr;gap:30px}
}
@media(max-width:900px){
  .hero-has-screenshot .cv-wrap{width:min(calc(100% - 28px),900px)}
  .hero-has-screenshot .hero-grid{grid-template-columns:1fr;gap:30px}
  .hero-has-screenshot .hero-screenshot-frame{max-width:none;width:100%;padding:6px}
}


/* Hero CTA: red CaptaVerba download button */
.btn-download{background:var(--cv-action-red);color:#fff;border-color:var(--cv-action-red);box-shadow:0 12px 28px rgba(216,59,63,.24)}
.btn-download:hover,.btn-download:focus-visible{background:#bd3034;color:#fff;border-color:#bd3034;box-shadow:0 14px 30px rgba(216,59,63,.30);transform:translateY(-1px)}


/* Custom logo support — v1.1.25 */
.brand.brand-custom-logo{line-height:0;flex:0 0 auto;margin-left:-34px}
.brand.brand-custom-logo .custom-logo{display:block;width:clamp(310px,30vw,405px);height:auto;max-height:64px;max-width:none;object-fit:contain;object-position:left center}
@media(max-width:900px){
  .brand.brand-custom-logo{margin-left:-16px}
  .brand.brand-custom-logo .custom-logo{width:clamp(230px,38vw,310px);max-height:52px}
}
@media(max-width:620px){
  .brand.brand-custom-logo{margin-left:-8px;flex:1 1 auto;min-width:0;max-width:calc(100% - 132px)}
  .brand.brand-custom-logo .custom-logo{width:clamp(208px,52vw,224px);max-width:100%;max-height:48px}
}


/* Header logo fine tuning — v1.1.26
   Align the custom logo with the main content edge and give it more presence on mobile. */
@media(max-width:620px){
  .brand.brand-custom-logo{
    margin-left:0;
    flex:0 1 230px;
    max-width:230px;
  }
  .brand.brand-custom-logo .custom-logo{
    width:230px;
    max-width:230px;
    max-height:54px;
    object-position:left center;
  }
  .cv-header-tools{gap:4px}
  .cv-header-account,.cv-header-cart,.menu-toggle{
    width:38px;
    height:38px;
    flex-basis:38px;
  }
  .header-inner{gap:4px}
}
@media(max-width:390px){
  .brand.brand-custom-logo{
    flex-basis:220px;
    max-width:220px;
  }
  .brand.brand-custom-logo .custom-logo{
    width:220px;
    max-width:220px;
    max-height:52px;
  }
  .cv-header-account,.cv-header-cart,.menu-toggle{
    width:37px;
    height:37px;
    flex-basis:37px;
  }
}


/* Mobile header logo layout — v1.1.27
   The full horizontal wordmark is almost 10:1. To make it visibly taller without
   colliding with account/cart/menu, mobile uses two compact rows: logo first,
   tools second. The logo starts on the same left edge as the page content. */
@media(max-width:620px){
  .site-header .header-inner{
    display:grid;
    grid-template-columns:1fr auto auto;
    align-items:center;
    min-height:0;
    padding:10px 0 9px;
    column-gap:6px;
    row-gap:7px;
  }
  .site-header .brand.brand-custom-logo{
    grid-column:1 / -1;
    grid-row:1;
    margin:0;
    width:100%;
    max-width:none;
    min-width:0;
    flex:none;
    justify-self:start;
  }
  .site-header .brand.brand-custom-logo .custom-logo{
    display:block;
    width:min(350px,100%);
    max-width:100%;
    height:auto;
    max-height:none;
    object-fit:contain;
    object-position:left center;
  }
  .site-header .cv-header-tools{
    grid-column:2;
    grid-row:2;
    margin:0;
    justify-self:end;
    gap:6px;
  }
  .site-header .menu-toggle{
    grid-column:3;
    grid-row:2;
    margin:0;
    justify-self:end;
  }
  .site-header .cv-header-account,
  .site-header .cv-header-cart,
  .site-header .menu-toggle{
    width:40px;
    height:40px;
    flex-basis:40px;
    border-radius:12px;
  }
  .site-header .main-nav{
    top:104px;
  }
}
@media(max-width:390px){
  .site-header .brand.brand-custom-logo .custom-logo{
    width:min(330px,100%);
  }
}


/* Mobile header — v1.1.28
   Keep the full wordmark on the SAME row as account, cart and menu.
   The logo flexes to consume every remaining pixel without distortion. */
@media(max-width:620px){
  .site-header .header-inner{
    display:flex;
    grid-template-columns:none;
    align-items:center;
    flex-wrap:nowrap;
    min-height:68px;
    padding:7px 0;
    gap:3px;
  }
  .site-header .brand.brand-custom-logo{
    display:flex;
    grid-column:auto;
    grid-row:auto;
    flex:1 1 0;
    min-width:0;
    width:auto;
    max-width:none;
    margin:0;
    justify-self:auto;
    overflow:visible;
  }
  .site-header .brand.brand-custom-logo .custom-logo{
    display:block;
    width:100%;
    max-width:280px;
    height:auto;
    max-height:none;
    object-fit:contain;
    object-position:left center;
    transform:none;
  }
  .site-header .cv-header-tools{
    display:flex;
    grid-column:auto;
    grid-row:auto;
    flex:0 0 auto;
    margin:0;
    justify-self:auto;
    gap:3px;
  }
  .site-header .menu-toggle{
    display:inline-flex;
    grid-column:auto;
    grid-row:auto;
    flex:0 0 40px;
    width:40px;
    height:40px;
    margin:0;
    justify-self:auto;
  }
  .site-header .cv-header-account,
  .site-header .cv-header-cart{
    flex:0 0 40px;
    width:40px;
    height:40px;
    border-radius:12px;
  }
  .site-header .main-nav{top:68px}
}
@media(max-width:390px){
  .site-header .header-inner{gap:2px}
  .site-header .cv-header-tools{gap:2px}
  .site-header .brand.brand-custom-logo .custom-logo{max-width:260px}
}


/* Mobile header — v1.1.29
   Slightly smaller action buttons to give the horizontal logo more room. */
@media(max-width:620px){
  .site-header .menu-toggle{
    flex-basis:38px;
    width:38px;
    height:38px;
    border-radius:11px;
  }
  .site-header .cv-header-account,
  .site-header .cv-header-cart{
    flex-basis:38px;
    width:38px;
    height:38px;
    border-radius:11px;
  }
  .site-header .cv-header-account svg,
  .site-header .cv-header-cart svg{
    width:20px;
    height:20px;
  }
  .site-header .menu-toggle-lines{width:17px}
}


/* Mobile header — v1.1.30
   Make account, cart and menu boxes exactly equal; slightly enlarge account glyph. */
@media(max-width:620px){
  .site-header .cv-header-account,
  .site-header .cv-header-cart,
  .site-header .menu-toggle{
    box-sizing:border-box;
    flex:0 0 38px;
    width:38px;
    min-width:38px;
    max-width:38px;
    height:38px;
    min-height:38px;
    max-height:38px;
    padding:0;
    border-radius:11px;
  }
  .site-header .cv-header-account svg{
    width:22px;
    height:22px;
  }
  .site-header .cv-header-cart svg{
    width:20px;
    height:20px;
  }
  .site-header .menu-toggle-lines{width:17px}
}


/* Home hero alignment — v1.1.31
   Text + screenshot use the same 1180px content width as the sections below. */
@media(min-width:901px){
  .hero-has-screenshot .hero-grid{width:100%}
}


/* Home hero width correction — v1.1.32
   Keep text + screenshot intentionally narrower and aligned with the 1120px card grid below. */
@media(min-width:901px){
  .hero-has-screenshot .cv-wrap{
    width:min(calc(100% - 36px),1120px);
  }
  .hero-has-screenshot .hero-grid{
    grid-template-columns:minmax(330px,.9fr) minmax(0,1.1fr);
    gap:32px;
  }
}


/* Full-screen screenshot lightbox — v1.1.33 */
.cv-screenshot-open{position:relative;display:block;width:100%;padding:0;border:0;border-radius:14px;background:transparent;cursor:zoom-in;text-align:inherit}
.cv-screenshot-open:focus-visible{outline:3px solid rgba(31,94,255,.35);outline-offset:4px}
.cv-screenshot-zoom{position:absolute;right:12px;bottom:12px;width:42px;height:42px;border-radius:13px;display:grid;place-items:center;background:rgba(14,21,37,.82);color:#fff;box-shadow:0 8px 22px rgba(0,0,0,.18);opacity:.88;transition:transform .18s ease,opacity .18s ease,background .18s ease}
.cv-screenshot-zoom svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.cv-screenshot-open:hover .cv-screenshot-zoom,.cv-screenshot-open:focus-visible .cv-screenshot-zoom{opacity:1;transform:scale(1.05);background:var(--cv-primary)}
.cv-screenshot-lightbox[hidden]{display:none!important}
.cv-screenshot-lightbox{position:fixed;inset:0;z-index:99999;display:grid;place-items:center;padding:22px;opacity:0;transition:opacity .16s ease}
.cv-screenshot-lightbox.is-open{opacity:1}
.cv-screenshot-lightbox-backdrop{position:absolute;inset:0;background:rgba(5,10,20,.92);backdrop-filter:blur(7px)}
.cv-screenshot-lightbox-dialog{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;max-width:100%;max-height:100%}
.cv-screenshot-lightbox-image{display:block;max-width:96vw;max-height:92vh;width:auto;height:auto;object-fit:contain;border-radius:14px;box-shadow:0 28px 80px rgba(0,0,0,.42);background:#fff}
.cv-screenshot-lightbox-close{position:fixed;z-index:2;top:max(14px,env(safe-area-inset-top));right:max(14px,env(safe-area-inset-right));width:46px;height:46px;border:1px solid rgba(255,255,255,.22);border-radius:14px;background:rgba(255,255,255,.12);color:#fff;font-size:2rem;line-height:1;cursor:pointer;display:grid;place-items:center;backdrop-filter:blur(8px)}
.cv-screenshot-lightbox-close:hover,.cv-screenshot-lightbox-close:focus-visible{background:rgba(255,255,255,.22);outline:none}
body.cv-lightbox-open{overflow:hidden}
@media(max-width:620px){.cv-screenshot-lightbox{padding:10px}.cv-screenshot-lightbox-image{max-width:98vw;max-height:88vh;border-radius:10px}.cv-screenshot-zoom{width:38px;height:38px;right:9px;bottom:9px}}


/* Screenshot border and editable caption — v1.1.34 */
.hero-screenshot-frame{margin:0}
.hero-screenshot-frame .cv-screenshot-open{border:3px solid #fff;border-radius:16px;box-shadow:0 0 0 1px rgba(23,32,51,.08),0 14px 34px rgba(13,22,43,.10);overflow:hidden}
.hero-screenshot-frame .hero-screenshot{border-radius:12px}
.cv-screenshot-caption{margin:10px 6px 0;text-align:center;color:var(--cv-muted);font-size:.88rem;line-height:1.4;font-style:italic}
.cv-screenshot-lightbox-content{display:flex;flex-direction:column;align-items:center;justify-content:center;max-width:100%;max-height:100%}
.cv-screenshot-lightbox-image{border:4px solid #fff}
.cv-screenshot-lightbox-caption{margin-top:12px;padding:7px 12px;border-radius:999px;background:rgba(255,255,255,.12);color:#fff;font-size:.9rem;line-height:1.35;text-align:center;backdrop-filter:blur(8px)}
@media(max-width:620px){.hero-screenshot-frame .cv-screenshot-open{border-width:2px}.cv-screenshot-caption{font-size:.82rem;margin-top:8px}.cv-screenshot-lightbox-caption{font-size:.82rem;margin-top:9px}}


/* Lightbox caption parity + floating back-to-top — v1.1.35 */
.cv-screenshot-lightbox-caption{font-style:italic}
.cv-back-to-top{position:fixed;right:22px;bottom:22px;z-index:9990;width:46px;height:46px;border:1px solid rgba(255,255,255,.92);border-radius:14px;background:var(--cv-primary);color:#fff;display:grid;place-items:center;box-shadow:0 12px 28px rgba(31,94,255,.26);cursor:pointer;opacity:0;visibility:hidden;transform:translateY(10px);transition:opacity .18s ease,visibility .18s ease,transform .18s ease,background-color .18s ease;pointer-events:none}
.cv-back-to-top.is-visible{opacity:1;visibility:visible;transform:translateY(0);pointer-events:auto}
.cv-back-to-top:hover,.cv-back-to-top:focus-visible{background:var(--cv-primary-2);outline:none}
.cv-back-to-top svg{width:21px;height:21px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:620px){.cv-back-to-top{right:12px;bottom:12px;width:42px;height:42px;border-radius:12px}.cv-back-to-top svg{width:20px;height:20px}}

/* More breathing room for screenshot caption in lightbox — v1.1.36 */
.cv-screenshot-lightbox-content{
  box-sizing:border-box;
  max-height:calc(100vh - 64px);
  padding:10px 0 14px;
}
.cv-screenshot-lightbox-image{
  max-height:84vh;
}
.cv-screenshot-lightbox-caption{
  flex:0 0 auto;
  margin-top:14px;
  margin-bottom:4px;
}
@media(max-width:620px){
  .cv-screenshot-lightbox-content{
    max-height:calc(100vh - 44px);
    padding:8px 0 12px;
  }
  .cv-screenshot-lightbox-image{
    max-height:80vh;
  }
  .cv-screenshot-lightbox-caption{
    margin-top:11px;
    margin-bottom:3px;
  }
}


/* Header account icon + mobile menu outside-click close — v1.1.37 */
@media(min-width:901px){
  .site-header .cv-header-account svg{
    width:24px;
    height:24px;
  }
}


/* Larger desktop account glyph + optional text below Home screenshot — v1.1.38 */
@media(min-width:901px){
  .site-header .cv-header-account svg{
    width:27px;
    height:27px;
  }
}
.cv-screenshot-description{
  margin:12px 6px 0;
  color:var(--cv-muted);
  font-size:.94rem;
  line-height:1.6;
  text-align:center;
}
.cv-screenshot-description p{margin:0 0 .65em}
.cv-screenshot-description p:last-child{margin-bottom:0}
@media(max-width:620px){
  .cv-screenshot-description{margin-top:10px;font-size:.88rem}
}


/* Screenshot text outside white frame + clearly larger desktop account glyph — v1.1.39 */
.hero-screenshot-block{width:100%;min-width:0;align-self:start}
.cv-screenshot-description{
  margin:14px 8px 0;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
}
@media(min-width:901px){
  .site-header .cv-header-account svg{
    width:31px;
    height:31px;
    stroke-width:2;
  }
}
@media(max-width:620px){
  .cv-screenshot-description{margin:11px 6px 0}
}


/* Match screenshot description typography to hero intro — v1.1.40 */
.cv-screenshot-description{
  font-size:1.15rem;
  line-height:1.65;
}
@media(max-width:620px){
  .cv-screenshot-description{font-size:1.15rem}
}


/* Desktop account icon visual-size fix — v1.1.48
   Based directly on v1.1.40. Keep the account button unchanged and
   set the desktop person glyph to 19 × 19 px. */
@media(min-width:901px){
  .site-header .cv-header-account{
    padding:0;
  }
  .site-header .cv-header-account svg{
    width:19px;
    height:19px;
    flex:0 0 19px;
    stroke-width:1.9;
  }
}


/* Mobile account icon fine-tuning — v1.1.48
   Keep the mobile button size unchanged and set only the person glyph to 18 × 18 px. */
@media(max-width:620px){
  .site-header .cv-header-account svg{
    width:18px;
    height:18px;
    flex:0 0 18px;
  }
}


/* Account icon size in compact header — v1.1.49
   Use the same 18 × 18 px person glyph throughout the sandwich-menu range. */
@media(min-width:621px) and (max-width:900px){
  .site-header .cv-header-account svg{
    width:18px;
    height:18px;
    flex:0 0 18px;
  }
}


/* Empty cart refresh — v1.1.52
   Replace WooCommerce's sad-face empty-cart artwork with a clean line cart. */
.woocommerce-cart .wc-block-cart__empty-cart__title.with-empty-cart-icon::before,
.woocommerce-cart .with-empty-cart-icon.wc-block-cart__empty-cart__title::before{
  content:""!important;
  display:block!important;
  width:124px!important;
  height:124px!important;
  margin:0 auto 30px!important;
  background-color:transparent!important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 96 96' fill='none'%3E%3Cpath d='M14 18h10l7.4 41.2a8 8 0 0 0 7.9 6.6h31.4' stroke='%23172033' stroke-width='4.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Cpath d='M28.5 31h49.8l-7.7 25.2a6.5 6.5 0 0 1-6.2 4.6H33.1' stroke='%23172033' stroke-width='4.5' stroke-linecap='round' stroke-linejoin='round'/%3E%3Ccircle cx='40' cy='77' r='4.8' stroke='%23172033' stroke-width='4.5'/%3E%3Ccircle cx='67' cy='77' r='4.8' stroke='%23172033' stroke-width='4.5'/%3E%3C/svg%3E")!important;
  background-repeat:no-repeat!important;
  background-position:center!important;
  background-size:contain!important;
  mask:none!important;
  -webkit-mask:none!important;
  border:0!important;
  border-radius:0!important;
  transform:none!important;
}
.woocommerce-cart .wc-block-cart__empty-cart__title{
  margin-top:0!important;
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block > p.has-text-align-center a{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:0 18px;
  border-radius:13px;
  background:var(--cv-primary);
  color:#fff;
  font-weight:750;
  box-shadow:0 10px 22px rgba(31,94,255,.18);
  transition:transform .18s ease,box-shadow .18s ease,background-color .18s ease;
}
.woocommerce-cart .wp-block-woocommerce-empty-cart-block > p.has-text-align-center a:hover,
.woocommerce-cart .wp-block-woocommerce-empty-cart-block > p.has-text-align-center a:focus-visible{
  background:var(--cv-primary-2);
  color:#fff;
  transform:translateY(-1px);
  box-shadow:0 12px 26px rgba(31,94,255,.24);
  outline:none;
}
@media(max-width:620px){
  .woocommerce-cart .wc-block-cart__empty-cart__title.with-empty-cart-icon::before,
  .woocommerce-cart .with-empty-cart-icon.wc-block-cart__empty-cart__title::before{
    width:96px!important;
    height:96px!important;
    margin-bottom:22px!important;
  }
}


/* License card badges: compact premium pills, separate from titles */
.license-product-card .badge{
  position:static;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  align-self:flex-start;
  width:auto;
  max-width:max-content;
  margin:0 0 13px;
  padding:8px 14px;
  border:1px solid transparent;
  border-radius:999px;
  font-size:.84rem;
  font-weight:800;
  line-height:1;
  letter-spacing:.01em;
  white-space:nowrap;
  box-shadow:0 5px 16px rgba(23,32,51,.07), inset 0 1px 0 rgba(255,255,255,.82);
}
.license-product-card .badge::before{
  content:"";
  width:7px;
  height:7px;
  flex:0 0 7px;
  margin-right:8px;
  border-radius:50%;
  background:currentColor;
  opacity:.92;
  box-shadow:0 0 0 3px rgba(255,255,255,.72);
}
.license-product-card h3{margin-top:0;line-height:1.08}
.license-product-card.recommended .recommended-badge{
  color:#174bb8;
  background:linear-gradient(135deg,#f7faff 0%,#e4edff 100%);
  border-color:rgba(31,94,255,.22);
}
.license-product-card .sale-badge{
  color:#b52229;
  background:linear-gradient(135deg,#fff8f8 0%,#ffe7e8 100%);
  border-color:rgba(216,59,63,.34);
  box-shadow:0 5px 16px rgba(216,59,63,.10), inset 0 1px 0 rgba(255,255,255,.86);
  animation:cvSaleBadgePulse 2.15s ease-in-out infinite;
}
@keyframes cvSaleBadgePulse{
  0%,100%{
    box-shadow:0 5px 16px rgba(216,59,63,.10),0 0 0 0 rgba(216,59,63,0),inset 0 1px 0 rgba(255,255,255,.86);
    transform:translateZ(0) scale(1);
  }
  50%{
    box-shadow:0 7px 20px rgba(216,59,63,.16),0 0 0 4px rgba(216,59,63,.10),inset 0 1px 0 rgba(255,255,255,.90);
    transform:translateZ(0) scale(1.025);
  }
}
@media(prefers-reduced-motion:reduce){
  .license-product-card .sale-badge{animation:none}
}
@media(max-width:620px){
  .license-product-card .badge{margin-bottom:10px;padding:7px 11px;font-size:.8rem}
  .license-product-card .badge::before{width:6px;height:6px;flex-basis:6px;margin-right:7px;box-shadow:0 0 0 2px rgba(255,255,255,.74)}
}


/* Three-screenshot Home carousel — v1.1.57 */
.cv-screenshot-carousel{position:relative;overflow:visible}
.cv-screenshot-carousel-viewport{position:relative;overflow:hidden;border-radius:16px}
.cv-screenshot-carousel-track{display:flex;align-items:stretch;width:100%;transition:transform .62s cubic-bezier(.22,.61,.36,1);will-change:transform}
.cv-screenshot-slide{flex:0 0 100%;width:100%;min-width:0;box-sizing:border-box;padding:0 1px;opacity:.72;transition:opacity .42s ease}
.cv-screenshot-slide.is-active{opacity:1}
.cv-screenshot-slide .cv-screenshot-open{transform:scale(.985);transition:transform .55s cubic-bezier(.22,.61,.36,1),box-shadow .22s ease}
.cv-screenshot-slide.is-active .cv-screenshot-open{transform:scale(1)}
.cv-screenshot-slide .cv-screenshot-caption{min-height:1.3em}
.cv-carousel-arrow{position:absolute;top:calc(50% - 23px);z-index:5;width:42px;height:42px;border:1px solid rgba(255,255,255,.85);border-radius:50%;display:grid;place-items:center;background:rgba(14,21,37,.76);color:#fff;font-size:2rem;font-weight:300;line-height:1;cursor:pointer;box-shadow:0 9px 24px rgba(0,0,0,.16);backdrop-filter:blur(7px);transition:transform .18s ease,background-color .18s ease,opacity .18s ease}
.cv-carousel-prev{left:18px}.cv-carousel-next{right:18px}
.cv-carousel-arrow:hover,.cv-carousel-arrow:focus-visible{background:var(--cv-primary);transform:scale(1.06);outline:none}
.cv-carousel-dots{display:flex;justify-content:center;align-items:center;gap:8px;margin:12px 0 1px}
.cv-carousel-dot{width:8px;height:8px;padding:0;border:0;border-radius:999px;background:#bcc6d7;cursor:pointer;transition:width .22s ease,background-color .22s ease,transform .22s ease}
.cv-carousel-dot.is-active{width:24px;background:var(--cv-primary)}
.cv-carousel-dot:focus-visible{outline:3px solid rgba(31,94,255,.26);outline-offset:3px}
@media(max-width:620px){
  .cv-screenshot-carousel-track{transition-duration:.48s}
  .cv-carousel-arrow{width:36px;height:36px;top:calc(50% - 22px);font-size:1.7rem}
  .cv-carousel-prev{left:9px}.cv-carousel-next{right:9px}
  .cv-carousel-dots{margin-top:9px;gap:7px}
  .cv-carousel-dot{width:7px;height:7px}.cv-carousel-dot.is-active{width:21px}
}
@media(prefers-reduced-motion:reduce){
  .cv-screenshot-carousel-track,.cv-screenshot-slide,.cv-screenshot-slide .cv-screenshot-open,.cv-carousel-arrow,.cv-carousel-dot{transition:none!important}
}


/* Carousel navigation refinement + full-screen carousel — v1.1.58 */
.cv-screenshot-carousel-viewport{border-radius:16px}
.cv-carousel-caption-row{display:grid;grid-template-columns:32px minmax(0,1fr) 32px;align-items:center;gap:10px;margin-top:9px;min-height:32px}
.cv-carousel-caption-row .cv-screenshot-caption{margin:0;text-align:center;min-height:1.3em}
.cv-carousel-arrow,.cv-carousel-arrow-spacer{position:static;width:30px;height:30px;justify-self:center}
.cv-carousel-arrow{z-index:auto;border:1px solid rgba(31,94,255,.14);border-radius:10px;display:grid;place-items:center;background:#f5f8ff;color:var(--cv-primary-2);font-size:1.35rem;font-weight:500;line-height:1;cursor:pointer;box-shadow:0 4px 12px rgba(28,43,78,.08);backdrop-filter:none;transition:transform .18s ease,background-color .18s ease,color .18s ease,border-color .18s ease}
.cv-carousel-arrow:hover,.cv-carousel-arrow:focus-visible{background:var(--cv-primary);color:#fff;border-color:var(--cv-primary);transform:translateY(-1px);outline:none}
.cv-carousel-prev,.cv-carousel-next{left:auto;right:auto;top:auto}
.cv-carousel-dots{margin-top:8px}

.cv-screenshot-lightbox-dialog{width:100%;height:100%;padding-inline:66px;box-sizing:border-box}
.cv-lightbox-arrow{position:fixed;z-index:3;top:50%;width:48px;height:48px;margin-top:-24px;border:1px solid rgba(255,255,255,.22);border-radius:14px;background:rgba(255,255,255,.12);color:#fff;font-size:2rem;font-weight:300;line-height:1;cursor:pointer;display:grid;place-items:center;backdrop-filter:blur(8px);box-shadow:0 10px 28px rgba(0,0,0,.22);transition:background-color .18s ease,transform .18s ease,opacity .18s ease}
.cv-lightbox-prev{left:max(14px,env(safe-area-inset-left))}
.cv-lightbox-next{right:max(14px,env(safe-area-inset-right))}
.cv-lightbox-arrow:hover,.cv-lightbox-arrow:focus-visible{background:var(--cv-primary);transform:scale(1.05);outline:none}
.cv-screenshot-lightbox-image{transition:opacity .16s ease}

@media(max-width:620px){
  .cv-carousel-caption-row{grid-template-columns:29px minmax(0,1fr) 29px;gap:7px;margin-top:7px;min-height:29px}
  .cv-carousel-arrow,.cv-carousel-arrow-spacer{width:28px;height:28px}
  .cv-carousel-arrow{font-size:1.2rem;border-radius:9px}
  .cv-screenshot-lightbox-dialog{padding-inline:46px}
  .cv-lightbox-arrow{width:38px;height:38px;margin-top:-19px;border-radius:11px;font-size:1.65rem}
  .cv-lightbox-prev{left:max(6px,env(safe-area-inset-left))}
  .cv-lightbox-next{right:max(6px,env(safe-area-inset-right))}
}
@media(prefers-reduced-motion:reduce){
  .cv-lightbox-arrow{transition:none!important}
}


/* Seamless infinite screenshot carousel — v1.1.59 */
.cv-screenshot-carousel-track .cv-carousel-clone{opacity:1;pointer-events:none}
.cv-screenshot-carousel-track .cv-carousel-clone .cv-screenshot-open{transform:scale(1)}


/* Touch / swipe carousel navigation — v1.1.60 */
.cv-screenshot-carousel-viewport,
.cv-screenshot-carousel-viewport .cv-screenshot-open{
  touch-action:pan-y pinch-zoom;
}
.cv-screenshot-carousel-viewport{
  cursor:grab;
  overscroll-behavior-x:contain;
}
.cv-screenshot-carousel.is-dragging .cv-screenshot-carousel-viewport{cursor:grabbing}
.cv-screenshot-carousel.is-dragging .cv-screenshot-carousel-track{transition:none!important}
.cv-screenshot-carousel.is-dragging .cv-screenshot-open{cursor:grabbing}
.cv-screenshot-carousel .hero-screenshot{
  -webkit-user-drag:none;
  user-select:none;
  -webkit-user-select:none;
}
.cv-screenshot-lightbox-content{
  touch-action:pan-y pinch-zoom;
  overscroll-behavior-x:contain;
}
.cv-screenshot-lightbox-image{
  -webkit-user-drag:none;
  user-select:none;
  -webkit-user-select:none;
  will-change:transform,opacity;
}
.cv-screenshot-lightbox.is-swiping .cv-screenshot-lightbox-image{transition:none!important}


/* Tap-to-enlarge + swipe coexistence — v1.1.61
   Pointer capture starts only after a real horizontal drag is detected,
   so a simple tap/click still reaches the screenshot button and opens the lightbox. */


/* Mobile carousel controls below the caption — v1.1.62 */
@media(max-width:620px){
  .cv-carousel-caption-row{
    grid-template-columns:1fr 1fr;
    grid-template-areas:
      "caption caption"
      "prev next";
    column-gap:10px;
    row-gap:8px;
    margin-top:8px;
    min-height:0;
  }
  .cv-carousel-caption-row .cv-screenshot-caption{
    grid-area:caption;
    width:100%;
    margin:0 0 2px;
    padding:0 8px;
    box-sizing:border-box;
    text-align:center;
  }
  .cv-carousel-caption-row .cv-carousel-prev{
    grid-area:prev;
    justify-self:end;
  }
  .cv-carousel-caption-row .cv-carousel-next{
    grid-area:next;
    justify-self:start;
  }
  .cv-carousel-caption-row .cv-carousel-arrow-spacer:first-child{
    grid-area:prev;
  }
  .cv-carousel-caption-row .cv-carousel-arrow-spacer:last-child{
    grid-area:next;
  }
  .cv-carousel-caption-row .cv-carousel-arrow,
  .cv-carousel-caption-row .cv-carousel-arrow-spacer{
    width:28px;
    height:28px;
  }
  .cv-carousel-dots{margin-top:7px}
}


/* Mobile lightbox: overlay arrows without affecting image centering — v1.1.63 */
@media(max-width:620px){
  .cv-screenshot-lightbox-dialog{
    padding-inline:0;
    width:100%;
    height:100%;
  }
  .cv-screenshot-lightbox-content{
    width:100%;
    max-width:100%;
    min-width:0;
    align-items:center;
    justify-content:center;
  }
  .cv-screenshot-lightbox-image{
    display:block;
    max-width:calc(100vw - 20px);
    margin-inline:auto;
  }
  .cv-lightbox-arrow{
    position:fixed;
    top:50%;
    z-index:4;
    width:38px;
    height:38px;
    margin-top:-19px;
    pointer-events:auto;
  }
  .cv-lightbox-prev{left:max(8px,env(safe-area-inset-left))}
  .cv-lightbox-next{right:max(8px,env(safe-area-inset-right))}
}


/* Mobile Home carousel: arrows on the same caption row as desktop — v1.1.64 */
@media(max-width:620px){
  .cv-carousel-caption-row{
    display:grid;
    grid-template-columns:29px minmax(0,1fr) 29px;
    grid-template-areas:none;
    align-items:center;
    column-gap:7px;
    row-gap:0;
    margin-top:7px;
    min-height:29px;
  }
  .cv-carousel-caption-row .cv-screenshot-caption{
    grid-area:auto;
    width:auto;
    margin:0;
    padding:0;
    box-sizing:border-box;
    text-align:center;
    min-width:0;
  }
  .cv-carousel-caption-row .cv-carousel-prev,
  .cv-carousel-caption-row .cv-carousel-next,
  .cv-carousel-caption-row .cv-carousel-arrow-spacer:first-child,
  .cv-carousel-caption-row .cv-carousel-arrow-spacer:last-child{
    grid-area:auto;
    justify-self:center;
  }
  .cv-carousel-caption-row .cv-carousel-arrow,
  .cv-carousel-caption-row .cv-carousel-arrow-spacer{
    width:28px;
    height:28px;
  }
  .cv-carousel-dots{margin-top:7px}
}


/* Tablet/mobile lightbox overlay + non-sticky touch carousel controls — v1.1.65 */
@media(max-width:800px){
  /* Keep full-screen navigation arrows over the image from tablet widths down,
     so they never take horizontal space away from the centred screenshot. */
  .cv-screenshot-lightbox-dialog{
    padding-inline:0;
    width:100%;
    height:100%;
  }
  .cv-screenshot-lightbox-content{
    width:100%;
    max-width:100%;
    min-width:0;
    align-items:center;
    justify-content:center;
  }
  .cv-screenshot-lightbox-image{
    display:block;
    max-width:calc(100vw - 20px);
    margin-inline:auto;
  }
  .cv-lightbox-arrow{
    position:fixed;
    top:50%;
    z-index:4;
    pointer-events:auto;
  }
  .cv-lightbox-prev{left:max(8px,env(safe-area-inset-left))}
  .cv-lightbox-next{right:max(8px,env(safe-area-inset-right))}
}

/* Touchscreens can keep :hover after a tap. Restore the neutral appearance
   immediately so carousel arrows do not remain blue on phones/tablets. */
@media(hover:none), (pointer:coarse){
  .cv-carousel-arrow:hover,
  .cv-carousel-arrow:focus,
  .cv-carousel-arrow:focus-visible{
    background:#f5f8ff;
    color:var(--cv-primary-2);
    border-color:rgba(31,94,255,.14);
    transform:none;
    outline:none;
  }
  .cv-carousel-arrow:active{
    background:#eef3ff;
    color:var(--cv-primary-2);
    border-color:rgba(31,94,255,.20);
    transform:scale(.96);
  }
  .cv-lightbox-arrow:hover,
  .cv-lightbox-arrow:focus,
  .cv-lightbox-arrow:focus-visible{
    background:rgba(255,255,255,.12);
    transform:none;
    outline:none;
  }
  .cv-lightbox-arrow:active{
    background:rgba(255,255,255,.20);
    transform:scale(.96);
  }
}


/* Home: streamlined system requirements beneath the screenshot text — v1.1.67.
   Intentionally no second white card: the screenshot slider remains the focal point. */
.cv-home-system-requirements{
  margin:23px 6px 0;
  padding:0;
  border:0;
  border-radius:0;
  background:transparent;
  box-shadow:none;
}
.cv-home-requirements-header{
  display:flex;
  align-items:baseline;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:4px 14px;
  margin:0 0 12px;
}
.cv-home-requirements-header h2{
  margin:0;
  color:var(--cv-ink);
  font-size:.94rem;
  line-height:1.4;
  font-weight:750;
  letter-spacing:-.012em;
}
.cv-home-requirements-platform{
  color:var(--cv-muted);
  font-size:.74rem;
  font-weight:600;
  white-space:nowrap;
}
.cv-home-requirements-list{
  list-style:none;
  margin:0;
  padding:0;
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.cv-home-requirements-list li{
  display:flex;
  flex-direction:column;
  gap:2px;
  min-width:0;
}
.cv-home-requirements-list li span{
  color:var(--cv-muted);
  font-size:.72rem;
  line-height:1.35;
}
.cv-home-requirements-list li strong{
  color:var(--cv-ink);
  font-size:.82rem;
  line-height:1.42;
  font-weight:710;
  overflow-wrap:anywhere;
}
.cv-home-requirements-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  flex-wrap:wrap;
  gap:6px 18px;
  margin-top:14px;
}
.hero .cv-home-requirements-gpu{
  margin:0;
  max-width:none;
  padding:0;
  color:var(--cv-good);
  font-size:.78rem;
  line-height:1.45;
}
.cv-home-requirements-gpu:before{
  content:"✓";
  display:inline-block;
  margin-right:7px;
  color:var(--cv-good);
  font-weight:850;
}
.cv-home-requirements-link{
  display:inline-flex;
  align-items:center;
  gap:5px;
  margin:0;
  font-size:.78rem;
  line-height:1.45;
  font-weight:730;
  text-decoration:none;
}
.cv-home-requirements-link:hover,
.cv-home-requirements-link:focus-visible{
  text-decoration:underline;
}
@media(max-width:1080px){
  .cv-home-requirements-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 18px}
}
@media(max-width:620px){
  .cv-home-system-requirements{margin:19px 4px 0}
  .cv-home-requirements-header{margin-bottom:11px}
  .cv-home-requirements-list{gap:11px 14px}
  .cv-home-requirements-header h2{font-size:.91rem}
  .cv-home-requirements-footer{gap:8px;margin-top:13px}
}
@media(max-width:350px){
  .cv-home-requirements-list{grid-template-columns:1fr 1fr;gap:11px 8px}
  .cv-home-requirements-list li strong{font-size:.78rem}
}

/* Version 1.1.68: subtle blue requirements card, distinct from screenshot slider */
.cv-home-system-requirements {
  margin:23px 0 0;
  padding:21px 23px 18px;
  border:1px solid #cbdff5;
  border-radius:15px;
  background:#edf6ff;
  box-shadow:none;
}
.cv-home-requirements-header { margin-bottom:16px; }
.cv-home-requirements-header h2 { display:flex;align-items:center;gap:9px;font-size:1rem; }
.cv-home-requirements-heading-icon {
  display:inline-grid;place-items:center;
  width:27px;height:27px;flex:0 0 27px;
  border-radius:8px;background:#d6eafd;color:#175bb7;
  font-size:17px;font-weight:700;
}
.cv-home-requirements-platform{color:#476584}
.cv-home-requirements-list {gap:16px;}
.cv-home-requirements-list li { flex-direction:row;align-items:flex-start;gap:9px; }
.cv-home-requirements-item-icon {
  display:inline-grid;place-items:center;
  width:25px;height:25px;flex:0 0 25px;
  border-radius:7px;background:#dbeeff;color:#2166b9;
  font-size:15px;font-weight:750;
}
.cv-home-requirements-item-copy{display:flex;flex-direction:column;gap:3px;min-width:0}
.cv-home-requirements-item-copy > span { color:#526d89; }
.cv-home-requirements-list li strong{color:#172e49}
.cv-home-requirements-footer{margin-top:17px;padding-top:12px;border-top:1px solid #d2e3f4}
.hero .cv-home-requirements-gpu{color:#27644e}
.cv-home-requirements-link{color:#155dc1}
@media(max-width:620px){
  .cv-home-system-requirements{margin:19px 0 0;padding:17px 15px 15px;border-radius:13px}
  .cv-home-requirements-list{gap:15px 10px}
}

/* v1.1.69: align hero content at top and place requirements beneath BOTH columns. */
.hero .hero-grid { align-items:start; }
.hero .hero-grid > div:first-child { align-self:start; }
.hero .cv-home-requirements-fullwidth { margin-top:30px; }
.cv-home-requirements-fullwidth .cv-home-system-requirements { margin-top:0; }
@media (min-width:901px) {
  .hero-has-screenshot .cv-home-requirements-fullwidth {
    width:min(calc(100% - 36px),1120px);
  }
}
@media (max-width:900px) {
  .hero .cv-home-requirements-fullwidth { margin-top:24px; }
}

/* 1.1.70 — iconography and compact, grouped heading. */
.cv-home-requirements-header {
  justify-content:flex-start;
  align-items:center;
  column-gap:13px;
  row-gap:7px;
}
.cv-home-requirements-header h2 { flex:0 1 auto; }
.cv-home-requirements-platform {
  display:inline-flex;
  align-items:center;
  padding:3px 9px;
  background:#daeafa;
  border:1px solid #c5def7;
  border-radius:999px;
  font-size:.73rem;
  line-height:1.5;
  color:#31597b;
}
.cv-home-requirements-heading-icon, .cv-home-requirements-item-icon {line-height:1;}
.cv-req-svg {display:block;width:19px;height:19px;flex:none;}
.cv-home-requirements-heading-icon .cv-req-svg {width:19px;height:19px;}
@media(max-width:620px){
  .cv-home-requirements-header{column-gap:9px;}
  .cv-home-requirements-platform{font-size:.70rem;}
}


/* Robust finger swipe on phones and touchscreen PCs — v1.1.71 */
.cv-screenshot-carousel-viewport,
.cv-screenshot-carousel-viewport .cv-screenshot-open,
.cv-screenshot-lightbox-content,
.cv-screenshot-lightbox-image{
  touch-action:pan-y;
  -webkit-touch-callout:none;
}
.cv-screenshot-carousel-viewport .cv-screenshot-open{
  -webkit-tap-highlight-color:transparent;
}
