/* TOPDMS consumer core pages v2: one system, distinct App and Training compositions. */
:root{--consumer-ink:#17221f;--consumer-muted:#65716c;--consumer-line:#d7d8d2;--consumer-paper:#f7f5f0;--consumer-panel:#fffdf9;--consumer-accent:#2f61f5;--consumer-dark:#101b25}
body.app-public-page,body.training-data-page{color:var(--consumer-ink);background:var(--consumer-paper)}

/* App: editorial introduction followed by one governed product view. */
.app-public-shell{max-width:1320px;margin:0 auto;padding:clamp(54px,7vw,96px) clamp(20px,5vw,68px) clamp(76px,8vw,116px)}
.app-public-hero{display:grid;grid-template-columns:1fr;grid-template-areas:"copy" "visual";gap:38px;align-items:end}
.app-public-copy{grid-area:copy;display:grid;grid-template-columns:minmax(0,.9fr) minmax(320px,1.1fr);grid-template-areas:"eyebrow eyebrow" "title lead" "title actions";gap:10px clamp(34px,6vw,92px);align-items:start}
.app-public-copy .eyebrow{grid-area:eyebrow}.app-public-copy h1{grid-area:title;max-width:14ch;margin:0;font-size:clamp(42px,5vw,68px);line-height:.98;letter-spacing:-.052em;text-wrap:balance}.app-public-copy .legal-lead{grid-area:lead;max-width:38rem;margin:2px 0 0;font-size:clamp(17px,1.5vw,21px);line-height:1.6}.app-public-actions{grid-area:actions;margin-top:14px}
.app-public-visual{grid-area:visual;width:100%;margin:0;overflow:hidden;position:relative;border-radius:18px;background:#111b24;box-shadow:0 24px 62px rgba(21,30,27,.14)}.app-public-visual img{display:block;width:100%;aspect-ratio:16/9;object-fit:contain;background:#111b24}.app-public-preview{right:18px;bottom:18px}
.app-public-grid{margin-top:clamp(56px,7vw,92px);display:grid;grid-template-columns:minmax(0,1.25fr) minmax(280px,.75fr);gap:1px;border:1px solid var(--consumer-line);background:var(--consumer-line)}.app-public-grid section{min-height:0;padding:clamp(28px,4vw,48px);border:0;background:var(--consumer-panel)}.app-public-grid section:first-child{grid-row:span 2;min-height:440px;display:flex;flex-direction:column;justify-content:flex-end;background:#e7ecdf}.app-public-grid section:first-child .app-public-step{margin-bottom:auto}.app-public-grid h2{font-size:clamp(25px,2.6vw,38px)}.app-public-grid section:not(:first-child) h2{font-size:clamp(22px,2vw,30px)}.app-public-step{margin-bottom:26px;color:var(--consumer-accent)}
.app-public-availability{margin-top:22px;padding:22px 26px;grid-template-columns:minmax(180px,.3fr) 1fr;border:1px solid var(--consumer-line);border-left:3px solid var(--consumer-accent);background:transparent}

/* Training: product demonstration on the left, compact decision copy on the right. */
.training-data-page .site-header{min-height:72px}.training-data-page .training-data-hero{max-width:1320px;margin:0 auto;padding:clamp(46px,6vw,78px) clamp(20px,5vw,68px) clamp(82px,9vw,126px);display:grid;grid-template-columns:minmax(0,1.22fr) minmax(360px,.78fr);grid-template-areas:"visual copy";gap:clamp(34px,5vw,68px);align-items:center;background:transparent}.training-data-hero>div:first-child{grid-area:copy;width:auto;margin:0;padding:0;z-index:2;border:0;border-radius:0;background:transparent;box-shadow:none}.training-data-hero h1{max-width:15ch;margin:9px 0 16px;font-size:clamp(38px,4vw,56px);line-height:1;letter-spacing:-.05em}.training-data-hero>div:first-child>p:not(.eyebrow){max-width:650px;font-size:16px;line-height:1.65}.training-data-hero .hero-actions{margin-top:24px}.training-data-hero .training-photo{grid-area:visual;width:100%;margin:0;overflow:hidden;border-radius:18px;background:#111b24;box-shadow:0 24px 56px rgba(24,35,31,.12)}.training-data-hero .training-photo img{display:block;width:100%;height:auto;aspect-ratio:auto;object-fit:contain;background:#111b24}.training-data-hero .training-photo figcaption{padding:10px 14px;color:#dce3df;background:#111b24;font-size:11px}
.training-data-layers,.training-metric-contract,.training-lifecycle,.training-privacy-boundaries{padding:clamp(68px,8vw,106px) max(20px,calc((100vw - 1184px)/2))}.training-section-heading h2,.training-privacy-boundaries h2,.training-next-actions h2{font-size:clamp(31px,3.5vw,48px);line-height:1.08}.training-layer-grid{grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);gap:1px;border:1px solid var(--consumer-line);background:var(--consumer-line)}.training-layer-grid article{min-height:0;border:0;border-radius:0;background:var(--consumer-panel)}.training-layer-grid article:first-child{grid-row:span 3;min-height:430px;justify-content:flex-end;background:#e7ecdf}.training-layer-grid article:first-child span{margin-bottom:auto}.training-layer-grid article:not(:first-child){min-height:142px}.training-layer-grid article:not(:first-child) h3{margin:20px 0 8px}.training-metric-groups{grid-template-columns:1.08fr 1fr 1fr}.training-metric-groups article{min-height:360px}.training-next-actions{padding-inline:max(20px,calc((100vw - 1184px)/2))}

@media(max-width:860px){.app-public-copy,.app-public-grid{grid-template-columns:1fr}.app-public-copy{grid-template-areas:"eyebrow" "title" "lead" "actions";gap:12px}.app-public-copy h1{max-width:16ch}.app-public-grid section:first-child{grid-row:auto;min-height:330px}.training-data-page .training-data-hero{grid-template-columns:1fr;grid-template-areas:"copy" "visual"}.training-layer-grid{grid-template-columns:1fr}.training-layer-grid article:first-child{grid-row:auto;min-height:310px}.training-metric-groups{grid-template-columns:1fr}}
@media(max-width:560px){.app-public-shell{padding-top:38px}.app-public-copy h1{font-size:clamp(36px,11vw,46px)}.app-public-visual,.training-data-hero .training-photo{border-radius:12px}.app-public-preview{position:static;max-width:none;border-radius:0}.app-public-availability{grid-template-columns:1fr}.training-data-page .training-data-hero{padding-top:34px;padding-inline:18px}.training-data-hero h1{font-size:clamp(34px,10vw,43px)}.training-data-hero .hero-actions{display:grid}}
@media(prefers-reduced-motion:reduce){.app-public-page *,.training-data-page *{scroll-behavior:auto!important}}
