/* T388 public promotion only; existing brand shell and typefaces stay in place. */
.cxy-promo-grid { display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:28px; }
.cxy-promo-grid>article { padding:28px;background:var(--cxy-surface-subtle,#F4F8FC);border-radius:18px;display:flex;flex-direction:column; }
.cxy-promo-grid h3 { color:var(--cxy-ink,#0B1F3A);font-size:22px;line-height:1.5;margin:0 0 14px;font-weight:700; }
.cxy-promo-grid p { color:var(--cxy-text,#24344D);font-size:16px;line-height:1.85;margin:0 0 20px; }
.cxy-promo-grid a,.cxy-promo-more a,.cxy-local-related a { color:var(--cxy-blue,#006ED6);line-height:1.8; }
.cxy-promo-grid>article>a { margin-top:auto; }
.cxy-demo-disclosure { color:var(--cxy-text-secondary,#4A5A70);font-size:14px;line-height:1.8;margin:-8px 0 30px;max-width:760px; }
.cxy-demo { min-width:0;margin:0;display:flex;flex-direction:column; }
.cxy-demo-screen { background:var(--cxy-white,#FFFFFF);padding:24px;border-radius:18px;min-height:364px;color:var(--cxy-text,#24344D);flex:1; }
.cxy-demo-top { display:flex;justify-content:space-between;gap:12px;font-size:13px;color:var(--cxy-text-secondary,#4A5A70);margin-bottom:24px; }
.cxy-demo-screen h3 { font-size:20px;margin-bottom:10px; }
.cxy-demo-screen .cxy-demo-sub { font-size:14px;line-height:1.7;min-height:48px;color:var(--cxy-text-secondary,#4A5A70);margin:0 0 18px; }
.cxy-demo-tasks { padding:0;margin:0;list-style:none;display:grid;gap:18px; }
.cxy-demo-tasks li { display:flex;align-items:flex-start;gap:12px;font-size:15px;line-height:1.6; }
.cxy-demo small { display:block;font-size:13px;line-height:1.6;color:var(--cxy-text-secondary,#4A5A70);margin-top:3px; }
.cxy-demo-dot { width:25px;height:25px;border-radius:50%;background:var(--cxy-surface-subtle,#F4F8FC);color:var(--cxy-blue,#006ED6);display:grid;place-items:center;flex:none;font-size:13px;font-weight:500; }
.cxy-demo-dot.is-done { color:var(--cxy-emerald-dark,#047857); }
.cxy-demo-foot { margin-top:22px;font-size:13px;color:var(--cxy-text-secondary,#4A5A70); }
.cxy-demo-progress { display:flex;gap:9px;font-size:13px;line-height:1.6;margin:0 0 16px;color:var(--cxy-blue,#006ED6); }
.cxy-demo-progress span { flex:1;border-bottom:3px solid var(--cxy-blue,#006ED6);padding-bottom:8px; }
.cxy-demo-progress span:last-child { color:var(--cxy-text-secondary,#4A5A70);border-color:var(--cxy-surface-subtle,#F4F8FC); }
.cxy-demo-file { display:flex;justify-content:space-between;align-items:center;gap:12px;font-size:15px;line-height:1.5;margin:12px 0;padding:10px 0; }
.cxy-demo-file b { color:var(--cxy-blue,#006ED6);font-size:20px; }
.cxy-demo-person { display:flex;gap:12px;align-items:center;margin-top:15px;font-size:15px;line-height:1.5; }
.cxy-demo-person i { font-style:normal;width:34px;height:34px;border-radius:50%;background:var(--cxy-surface-subtle,#F4F8FC);color:var(--cxy-blue,#006ED6);display:grid;place-items:center;flex:none; }
.cxy-demo figcaption { padding:22px 6px 0; }
.cxy-demo figcaption strong { font-size:20px;line-height:1.5;color:var(--cxy-ink,#0B1F3A); }
.cxy-demo figcaption p { margin:12px 0 0; }
.cxy-promo-more { margin-top:32px; }
.cxy-price-reading { padding-bottom:0; }
.cxy-price-reading h2 { font-size:28px;line-height:1.5;margin:0 0 24px; }
.cxy-price-reading ol { padding:0;list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;counter-reset:price; }
.cxy-price-reading li { counter-increment:price; }
.cxy-price-reading li:before { content:counter(price,decimal-leading-zero);display:block;font-size:20px;color:var(--cxy-blue,#006ED6);margin-bottom:10px; }
.cxy-price-reading strong,.cxy-price-reading span { display:block;font-size:16px;line-height:1.8; }
.cxy-price-reading strong { color:var(--cxy-ink,#0B1F3A);font-weight:700; }
.cxy-price-reading span { margin-top:6px;color:var(--cxy-text-secondary,#4A5A70);font-size:14px; }
.cxy-report-choice { display:block;margin:0 0 20px;font-size:14px;line-height:1.7;color:var(--cxy-text,#24344D); }
.cxy-report-choice select { display:block;max-width:100%;margin-top:8px;padding:10px 12px;font:inherit;color:inherit;background:var(--cxy-white,#FFFFFF);border:1px solid var(--cxy-text-secondary,#4A5A70);border-radius:8px; }
.cxy-local-related { margin-top:40px;padding:28px;background:var(--cxy-surface-subtle,#F4F8FC);border-radius:18px; }
.cxy-local-related h2 { font-size:24px;line-height:1.5;margin:0 0 14px; }
.cxy-local-related p,.cxy-local-related li { font-size:16px;line-height:1.8; }
.cxy-local-related ul { padding-left:20px;margin-top:18px; }
.cxy-local-related li+li { margin-top:10px; }
@media(max-width:1000px){.cxy-promo-grid{grid-template-columns:1fr;gap:34px}.cxy-demo{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:32px;align-items:center}.cxy-demo figcaption{padding:0}.cxy-demo-screen{min-height:0}.cxy-price-reading ol{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.cxy-demo{display:block}.cxy-demo figcaption{padding:20px 4px 0}.cxy-demo-screen{padding:22px}.cxy-demo-screen .cxy-demo-sub{min-height:0}.cxy-promo-grid>article{padding:24px}.cxy-promo-grid h3{font-size:20px}.cxy-price-reading ol{grid-template-columns:1fr;gap:24px}.cxy-local-related{padding:24px}.cxy-local-related h2{font-size:22px}}
@media print{.cxy-demo,.cxy-promo-grid>article{break-inside:avoid}.cxy-demo-screen{outline:1px solid var(--cxy-text-secondary,#4A5A70)}}

/* T390: annual-price article only; price data and consultation routing stay shared. */
.cxy-price-hero .cxy-hero-layout--aside{grid-template-columns:minmax(0,1fr) minmax(0,520px);gap:52px;align-items:center}
.cxy-price-hero .cxy-hero-copy{min-width:0}
.cxy-price-brief{background:var(--cxy-white,#FFFFFF);color:var(--cxy-ink,#0B1F3A);border-radius:18px;padding:26px 30px;min-width:0}
.cxy-price-brief-label{margin:0 0 10px;font-size:14px;line-height:1.5;font-weight:700;color:var(--cxy-blue,#006ED6)}
.cxy-price-brief dl{margin:0}
.cxy-price-brief-row{padding:14px 0;border-bottom:1px solid var(--cxy-border,#DFE7F0)}
.cxy-price-brief dt{display:flex;justify-content:space-between;align-items:baseline;gap:16px;font-size:16px;line-height:1.5;font-weight:700}
.cxy-price-brief dt span{white-space:nowrap;font-size:13px;font-weight:400}
.cxy-price-brief dt strong{font-size:25px;font-weight:700;color:var(--cxy-blue,#006ED6)}
.cxy-price-brief dd{margin:6px 0 0;font-size:14px;line-height:1.7;color:var(--cxy-text,#24344D)}
.cxy-price-brief-note{margin:14px 0;font-size:13px;line-height:1.7;color:var(--cxy-text-secondary,#4A5A70)}
.cxy-price-brief-actions{display:flex;align-items:center;flex-wrap:wrap;gap:14px}
.cxy-price-brief-actions>a:last-child{font-size:14px;color:var(--cxy-blue,#006ED6)}
#price-article-body{scroll-margin-top:100px}
@media(max-width:1000px){.cxy-price-hero .cxy-hero-layout--aside{grid-template-columns:1fr;gap:24px}.cxy-price-hero .cxy-hero-copy{max-width:100%}.cxy-price-hero{padding-bottom:32px}}
@media(min-width:601px) and (max-width:1000px){.cxy-price-hero.cxy-hero--reading{padding:120px 0 28px}.cxy-price-hero.cxy-hero--reading h1#page-title{font-size:32px;margin-bottom:12px}.cxy-price-hero .cxy-price-brief-row{padding:9px 0}.cxy-price-hero .cxy-price-brief{padding:20px 24px}.cxy-price-hero .cxy-hero-meta{margin-top:12px}}
@media(max-width:600px){
 .cxy-price-hero.cxy-hero--reading{padding:114px 0 24px}
 .cxy-price-hero.cxy-hero--reading h1#page-title{font-size:25px;line-height:1.45;margin-bottom:10px}
 .cxy-price-hero.cxy-hero--reading .cxy-hero-eyebrow{margin-bottom:8px}
 .cxy-price-hero.cxy-hero--reading .cxy-hero-lead{font-size:14px;line-height:1.7}
 .cxy-price-hero.cxy-hero--reading .cxy-hero-meta{margin-top:10px;font-size:12px}
 .cxy-price-hero .cxy-hero-layout--aside{gap:18px}
 .cxy-price-brief{padding:16px 18px;border-radius:14px}
 .cxy-price-brief-label{font-size:13px;margin-bottom:2px}
 .cxy-price-brief-row{padding:9px 0}
 .cxy-price-brief dt{font-size:15px;gap:8px}
 .cxy-price-brief dt strong{font-size:23px}
 .cxy-price-brief dd{font-size:13px;line-height:1.65;margin-top:4px}
 .cxy-price-brief-note{font-size:12px;line-height:1.6;margin:10px 0}
 .cxy-price-brief-actions{gap:10px}
 .cxy-price-brief-actions .ztc-btn-primary-pill{font-size:14px;padding:11px 18px}
 .cxy-price-brief-actions>a:last-child{font-size:13px}
}
@media print{.cxy-price-hero .cxy-hero-layout--aside{display:block}.cxy-price-brief{margin-top:20px;break-inside:avoid}.cxy-price-brief-actions{display:none}}
.cxy-resource-hero--guide .cxy-kw,.cxy-resource-card h3 .cxy-kw{display:inline-block;max-width:100%}
@media(max-width:600px){.cxy-resource-hero--guide h1#page-title{font-size:clamp(24px,6.6vw,28px);line-height:1.5;text-wrap:balance}.cxy-resource-hero--guide .cxy-hero-lead{font-size:16px;line-height:1.85;text-wrap:pretty}}
