/* Hallmark · macrostructure: Product Gallery / Sticky Process · theme: studied HemuMate / locked Hemu · nav: shared site · footer: shared site index */
/* Hallmark · pre-emit critique: P4 H4 E4 S5 R4 V3 · internal review; product-specific imagery and accents, shared interaction grammar */
.pd-page {--pd-ease:cubic-bezier(.16,1,.3,1);--pd-accent:var(--app-accent);--pd-shadow-ink:rgb(0 0 0 / 27%);--pd-backdrop:rgb(10 18 32 / 70%);--pd-soft:color-mix(in srgb,var(--app-accent) 7%,var(--app-canvas));}
.pd-tone-football {--app-accent:#315c42;--pd-accent:#315c42;--pd-soft:color-mix(in srgb,#b9e874 11%,var(--app-canvas));}
html[data-theme="dark"] .pd-tone-football {--app-accent:#b9e874;--pd-accent:#b9e874;}
.pd-page section[id] {scroll-margin-top:calc(var(--site-header-height,72px) + 88px)!important;}
.pd-page :is(h1,h2,h3,p,figure) {margin:0;}
.pd-page h2 {font:650 clamp(28px,3vw,43px)/1.45 var(--app-font);letter-spacing:-.04em;text-wrap:balance;}
.pd-reading-progress {position:fixed;inset:0 0 auto;z-index:140;height:2px;pointer-events:none;}
.pd-reading-progress span {display:block;height:100%;background:var(--pd-accent);transform:scaleX(0);transform-origin:left;}
.pd-sticky-bar {position:fixed;inset:var(--site-header-height,72px) 0 auto;z-index:85;padding:10px 0;background:color-mix(in srgb,var(--app-canvas) 94%,transparent);border-bottom:1px solid var(--app-line);backdrop-filter:blur(12px);}
.pd-sticky-bar > div {display:flex;align-items:center;justify-content:space-between;gap:16px;}
.pd-sticky-brand {display:flex;align-items:center;gap:12px;min-width:0;}
.pd-sticky-brand .app-icon {width:28px;height:28px;flex-basis:28px;border-radius:7px;}
.pd-sticky-brand strong {font-size:14px;white-space:nowrap;}
.pd-sticky-bar .app-button {min-height:38px;padding:7px 16px;}
.pd-hero {padding-block:36px 48px;}
.pd-hero .app-breadcrumb {margin-bottom:38px;}
.pd-hero-grid {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:48px;align-items:center;}
.pd-hero-copy {min-width:0;}
.pd-product-label {display:flex;align-items:center;gap:12px;color:var(--app-muted);font-size:12px;}
.pd-product-label .app-icon {width:40px;height:40px;flex-basis:40px;border-radius:10px;}
.pd-product-label small {display:block;margin-top:5px;font-size:11px;}
.pd-wordmark {font:750 clamp(36px,4vw,64px)/1.18 var(--app-font);letter-spacing:-.055em;padding-block:26px 18px;white-space:nowrap;}
.pd-wordmark > span > span {display:inline-block;}
.pd-tone-football .pd-wordmark {font-size:clamp(44px,5.6vw,82px);letter-spacing:-.035em;}
.pd-hero-headline {font:650 clamp(24px,2.8vw,36px)/1.5 var(--app-font);letter-spacing:-.03em;margin-bottom:18px!important;}
.pd-hero-headline br + * {color:var(--pd-accent);}
.pd-hero-summary {max-width:34em;font:400 15px/1.95 var(--app-font);color:var(--app-muted);}
.pd-hero-actions {display:flex;align-items:center;gap:12px 24px;flex-wrap:wrap;margin-top:26px;}
.pd-hero-actions .app-button {padding:13px 22px;min-height:48px;}
.pd-hero-stage {min-width:0;position:relative;perspective:1200px;}
.pd-stage-depth {transform-origin:center;}
.pd-screen-button {display:block;position:relative;width:100%;min-width:0;padding:0;background:transparent;border:0;color:var(--app-ink);border-radius:16px;cursor:zoom-in;}
.pd-screen {display:block;width:100%;transform-origin:center;border:1px solid var(--app-line);border-radius:14px;background:var(--app-surface);box-shadow:0 24px 60px -24px color-mix(in srgb,var(--pd-accent) 32%,transparent);overflow:clip;}
.pd-screen img {width:100%;height:auto;display:block;}
.pd-stage-zoom {position:absolute;bottom:14px;right:14px;width:36px;height:36px;display:grid;place-items:center;color:var(--app-ink);background:color-mix(in srgb,var(--app-surface) 96%,transparent);border:1px solid var(--app-line);border-radius:50%;font-size:20px;opacity:0;transform:translateY(6px);transition:opacity 250ms,transform 350ms var(--pd-ease);}
.pd-screen-button:is(:hover,:focus-visible) .pd-stage-zoom {opacity:1;transform:none;}
.pd-hero-stage figcaption {display:flex;justify-content:space-between;gap:16px;margin-top:18px;font-size:11px;color:var(--app-muted);}
.pd-scroll-cue {display:flex;width:max-content;align-items:center;gap:10px;margin:42px auto 0;color:var(--app-muted);font-size:11px;text-decoration:none;}
.pd-scroll-cue > span {display:block;font-size:18px;}
.pd-eyebrow {font-size:11px;letter-spacing:.07em;color:var(--pd-accent);margin-bottom:15px!important;}
.pd-intro {display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.75fr);gap:64px;align-items:center;padding-block:56px 64px;border-top:1px solid var(--app-line);}
.pd-intro > p {font-size:15px;line-height:2;color:var(--app-muted);}
.pd-interface-section {padding-block:64px;background:var(--pd-soft);}
.pd-section-heading {margin-bottom:30px;max-width:860px;}
.pd-section-heading > p:not(.pd-eyebrow) {margin-top:16px;font-size:14px;line-height:1.9;color:var(--app-muted);}
.pd-gallery {position:relative;padding:16px;border:1px solid var(--app-line);border-radius:20px;background:var(--app-surface);box-shadow:0 26px 68px -40px color-mix(in srgb,var(--app-ink) 32%,transparent);}
.pd-gallery-top {display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:16px;}
.pd-tabs {display:flex;min-width:0;}
.pd-tabs button {display:flex;align-items:center;gap:10px;font-size:13px;min-height:44px;}
.pd-tabs button > span {color:var(--app-muted);font-size:10px;}
.pd-icon-button {display:grid;place-items:center;width:44px;height:44px;flex:0 0 44px;border:1px solid var(--app-line);border-radius:50%;background:var(--app-surface);color:var(--app-ink);font-size:15px;cursor:pointer;transition:transform 300ms var(--pd-ease),border-color 250ms;}
.pd-icon-button:hover {transform:scale(1.06);border-color:var(--pd-accent);}
.pd-gallery-viewport {position:relative;overflow:clip;border:1px solid var(--app-line);border-radius:12px;background:var(--app-canvas);aspect-ratio:1.6;}
.pd-gallery-viewport .pd-screen-button {height:100%;border-radius:0;}
.pd-gallery-viewport img {display:block;width:100%;height:100%;object-fit:contain;background:var(--app-canvas);}
.pd-gallery-outgoing {position:absolute;inset:0;pointer-events:none;}
.pd-gallery-bottom {display:flex;justify-content:space-between;align-items:center;gap:24px;min-height:68px;padding-inline:8px;}
.pd-gallery-bottom > p {font-size:12px;line-height:1.9;color:var(--app-muted);}
.pd-gallery-bottom > span {flex-shrink:0;font:500 11px/1.6 var(--app-font);font-variant-numeric:tabular-nums;color:var(--pd-accent);}
.pd-gallery-progress {height:2px;background:var(--app-line);overflow:hidden;margin:0 8px 4px;}
.pd-gallery-progress > span {display:block;height:100%;background:var(--pd-accent);transform:scaleX(0);transform-origin:left;}
.pd-process {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:100px;padding-block:84px;position:relative;}
.pd-process-aside {position:sticky;top:calc(var(--site-header-height,72px) + 100px);align-self:start;}
.pd-process-aside > p:last-child {max-width:30em;font-size:13px;line-height:1.95;color:var(--app-muted);}
.pd-signature-wrap {width:min(100%,290px);margin-block:30px;}
.pd-signature {display:block;width:100%;height:auto;color:var(--pd-accent);}
.pd-signature path,.pd-signature rect,.pd-signature circle {stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round;}
.pd-signature-base {opacity:.25;}
.pd-signature-line {stroke-dasharray:100;stroke-dashoffset:100;}
.pd-signature circle:not(.pd-signature-base) {fill:var(--app-canvas);}
.pd-process-step {display:grid;grid-template-columns:44px minmax(0,1fr);gap:24px;padding-block:36px;border-top:1px solid var(--app-line);}
.pd-step-number {font:500 13px/2 var(--app-font);color:var(--app-muted);font-variant-numeric:tabular-nums;transition:color 350ms;}
.pd-process-step h3 {font-size:24px;line-height:1.5;letter-spacing:-.025em;transition:color 350ms;}
.pd-process-step p {margin-top:12px;font-size:14px;line-height:1.95;color:var(--app-muted);}
.pd-step-detail {display:block;margin-top:18px;font-size:12px;line-height:1.8;color:var(--app-muted);border-left:2px solid var(--app-line);padding-left:14px;transition:border-color 350ms;}
.pd-process-step.is-active :is(h3,.pd-step-number) {color:var(--pd-accent);}
.pd-process-step.is-active .pd-step-detail {border-color:var(--pd-accent);}
.pd-download-section {padding-block:68px;background:var(--pd-soft);border-block:1px solid var(--app-line);}
.pd-download-inner {display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:84px;align-items:start;}
.pd-download-section .pd-section-heading .app-icon {width:60px;height:60px;margin-bottom:24px;}
.pd-platform-tabs {display:flex;width:max-content;margin-bottom:20px;}
.pd-platform-tabs button {min-width:120px;min-height:44px;}
.pd-package-grid {grid-template-columns:minmax(0,1fr);margin-bottom:18px;}
.pd-package {background:var(--app-surface);padding:22px 24px;}
.pd-download-note {font-size:12px;line-height:1.95;color:var(--app-ink);margin-bottom:16px!important;}
.pd-faq {display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;padding-block:68px;}
.pd-faq details {border-bottom:1px solid var(--app-line);}
.pd-faq summary {display:flex;align-items:center;justify-content:space-between;gap:24px;min-height:74px;padding-block:22px;cursor:pointer;list-style:none;font-size:15px;line-height:1.7;font-weight:600;}
.pd-faq summary::-webkit-details-marker {display:none;}
.pd-faq summary > span {font-size:22px;color:var(--pd-accent);font-weight:300;transition:transform 320ms var(--pd-ease);}
.pd-faq details[open] summary > span {transform:rotate(45deg);}
.pd-faq-answer {display:grid;grid-template-rows:1fr;}
.pd-faq-answer-content {min-height:0;overflow:hidden;}
.pd-faq-answer-content > p {padding-bottom:24px;font-size:13px;line-height:2;color:var(--app-muted);}
.pd-product-end {display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;padding-block:24px 48px;border-top:1px solid var(--app-line);}
.pd-lightbox {width:min(94vw,1680px);max-width:none;max-height:94dvh;padding:16px;border:1px solid var(--app-line);border-radius:18px;background:var(--app-surface);color:var(--app-ink);box-shadow:0 30px 100px var(--pd-shadow-ink);}
.pd-lightbox::backdrop {background:var(--pd-backdrop);backdrop-filter:blur(7px);}
.pd-lightbox-toolbar {display:flex;align-items:center;justify-content:space-between;gap:24px;margin-bottom:14px;}
.pd-lightbox-toolbar > span {font-size:12px;color:var(--app-muted);}
.pd-lightbox img {display:block;width:auto;height:auto;max-width:100%;max-height:calc(94dvh - 130px);margin:auto;object-fit:contain;}
.pd-lightbox figcaption {margin-top:12px!important;font-size:12px;line-height:1.7;text-align:center;color:var(--app-muted);}
body:has(.pd-lightbox[open]) {overflow:hidden;}
.pd-page [hidden] {display:none!important;}
.pd-page [data-product-reveal].is-pending {opacity:0;}
@keyframes pd-letter-enter {from {opacity:0;transform:translateY(20px) rotate(4deg);}to {opacity:1;transform:none;}}
@keyframes pd-scroll-nudge {0%,70%,100% {transform:translateY(0);}85% {transform:translateY(5px);}}
@media(prefers-reduced-motion:no-preference) {
 .pd-wordmark > span > span {animation:pd-letter-enter 820ms var(--pd-ease) both;animation-delay:calc(80ms + var(--letter-order)*22ms);}
 .pd-scroll-cue > span {animation:pd-scroll-nudge 3.8s ease-in-out 3;}
}
@media(hover:none) {.pd-stage-zoom {opacity:1;transform:none;}}
@media(max-width:1100px) {.pd-hero-grid {gap:32px;}.pd-process {gap:56px;}.pd-download-inner {gap:48px;}.pd-faq {gap:48px;}.pd-hero-actions {gap:12px 20px;}}
@media(max-width:900px) {
 .pd-hero-grid {grid-template-columns:minmax(0,1fr);gap:36px;}.pd-hero-copy {max-width:620px;}.pd-wordmark {font-size:58px;}.pd-hero-summary {max-width:42em;}.pd-hero-stage {width:min(100%,800px);margin:auto!important;}.pd-hero .app-breadcrumb {margin-bottom:26px;}.pd-scroll-cue {margin-top:24px;}
 .pd-intro {gap:28px;grid-template-columns:minmax(0,1fr);padding-block:40px;}.pd-process {grid-template-columns:minmax(0,1fr);gap:30px;padding-block:56px;}.pd-process-aside {position:static;}.pd-signature-wrap {width:220px;margin-block:20px;}.pd-process-step {padding-block:26px;}
 .pd-download-inner,.pd-faq {grid-template-columns:minmax(0,1fr);gap:24px;}.pd-interface-section,.pd-download-section,.pd-faq {padding-block:46px;}.pd-section-heading {margin-bottom:24px;}
}
@media(max-width:600px) {
 .pd-hero {padding-top:24px;}.pd-hero .app-breadcrumb {margin-bottom:24px;}.pd-wordmark {font-size:clamp(30px,9.5vw,52px);padding-block:22px 14px;}.pd-tone-football .pd-wordmark {font-size:54px;}.pd-hero-headline {font-size:27px;}.pd-hero-summary {font-size:14px;}.pd-hero-actions {gap:12px 20px;}.pd-hero-actions .app-button {padding:12px 18px;}
 .pd-gallery {padding:10px;border-radius:14px;}.pd-gallery-top {gap:8px;flex-wrap:wrap;}.pd-tabs {flex:1 0 100%;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));}.pd-tabs button {padding:10px 8px;gap:6px;font-size:12px;min-width:0;justify-content:center;}.pd-tabs button > span {display:none;}.pd-gallery-top > .pd-icon-button {margin-left:auto;width:36px;height:36px;flex-basis:36px;font-size:13px;}
 .pd-gallery-bottom {gap:12px;padding-inline:2px;min-height:88px;}.pd-gallery-bottom > p {font-size:11px;}.pd-gallery-bottom > span {font-size:10px;}.pd-gallery-viewport {border-radius:8px;}.pd-stage-zoom {width:30px;height:30px;font-size:17px;bottom:8px;right:8px;}
 .pd-process-step {grid-template-columns:32px minmax(0,1fr);gap:16px;}.pd-process-step h3 {font-size:21px;}.pd-platform-tabs {width:100%;}.pd-platform-tabs button {min-width:0;flex:1;}.pd-package {padding:20px;}.pd-faq summary {font-size:14px;min-height:68px;}.pd-sticky-brand strong {font-size:12px;}.pd-sticky-brand {gap:8px;}.pd-sticky-bar .app-button {padding-inline:12px;font-size:12px;}.pd-lightbox {padding:12px;width:96vw;border-radius:12px;}
}
@media(prefers-reduced-motion:reduce) {.pd-page * {animation:none!important;transition:none!important;}.pd-page [data-product-reveal].is-pending {opacity:1;}.pd-signature-line {stroke-dashoffset:0;}.pd-stage-depth,.pd-screen {transform:none!important;}}

.pd-page :is(h1,h2,h3) {overflow-wrap:anywhere;min-width:0;}
.pd-page summary:focus-visible {outline:2px solid var(--app-focus);outline-offset:4px;}
.pd-page .pd-icon-button:active {transform:translateY(1px);}
.pd-gallery-bottom > p {max-width:65ch;}
