:root{--fg: #1a1d24;--muted: #5b6473;--line: #e3e6ec;--bg: #ffffff;--bg-soft: #f6f7fa;--accent: #2b6cff;--accent-d: #1a4fd0;--success: #1f9d55;--danger: #c63031;--radius: 8px;--shadow: 0 1px 3px rgba(0,0,0,.06), 0 8px 24px rgba(0,0,0,.04);font-family:system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif}*{box-sizing:border-box}body{margin:0;color:var(--fg);background:var(--bg);line-height:1.5}.site-header{display:flex;align-items:center;justify-content:space-between;padding:16px 32px;border-bottom:1px solid var(--line)}.site-header .logo{font-weight:700;font-size:18px;letter-spacing:-.01em}.site-header nav{display:flex;align-items:center;gap:24px;font-size:14px}.site-header nav a{color:var(--fg);text-decoration:none}.site-header nav a:hover{color:var(--accent)}.site-header .cart{font-weight:600}.site-header nav a.nav-cta{display:inline-flex;align-items:center;gap:8px;padding:8px 18px;border-radius:999px;color:#fff;font-weight:700;font-size:13px;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}.site-header nav a.nav-cta-red{background:#f91b25}.site-header nav a.nav-cta-dark{background:#14161c}.site-header nav a.nav-cta:hover{color:#fff;opacity:.88}.site-header nav a.nav-cta-red:hover{background:#d8151e}.site-header nav a.nav-cta-dark:hover{background:#2a2e38}.product{max-width:1200px;margin:32px auto;padding:0 32px;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px}@media (max-width: 880px){.product{grid-template-columns:1fr;gap:32px}}.product-image{width:100%;aspect-ratio:1;background:var(--bg-soft);border-radius:var(--radius);object-fit:contain;padding:32px}.thumbs{display:flex;gap:8px;margin-top:12px}.thumb{width:64px;height:64px;background:var(--bg-soft);border:1px solid var(--line);border-radius:6px;cursor:pointer}.thumb.active{border-color:var(--accent)}.breadcrumb{color:var(--muted);font-size:13px;margin:0 0 8px;text-transform:uppercase;letter-spacing:.04em}.product-details h1{margin:0 0 8px;font-size:30px;letter-spacing:-.015em}.rating{color:#f4b400;margin:0 0 16px;font-size:14px}.rating span{color:var(--muted);margin-left:6px}.price{display:flex;align-items:baseline;gap:12px;margin:16px 0}.price-now{font-size:28px;font-weight:700}.price-was{color:var(--muted);text-decoration:line-through}.badge{background:#fde7e7;color:var(--danger);font-size:12px;font-weight:600;padding:2px 8px;border-radius:999px}.copy{color:var(--muted);margin:16px 0 24px}.options{display:flex;gap:16px;margin-bottom:24px}.options label{display:flex;flex-direction:column;gap:4px;font-size:13px;color:var(--muted);flex:1}.options select{padding:8px 10px;border:1px solid var(--line);border-radius:6px;background:var(--bg);font-size:14px}.upload-section{margin-bottom:24px;overflow:hidden}.upload-section h2{margin:0 0 4px;font-size:14px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.upload-hint{margin:0 0 12px;font-size:13px;color:var(--muted)}#fc-inline{height:auto;max-height:80vh}#add-to-cart:disabled{cursor:not-allowed;opacity:.6}.cta-row{display:flex;gap:12px;margin-bottom:24px}.btn-primary,.btn-secondary{flex:1;padding:14px 20px;border-radius:var(--radius);border:1px solid transparent;font-size:15px;font-weight:600;cursor:pointer;transition:background .15s,border-color .15s,color .15s}.btn-primary{background:var(--accent);color:#fff}.btn-primary:hover{background:var(--accent-d)}.btn-secondary{background:var(--bg);color:var(--fg);border-color:var(--line)}.btn-secondary:hover{border-color:var(--accent);color:var(--accent)}.trust{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted)}.trust li::marker{color:var(--success)}.uploader-dialog{border:none;border-radius:12px;padding:0;width:min(560px,92vw);box-shadow:var(--shadow)}.uploader-dialog::backdrop{background:#0f16248c}.uploader-dialog header{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;border-bottom:1px solid var(--line)}.uploader-dialog header h2{margin:0;font-size:16px}.uploader-dialog .close{background:transparent;border:none;font-size:24px;line-height:1;color:var(--muted);cursor:pointer;padding:0 4px}.uploader-dialog .close:hover{color:var(--fg)}#fc-modal{padding:20px;min-height:320px}.demo-bar{display:flex;flex-wrap:wrap;align-items:center;gap:20px;padding:10px 32px;background:var(--fg);color:#fff;font-size:13px}.demo-bar a{color:#ffffffb8;text-decoration:none}.demo-bar a:hover{color:#fff}.demo-bar a.is-current{color:#fff;font-weight:600}.demo-bar a:first-child{margin-right:auto}.landing{max-width:1080px;margin:0 auto;padding:56px 32px 80px}.landing-hero{max-width:640px}.landing-hero h1{font-size:40px;line-height:1.1;letter-spacing:-.02em;margin:0 0 16px}.landing-hero .lede{font-size:17px;color:var(--muted);margin:0}.demo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:20px;margin:40px 0 56px}.demo-card{display:flex;flex-direction:column;gap:8px;padding:24px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg);color:inherit;text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s}.demo-card:hover{border-color:var(--accent);box-shadow:var(--shadow);transform:translateY(-2px)}.demo-card-kicker{font-size:11px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--accent)}.demo-card h2{margin:0;font-size:20px;letter-spacing:-.01em}.demo-card p{margin:0;font-size:14px;color:var(--muted)}.demo-card-shows{margin-top:auto;padding-top:12px;font-size:12px;color:var(--muted);border-top:1px solid var(--line)}.key-panel{padding:28px;border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-soft)}.key-panel h2{margin:0 0 8px;font-size:18px}.key-panel p{margin:0 0 16px;font-size:14px;color:var(--muted)}.key-badge{display:inline-block;margin-left:6px;padding:2px 8px;border-radius:999px;background:var(--success);color:#fff;font-size:11px;font-weight:600}.key-form{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.key-form label{display:flex;flex-direction:column;gap:6px;font-size:13px;color:var(--muted);flex:1 1 240px}.key-form input{padding:9px 11px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:14px;background:var(--bg)}.key-optional{opacity:.7}.key-actions{display:flex;gap:8px}.btn-quiet{padding:10px 14px;border:1px solid var(--line);border-radius:6px;background:var(--bg);color:var(--muted);font:inherit;font-size:14px;cursor:pointer}.btn-quiet:hover{color:var(--fg);border-color:var(--muted)}.key-note{margin:16px 0 0!important;font-size:12px!important}.demo-footer{padding:28px 32px 48px;border-top:1px solid var(--line);text-align:center}.demo-footer p{max-width:620px;margin:0 auto;font-size:13px;color:var(--muted)}.product-swatch{display:grid;place-items:center;aspect-ratio:4 / 3;border-radius:var(--radius);font-weight:600;letter-spacing:.02em;color:#fff}.product-swatch-banner{background:linear-gradient(135deg,#2b6cff,#16357f)}.product-swatch-brochure{background:linear-gradient(135deg,#1f9d55,#0d5c31)}.product-swatch-flyer{background:linear-gradient(135deg,#e8590c,#96350a)}.product-swatch-thesis{background:linear-gradient(135deg,#6741d9,#3b2487)}.product-swatch-cards{background:linear-gradient(135deg,#343a40,#16181b)}.product-swatch-leaflet{background:linear-gradient(135deg,#0ca678,#06543d)}.product-swatch-stickers{background:linear-gradient(135deg,#d6336c,#801f40)}.product-swatch-booklet{background:linear-gradient(135deg,#7048e8,#3b2487)}.product-swatch-poster{background:linear-gradient(135deg,#1098ad,#0a5c69)}.product-swatch-rollup{background:linear-gradient(135deg,#495057,#24272b)}.product-swatch-tshirt{background:linear-gradient(135deg,#37b24d,#1c5c28)}.product-swatch-mug{background:linear-gradient(135deg,#a87545,#5d3f24)}.product-swatch-canvas{background:linear-gradient(135deg,#f08c00,#8f5400)}.landing-shell{--mono: ui-monospace, "JetBrains Mono", "Cascadia Mono", Consolas, monospace;display:grid;grid-template-columns:300px minmax(0,1fr);align-items:start}.landing-side{position:sticky;top:0;height:100vh;overflow-y:auto;padding:40px 28px 32px;border-right:1px solid var(--line);box-sizing:border-box;background:#f8fafc}.side-hero{margin:0 0 14px;font-size:27px;line-height:1.2;letter-spacing:-.01em}.side-hero .u-red{border-bottom:3px solid #f91b25}.side-hero .u-amber{border-bottom:3px solid #f5a623}.side-lede{margin:0 0 8px;font-size:13.5px;line-height:1.55;color:var(--muted)}.side-label{margin:30px 0 10px;font-family:var(--mono);font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.09em;color:var(--muted)}.side-nav{display:flex;flex-direction:column}.side-link{display:flex;align-items:baseline;justify-content:space-between;gap:12px;padding:8px 10px;border-left:2px solid transparent;font-size:13.5px;color:var(--muted);text-decoration:none;border-radius:0 6px 6px 0}.side-link:hover{color:var(--fg)}.side-link.is-current{color:var(--fg);font-weight:600;background:#fff;border-left-color:#f91b25}.side-link.is-empty{opacity:.35}.side-link-count{font-family:var(--mono);font-size:11px;color:var(--muted)}.side-chips{display:flex;flex-wrap:wrap;gap:8px}.chip{padding:5px 11px;border:1px solid var(--line);border-radius:999px;background:transparent;font-family:var(--mono);font-size:11.5px;color:var(--muted);cursor:pointer}.chip:hover{border-color:var(--muted);color:var(--fg)}.chip.is-active{background:#14161c;border-color:#14161c;color:#fff}.landing-main{min-width:0;padding:40px 44px 28px}.cat-section{margin-bottom:46px}.cat-head{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding-bottom:10px;border-bottom:2px solid #14161c}.cat-head h2{margin:0;font-family:var(--mono);font-size:13.5px;font-weight:700;text-transform:uppercase;letter-spacing:.12em}.cat-byline{font-size:12.5px;color:var(--muted);white-space:nowrap}.cat-row{display:grid;grid-template-columns:225px minmax(0,1fr) auto;gap:26px;align-items:center;padding:17px 6px;border-bottom:1px solid var(--line);color:inherit;text-decoration:none}.cat-row:hover{background:#fafaf9}.row-kicker{display:block;margin-bottom:3px;font-family:var(--mono);font-size:10.5px;font-weight:600;text-transform:uppercase;letter-spacing:.1em;color:#2b6cff}.row-title{display:block;font-size:16.5px;font-weight:600;color:var(--fg)}.row-desc{font-size:14px;line-height:1.5;color:#454a54}.row-pills{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.pill{padding:4px 11px;border-radius:999px;background:#f1f2f4;font-family:var(--mono);font-size:11px;color:#5a5f6a;white-space:nowrap}.cat-row.row-green{background:#eaf7ef;border-radius:8px;border-bottom-color:transparent}.cat-row.row-green:hover{background:#def2e6}.row-green .row-kicker{color:#1f9d55}.row-green .pill{background:#fff;border:1px solid #1f9d55;color:#1a7c45}.key-strip{display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;margin-top:8px;padding:22px 26px;border:1px solid var(--line);border-radius:12px;background:#fbfbfa}.key-strip-copy h2{margin:0 0 4px;font-size:16px}.key-strip-copy p{margin:0;font-size:13px;color:var(--muted)}.key-strip-form{display:flex;align-items:center;gap:10px}.key-strip-form input{width:230px;padding:10px 12px;border:1px solid var(--line);border-radius:8px;font:inherit;font-size:13.5px}.btn-key{padding:10px 16px;border:0;border-radius:8px;background:#2b6cff;color:#fff;font:inherit;font-size:13.5px;font-weight:600;cursor:pointer}.btn-key:hover{background:#1f57d6}.key-reset{padding:10px 4px;border:0;background:none;font:inherit;font-size:12.5px;color:var(--muted);cursor:pointer}.key-reset:hover{color:var(--fg)}.landing-footer{padding:20px 32px;background:#14161c;color:#cfd3da;font-size:13px}.landing-footer p{margin:0}@media (max-width: 940px){.landing-shell{grid-template-columns:1fr}.landing-side{position:static;height:auto;border-right:0;border-bottom:1px solid var(--line);padding-bottom:24px}.landing-main{padding:28px 20px}.cat-row{grid-template-columns:1fr;gap:8px;align-items:start}.row-pills{justify-content:flex-start}}.product.product-hero-layout{grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);align-items:start}.product-strip{display:flex;align-items:center;gap:14px;margin-bottom:16px}.product-swatch-strip{aspect-ratio:auto;width:96px;height:60px;flex:0 0 auto;font-size:13px;border-radius:8px}.product-strip-id .breadcrumb{margin:0 0 2px}.product-strip-id h1{margin:0;font-size:24px;line-height:1.15}.fc-hero{padding:18px 18px 14px;border:1px solid var(--line);border-radius:var(--radius);background:#fff}.fc-hero-label{margin:0 0 4px;font-size:16px}.fc-hero-hint{margin:0 0 12px;font-size:12.5px;line-height:1.5;color:var(--muted)}.fc-hero-hint:empty{display:none}.product-hero .try-box{margin-top:16px}.product-rail .copy{margin-top:0}@media (max-width: 880px){.product.product-hero-layout{grid-template-columns:1fr}}.try-box{margin-top:20px;padding:16px 18px;border:1px solid var(--line);border-radius:var(--radius);background:var(--panel, #fafafa)}.try-box h2{margin:0 0 10px;font-size:15px}.try-box ol{margin:0 0 14px;padding-left:20px;font-size:13px;line-height:1.55;color:var(--muted)}.try-box ol li{margin-bottom:6px}.try-samples-title{margin:0 0 6px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.sample-links{margin:0;padding:0;list-style:none;font-size:13px}.sample-links li{margin-bottom:4px}.sample-links a{color:var(--accent);text-decoration:none}.sample-links a:hover{text-decoration:underline}.options-inline{display:flex;flex-wrap:wrap;align-items:flex-end;gap:12px}.options-inline input,.options-inline select{padding:9px 11px;border:1px solid var(--line);border-radius:6px;font:inherit;font-size:14px;min-width:7rem}.options-x{padding-bottom:10px;color:var(--muted)}.options-fieldset{border:1px solid var(--line);border-radius:var(--radius);padding:12px 16px 14px;margin:0 0 20px}.options-fieldset legend{padding:0 6px;font-size:13px;color:var(--muted)}.options-fieldset label{display:block;padding:3px 0;font-size:14px}.options-fieldset em{color:var(--muted);font-style:normal;font-size:13px}.price-unit{font-size:13px;color:var(--muted);font-weight:400}.hint{margin:16px 0 0;font-size:13px;color:var(--muted)}.hint code,.integration code{background:var(--bg-soft);border:1px solid var(--line);border-radius:4px;padding:1px 5px;font-size:12px}.integration{margin-top:28px;border-top:1px solid var(--line);padding-top:16px}.integration summary{cursor:pointer;font-size:13px;font-weight:600;color:var(--accent);list-style:none}.integration summary::-webkit-details-marker{display:none}.integration summary:before{content:"+ ";font-weight:700}.integration[open] summary:before{content:"– "}.integration p{font-size:13px;color:var(--muted);margin:14px 0}.integration pre{margin:0;padding:14px 16px;background:var(--fg);color:#e6ebf5;border-radius:var(--radius);overflow-x:auto;font-size:12px;line-height:1.6}.integration pre code{background:none;border:none;padding:0;font-size:inherit;color:inherit}@media (max-width: 700px){.demo-bar{padding:10px 16px;gap:14px}.landing{padding:36px 20px 56px}.landing-hero h1{font-size:30px}}.sample-bar{display:flex;align-items:center;gap:14px;padding:10px 32px;background:var(--fg);color:#fff;font-size:13px}.sample-bar .sample-mark{font-weight:700;letter-spacing:-.01em}.sample-bar .sample-note{color:#ffffffad}.sample-bar .sample-cta{margin-left:auto;color:#fff;text-decoration:none;font-weight:600}.sample-bar .sample-cta:hover{text-decoration:underline}.sample{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:40px;max-width:1100px;margin:40px auto;padding:0 32px;align-items:start}.sample-product h1{margin:4px 0 12px;font-size:30px;letter-spacing:-.02em}.sample-side{display:flex;flex-direction:column;gap:16px}.sample-card{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-soft);padding:20px 22px}.sample-card h2{margin:0 0 8px;font-size:15px;letter-spacing:-.01em}.sample-card p{margin:0 0 14px;font-size:13px;color:var(--muted)}.sample-files{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.sample-file{display:flex;flex-direction:column;gap:2px;padding:10px 12px;border:1px solid var(--line);border-radius:7px;background:var(--bg);color:inherit;text-decoration:none;font-size:13px;transition:border-color .15s}.sample-file:hover{border-color:var(--danger)}.sample-file span{color:var(--muted);font-size:12px}.sample-spec{margin:0;padding-left:18px;font-size:13px;color:var(--muted)}.sample-spec li{padding:3px 0}.sample-spec strong{color:var(--fg);font-weight:600}#s-evidence-wrap{margin-top:12px}#s-evidence-wrap summary{cursor:pointer;font-size:12px;color:var(--accent);list-style:none}#s-evidence-wrap summary::-webkit-details-marker{display:none}.sample-evidence{margin:10px 0 0;padding-left:18px;font-size:12px;color:var(--muted);line-height:1.7}.sample-evidence code{background:var(--bg);border:1px solid var(--line);border-radius:4px;padding:0 4px;font-size:11px}.sample-toggle{display:inline-flex;align-items:center;gap:7px;margin-left:14px;font-size:13px;color:var(--muted);cursor:pointer}.sample-missing{max-width:640px;margin:80px auto;padding:0 32px}.sample-missing h1{font-size:26px;margin:0 0 12px}.sample-missing p{color:var(--muted);font-size:14px}.sample-missing code{background:var(--bg-soft);border:1px solid var(--line);border-radius:4px;padding:1px 5px;font-size:12px}.sample-foot{border-top:1px solid var(--line);padding:24px 32px 48px;text-align:center}.sample-foot p{max-width:560px;margin:0 auto;font-size:13px;color:var(--muted)}.sample-foot a{color:var(--accent)}@media (max-width: 900px){.sample{grid-template-columns:1fr;gap:28px;padding:0 20px}.sample-bar{padding:10px 16px}.sample-bar .sample-note{display:none}}.sample-tag{display:inline-block;margin-left:6px;padding:1px 6px;border-radius:999px;background:#fdf1dc;border:1px solid #e8cfa0;color:#8a5a12;font-size:10px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;vertical-align:1px}.sample-assumed{border-color:#e8cfa0;background:#fefaf2}
