/* P19.25 bounded CSS segment: 09-hcsa-home.css */
/* HCSA R5 / Homepage hero composition. Scoped: does not alter the dedicated HCSA product pages. */
.r49-home .hero-grid-r49 { align-items:start; }
.r49-home .hero-right-rail {
  display:flex;
  flex-direction:column;
  position:relative;
  min-width:0;
  padding-top:44px;
}
.r49-home .hero-right-rail > .hero-visual-r49 { width:100%;min-width:0; }
.r49-home .hcsa-hero-spotlight {
  position:relative;
  isolation:isolate;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(172px,222px);
  align-items:center;
  gap:14px;
  width:calc(100% - 32px);
  min-width:0;
  margin:-13px 16px 0;
  padding:22px 14px 17px 25px;
  border:1px solid rgba(128,225,216,.28);
  border-radius:22px;
  color:#e9f8ff;
  background:radial-gradient(circle at 88% 5%,rgba(69,201,188,.15),transparent 39%),linear-gradient(124deg,rgba(26,64,84,.85),rgba(7,35,58,.70));
  -webkit-backdrop-filter:blur(18px);
  backdrop-filter:blur(18px);
  box-shadow:0 22px 52px rgba(0,11,27,.18),inset 0 1px 0 rgba(240,255,255,.09);
  overflow:hidden;
}
.r49-home .hcsa-hero-spotlight:before {
  content:"";
  position:absolute;
  inset:0 auto auto 0;
  width:5px;
  height:100%;
  background:linear-gradient(180deg,#ff9658 0%,#f0c3a7 50%,#3bc4c2 100%);
  border-radius:22px 0 0 22px;
}
.r49-home .hcsa-hero-spotlight__copy { position:relative;z-index:1;min-width:0; }
.r49-home .hcsa-hero-spotlight__eyebrow {
  display:inline-flex;align-items:center;gap:8px;
  font-size:.66rem;line-height:1.45;letter-spacing:.12em;text-transform:uppercase;font-weight:850;color:#afd0db;
}
.r49-home .hcsa-hero-spotlight__spark { display:grid;place-items:center;width:24px;height:24px;background:rgba(255,174,110,.13);border:1px solid rgba(255,174,110,.21);border-radius:8px;color:#ffc28f;font-size:.89rem;letter-spacing:normal; }
.r49-home .hcsa-hero-spotlight h2 { margin:12px 0 8px;color:#f3fbff;font-size:clamp(1.65rem,2.3vw,2.15rem);letter-spacing:-.048em;line-height:1.12; }
.r49-home .hcsa-hero-spotlight p { margin:0;color:#c0d4e0;font-size:.83rem;line-height:1.54;max-width:33ch; }
.r49-home .hcsa-hero-spotlight__link {
  display:inline-flex;align-items:center;gap:8px;
  margin-top:15px;
  color:#8fe9df;
  text-decoration:none;font-size:.84rem;line-height:1.3;font-weight:850;
  border-bottom:1px solid rgba(143,233,223,.55);
  padding-bottom:4px;
  transition:border-color .2s,color .2s;
}
.r49-home .hcsa-hero-spotlight__link:hover { color:#fff;border-color:#fff; }
.r49-home .hcsa-hero-spotlight__link:focus-visible,
.r49-home .hcsa-hero-spotlight .hcsa-screen-button:focus-visible { outline:3px solid #a1f8eb;outline-offset:4px;border-radius:8px; }
.r49-home .hcsa-hero-spotlight__link span { font-size:1.06rem; }
.r49-home .hcsa-hero-spotlight__phones {
  position:relative;
  z-index:1;
  margin:0;
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
}
.r49-home .hcsa-hero-spotlight__phone-stage {
  position:relative;
  display:flex;
  align-items:flex-end;
  justify-content:center;
  gap:8px;
  width:100%;
  min-height:196px;
}
.r49-home .hcsa-hero-spotlight__phone-stage:before { content:"";position:absolute;top:10%;right:6%;width:86%;aspect-ratio:1;border-radius:50%;background:rgba(58,186,181,.22);filter:blur(24px);z-index:-1; }
.r49-home .hcsa-hero-spotlight__device {
  position:relative;
  min-width:0;
  display:flex;
  align-items:flex-end;
  justify-content:center;
}
.r49-home .hcsa-hero-spotlight__device--home { z-index:2; }
.r49-home .hcsa-hero-spotlight__device--video { z-index:1; margin-left:-2px; }
.r49-home .hcsa-hero-spotlight__phones .hcsa-screen-button { width:100%;height:auto;max-width:88px; }
.r49-home .hcsa-hero-spotlight__phones .hcsa-screen-button img {
  width:100%;height:auto;max-height:186px;object-fit:contain;
  border-radius:8px;
  filter:drop-shadow(0 11px 16px rgba(0,11,20,.30));
}
.r49-home .hcsa-hero-spotlight__phones figcaption { color:#adcbd7;font-size:.61rem;line-height:1.3;text-align:center;margin-top:2px;white-space:nowrap; }
/* At tablet/mobile widths, lead with the app concept; keep MEMM's architecture beneath it. */
@media(max-width:1000px) {
  .r49-home .hero-right-rail { padding-top:0;gap:20px; }
  .r49-home .hero-right-rail > .hcsa-hero-spotlight { order:-1; width:100%;margin:0; }
  .r49-home .hero-right-rail > .hero-visual-r49 { order:2; }
  .r49-home .hcsa-hero-spotlight { grid-template-columns:minmax(0,1fr) minmax(184px,246px);padding:25px 26px 21px 34px; }
  .r49-home .hcsa-hero-spotlight h2 { font-size:2rem; }
  .r49-home .hcsa-hero-spotlight p { max-width:48ch;font-size:.94rem; }
  .r49-home .hcsa-hero-spotlight__phone-stage { min-height:214px; gap:10px; }
  .r49-home .hcsa-hero-spotlight__phones .hcsa-screen-button { max-width:96px; }
  .r49-home .hcsa-hero-spotlight__phones .hcsa-screen-button img { max-height:206px; }
}
@media(max-width:620px) {
  .r49-home .hero-right-rail { gap:18px; }
  .r49-home .hcsa-hero-spotlight { grid-template-columns:minmax(0,1fr) 132px;gap:6px;padding:20px 10px 17px 20px;min-height:205px; }
  .r49-home .hcsa-hero-spotlight__eyebrow { font-size:.58rem;letter-spacing:.09em;gap:5px; }
  .r49-home .hcsa-hero-spotlight__spark { width:20px;height:20px;border-radius:6px; }
  .r49-home .hcsa-hero-spotlight h2 { font-size:clamp(1.45rem,6vw,1.88rem);margin:9px 0 7px; }
  .r49-home .hcsa-hero-spotlight p { font-size:.79rem;line-height:1.5; }
  .r49-home .hcsa-hero-spotlight__link { font-size:.77rem;margin-top:11px; }
  .r49-home .hcsa-hero-spotlight__phone-stage { min-height:168px; gap:4px; }
  .r49-home .hcsa-hero-spotlight__phones .hcsa-screen-button { max-width:62px; }
  .r49-home .hcsa-hero-spotlight__phones .hcsa-screen-button img { max-height:158px; }
  .r49-home .hcsa-hero-spotlight__phones figcaption { font-size:.56rem;white-space:normal; }
}
@media(max-width:360px) {
  .r49-home .hcsa-hero-spotlight { grid-template-columns:minmax(0,1fr) 108px;padding:17px 8px 15px 17px; }
  .r49-home .hcsa-hero-spotlight__phone-stage { min-height:146px; gap:3px; }
  .r49-home .hcsa-hero-spotlight__phones .hcsa-screen-button { max-width:50px; }
  .r49-home .hcsa-hero-spotlight__phones .hcsa-screen-button img { max-height:137px; }
  .r49-home .hcsa-hero-spotlight p { font-size:.75rem; }
}
@media(prefers-reduced-motion:reduce) { .r49-home .hcsa-hero-spotlight__link { transition:none; } }

/* R5: fit the architectural console into the narrower two-column tablet hero. */
@media(min-width:1001px) and (max-width:1180px) {
  .r49-home .hero-grid-r49 { gap:36px; }
  .r49-home .console-stage {
    grid-template-columns:minmax(0,.95fr) minmax(142px,1.4fr) minmax(0,.95fr);
    gap:7px;
    padding:19px 12px 21px;
  }
  .r49-home .console-rail { display:none; }
  .r49-home .console-core { padding:10px 6px; }
  .r49-home .console-node { padding:11px 8px; }
  .r49-home .console-node strong { font-size:.72rem; }
  .r49-home .console-node small { font-size:.59rem; }
  .r49-home .core-node { grid-template-columns:25px minmax(0,1fr);column-gap:6px;padding:9px 4px; }
  .r49-home .core-node>span { width:25px;height:26px; }
  .r49-home .core-node strong { font-size:.70rem; }
  .r49-home .core-node small { font-size:.58rem; }
}
/* The global header should not overflow on narrow phones. */
@media(max-width:360px) {
  .topbar .navrow { gap:8px; }
  .topbar .brand { gap:7px; }
  .topbar .brand-mark { width:36px;height:36px;font-size:1rem; }
  .topbar .brand-copy strong { font-size:.89rem; }
  .topbar .language-switch a { min-width:26px;padding-inline:4px; }
  .topbar .nav-toggle { padding:7px 9px; }
}


/* HCSA R6: clean handset renders + glass lightbox; legacy MEMM lightbox is unchanged. */
.lightbox.lightbox--hcsa {
  background:rgba(3,15,29,.83);
  -webkit-backdrop-filter:blur(11px);
  backdrop-filter:blur(11px);
}
.lightbox--hcsa figure { background:transparent;border:0;box-shadow:none; }
.lightbox--hcsa figure img { background:transparent;border-radius:0;filter:drop-shadow(0 22px 36px rgba(0,0,0,.3)); }
.lightbox--hcsa > button {
  background:rgba(20,44,62,.86);
  border:1px solid rgba(194,235,238,.42);
  color:#fff;
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  box-shadow:0 4px 24px rgba(0,0,0,.22);
}
.lightbox--hcsa > button:hover { background:#24506a; }
@media(prefers-reduced-motion:reduce) { .lightbox.lightbox--hcsa { -webkit-backdrop-filter:none;backdrop-filter:none; } }


/* Homepage rail: HCSA leads; keep the diagram's original vertical separation. */
@media(min-width:1001px) {
  .r49-home .hero-right-rail > .hcsa-hero-spotlight {
    width:100%;
    margin:0;
  }
  .r49-home .hero-right-rail > .hero-visual-r49.itl-ti20-hero {
    margin-top:26px;
  }
}

/* R7: replace the HCSA product hero's white mockup panel with dark,
   lightly translucent glass. Alpha-cut handset images remain untouched. */
.hcsa-page .hcsa-art-stage {
  background:radial-gradient(circle at 78% 25%,rgba(68,193,188,.11),transparent 52%),
             linear-gradient(138deg,rgba(31,94,112,.25),rgba(7,35,58,.13));
  border:1px solid rgba(155,230,226,.17);
  box-shadow:0 18px 65px rgba(0,9,24,.13),inset 0 1px 0 rgba(220,255,252,.05);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
}
.hcsa-page .hcsa-art-stage::before {
  border-color:rgba(111,220,217,.19);
  box-shadow:0 0 0 55px rgba(40,176,183,.025),0 0 0 111px rgba(40,176,183,.015);
}
.hcsa-page .hcsa-art-toolbar { color:#b5d6e1; }
.hcsa-page .hcsa-art-toolbar i { box-shadow:0 0 0 4px rgba(49,185,173,.18); }
.hcsa-page .hcsa-art-screen .hcsa-screen-button--hero img {
  filter:drop-shadow(0 16px 23px rgba(0,10,22,.33));
}
@media(prefers-reduced-motion:reduce) {
  .hcsa-page .hcsa-art-stage { -webkit-backdrop-filter:none;backdrop-filter:none; }
}


/* R8: HCSA hero, two upright handsets: home + illustrative TI-M video call.
   Strictly scoped to HCSA product page; MEMM hero and existing modules untouched. */
.hcsa-page .hcsa-art-screen--duo {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:clamp(9px,2vw,19px);
  align-items:center;
  justify-content:center;
  width:100%;
  overflow:visible;
  padding:10px 8px 6px;
  margin-top:5px;
}
.hcsa-page .hcsa-art-device {
  display:flex;
  align-items:center;
  justify-content:center;
  min-width:0;
  height:100%;
}
.hcsa-page .hcsa-art-device .hcsa-screen-button--hero {
  display:flex;
  align-items:center;
  justify-content:center;
  height:100%;
  width:100%;
  max-width:100%;
  cursor:zoom-in;
}
.hcsa-page .hcsa-art-device .hcsa-screen-button--hero img,
.hcsa-page .hcsa-art-screen--duo .hcsa-screen-button--hero img {
  width:auto;
  height:auto;
  max-width:100%;
  max-height:440px;
  object-fit:contain;
  transform:none;
  filter:drop-shadow(0 16px 19px rgba(0,8,20,.27));
}
.hcsa-page .hcsa-art-device--video .hcsa-screen-button--hero img {
  filter:drop-shadow(0 16px 20px rgba(0,8,20,.30));
}
@media(max-width:1050px) {
  .hcsa-page .hcsa-art-screen--duo {gap:10px;padding-inline:2px;}
  .hcsa-page .hcsa-art-screen--duo .hcsa-screen-button--hero img {max-height:415px;}
}
@media(max-width:820px) {
  .hcsa-page .hcsa-art-screen--duo .hcsa-screen-button--hero img {max-height:420px;}
}
@media(max-width:620px) {
  .hcsa-page .hcsa-art-screen--duo {gap:9px;padding:9px 0 5px;}
  .hcsa-page .hcsa-art-screen--duo .hcsa-screen-button--hero img {max-height:345px;}
  .hcsa-page .hcsa-art-stage {padding-inline:15px;}
  .hcsa-page .hcsa-art-stamp {bottom:11px;right:13px;padding:7px 9px;font-size:.60rem;}
}
@media(max-width:390px) {
  .hcsa-page .hcsa-art-screen--duo {gap:6px;}
  .hcsa-page .hcsa-art-screen--duo .hcsa-screen-button--hero img {max-height:270px;}
  .hcsa-page .hcsa-art-screen--duo {height:290px;}
  .hcsa-page .hcsa-art-stage {min-height:365px;}
}


