/* Hallmark 路 macrostructure: Product masthead + screenshot tour + long document (approved v2) 路 genre: atmospheric 路 theme: Midnight 路 tone: cinematic 路 anchor hue: rose 路 nav: N9 路 footer: Ft2 路 enrichment: supplied screenshots
 * pre-emit critique: P4 H4 E4 S5 R5 V4 路 Approved v2 typography; shared system across all pages; no added runtime dependencies. */

*{box-sizing:border-box}html,body{overflow-x:clip}html{scroll-behavior:smooth}body{margin:0;background:var(--color-paper);color:var(--color-ink);font:1rem/1.6 var(--font-body)}.wrap{width:calc(100% - 2rem);max-width:1160px;margin-inline:auto}a{color:inherit;text-decoration:none;white-space:nowrap}a:hover{text-decoration:underline;text-underline-offset:.3em}a:focus-visible,summary:focus-visible{outline:3px solid var(--color-accent);outline-offset:5px}a:active,summary:active{opacity:.75}a[aria-disabled=true],button:disabled{opacity:.5;cursor:not-allowed}img{display:block;width:100%;height:auto}figure,p,h1,h2,h3{margin:0}h1,h2,h3{font-family:var(--font-display);font-style:normal;overflow-wrap:anywhere;min-width:0}h2{font-size:clamp(1.8rem,3vw,2.5rem);line-height:1.15;letter-spacing:-.035em}h3{font-size:1.25rem;line-height:1.3}p{color:var(--color-muted)}.header{display:flex;align-items:center;justify-content:space-between;padding-block:var(--space-lg);gap:var(--space-md)}.brand{display:flex;gap:var(--space-sm);align-items:center;font-family:var(--font-display);font-size:1.3rem;font-weight:700;letter-spacing:-.03em}.brand img{width:40px;height:40px;border-radius:var(--radius-sm)}.nav-link{padding:var(--space-xs) var(--space-md);border:1px solid var(--color-rule);border-radius:var(--radius-sm);font-size:.9rem}.hero{padding-block:var(--space-xl) var(--space-2xl);display:grid;gap:var(--space-xl);align-items:center}.eyebrow{font-size:.8rem;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:var(--color-accent)}h1{font-size:clamp(2.75rem,6vw,4.75rem);line-height:1.04;letter-spacing:-.045em;margin-block:var(--space-md) var(--space-lg);font-weight:750}.lead{font-size:1.1rem}.actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-block:var(--space-lg) var(--space-md)}.button{display:inline-flex;min-height:48px;align-items:center;justify-content:center;padding:var(--space-sm) var(--space-lg);border:1px solid var(--color-rule);border-radius:var(--radius-sm);font-size:.95rem;font-weight:650;transition:transform var(--dur-micro) var(--ease-out)}.button:hover{transform:translateY(-2px);text-decoration:none}.button:active{transform:translateY(0)}.primary{background:var(--color-accent);color:var(--color-accent-ink);border-color:var(--color-accent)}.secondary{background:var(--color-clear)}.meta{font-size:.8rem}.meta span,.footer span{margin-inline:var(--space-xs)}.hero-image{display:grid;justify-items:center;gap:var(--space-xs)}.hero-image img{width:min(100%,330px);border-radius:var(--radius-md)}.hero-image figcaption{font-size:.8rem;color:var(--color-muted)}.tour{padding-block:var(--space-xl) var(--space-2xl)}.section-head{display:grid;gap:var(--space-sm);margin-bottom:var(--space-lg)}.gallery{display:grid;gap:var(--space-xl);grid-template-columns:minmax(0,1fr)}.gallery figure{min-width:0;display:grid;gap:var(--space-md);align-content:start}.gallery img{border-radius:var(--radius-md);width:100%}.gallery figcaption{display:grid;gap:var(--space-xs)}.gallery figcaption p{font-size:.95rem}.controls{background:var(--color-surface);padding-block:var(--space-2xl)}.control-list{display:grid;gap:var(--space-lg);margin-top:var(--space-lg)}.control-list p{margin-top:var(--space-xs)}.questions{padding-block:var(--space-2xl)}.questions h2{margin-bottom:var(--space-lg)}details{border-bottom:1px solid var(--color-rule);padding-block:var(--space-md)}summary{cursor:pointer;font-weight:600;min-height:32px;padding-inline-end:var(--space-md)}summary:hover{color:var(--color-accent)}details p{padding-top:var(--space-sm)}.download{display:grid;gap:var(--space-lg);padding-block:var(--space-lg) var(--space-2xl)}.download h2{margin-block:var(--space-sm)}.download-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);align-content:center}.footer{border-top:1px solid var(--color-rule);padding-block:var(--space-lg);display:flex;gap:var(--space-sm) var(--space-xl);justify-content:space-between;flex-wrap:wrap;font-size:.8rem}.skip{position:absolute;top:var(--space-sm);left:var(--space-md);padding:var(--space-sm);background:var(--color-ink);color:var(--color-paper);transform:translateY(-200%)}.skip:focus{transform:none}
@media(min-width:40rem){.wrap{width:calc(100% - 4rem)}.hero{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:var(--space-2xl)}.gallery{grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-lg)}.control-list{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-xl)}.download{grid-template-columns:minmax(0,1fr) auto;gap:var(--space-xl)}}
@media(min-width:60rem){.hero{padding-block:var(--space-lg) var(--space-xl)}.intro{padding-block:var(--space-lg)}.hero-image img{width:300px}.tour{padding-top:var(--space-lg)}.gallery{gap:var(--space-xl)}.gallery img{max-height:530px;object-fit:contain;object-position:left}.download-actions{align-items:center}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.button:hover,.button:active{transform:none}}

/* Homepage revision 2 路 product masthead + full-length app introduction. */
.product-hero{display:flex;flex-direction:column;align-items:stretch;gap:var(--space-lg);padding-block:var(--space-lg) var(--space-xl)}
.product-heading{display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-md)}
.product-heading>div{min-width:0}.product-icon{width:72px;height:72px;border-radius:var(--radius-md)}
.product-heading h1{display:flex;align-items:center;flex-wrap:wrap;gap:var(--space-sm);margin:var(--space-xs) 0 0;font-size:clamp(2.65rem,8vw,6.5rem);line-height:1.08;letter-spacing:-.055em}
.product-heading .eyebrow{font-size:.75rem;letter-spacing:.06em}.file-label{font-family:var(--font-body);font-size:.85rem;letter-spacing:.04em;font-weight:600;border:1px solid var(--color-rule);border-radius:var(--radius-sm);padding:var(--space-xs) var(--space-sm);color:var(--color-muted)}
.product-intro{display:grid;gap:var(--space-md)}.product-intro h2{font-size:clamp(1.65rem,3vw,2.25rem);line-height:1.2;letter-spacing:-.025em}.product-intro p{font-size:1.05rem}
.product-download{display:flex;flex-direction:column;gap:var(--space-lg);padding-block:var(--space-lg);border-block:1px solid var(--color-rule)}
.app-facts{display:flex;flex-wrap:wrap;gap:var(--space-lg) var(--space-xl);margin:0}.app-facts div{display:grid;gap:var(--space-xs)}.app-facts dt{font-size:.78rem;color:var(--color-muted)}.app-facts dd{margin:0;font-size:.95rem;font-weight:600;font-variant-numeric:tabular-nums}.product-download .actions{margin:0;align-items:center}
.about-link{align-self:flex-start;font-size:.9rem;text-decoration:underline;text-underline-offset:.3em;min-height:44px;display:flex;align-items:center}
.app-details{padding-block:var(--space-lg) var(--space-2xl);scroll-margin-block-start:var(--space-lg)}.app-details .section-head{margin-bottom:var(--space-lg)}.details-body h3{font-size:clamp(1.3rem,2.4vw,1.7rem);margin-block:var(--space-xl) var(--space-sm);letter-spacing:-.02em}.details-body h3:first-child{margin-top:0}.details-body p{margin-block:var(--space-sm);line-height:1.75}.details-body p:last-child{margin-bottom:0}
@media(min-width:40rem){.product-heading{flex-direction:row;align-items:center;gap:var(--space-lg)}.product-icon{width:96px;height:96px}.product-intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:var(--space-xl);align-items:center}.app-facts{gap:var(--space-xl)}}
@media(min-width:60rem){.product-hero{gap:var(--space-xl);padding-block:var(--space-lg) var(--space-xl)}.product-heading h1{font-size:6rem}.product-intro{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr)}.product-download{flex-direction:row;justify-content:space-between;align-items:center;gap:var(--space-lg)}.app-details{padding-top:var(--space-xl)}}

/* Shared document and footer styles preserve the approved content container. */
.nav-link{display:inline-flex;align-items:center;min-height:44px}
.footer{align-items:center}.footer-menu{display:flex;flex-wrap:wrap;gap:var(--space-xs) var(--space-lg);align-items:center}.footer-menu a,.back-link{display:inline-flex;align-items:center;min-height:44px}.footer-menu a[aria-current=page],.nav-link[aria-current=page]{text-decoration:underline;text-underline-offset:.3em}
.document{padding-block:var(--space-lg) var(--space-2xl)}.document-heading{display:grid;gap:var(--space-md);margin-block:var(--space-md) var(--space-xl)}.document-heading h1{font-size:clamp(2.1rem,5vw,3.5rem);line-height:1.12;margin:0;letter-spacing:-.035em}.document-body h2{font-size:clamp(1.5rem,3vw,2rem);margin-block:var(--space-xl) var(--space-md)}.document-body h3{margin-block:var(--space-lg) var(--space-sm)}.document-body p{margin-block:var(--space-md);line-height:1.75}.document-body a:not(.button){text-decoration:underline;text-underline-offset:.2em;white-space:nowrap;overflow-wrap:anywhere}.document-body ul,.document-body ol{padding-inline-start:var(--space-lg);margin-block:var(--space-md)}.document-body li{margin-block:var(--space-sm);color:var(--color-muted);line-height:1.75}.document-body strong{color:var(--color-ink)}.document-body code{font:inherit;overflow-wrap:anywhere;color:var(--color-ink)}.download-facts{padding-block:var(--space-md);border-block:1px solid var(--color-rule)}.back-link{text-decoration:underline;text-underline-offset:.25em}.actions{align-items:center}.controls{color:var(--color-ink)}summary{min-height:44px}


