/* Dedicated product pages. Shared demos retain their own layout and controls. */
.product-page{--product-accent:#285f55;--product-soft:#edf3ee;--product-free-surface:#dfefe7;--product-line:#d7e2db;max-width:1240px!important;margin:auto;color:#173b3c;font-size:16px;line-height:1.75;overflow-wrap:break-word}
.product-page[data-product=flipbook]{--product-accent:#354b6a;--product-soft:#eef2f8;--product-free-surface:#e1e9f5;--product-line:#d8e0ec}
.product-page[data-product=knitting]{--product-accent:#8b4f31;--product-soft:#f7efe9;--product-free-surface:#fae7d9;--product-line:#e7d9cd}
.product-page[data-product=qr]{--product-accent:#62459b;--product-soft:#f2eef9;--product-free-surface:#eadef8;--product-line:#e1d8ef}
.product-page *{box-sizing:border-box}
.product-page h1,.product-page h2,.product-page h3{color:#173b3c}
.product-page p{color:#4a6260}
.product-page :is(.product-hero-copy,.product-how>div,.product-saved>div,.product-plans article,.product-related a,.product-final>*){min-width:0}
.product-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:12px;font-size:13px;margin:4px 0 24px;color:#627774}
.product-breadcrumb a{display:inline-flex;align-items:center;min-height:44px;color:inherit;text-underline-offset:4px}
.product-hero{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(0,1fr);gap:clamp(28px,4vw,56px);align-items:center;padding:clamp(28px,4vw,48px);border:1px solid var(--product-line);border-radius:24px;background:linear-gradient(125deg,#fff 15%,var(--product-soft));overflow:hidden}
.product-eyebrow{font-size:12px!important;font-weight:800;letter-spacing:.11em;text-transform:uppercase;color:var(--product-accent)!important;margin:0 0 16px}
.product-hero h1{font-size:clamp(2.25rem,4vw,3.65rem);font-weight:650;line-height:1.06;letter-spacing:-.045em;text-wrap:balance;margin:0 0 24px}
.product-lead{max-width:54ch;font-size:16px;line-height:1.8;margin:0 0 28px}
.product-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.product-actions a,.product-plans a,.product-final>a{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;max-width:100%;padding:12px 16px;border:1px solid var(--product-line);border-radius:9px;background:#fff;color:var(--product-accent);text-decoration:none;font-size:14px;font-weight:750;line-height:1.4;text-align:center}
.product-page a.product-primary{background:var(--product-accent);border-color:var(--product-accent);color:#fff}
.product-actions a:hover,.product-plans a:hover,.product-final>a:hover{filter:brightness(.96);text-decoration:underline;text-underline-offset:4px}
.product-start-note{font-size:13px!important;line-height:1.65;margin:16px 0 0!important}
.product-hero-image{margin:0;min-width:0;width:100%;max-width:540px;justify-self:center;border-radius:15px;background:#fff;box-shadow:0 16px 38px #173b3c13;border:1px solid var(--product-line);overflow:hidden}
.product-window-bar{display:flex;align-items:center;gap:5px;padding:11px 14px;border-bottom:1px solid var(--product-line);background:#f8faf7}
.product-window-bar i{width:6px;height:6px;border-radius:50%;background:#bdcec5}
.product-window-bar span{font-size:10px;margin-left:auto;color:#627774;font-weight:650}
.product-shot{display:block;width:100%;margin:0;padding:0!important;min-height:0!important;border:0!important;border-radius:0!important;background:#fff!important;box-shadow:none!important;cursor:zoom-in;text-decoration:none}
.product-shot img{display:block;width:100%;height:auto;max-height:400px;object-fit:contain;object-position:center;background:#fff}
.product-hero-image figcaption{padding:14px 18px;border-top:1px solid var(--product-line);font-size:12px;line-height:1.65;color:#5d7267}
.product-hero-image figcaption span{display:block;font-weight:750;color:var(--product-accent);margin-top:6px}
.product-section-nav{display:flex;gap:6px;flex-wrap:wrap;margin:22px 0 40px;padding-bottom:18px;border-bottom:1px solid var(--product-line)}
.product-section-nav a{display:inline-flex;align-items:center;min-height:44px;padding:9px 13px;border-radius:7px;font-size:13px;font-weight:650;text-decoration:none;color:#37584d;line-height:1.45}
.product-section-nav a:hover{background:var(--product-soft);text-decoration:underline;text-underline-offset:4px}
.product-benefits{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;margin:0 0 64px}
.product-benefits article{padding:22px 0 0;border-top:2px solid var(--product-line)}
.product-benefit-number{font:italic 24px Georgia,serif;color:var(--product-accent)}
.product-benefits h3{font-size:19px;line-height:1.35;margin:12px 0}
.product-benefits p{font-size:15px;line-height:1.75;margin:0}
.product-section{margin:80px 0;scroll-margin-top:28px}
.product-section h2,.product-related h2,.product-final h2{font-family:Georgia,serif;font-weight:500;font-size:clamp(1.9rem,3vw,2.65rem);line-height:1.2;letter-spacing:-.025em;text-wrap:balance;margin:0 0 20px}
.product-section-intro{max-width:66ch;margin-bottom:28px}
.product-how,.product-saved{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:clamp(32px,5vw,64px);align-items:start}
.product-how>div>p:not(.product-eyebrow){max-width:42ch;margin:0 0 22px}
.product-text-link{display:inline-flex;align-items:center;min-height:44px;font-size:14px;font-weight:750;color:var(--product-accent);text-underline-offset:4px}
.product-steps{margin:0;padding:0;list-style:none;display:grid;gap:24px}
.product-steps li{display:flex;gap:18px}
.product-steps li+li{padding-top:24px;border-top:1px solid var(--product-line)}
.product-steps li>span{display:grid;place-items:center;width:36px;height:36px;flex:0 0 36px;background:var(--product-soft);border-radius:50%;color:var(--product-accent);font-size:14px;font-weight:800}
.product-steps li>div{min-width:0}
.product-steps h3{font-size:18px;margin:3px 0 8px;line-height:1.35}
.product-steps p{font-size:15px;margin:0}
.product-saved{padding:clamp(28px,4vw,42px);background:var(--product-soft);border-radius:22px;align-items:center;gap:40px}
.product-saved p{font-size:15px;line-height:1.8}
.product-archive-visual{min-width:0;border:1px solid var(--product-line);background:#fff;border-radius:14px;padding:28px;box-shadow:0 6px 24px #173b3c07}
.product-folder-icon{display:block;font-size:40px;line-height:1;color:var(--product-accent)}
.product-archive-visual h3{font-size:21px;margin:16px 0 20px}
.product-archive-visual>div{display:grid;gap:10px}
.product-archive-visual>div>span{display:flex;align-items:flex-start;gap:10px;padding:12px 14px;background:var(--product-soft);border-radius:8px;font-size:14px;font-weight:650;line-height:1.55}
.product-archive-visual>div>span::before{content:'\2713';flex-shrink:0;color:var(--product-accent)}
.product-archive-visual p{font-size:13px;margin:20px 0 0}
.product-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}
.product-plans article{border:1px solid var(--product-line);border-radius:16px;padding:32px;background:#fff;display:flex;flex-direction:column;align-items:flex-start;gap:8px}
.product-plans article.product-free{background:var(--product-free-surface)}
.product-plans article.product-member{border-color:var(--product-accent);background:var(--product-soft)}
.product-tier-label{font-size:12px;text-transform:uppercase;letter-spacing:.09em;font-weight:800;color:var(--product-accent)}
.product-plans h3{font-size:32px;margin:12px 0 8px;line-height:1.2;letter-spacing:-.025em}
.product-plans h3 small{font-size:14px;margin-left:4px;font-weight:500;letter-spacing:0}
.product-plans p{font-size:15px;margin:8px 0 20px}
.product-plans a{width:100%;margin-top:auto}
.product-plan-note{font-size:13px;line-height:1.75;margin:20px 0;max-width:96ch}
.product-plan-note a{color:inherit;text-underline-offset:3px}
.product-demo{overflow-anchor:none}
.product-demo>p:not(.product-eyebrow){max-width:70ch}
.product-demo>.vt-demos{max-width:none;margin:28px 0 0}
.product-demo .demo-section{margin:0;padding:26px;background:#fff;border:1px solid var(--product-line);border-radius:20px;box-shadow:0 8px 30px #173b3c08}
.product-demo .demo-section-number,.product-demo .demo-section>.demo-eyebrow{display:none}
.product-demo .demo-section h2{font-size:1.9rem}
.product-demo .product-menu-stage{grid-template-columns:minmax(0,1.65fr) minmax(280px,1fr)}
.product-faq{max-width:960px}
.product-faq details{padding:0;border-top:1px solid var(--product-line)}
.product-faq details:last-child{border-bottom:1px solid var(--product-line)}
.product-faq summary{display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:68px;padding:20px 0;font-size:16px;font-weight:750;cursor:pointer;line-height:1.5;list-style:none}
.product-faq summary::-webkit-details-marker{display:none}
.product-faq summary::after{content:'+';flex:0 0 26px;text-align:center;font-size:24px;line-height:1;color:var(--product-accent);font-weight:400}
.product-faq details[open] summary::after{content:'\2212'}
.product-faq details p{max-width:80ch;font-size:15px;margin:0;padding:0 50px 24px 0}
.product-related{margin:64px 0 28px}
.product-related>div{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.product-related a{display:flex;gap:16px;justify-content:space-between;align-items:center;min-height:80px;padding:20px;border:1px solid var(--product-line);border-radius:12px;background:#fff;text-decoration:none;color:var(--product-accent);font-size:14px;line-height:1.5}
.product-related a:hover{background:var(--product-soft);text-decoration:underline;text-underline-offset:4px}
.product-related a>span{flex-shrink:0}
.product-alternate{font-size:13px;text-align:right}
.product-alternate a{display:inline-flex;align-items:center;min-height:44px;color:var(--product-accent);text-underline-offset:4px}
.product-final{display:flex;gap:24px;align-items:center;justify-content:space-between;background:var(--product-soft);padding:36px;border-radius:18px;margin:32px 0 48px}
.product-final h2{font-size:1.9rem;margin:0}
.product-final>a{flex-shrink:0}
.product-shot-dialog{padding:14px;border:1px solid var(--product-line);border-radius:14px;width:min(1000px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto;overscroll-behavior:contain;background:#fff}
.product-shot-dialog::backdrop{background:#0c222acc;backdrop-filter:blur(4px)}
.product-shot-dialog>button{display:block;position:sticky;top:0;z-index:1;min-height:44px;padding:10px 16px;margin:0 0 14px auto;box-shadow:0 2px 12px #173b3c14;background:#fff}
.product-shot-dialog img{display:block;width:100%;height:auto}
html.product-shot-open{overflow:hidden}
.product-page :is(a,button,summary):focus-visible{outline:3px solid #bc704b;outline-offset:4px}
@media(max-width:1100px){.product-demo .product-menu-stage{grid-template-columns:1fr}.product-hero{padding:32px;gap:30px}.product-hero h1{font-size:clamp(2.15rem,4.2vw,3rem)}.product-final{flex-wrap:wrap}}
@media(max-width:800px){.product-hero{grid-template-columns:1fr;gap:30px}.product-hero-copy{max-width:630px}.product-hero h1{font-size:clamp(2.25rem,6vw,3.2rem)}.product-shot img{max-height:440px}.product-benefits{grid-template-columns:1fr;gap:24px;margin-bottom:48px}.product-benefits article{padding-top:20px}.product-how,.product-saved{grid-template-columns:1fr;gap:30px}.product-section{margin:56px 0}.product-related>div{grid-template-columns:1fr}.product-related a{min-height:68px}}
@media(max-width:600px){.product-breadcrumb{column-gap:10px;row-gap:0;margin-bottom:18px;font-size:12px}.product-hero{padding:26px 20px;border-radius:18px;gap:28px}.product-hero h1{font-size:clamp(1.95rem,8.5vw,2.65rem)}.product-lead{font-size:15px;line-height:1.75;margin-bottom:24px}.product-actions{align-items:stretch;gap:9px}.product-actions a{width:100%}.product-shot img{max-height:380px}.product-hero-image figcaption{padding:12px 14px}.product-section-nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px;margin:18px 0 30px;padding-bottom:16px}.product-section-nav a{padding:10px 8px;font-size:13px}.product-benefits{gap:22px}.product-benefits h3{font-size:18px}.product-section{margin:48px 0}.product-section h2{font-size:2rem}.product-saved{padding:26px 20px;border-radius:18px}.product-archive-visual{padding:22px 18px}.product-steps li{gap:14px}.product-plans{grid-template-columns:1fr;gap:16px}.product-plans article{padding:26px 22px}.product-demo .demo-section{padding:20px 14px;border-radius:14px}.product-faq summary{gap:14px;font-size:15px}.product-faq details p{padding-right:0}.product-final{display:block;padding:26px 22px}.product-final>a{margin-top:22px;width:100%}.product-shot-dialog{padding:12px}.product-page .button-icon{flex-shrink:0}}
@media(prefers-reduced-motion:reduce){.product-page *{scroll-behavior:auto}}
@media(forced-colors:active){.product-page a.product-primary{border:2px solid ButtonText}.product-page :is(a,button,summary):focus-visible{outline-color:Highlight}}
@media print{.product-section-nav,.product-shot-dialog,.product-demo,.product-actions,.product-final{display:none}.product-hero,.product-how,.product-saved{display:block;background:none}.product-hero-image{max-width:500px}.product-section{break-inside:avoid}}
