/* P19.25 bounded CSS segment: 09-hcsa-base.css */

/* HCSA TI 2.0 extension only. No inherited MEMM selectors or assets are rewritten. */
.nav .hcsa-nav-entry > a { color:#0d3c70; font-weight:800; background:#eaf2ff; border:1px solid rgba(52,109,187,.12); }
.nav .hcsa-nav-entry > a:hover,.nav .hcsa-nav-entry > a:focus-visible,.nav .hcsa-nav-entry > a[aria-current="page"] { background:#dce9fb; color:#103c76; }
.hcsa-featured { background:radial-gradient(circle at 76% 30%,rgba(250,167,109,.20),transparent 34%),linear-gradient(140deg,#f5f9ff 0%,#fff 57%,#f9f4f1 100%); color:#102a58; }
.hcsa-home-featured { padding:clamp(54px,7vw,105px) 0 clamp(50px,6vw,84px); }
.hcsa-product-hero { padding:24px 0 clamp(55px,7vw,92px); }
.hcsa-hero-layout { display:grid;grid-template-columns:minmax(0,1.04fr) minmax(0,.96fr);gap:clamp(18px,4vw,64px);align-items:center; }
.hcsa-hero-text { min-width:0;padding:18px 0 20px; }
.hcsa-eyebrow { display:inline-block;color:#d45b23;font-weight:850;font-size:.74rem;letter-spacing:.13em;text-transform:uppercase;line-height:1.4; }
.hcsa-featured h1 { font-size:clamp(2.5rem,4.7vw,4.25rem);line-height:1.08;letter-spacing:-.045em;color:#0b2251;hyphens:none;margin:18px 0 23px;max-width:17ch; }
.hcsa-product-hero h1 { max-width:16ch; }
.hcsa-intro { color:#435e85;font-size:clamp(1.05rem,1.6vw,1.19rem);line-height:1.64;max-width:62ch;margin:0; }
.hcsa-chip-list { display:flex;flex-wrap:wrap;gap:9px;margin:26px 0 0; }
.hcsa-chip-list span { display:inline-block;padding:7px 12px;border:1px solid #d5e3f6;background:rgba(255,255,255,.82);color:#224f91;font-size:.88rem;font-weight:760;border-radius:999px; }
.hcsa-hero-actions { display:flex;flex-wrap:wrap;gap:12px;margin-top:28px;align-items:center; }
.hcsa-featured .hcsa-hero-actions .btn { border-color:#122958;background:#122958;color:#fff; }
.hcsa-featured .hcsa-hero-actions .btn:hover { background:#1e5096;border-color:#1e5096; }
.hcsa-featured .hcsa-hero-actions .btn.secondary { border-color:#c9d9ed;background:#fff;color:#122958; }
.hcsa-featured .hcsa-hero-actions .btn.secondary:hover { background:#eef5fd;border-color:#9dbde5; }
.hcsa-hero-fine { margin:25px 0 0;max-width:54ch;font-size:.86rem;line-height:1.57;color:#67809b; }
.hcsa-hero-art { display:flex;flex-direction:column;align-items:center;justify-content:center;margin:0;min-width:0; }
.hcsa-hero-art img { display:block;width:auto;height:auto;max-height:580px;max-width:100%;object-fit:contain;filter:drop-shadow(0 16px 30px rgba(25,49,85,.08)); }
.hcsa-hero-art figcaption { color:#74879e;font-size:.77rem;line-height:1.4;text-align:center;margin-top:2px; }
.hcsa-memm-divider { background:#071e32;color:#d9ecf6;border-bottom:1px solid rgba(255,255,255,.12); }
.hcsa-memm-divider .wrap { display:flex;flex-wrap:wrap;align-items:center;gap:12px;padding:17px 0;font-size:.86rem; }
.hcsa-memm-divider span { color:#83a1b5;font-size:.72rem;text-transform:uppercase;letter-spacing:.11em;font-weight:800; }
.hcsa-memm-divider strong { font-weight:720; }
.r49-home .hero-r49 .hcsa-memm-secondary-title { color:#fff;font-size:clamp(2.5rem,4.3vw,3.9rem);letter-spacing:-.05em;line-height:1.12;margin:0 0 .55em; }
.hcsa-breadcrumbs { padding:23px 0 8px;font-size:.79rem;color:#6f82a1; }
.hcsa-breadcrumbs a { color:#284b86;text-decoration:none; }
.hcsa-breadcrumbs a:hover { text-decoration:underline; }
.hcsa-page { color:#15294f; }
.hcsa-modules-section { background:#fff;padding:clamp(66px,7vw,98px) 0 78px; }
.hcsa-modules-section h2,.hcsa-background-context h2,.hcsa-partner-section h2 { font-size:clamp(2rem,3.2vw,3rem);letter-spacing:-.04em;color:#112758;margin:16px 0 14px;hyphens:none; }
.hcsa-section-intro { color:#5c7291;max-width:76ch;margin:0 0 35px;line-height:1.62; }
.hcsa-module-gallery { display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;align-items:stretch; }
.hcsa-module-card { display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);align-items:center;gap:18px;min-width:0;min-height:420px;padding:24px 20px 13px 26px;border:1px solid #dfe8f4;border-radius:26px;background:linear-gradient(135deg,#fff,#f5f8fd);overflow:hidden; }
.hcsa-module-copy { min-width:0;align-self:center; }
.hcsa-module-index { display:block;margin-bottom:19px;color:#6683a5;letter-spacing:.13em;font-size:.7rem;font-weight:900; }
.hcsa-module-copy h3 { font-size:clamp(1.65rem,2.7vw,2.15rem);letter-spacing:-.04em;color:#122c65;margin:0 0 10px; }
.hcsa-module-copy strong { display:block;color:#355e9e;font-size:.97rem;line-height:1.3; }
.hcsa-module-copy p { color:#647c9d;font-size:.9rem;line-height:1.55;margin:15px 0 0; }
.hcsa-module-visual { min-width:0;display:flex;align-items:center;justify-content:center;height:410px; }
.hcsa-module-visual img { display:block;height:100%;max-width:100%;width:auto;object-fit:contain; }
.hcsa-module-visual--pair { gap:6px; }
.hcsa-module-visual--pair img { width:auto;max-width:49%;height:100%;object-fit:contain; }
.hcsa-module-card--2 { background:linear-gradient(135deg,#fff,#f4faf8);border-color:#dbece5; }
.hcsa-module-card--3 { background:linear-gradient(135deg,#fff,#f7f5fc);border-color:#e8e1f4; }
.hcsa-module-card--4 { background:linear-gradient(135deg,#fff,#fef6f8);border-color:#f4e2e9; }
.hcsa-proof-notice { color:#6b819b;max-width:85ch;border-left:3px solid #e59d76;padding:0 0 0 16px;margin:28px 0 0;font-size:.83rem;line-height:1.6; }
.hcsa-background-context { padding:clamp(50px,6vw,84px) 0;background:#f4f7fc;border-top:1px solid #e3eaf5; }
.hcsa-background-layout { display:grid;grid-template-columns:1.4fr .9fr;gap:50px;align-items:center; }
.hcsa-background-layout p { max-width:66ch;color:#516e8d;margin:0; }
.hcsa-context-chips { display:grid;grid-template-columns:repeat(2,1fr);gap:12px;align-items:center;max-width:410px;width:100%; }
.hcsa-context-chips span { padding:16px 10px;border:1px solid #dbe5f2;background:#fff;border-radius:15px;text-align:center;font-weight:850;color:#234579; }
.hcsa-context-chips small { grid-column:1/-1;text-align:center;margin-top:4px;padding:12px;border-radius:12px;background:#e8eef8;color:#536d8e;font-size:.78rem;font-weight:750; }
.hcsa-partner-section { padding:clamp(50px,6vw,85px) 0; }
.hcsa-partner-block { display:flex;align-items:center;justify-content:space-between;gap:40px;padding:clamp(25px,4vw,48px);background:linear-gradient(120deg,#f5f9ff,#fff);border:1px solid #dae7f5;border-radius:25px; }
.hcsa-partner-block h2 { margin-bottom:11px; }
.hcsa-partner-block p { color:#596f8a;max-width:65ch;margin:0; }
.hcsa-partner-block .btn { flex:0 0 auto; }
.hcsa-further-section { border-top:1px solid #e8edf4;background:#f9fbfd;padding:22px 0 36px; }
.hcsa-further-section p { color:#5e7393;font-size:.9rem;margin:0; }
.hcsa-further-section a { color:#2257a0;font-weight:800;text-underline-offset:3px; }
@media(max-width:1160px) {
  .hcsa-module-card { grid-template-columns:1fr;gap:7px;text-align:center;padding:24px 18px 12px; }
  .hcsa-module-copy p { max-width:35ch;margin-left:auto;margin-right:auto; }
  .hcsa-module-visual { height:350px; }
  .nav .hcsa-nav-entry > a { padding:8px; }
}
@media(max-width:820px) {
  .hcsa-hero-layout { grid-template-columns:1fr;gap:10px; }
  .hcsa-featured h1 { max-width:20ch; }
  .hcsa-hero-art img { max-height:520px; }
  .hcsa-module-gallery { grid-template-columns:1fr; }
  .hcsa-module-card { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);text-align:left;min-height:350px; }
  .hcsa-module-copy p { margin:15px 0 0; }
  .hcsa-module-visual { height:340px; }
  .hcsa-background-layout { grid-template-columns:1fr;gap:26px; }
}
@media(max-width:560px) {
  .hcsa-home-featured { padding:42px 0 54px; }
  .hcsa-featured h1 { font-size:clamp(2.15rem,10vw,2.8rem); }
  .hcsa-hero-text { padding-bottom:0; }
  .hcsa-hero-art img { max-height:460px; }
  .hcsa-hero-actions { align-items:stretch;flex-direction:column; }
  .hcsa-hero-actions .btn { width:100%; }
  .hcsa-module-card { grid-template-columns:1fr;text-align:center;padding:24px 18px 12px; }
  .hcsa-module-copy p { margin:14px auto 0; }
  .hcsa-module-visual { height:360px; }
  .hcsa-partner-block { flex-direction:column;align-items:stretch;gap:24px; }
  .hcsa-context-chips { max-width:none; }
}

/* HCSA product pages share the MEMM global header; the footer retains its own identity. */
.hcsa-footer-identity { display:flex;flex-direction:column;gap:4px;margin-bottom:12px; }
.hcsa-footer-identity strong { color:#fff;font-size:1.18rem; }
.hcsa-footer-identity span { color:#b7c8db;font-size:.87rem; }
/* HCSA R2: accessible click-to-enlarge images use the site's established dialog JS. */
.hcsa-screen-button { appearance:none;display:flex;align-items:center;justify-content:center;border:0;padding:0;margin:0;background:transparent;cursor:zoom-in;height:100%;width:auto;max-width:100%;min-width:0; }
.hcsa-screen-button img { display:block;object-fit:contain;height:100%;max-width:100%;width:auto; }
.hcsa-screen-button:focus-visible { outline:3px solid #1462be;outline-offset:3px;border-radius:16px; }
.hcsa-screen-button--hero { height:auto;max-width:100%; }
.hcsa-hero-art .hcsa-screen-button--hero img { height:auto;max-height:580px;max-width:100%; }
.hcsa-module-visual--pair .hcsa-screen-button { flex:0 1 49%;max-width:49%; }
.hcsa-module-visual--pair .hcsa-screen-button img { width:auto;max-height:100%; }
/* HCSA R2: readable small text on pale gradients (contrast subject to staging verification). */
.hcsa-eyebrow { color:#9f3e17; }
.hcsa-hero-fine,.hcsa-hero-art figcaption { color:#435873; }
.hcsa-module-index { color:#435a78; }
.hcsa-module-copy p { color:#425876; }
.hcsa-proof-notice { color:#405874; }
.hcsa-breadcrumbs { color:#445c7d; }
.hcsa-context-chips small { color:#435b7b; }
.hcsa-further-section p { color:#445c7d; }
/* HCSA R2: scoped evidence and contact sections. */
.hcsa-evidence-section { padding:clamp(54px,7vw,82px) 0;background:#f8fbff;border-top:1px solid #e3ebf7; }
.hcsa-evidence-section h2 { color:#112758;font-size:clamp(1.85rem,3.1vw,2.75rem);letter-spacing:-.037em;margin:15px 0 13px; }
.hcsa-evidence-table { border:1px solid #d7e3f2;border-radius:18px;overflow:hidden;background:#fff;max-width:990px; }
.hcsa-evidence-row { display:grid;grid-template-columns:1fr 1.15fr 1.7fr;gap:15px;align-items:center;padding:12px 19px;border-top:1px solid #e6edf6;font-size:.88rem;line-height:1.42; }
.hcsa-evidence-head { border-top:0;background:#eaf2fc;color:#224a7b;font-weight:800;font-size:.8rem; }
.hcsa-evidence-row strong { color:#102b5d; }
.hcsa-evidence-row > span { color:#425876; }
.hcsa-contact-entry { scroll-margin-top:115px;background:linear-gradient(115deg,#f0f6ff,#fff);border:1px solid #cadcf0;border-radius:18px;padding:26px;margin-bottom:28px; }
.hcsa-contact-entry h2 { color:#102a58;font-size:1.7rem;margin:10px 0 10px; }
.hcsa-contact-entry p { color:#405876;max-width:67ch; }
.hcsa-contact-entry small { display:block;margin-top:13px;color:#4a617f;font-size:.81rem; }
@media(max-width:820px) {
  .hcsa-hero-art .hcsa-screen-button--hero img { max-height:520px; }
  .hcsa-module-visual .hcsa-screen-button { max-height:100%; }
}
@media(max-width:560px) {
  .hcsa-hero-art .hcsa-screen-button--hero img { max-height:460px; }
  .hcsa-evidence-row { grid-template-columns:1fr;gap:3px;padding:14px 16px; }
  .hcsa-evidence-head { display:none; }
  .hcsa-evidence-row strong { font-size:1rem; }
  .hcsa-evidence-row span:nth-of-type(2)::before { content:'Live TI: ';font-weight:700; }
  .hcsa-contact-entry { padding:22px 18px; }
}
@media(prefers-reduced-motion:reduce) { .hcsa-screen-button img { transition:none; } }

/* HCSA R5: homepage HCSA now lives inside the MEMM hero; the old post-thesis card is removed. */
.nav .hcsa-nav-entry > a:not([aria-current="page"]) { background:transparent;border-color:transparent;font-weight:650; }

/* HCSA R4 — focus-route-only visual refresh. Existing MEMM and homepage components stay unchanged. */
.hcsa-page {
  --hcsa-deep:#081d35;
  --hcsa-ink:#102a49;
  --hcsa-muted:#516880;
  --hcsa-aqua:#42d2c5;
  --hcsa-border:#dce6ef;
  color:var(--hcsa-ink);
}
.hcsa-page section[id], .hcsa-page article[id] { scroll-margin-top:95px; }
.hcsa-page .hcsa-product-hero {
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:0 0 clamp(100px,10vw,148px);
  color:#fff;
  background:
    radial-gradient(ellipse 58% 67% at 86% 34%,rgba(32,137,158,.38),transparent 72%),
    radial-gradient(ellipse 39% 39% at 70% 95%,rgba(38,98,172,.27),transparent 75%),
    linear-gradient(120deg,#071a30 0%,#0b2a48 58%,#0b3448 100%);
}
.hcsa-page .hcsa-product-hero::before {
  content:"";position:absolute;inset:0;z-index:-1;pointer-events:none;opacity:.28;
  background-image:linear-gradient(rgba(169,223,229,.095) 1px,transparent 1px),linear-gradient(90deg,rgba(169,223,229,.095) 1px,transparent 1px);
  background-size:54px 54px;
  mask-image:linear-gradient(90deg,transparent 10%,#000 100%);
}
.hcsa-page .hcsa-product-hero::after {
  content:"";position:absolute;z-index:-1;pointer-events:none;right:-190px;bottom:-320px;width:670px;height:670px;
  border:1px solid rgba(112,232,218,.15);border-radius:50%;box-shadow:0 0 0 95px rgba(131,230,232,.025),0 0 0 190px rgba(131,230,232,.018);
}
.hcsa-page .hcsa-breadcrumbs {
  display:flex;align-items:center;gap:11px;padding:27px 0 14px;
  color:#b7cce0;font-size:.79rem;font-weight:650;
}
.hcsa-page .hcsa-breadcrumbs a { color:#dce9f4;text-decoration:none; }
.hcsa-page .hcsa-breadcrumbs a:hover { color:#fff;text-decoration:underline;text-underline-offset:4px; }
.hcsa-page .hcsa-breadcrumbs [aria-current="page"] { color:#8ee7dd; }
.hcsa-page .hcsa-hero-layout { position:relative;display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(30px,5vw,76px);align-items:center; }
.hcsa-page .hcsa-hero-text { min-width:0;padding:34px 0 26px; }
.hcsa-page .hcsa-kicker-row { display:flex;align-items:center;flex-wrap:wrap;gap:12px 17px; }
.hcsa-page .hcsa-eyebrow {color:#0a767b;letter-spacing:.145em;font-weight:800;font-size:.72rem;}
.hcsa-page .hcsa-product-hero .hcsa-eyebrow {color:#7ce9df;}
.hcsa-page .hcsa-concept-badge {display:inline-flex;gap:8px;align-items:center;border:1px solid rgba(136,240,230,.24);background:rgba(95,215,203,.08);border-radius:50px;padding:5px 12px;color:#ddfcf5;font-weight:750;font-size:.76rem;letter-spacing:.015em;}
.hcsa-page .hcsa-concept-badge span {display:block;width:6px;height:6px;border-radius:50%;background:#57dfce;box-shadow:0 0 0 3px rgba(77,222,205,.13);}
.hcsa-page .hcsa-product-hero h1 {color:#fff;max-width:14.5ch;font-size:clamp(3.15rem,5.2vw,5.2rem);font-weight:820;line-height:1.065;letter-spacing:-.061em;margin:29px 0 26px;}
.hcsa-page .hcsa-heading-accent {color:#86e5db;}
.hcsa-page .hcsa-intro {font-size:clamp(1.05rem,1.54vw,1.18rem);color:#c3d5e4;max-width:56ch;line-height:1.72;}
.hcsa-page .hcsa-chip-list {gap:9px;margin:27px 0 0;}
.hcsa-page .hcsa-chip-list a {display:inline-flex;align-items:center;gap:9px;padding:8px 12px;border:1px solid rgba(177,220,232,.25);border-radius:999px;background:rgba(255,255,255,.045);color:#eef9fc;text-decoration:none;font-size:.85rem;font-weight:750;transition:background .2s ease,border-color .2s ease,transform .2s ease;}
.hcsa-page .hcsa-chip-list a span {color:#91dcd9;font-size:.81rem;}
.hcsa-page .hcsa-chip-list a:hover,.hcsa-page .hcsa-chip-list a:focus-visible {background:rgba(116,225,217,.15);border-color:rgba(138,234,230,.6);transform:translateY(-2px);}
.hcsa-page .hcsa-hero-actions {display:flex;flex-wrap:wrap;gap:12px;margin-top:36px;}
.hcsa-page .hcsa-hero-actions .btn {min-height:51px;padding:14px 20px;border-radius:13px;background:#fff;border-color:#fff;color:#0a3044;font-size:.91rem;box-shadow:0 8px 28px rgba(0,0,0,.07);transition:background .2s ease,transform .2s ease;}
.hcsa-page .hcsa-hero-actions .btn:hover {background:#dffbf6;border-color:#dffbf6;color:#0a3044;transform:translateY(-2px);}
.hcsa-page .hcsa-hero-actions .btn.secondary {background:transparent;color:#e9f6fb;border:1px solid rgba(177,223,236,.35);box-shadow:none;}
.hcsa-page .hcsa-hero-actions .btn.secondary:hover {background:rgba(255,255,255,.09);border-color:#98e2de;color:#fff;}
.hcsa-page .hcsa-hero-fine {max-width:55ch;margin-top:26px;color:#b2ccdc;font-size:.81rem;line-height:1.55;}
.hcsa-page .hcsa-hero-art {position:relative;min-width:0;max-width:540px;width:100%;margin:12px auto 0;}
.hcsa-page .hcsa-art-stage {position:relative;width:100%;min-height:545px;padding:23px 19px 15px;border-radius:31px;background:linear-gradient(145deg,#fff 0%,#fff 62%,#f0f9fa 100%);box-shadow:0 33px 92px rgba(0,9,24,.34),inset 0 0 0 1px rgba(255,255,255,.9);overflow:hidden;}
.hcsa-page .hcsa-art-stage::before {content:"";position:absolute;width:230px;height:230px;right:-105px;top:76px;border:1px solid #d4f0f1;border-radius:50%;box-shadow:0 0 0 55px rgba(40,176,183,.028),0 0 0 111px rgba(40,176,183,.018);pointer-events:none;}
.hcsa-page .hcsa-art-toolbar {position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#577789;font-size:.64rem;letter-spacing:.11em;font-weight:850;text-transform:uppercase;}
.hcsa-page .hcsa-art-toolbar span:first-child {display:inline-flex;gap:9px;align-items:center;}
.hcsa-page .hcsa-art-toolbar i {width:8px;height:8px;border-radius:50%;display:inline-block;background:#31b9ad;box-shadow:0 0 0 4px rgba(49,185,173,.1);}
.hcsa-page .hcsa-art-screen {position:relative;z-index:1;display:flex;justify-content:center;align-items:center;width:100%;height:470px;margin-top:6px;}
.hcsa-page .hcsa-art-screen .hcsa-screen-button--hero {max-width:100%;max-height:100%;}
.hcsa-page .hcsa-art-screen .hcsa-screen-button--hero img {display:block;max-width:100%;height:auto;max-height:465px;width:auto;object-fit:contain;filter:none;}
.hcsa-page .hcsa-art-stamp {position:absolute;z-index:2;bottom:23px;right:22px;display:inline-flex;align-items:center;gap:8px;padding:9px 12px;border-radius:9px;background:#113d51;color:#e7fbf7;font-size:.69rem;font-weight:760;letter-spacing:.035em;box-shadow:0 8px 16px rgba(6,38,54,.15);}
.hcsa-page .hcsa-art-stamp-dot {width:6px;height:6px;background:#62e7d7;border-radius:50%;}
.hcsa-page .hcsa-hero-art figcaption {text-align:center;color:#bfd7e2;font-size:.73rem;line-height:1.55;margin-top:15px;}
.hcsa-page .hcsa-facts-section {position:relative;z-index:2;background:#fff;}
.hcsa-page .hcsa-facts-grid {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch;transform:translateY(-51px);margin-bottom:-51px;overflow:hidden;background:#fff;border:1px solid #dce8f0;border-radius:21px;box-shadow:0 20px 55px rgba(10,42,67,.1);}
.hcsa-page .hcsa-facts-grid>div {display:flex;gap:17px;align-items:center;min-width:0;padding:26px 28px;border-right:1px solid #e2edf3;}
.hcsa-page .hcsa-facts-grid>div:last-child {border-right:0;}
.hcsa-page .hcsa-fact-symbol {display:grid;place-items:center;flex:0 0 49px;width:49px;height:49px;background:#e5f7f6;color:#097c7d;border-radius:14px;font-size:1.1rem;font-weight:900;letter-spacing:-.06em;}
.hcsa-page .hcsa-facts-grid strong,.hcsa-page .hcsa-facts-grid small {display:block;}
.hcsa-page .hcsa-facts-grid strong {color:#132f47;font-size:.99rem;line-height:1.35;margin-bottom:3px;}
.hcsa-page .hcsa-facts-grid small {color:#5b7186;font-size:.79rem;line-height:1.4;}
.hcsa-page .hcsa-modules-section {padding:clamp(75px,8vw,125px) 0 clamp(85px,9vw,118px);background:#fff;}
.hcsa-page .hcsa-section-heading {display:grid;grid-template-columns:1.3fr .8fr;align-items:end;gap:40px;margin:0 0 34px;}
.hcsa-page .hcsa-section-heading h2,.hcsa-page .hcsa-evidence-section h2,.hcsa-page .hcsa-background-context h2,.hcsa-page .hcsa-partner-section h2 {color:#102c48;font-size:clamp(2.1rem,3.6vw,3.32rem);font-weight:800;line-height:1.15;letter-spacing:-.047em;margin:16px 0 0;}
.hcsa-page .hcsa-section-intro {color:#516b80;font-size:1.01rem;line-height:1.66;margin:0;max-width:65ch;}
.hcsa-page .hcsa-module-gallery {display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;}
.hcsa-page .hcsa-module-card {--hcsa-module-accent:#4278df;position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,.84fr) minmax(0,1.16fr);gap:12px;align-items:center;min-height:465px;padding:29px 16px 28px 28px;background:#fff;border:1px solid #dce8f2;border-radius:27px;box-shadow:0 12px 45px rgba(12,47,75,.044);overflow:hidden;transition:box-shadow .25s ease,transform .25s ease,border-color .25s ease;text-align:left;}
.hcsa-page .hcsa-module-card::before {content:"";position:absolute;z-index:-1;inset:0 40% 0 0;background:linear-gradient(115deg,rgba(235,246,255,.68),transparent 94%);pointer-events:none;}
.hcsa-page .hcsa-module-card::after {content:"";position:absolute;top:0;left:0;height:5px;width:76px;background:var(--hcsa-module-accent);border-radius:0 0 7px 0;}
.hcsa-page .hcsa-module-card:hover {border-color:#bbd8e6;box-shadow:0 21px 48px rgba(8,47,72,.115);transform:translateY(-4px);}
.hcsa-page .hcsa-module-card--2 {--hcsa-module-accent:#17a778;border-color:#d9eae5;}
.hcsa-page .hcsa-module-card--3 {--hcsa-module-accent:#8659d6;border-color:#e7e1f1;}
.hcsa-page .hcsa-module-card--4 {--hcsa-module-accent:#e97b58;border-color:#f0e3dc;}
.hcsa-page .hcsa-module-card--2::before {background:linear-gradient(115deg,#f0fbf5,transparent 94%);}
.hcsa-page .hcsa-module-card--3::before {background:linear-gradient(115deg,#f8f5ff,transparent 94%);}
.hcsa-page .hcsa-module-card--4::before {background:linear-gradient(115deg,#fff7f2,transparent 94%);}
.hcsa-page .hcsa-module-copy {position:relative;z-index:1;align-self:center;min-width:0;}
.hcsa-page .hcsa-module-topline {display:flex;flex-wrap:wrap;align-items:center;gap:9px;margin-bottom:24px;}
.hcsa-page .hcsa-module-index {font-size:.72rem;font-weight:850;letter-spacing:.15em;color:#506c83;margin:0;}
.hcsa-page .hcsa-module-state {font-size:.62rem;color:#395a6d;border:1px solid #d9e4ea;background:rgba(255,255,255,.68);border-radius:999px;padding:4px 8px;font-weight:800;letter-spacing:.025em;white-space:nowrap;}
.hcsa-page .hcsa-module-copy h3 {font-size:clamp(2.05rem,3vw,2.75rem);font-weight:850;color:#0e2b4a;letter-spacing:-.06em;margin:0 0 10px;line-height:1.08;overflow-wrap:anywhere;}
.hcsa-page .hcsa-module-copy strong {color:#1e547a;line-height:1.42;font-size:.99rem;font-weight:750;}
.hcsa-page .hcsa-module-copy p {font-size:.94rem;line-height:1.64;color:#506b80;margin:15px 0 0;max-width:30ch;}
.hcsa-page .hcsa-module-visual {position:relative;z-index:1;display:flex;justify-content:center;align-items:center;gap:6px;min-width:0;width:100%;height:408px;}
.hcsa-page .hcsa-module-visual .hcsa-screen-button {height:100%;width:auto;max-width:100%;flex:0 1 auto;}
.hcsa-page .hcsa-module-visual .hcsa-screen-button img {height:100%;width:auto;max-width:100%;object-fit:contain;filter:drop-shadow(0 7px 7px rgba(10,42,75,.06));}
.hcsa-page .hcsa-module-visual--pair {gap:5px;}
.hcsa-page .hcsa-module-visual--pair .hcsa-screen-button {max-width:49%;flex:0 1 49%;}
.hcsa-page .hcsa-module-visual--pair .hcsa-screen-button img {max-width:100%;max-height:100%;}
.hcsa-page .hcsa-screen-hint {position:absolute;right:1px;bottom:-15px;color:#53768e;font-size:.68rem;font-weight:700;white-space:nowrap;pointer-events:none;}
.hcsa-page .hcsa-proof-notice {margin:30px 0 0;padding:16px 19px 16px 21px;max-width:none;border:1px solid #e1ebf0;border-left:3px solid #31a7ab;border-radius:0 12px 12px 0;background:#f7fafb;color:#4a6375;line-height:1.58;font-size:.85rem;}
.hcsa-page .hcsa-evidence-section {background:#f2f7fa;border-block:1px solid #e2eaf0;padding:clamp(76px,8vw,113px) 0;}
.hcsa-page .hcsa-evidence-layout {display:grid;grid-template-columns:minmax(0,.74fr) minmax(0,1.26fr);align-items:start;gap:26px 58px;}
.hcsa-page .hcsa-evidence-intro {max-width:390px;}
.hcsa-page .hcsa-evidence-section h2 {font-size:clamp(2.1rem,3vw,2.95rem);margin-bottom:20px;}
.hcsa-page .hcsa-evidence-panel {border-radius:23px;background:#fff;border:1px solid #d8e6ed;box-shadow:0 15px 38px rgba(12,50,76,.055);overflow:hidden;min-width:0;}
.hcsa-page .hcsa-status-table {width:100%;border-collapse:collapse;table-layout:auto;text-align:left;}
.hcsa-page .hcsa-status-table caption.screen-reader-text {position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;}
.hcsa-page .hcsa-status-table thead {background:#102d49;color:#d9ecf5;}
.hcsa-page .hcsa-status-table thead th {padding:17px 17px;font-size:.69rem;letter-spacing:.035em;font-weight:750;line-height:1.45;}
.hcsa-page .hcsa-status-table tbody th,.hcsa-page .hcsa-status-table td {padding:20px 17px;border-bottom:1px solid #e6eef2;vertical-align:middle;line-height:1.45;}
.hcsa-page .hcsa-status-table tbody tr:last-child th,.hcsa-page .hcsa-status-table tbody tr:last-child td {border-bottom:0;}
.hcsa-page .hcsa-status-table tbody th {font-size:.95rem;color:#132f4b;font-weight:850;white-space:nowrap;}
.hcsa-page .hcsa-status-concept {display:inline-flex;align-items:center;gap:7px;color:#1e6576;font-size:.79rem;font-weight:740;}
.hcsa-page .hcsa-status-concept::before {content:"";width:7px;height:7px;background:#28adaf;border-radius:50%;flex:0 0 7px;}
.hcsa-page .hcsa-status-open {display:inline-block;border:1px solid #e3e8ed;background:#f3f6f8;border-radius:8px;padding:6px 8px;color:#495f72;font-size:.77rem;line-height:1.42;font-weight:700;}
.hcsa-page .hcsa-evidence-layout>.hcsa-proof-notice {grid-column:1/-1;margin-top:9px;}
.hcsa-page .hcsa-background-context {background:linear-gradient(155deg,#f8fbfc 5%,#e9f5f3 100%);padding:clamp(72px,8vw,113px) 0;border-top:0;}
.hcsa-page .hcsa-background-layout {grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;gap:clamp(34px,6vw,90px);}
.hcsa-page .hcsa-background-context h2 {max-width:18ch;margin-bottom:23px;}
.hcsa-page .hcsa-background-copy p {max-width:62ch;color:#4c6677;line-height:1.72;font-size:1rem;}
.hcsa-page .hcsa-context-chips {max-width:none;width:100%;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:28px;border:1px solid #d7e9e7;border-radius:26px;background:#fff;box-shadow:0 20px 54px rgba(12,81,80,.075);}
.hcsa-page .hcsa-context-chips .hcsa-context-label {grid-column:1/-1;display:block;width:100%;background:transparent;border:0;text-align:left;padding:0 0 9px;color:#608183;font-size:.72rem;letter-spacing:.13em;text-transform:uppercase;font-weight:850;}
.hcsa-page .hcsa-context-chips>span:not(.hcsa-context-label) {display:flex;align-items:center;justify-content:center;min-height:65px;background:#eef9f7;border:1px solid #d8efed;border-radius:13px;color:#1b6166;font-size:1.03rem;font-weight:850;}
.hcsa-page .hcsa-context-chips small {position:relative;grid-column:1/-1;display:block;margin-top:22px;padding:15px 10px 14px;background:#0f3847;border:0;border-radius:12px;color:#e7fcfa;font-size:.82rem;letter-spacing:.01em;font-weight:730;}
.hcsa-page .hcsa-context-chips small::before {content:"";position:absolute;left:50%;top:-23px;width:1px;height:22px;background:#82b9b3;}
.hcsa-page .hcsa-partner-section {padding:clamp(74px,8vw,112px) 0;background:#fff;}
.hcsa-page .hcsa-partner-block {position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:46px;background:linear-gradient(116deg,#071d35 0%,#0d3448 100%);border:0;border-radius:28px;padding:clamp(30px,5vw,61px);box-shadow:0 25px 56px rgba(6,42,67,.16);}
.hcsa-page .hcsa-partner-block::after {content:"";position:absolute;z-index:-1;right:-120px;top:-170px;width:460px;height:460px;border:1px solid rgba(135,238,232,.19);border-radius:50%;box-shadow:0 0 0 73px rgba(135,238,232,.028),0 0 0 147px rgba(135,238,232,.018);}
.hcsa-page .hcsa-partner-block .hcsa-eyebrow {color:#7ce4df;}
.hcsa-page .hcsa-partner-block h2 {color:#fff;font-size:clamp(2rem,3.1vw,3rem);max-width:21ch;}
.hcsa-page .hcsa-partner-block p {color:#c6dce5;line-height:1.71;margin-top:20px;max-width:60ch;}
.hcsa-page .hcsa-partner-block .btn {display:inline-flex;flex:0 0 auto;min-height:52px;align-items:center;justify-content:center;gap:15px;border-radius:12px;padding:14px 20px;background:#fff;color:#0c3545;border-color:#fff;white-space:nowrap;transition:transform .2s ease,background .2s ease;}
.hcsa-page .hcsa-partner-block .btn:hover {background:#ddfcf8;border-color:#ddfcf8;color:#0c3545;transform:translateY(-2px);}
.hcsa-page .hcsa-further-section {background:#f8fafb;border-top:1px solid #e5edf2;padding:25px 0 30px;}
.hcsa-page .hcsa-further-section p {color:#536a7c;font-size:.9rem;}
.hcsa-page .hcsa-further-section a {color:#086b75;text-decoration:underline;text-underline-offset:4px;}
.hcsa-page .hcsa-screen-button:hover img {filter:drop-shadow(0 11px 12px rgba(8,35,58,.11));}
.hcsa-page :where(a,button):focus-visible {outline:3px solid #60cfc4;outline-offset:4px;}
@media(max-width:1150px) {
  .hcsa-page .hcsa-hero-layout {grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:32px;}
  .hcsa-page .hcsa-product-hero h1 {font-size:clamp(2.7rem,5vw,4.3rem);}
  .hcsa-page .hcsa-art-stage {min-height:490px;}
  .hcsa-page .hcsa-art-screen {height:417px;}
  .hcsa-page .hcsa-art-screen .hcsa-screen-button--hero img {max-height:415px;}
  .hcsa-page .hcsa-module-card {grid-template-columns:1fr;gap:12px;padding:26px 23px 27px;min-height:600px;}
  .hcsa-page .hcsa-module-copy {align-self:start;}
  .hcsa-page .hcsa-module-topline {margin-bottom:14px;}
  .hcsa-page .hcsa-module-copy p {max-width:58ch;}
  .hcsa-page .hcsa-module-visual {height:350px;align-self:end;}
  .hcsa-page .hcsa-screen-hint {bottom:-16px;}
  .hcsa-page .hcsa-evidence-layout {gap:28px;grid-template-columns:1fr 1.4fr;}
  .hcsa-page .hcsa-facts-grid>div {padding:23px 19px;gap:12px;}
}
@media(max-width:880px) {
  .hcsa-page .hcsa-product-hero {padding-bottom:101px;}
  .hcsa-page .hcsa-hero-layout {grid-template-columns:1fr;gap:30px;}
  .hcsa-page .hcsa-hero-text {padding:23px 0 0;}
  .hcsa-page .hcsa-product-hero h1 {font-size:clamp(3.05rem,7.5vw,5rem);max-width:16ch;}
  .hcsa-page .hcsa-hero-art {max-width:550px;}
  .hcsa-page .hcsa-art-stage {min-height:535px;}
  .hcsa-page .hcsa-art-screen {height:460px;}
  .hcsa-page .hcsa-art-screen .hcsa-screen-button--hero img {max-height:460px;}
  .hcsa-page .hcsa-section-heading {grid-template-columns:1fr;gap:13px;}
  .hcsa-page .hcsa-module-gallery {grid-template-columns:1fr;}
  .hcsa-page .hcsa-module-card {grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);min-height:410px;padding:25px 21px 27px 29px;}
  .hcsa-page .hcsa-module-copy {align-self:center;}
  .hcsa-page .hcsa-module-visual {height:355px;align-self:center;}
  .hcsa-page .hcsa-evidence-layout {grid-template-columns:1fr;gap:25px;}
  .hcsa-page .hcsa-evidence-intro {max-width:670px;}
  .hcsa-page .hcsa-evidence-layout>.hcsa-proof-notice {margin-top:0;}
  .hcsa-page .hcsa-background-layout {grid-template-columns:1fr;gap:28px;}
  .hcsa-page .hcsa-context-chips {max-width:550px;}
  .hcsa-page .hcsa-partner-block {align-items:flex-start;flex-direction:column;gap:28px;}
}
@media(max-width:620px) {
  .hcsa-page .hcsa-breadcrumbs {padding:19px 0 0;}
  .hcsa-page .hcsa-hero-text {padding-top:23px;}
  .hcsa-page .hcsa-product-hero h1 {font-size:clamp(2.55rem,10.9vw,3.55rem);max-width:18ch;margin:23px 0 20px;}
  .hcsa-page .hcsa-intro {font-size:1rem;line-height:1.68;}
  .hcsa-page .hcsa-hero-actions {flex-direction:column;align-items:stretch;margin-top:28px;}
  .hcsa-page .hcsa-hero-actions .btn {width:100%;}
  .hcsa-page .hcsa-hero-fine {margin-top:19px;}
  .hcsa-page .hcsa-art-stage {min-height:470px;padding:19px 15px 11px;border-radius:23px;}
  .hcsa-page .hcsa-art-toolbar {font-size:.6rem;}
  .hcsa-page .hcsa-art-screen {height:399px;margin-top:5px;}
  .hcsa-page .hcsa-art-screen .hcsa-screen-button--hero img {max-height:395px;}
  .hcsa-page .hcsa-art-stamp {bottom:17px;right:16px;font-size:.64rem;}
  .hcsa-page .hcsa-hero-art figcaption {margin-top:10px;}
  .hcsa-page .hcsa-facts-grid {grid-template-columns:1fr;transform:translateY(-33px);margin-bottom:-33px;border-radius:16px;}
  .hcsa-page .hcsa-facts-grid>div {padding:14px 20px;border-right:0;border-bottom:1px solid #e4edf1;}
  .hcsa-page .hcsa-facts-grid>div:last-child {border-bottom:0;}
  .hcsa-page .hcsa-fact-symbol {width:42px;height:42px;flex-basis:42px;font-size:1rem;}
  .hcsa-page .hcsa-facts-grid strong {font-size:.92rem;}
  .hcsa-page .hcsa-facts-grid small {font-size:.78rem;}
  .hcsa-page .hcsa-modules-section {padding-top:64px;padding-bottom:72px;}
  .hcsa-page .hcsa-section-heading h2,.hcsa-page .hcsa-evidence-section h2,.hcsa-page .hcsa-background-context h2 {font-size:clamp(2rem,8vw,2.65rem);}
  .hcsa-page .hcsa-module-gallery {gap:18px;}
  .hcsa-page .hcsa-module-card {grid-template-columns:1fr;text-align:left;gap:14px;min-height:unset;padding:25px 20px 32px;}
  .hcsa-page .hcsa-module-topline {margin-bottom:15px;}
  .hcsa-page .hcsa-module-copy p {max-width:48ch;margin:11px 0 0;}
  .hcsa-page .hcsa-module-visual {height:360px;align-self:center;}
  .hcsa-page .hcsa-module-visual--pair {height:335px;}
  .hcsa-page .hcsa-screen-hint {bottom:-15px;}
  .hcsa-page .hcsa-proof-notice {font-size:.81rem;padding:14px 14px 14px 16px;}
  .hcsa-page .hcsa-evidence-section {padding:69px 0;}
  .hcsa-page .hcsa-status-table thead {display:none;}
  .hcsa-page .hcsa-status-table,.hcsa-page .hcsa-status-table tbody,.hcsa-page .hcsa-status-table tr,.hcsa-page .hcsa-status-table th,.hcsa-page .hcsa-status-table td {display:block;width:100%;}
  .hcsa-page .hcsa-status-table tbody tr {padding:14px 19px;border-bottom:1px solid #e3ebf0;}
  .hcsa-page .hcsa-status-table tbody tr:last-child {border-bottom:0;}
  .hcsa-page .hcsa-status-table tbody th,.hcsa-page .hcsa-status-table td {border:0;padding:4px 0;}
  .hcsa-page .hcsa-status-table tbody th {font-size:1.01rem;padding-bottom:7px;}
  .hcsa-page .hcsa-status-table td::before {content:attr(data-label);display:block;color:#62798b;font-size:.67rem;font-weight:800;text-transform:uppercase;letter-spacing:.06em;margin:0 0 3px;}
  .hcsa-page .hcsa-status-open {padding:4px 8px;}
  .hcsa-page .hcsa-background-context {padding:69px 0;}
  .hcsa-page .hcsa-context-chips {padding:20px;border-radius:19px;}
  .hcsa-page .hcsa-context-chips>span:not(.hcsa-context-label) {min-height:56px;}
  .hcsa-page .hcsa-partner-section {padding:66px 0;}
  .hcsa-page .hcsa-partner-block {padding:28px 23px;border-radius:22px;}
  .hcsa-page .hcsa-partner-block h2 {font-size:clamp(2.05rem,8vw,2.6rem);}
  .hcsa-page .hcsa-partner-block .btn {width:100%;white-space:normal;text-align:center;}
}
@media(max-width:400px) {
  .hcsa-page .hcsa-product-hero h1 {font-size:clamp(2.37rem,10.6vw,2.7rem);}
  .hcsa-page .hcsa-art-stage {min-height:414px;}
  .hcsa-page .hcsa-art-screen {height:343px;}
  .hcsa-page .hcsa-art-screen .hcsa-screen-button--hero img {max-height:340px;}
  .hcsa-page .hcsa-chip-list {gap:7px;}
  .hcsa-page .hcsa-chip-list a {padding:7px 10px;font-size:.81rem;}
  .hcsa-page .hcsa-module-visual {height:322px;}
  .hcsa-page .hcsa-module-visual--pair {height:300px;}
}
@media(prefers-reduced-motion:reduce) {
  .hcsa-page .hcsa-module-card,.hcsa-page .hcsa-chip-list a,.hcsa-page .hcsa-hero-actions .btn,.hcsa-page .hcsa-partner-block .btn {transition:none;transform:none!important;}
}

/* R4 final cascade corrections for inherited span pill styles. */
.hcsa-page .hcsa-chip-list a>span {display:inline;padding:0;margin:0;border:0;border-radius:0;background:transparent;color:#91dcd9;font-size:.84rem;font-weight:750;}
.hcsa-page .hcsa-art-screen {overflow:hidden;}
.hcsa-page .hcsa-art-screen .hcsa-screen-button--hero img {transform:scale(1.21);}
@media(max-width:620px) {.hcsa-page .hcsa-art-screen .hcsa-screen-button--hero img {transform:scale(1.26);}}
@media(prefers-reduced-motion:reduce) {.hcsa-page .hcsa-art-screen .hcsa-screen-button--hero img {transition:none;}}
/* Keep the source iPhone mockup entirely visible, including its top/bottom bezel. */
.hcsa-page .hcsa-art-screen .hcsa-screen-button--hero img {transform:none;}
@media(max-width:620px) {
  .hcsa-page .hcsa-art-screen .hcsa-screen-button--hero img {transform:none;}
  .hcsa-page .hcsa-module-card::before {inset:0 0 auto 0;height:240px;}
  .hcsa-page .hcsa-module-visual {height:349px;}
  .hcsa-page .hcsa-module-visual--pair {height:320px;}
  .hcsa-page .hcsa-screen-hint {bottom:-20px;right:0;}
}
@media(max-width:400px) {
  .hcsa-page .hcsa-module-visual {height:318px;}
  .hcsa-page .hcsa-module-visual--pair {height:297px;}
}
