/*
Theme Name: Fuzify QA Demo
Theme URI: https://fuzify.io/
Author: Fuzify
Description: Lightweight presentation theme for an independent WordPress/Shopify integration test site. It does not change Fuzify plugins or updater behavior.
Version: 1.0.2
Requires at least: 6.3
Requires PHP: 7.4
Text Domain: fuzify-qa-demo
License: GPL-2.0-or-later
*/
:root{--fqa-ink:#101e36;--fqa-muted:#58667d;--fqa-blue:#2567ec;--fqa-deep:#1349bb;--fqa-line:#e2e8f0;--fqa-paper:#fff;--fqa-bg:#f7f9fd}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;background:var(--fqa-bg);color:var(--fqa-ink);font-family:-apple-system,BlinkMacSystemFont,"Segoe UI",Inter,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;line-height:1.55}
a{color:inherit}button,input,textarea,select{font:inherit}
.fqa-skip{position:absolute;top:-80px;left:16px;background:#fff;color:#000;padding:12px 16px;z-index:100}
.fqa-skip:focus{top:8px}
.fqa-wrap{width:min(1160px,calc(100% - 48px));margin-inline:auto}
.fqa-site-header{background:#fff;border-bottom:1px solid var(--fqa-line)}
.fqa-header-inner{min-height:82px;display:flex;justify-content:space-between;align-items:center;gap:24px}
.fqa-brand{display:flex;align-items:center;gap:12px;text-decoration:none;flex-shrink:0}
.fqa-brand-logo{display:block;width:auto;height:38px;max-width:none;flex-shrink:0}
.fqa-brand-tag{font-size:10px;letter-spacing:.11em;font-weight:760;text-transform:uppercase;color:#728098;border:1px solid #dce5f1;border-radius:20px;padding:4px 8px;margin-left:2px}
.fqa-nav{display:flex;align-items:center;gap:26px;flex-wrap:wrap}
.fqa-nav a{text-decoration:none;font-size:14px;font-weight:640;color:#3d4c65;transition:color .15s}
.fqa-nav a:hover,.fqa-nav a:focus-visible{color:var(--fqa-blue)}
.fqa-nav .fqa-nav-cta{border:1px solid #cddcf9;color:#2059c8;padding:10px 16px;border-radius:10px}
.fqa-nav .fqa-nav-cta:hover{background:#f0f6ff}
.fqa-hero{padding:74px 0 58px;background:radial-gradient(circle at 76% 12%,#e8f1ff 0%,transparent 35%),linear-gradient(180deg,#fff 0%,#f7f9fd 100%)}
.fqa-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(370px,.88fr);gap:62px;align-items:center}
.fqa-eyebrow{display:inline-flex;align-items:center;gap:8px;color:#245bca;letter-spacing:.115em;font-size:11px;font-weight:850;text-transform:uppercase}
.fqa-eyebrow-dot{height:7px;width:7px;border-radius:50%;background:#2d80ee;box-shadow:0 0 0 4px #e6f0ff;display:inline-block}
.fqa-hero h1{font-size:clamp(41px,4.8vw,66px);line-height:1.09;letter-spacing:-.055em;margin:22px 0 22px;font-weight:820}
.fqa-hero h1 span{color:#2668e6}
.fqa-lede{font-size:clamp(16px,1.65vw,19px);line-height:1.72;color:#5b6a82;max-width:560px;margin:0}
.fqa-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:30px}
.fqa-button{padding:13px 20px;min-height:47px;display:inline-flex;justify-content:center;align-items:center;gap:9px;text-align:center;border:1px solid transparent;border-radius:10px;font-weight:750;font-size:14px;text-decoration:none;transition:transform .15s,background .15s}
.fqa-button:hover{transform:translateY(-1px)}
.fqa-button-primary{color:#fff;background:var(--fqa-blue);box-shadow:0 8px 18px #2769e928}
.fqa-button-primary:hover{background:var(--fqa-deep)}
.fqa-button-secondary{color:#25446c;background:#fff;border-color:#d9e2ef}
.fqa-button-secondary:hover{background:#f4f7fc}
.fqa-inline-trust{margin:32px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:10px 21px;color:#66758d;font-size:12px;font-weight:640}
.fqa-inline-trust li::before{content:'✓';color:#2c79dc;font-weight:850;margin-right:7px}
.fqa-diagram{border:1px solid #d7e2f3;border-radius:24px;padding:20px;background:linear-gradient(140deg,#e9f3ff,#f6f9ff);box-shadow:0 24px 70px #13377918;position:relative}
.fqa-diagram-inner{background:#fff;border:1px solid #e2eaf5;border-radius:16px;overflow:hidden;box-shadow:0 12px 30px #0d2f5a0b}
.fqa-diagram-head{display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #edf1f6;padding:16px 19px}
.fqa-diagram-head strong{font-size:12px;letter-spacing:.095em;color:#546883}
.fqa-diagram-status{font-size:10px;font-weight:850;letter-spacing:.09em;border-radius:40px;padding:5px 9px;background:#eaf3ff;color:#2868cc}
.fqa-diagram-body{padding:22px 22px 26px}
.fqa-step{display:flex;align-items:center;gap:15px;padding:16px 17px;border:1px solid #e6eefa;border-radius:12px;background:#fafcff}
.fqa-step b{color:#8b9cb6;font-size:13px;width:25px}
.fqa-step div{flex:1}
.fqa-step strong{display:block;font-size:13px;letter-spacing:.015em;color:#1c2c48}
.fqa-step span{display:block;color:#64738b;font-size:12px;margin-top:2px}
.fqa-step-highlight{background:linear-gradient(105deg,#275fdf,#2b82ef);border-color:#275fdf;box-shadow:0 11px 24px #2566db27}
.fqa-step-highlight b,.fqa-step-highlight strong,.fqa-step-highlight span{color:#fff}
.fqa-step-highlight span{opacity:.8}
.fqa-connector{height:19px;width:1px;background:#b9cee8;margin:0 0 0 35px;position:relative}
.fqa-connector::after{content:'';position:absolute;bottom:0;left:-3px;border-left:3px solid transparent;border-right:3px solid transparent;border-top:4px solid #b9cee8}
.fqa-diagram-foot{color:#7988a0;font-size:11px;text-align:center;margin:16px 0 0}
.fqa-section{padding:72px 0}
.fqa-section-white{background:#fff}
.fqa-section-head{display:flex;align-items:end;justify-content:space-between;gap:18px;margin-bottom:26px}
.fqa-section h2{margin:11px 0 0;font-size:clamp(29px,3vw,40px);letter-spacing:-.04em;line-height:1.2}
.fqa-section-intro{max-width:650px;color:var(--fqa-muted);font-size:16px;margin:12px 0 0;line-height:1.65}
.fqa-text-link{text-decoration:none;color:var(--fqa-blue);font-weight:750;font-size:14px;white-space:nowrap}
.fqa-text-link:hover{text-decoration:underline}
.fqa-live-panel{padding:27px;background:#fff;border:1px solid #e2eaf3;border-radius:20px;box-shadow:0 5px 24px #143b6610}
.fqa-live-panel .shoplite-section{margin:0}
.fqa-live-panel .shoplite-grid{gap:18px!important}
.fqa-empty{padding:42px;background:#fbfdff;border:1px dashed #b9d0ed;border-radius:14px;text-align:center}
.fqa-empty h3{font-size:23px;letter-spacing:-.025em;margin:6px 0}
.fqa-empty p{color:var(--fqa-muted);margin:8px auto 18px;max-width:560px}
.fqa-how-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-top:26px}
.fqa-how-card{background:#fff;border:1px solid #e2eaf3;padding:27px;border-radius:17px}
.fqa-how-number{display:grid;place-items:center;width:40px;height:40px;background:#eaf2ff;color:#286be0;border-radius:11px;font-weight:800;margin-bottom:21px}
.fqa-how-card h3{font-size:19px;margin:0 0 10px;letter-spacing:-.025em}
.fqa-how-card p{color:#65748b;font-size:14px;line-height:1.7;margin:0}
.fqa-story-banner{display:flex;justify-content:space-between;align-items:center;gap:28px;background:#122445;color:#fff;border-radius:20px;padding:38px 42px}
.fqa-story-banner h2{font-size:clamp(25px,3vw,34px);margin:4px 0 9px}
.fqa-story-banner p{color:#b8c8e1;font-size:15px;margin:0;max-width:610px}
.fqa-story-banner .fqa-button{flex-shrink:0}
.fqa-site-footer{border-top:1px solid #e4e9f2;background:#fff;padding:26px 0}
.fqa-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:14px;color:#7a8798;font-size:12px}
.fqa-footer-inner b{color:#3a4c6a;font-size:14px}
.fqa-inner-main{min-height:70vh;padding:60px 0 90px;background:#fff}
.fqa-article{max-width:1000px;margin:0 auto}
.fqa-article-top{max-width:840px;margin:0 auto 35px}
.fqa-back{text-decoration:none;color:var(--fqa-blue);font-size:13px;font-weight:700}
.fqa-article h1{font-size:clamp(33px,4vw,52px);line-height:1.16;letter-spacing:-.045em;margin:20px 0 0}
.fqa-entry-content{overflow-wrap:anywhere}
.fqa-entry-content>p,.fqa-entry-content>ul,.fqa-entry-content>ol,.fqa-entry-content>blockquote{max-width:840px;margin-left:auto;margin-right:auto}
.fqa-entry-content>p{color:#536179;font-size:17px;line-height:1.75}
.fqa-entry-content>h2,.fqa-entry-content>h3{max-width:840px;margin-left:auto;margin-right:auto;letter-spacing:-.035em}
.fqa-entry-content img{max-width:100%;height:auto}
.fqa-entry-content .wp-block-group.alignwide{max-width:1000px;margin-inline:auto}
.fqa-entry-content .wp-block-group.alignfull{max-width:none}
.fqa-entry-content .shoplite-embedded-collection{max-width:840px;margin-inline:auto}
.fqa-error{padding:70px 0;text-align:center}
.fqa-error h1{font-size:clamp(34px,6vw,58px);letter-spacing:-.04em}
.fqa-error p{color:var(--fqa-muted)}
@media(max-width:920px){.fqa-hero-grid{gap:30px;grid-template-columns:minmax(0,1fr) minmax(310px,.8fr)}.fqa-diagram{padding:12px}.fqa-diagram-body{padding:15px}.fqa-hero{padding:60px 0 50px}}
@media(max-width:700px){.fqa-wrap{width:min(100% - 32px,1160px)}.fqa-header-inner{min-height:70px}.fqa-brand-logo{height:34px}.fqa-brand-tag{display:none}.fqa-nav{gap:15px}.fqa-nav a{font-size:13px}.fqa-nav .fqa-nav-cta{padding:8px 12px}.fqa-hero{padding:48px 0 42px}.fqa-hero-grid{grid-template-columns:1fr}.fqa-hero h1{font-size:clamp(39px,9vw,54px)}.fqa-diagram{max-width:500px}.fqa-section{padding:48px 0}.fqa-section-head{align-items:start;flex-direction:column;gap:12px}.fqa-how-grid{grid-template-columns:1fr}.fqa-story-banner{align-items:start;flex-direction:column;padding:28px}.fqa-footer-inner{align-items:start;flex-direction:column}.fqa-live-panel{padding:14px}.fqa-inner-main{padding:38px 0 64px}}
@media(max-width:440px){.fqa-nav a:not(.fqa-nav-cta){display:none}.fqa-nav .fqa-nav-cta{font-size:12px}.fqa-button{width:100%}.fqa-inline-trust{gap:8px 16px}.fqa-diagram{display:none}.fqa-story-banner .fqa-button{width:100%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.fqa-button{transition:none}}

/* QA theme 1.0.1: one consistent brand header and footer for all public routes.
   Fuzify's Store and native product/collection templates call get_header()
   and get_footer(); leave their shopping behaviors untouched. */
.fqa-site-header{position:relative;z-index:12}
.fqa-brand-logo,.fqa-footer-logo img{object-fit:contain;object-position:left center}
.fqa-brand-tag{white-space:nowrap}
.fqa-site-footer{background:#fff;border-top:1px solid #e2e8f0;padding:28px 0 22px}
.fqa-footer-main{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:22px;padding-bottom:20px}
.fqa-footer-identity{display:flex;align-items:center;gap:14px;min-width:0}
.fqa-footer-logo{display:inline-flex;align-items:center;text-decoration:none}
.fqa-footer-logo img{width:auto;height:31px;display:block}
.fqa-footer-label{font-size:11px;font-weight:780;letter-spacing:.105em;text-transform:uppercase;color:#728098;border-left:1px solid #dbe4f0;padding-left:14px;white-space:nowrap}
.fqa-footer-nav{display:flex;flex-wrap:wrap;align-items:center;gap:12px 25px}
.fqa-footer-nav a{font-size:13px;font-weight:650;text-decoration:none;color:#52617a}
.fqa-footer-nav a:is(:hover,:focus-visible){color:var(--fqa-blue);text-decoration:underline;text-underline-offset:3px}
.fqa-footer-bottom{display:flex;justify-content:space-between;flex-wrap:wrap;gap:8px 24px;border-top:1px solid #e8edf4;padding-top:18px;color:#758397;font-size:12px}
@media(max-width:700px){.fqa-brand-logo{height:34px}.fqa-footer-main{align-items:start;flex-direction:column;gap:15px}.fqa-footer-bottom{flex-direction:column;gap:7px}}
@media(max-width:440px){.fqa-brand-logo{height:33px}.fqa-footer-nav{gap:10px 16px}.fqa-footer-logo img{height:29px}}

/* QA theme 1.0.2: shared header stays visible while scrolling.
   Keep Core's independent sticky Store Bar directly below this header.
   These variables affect placement only; product/cart/update code is unchanged. */
:root{--fqa-sticky-header-height:83px}
.fqa-site-header{position:sticky;top:0;z-index:1200;background:#fff}
.sl-storebar{--sl-storebar-offset:var(--fqa-sticky-header-height)}
html{scroll-padding-top:calc(var(--fqa-sticky-header-height) + 12px)}
/* WordPress admin toolbar is fixed at the top except on small phones. */
body.admin-bar .fqa-site-header{top:32px}
@media(max-width:782px){body.admin-bar .fqa-site-header{top:46px}}
@media(max-width:700px){:root{--fqa-sticky-header-height:71px}}
@media(max-width:600px){
  body.admin-bar .fqa-site-header{top:0}
  body.admin-bar .sl-storebar{--sl-adminbar-offset:0px}
}
