 body.page-csr .real-estate-solutions{ background:#050608; color: rgba(255,255,255,.84);}
 body.page-csr .real-estate-solutions-head h2{ color:#ffffff; }
 body.page-csr .real-estate-solutions-head p{ color: rgba(255,255,255,.70);}
 body.page-csr .real-estate-solutions-item{ color: rgba(255,255,255,.86); }
 body.page-csr .real-estate-solutions-dot{ box-shadow: 0 0 0 3px rgba(10, 73, 255, .22);}
 body.page-csr .csr-industries{ background:#000; color:#fff; padding: 86px 0 92px; }
body.page-csr .csr-industries-head{ max-width: 980px; }
 body.page-csr .csr-industries-title{ margin:0; font-size: clamp(34px, 4.6vw, 56px); line-height: 1.06; letter-spacing: -0.03em; color:#fff;}
 body.page-csr .csr-industries-intro{ margin: 14px 0 0; font-size: 14px; line-height: 1.75; color: rgba(255,255,255,.72); max-width: 920px; }
 body.page-csr .csr-industries-stage{ margin-top: 34px;}
 body.page-csr .csr-industries-track{ display:grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
 body.page-csr .csr-industry-card{ border-radius: 12px; border: 1px solid rgba(255,255,255,.10); background: rgba(255,255,255,.03); padding: 22px 20px; box-shadow: 0 22px 54px rgba(0,0,0,.55);}
 body.page-csr .csr-industry-icon{ width: 40px; height: 40px; border-radius: 12px; background: rgba(255,255,255,.06); border: 1px solid rgba(255,255,255,.10); display:flex; align-items:center; justify-content:center; color:#fff; }
 body.page-csr .csr-industry-title{ margin: 14px 0 0; font-size: 16px; font-weight: 800; color:#fff; white-space: pre-line;}
 body.page-csr .csr-industry-desc{ margin: 12px 0 0; font-size: 12px; line-height: 1.75; color: rgba(255,255,255,.72); }
 body.page-csr .csr-industry-desc a{ color:#fff; text-decoration: underline;}
 body.page-csr .csr-industries-dots{ display:none; justify-content:center; gap: 8px; margin-top: 18px; }
 body.page-csr .csr-industries-dot{ width: 14px; height: 4px; border-radius: 999px; background: rgba(255,255,255,.22); border: 0; padding: 0; cursor: pointer;}
 body.page-csr .csr-industries-dot.is-active{ width: 20px; background: #ffffff; }
   body.page-csr .csr-industries-track{ grid-template-columns: repeat(2, minmax(0, 1fr));}
   body.page-csr .csr-industries{ padding: 74px 0 84px;}
   body.page-csr .csr-industries-track{
   body.page-csr .csr-industries-track::-webkit-scrollbar{ display:none; }
   body.page-csr .csr-industry-card{ min-width: calc(100vw - 56px); scroll-snap-align: center;}
   body.page-csr .csr-industries-dots{ display:flex; }
 body.page-csr .csr-cta-banner{ background:#fff; padding: 70px 0 90px; }
 body.page-csr .csr-cta-banner .container{display:flex; justify-content:center;}
 body.page-csr .csr-cta-banner-card{ position:relative; width: 100%; max-width: 860px; min-height: 220px; border-radius: 12px; overflow:hidden; background: #0b0c0d; background-image: linear-gradient(180deg, rgba(0,0,0,.10), rgba(0,0,0,.55)), var(--csr-cta-bg); background-size: cover; background-position: center; box-shadow: 0 26px 60px rgba(12, 22, 55, .18); }
 body.page-csr .csr-cta-banner-overlay{ position:absolute; inset:0; background: radial-gradient(120% 120% at 50% 40%, rgba(0,0,0,.12), rgba(0,0,0,.62)); pointer-events:none;}
 body.page-csr .csr-cta-banner-content{ position:absolute; inset:0; display:flex; flex-direction:column; align-items:center; justify-content:center; text-align:center; gap: 10px; padding: 26px 18px; color:#fff; }
 body.page-csr .csr-cta-banner-title{ margin:0; font-size: 18px; font-weight: 900; letter-spacing: -0.01em; color:#fff;}
 body.page-csr .csr-cta-banner-subtitle{ margin:0; font-size: 12px; line-height: 1.7; color: rgba(255,255,255,.86); white-space: pre-line; max-width: 520px; }
 body.page-csr .csr-cta-banner-btn{ margin-top: 8px; display:inline-flex; align-items:center; gap: 10px; padding: 8px 14px; border-radius: 8px; border: 1px solid rgba(255,255,255,.55); background: rgba(0,0,0,.18); color:#fff; text-decoration:none; font-size: 10px; font-weight: 800;}
 body.page-csr .csr-cta-banner-btn:hover{ background: rgba(255,255,255,.10); border-color: rgba(255,255,255,.80); }
 body.page-csr .csr-cta-banner-btn-arrow{ width: 10px; height: 10px; border-right: 2px solid currentColor; border-top: 2px solid currentColor; transform: rotate(45deg);}
   body.page-csr .csr-cta-banner{ padding: 60px 0 80px;}
   body.page-csr .csr-cta-banner-card{ min-height: 200px; }
