/* DCS Bonafide v5.2 — pre-development visual freeze */
.v5-public{--v52-shadow:0 22px 60px rgba(26,61,108,.09)}
/* Headline discipline: premium scale without 5–7 line stacks. */
.v5-hero-grid{grid-template-columns:minmax(0,.96fr) minmax(500px,1.04fr);gap:54px}
.v5-hero-copy{max-width:760px}
.v5-hero-copy h1{max-width:760px;font-size:clamp(48px,4.25vw,66px);line-height:.99;letter-spacing:-.05em;text-wrap:balance}
.v5-hero-copy .v5-lead{max-width:700px}
.v51-page-methodology .v5-hero-copy h1,.v51-page-developers .v5-hero-copy h1,.v51-page-security .v5-hero-copy h1{max-width:720px}
/* Sharp photo stage: photography and copy never occupy the same pixels. */
.v52-photo-stage{display:flex;flex-direction:column;min-height:510px;padding:18px;gap:12px;overflow:hidden}
.v52-photo-media{position:relative;flex:1;min-height:345px;overflow:hidden;border-radius:24px;background:#eaf1f8}
.v52-photo-media img{display:block;width:100%;height:100%;object-fit:cover;filter:none;image-rendering:auto}
.v52-photo-academic .v52-photo-media img{object-position:50% 48%}
.v52-photo-employment .v52-photo-media img{object-position:50% 45%}
.v52-photo-schools .v52-photo-media img{object-position:50% 52%}
.v52-photo-rail{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.v52-photo-rail>div{min-width:0;padding:13px 14px;border:1px solid #dce6f2;border-radius:16px;background:rgba(255,255,255,.98)}
.v52-photo-rail small{display:block;color:#6f83a3;font-size:9px;font-weight:850;letter-spacing:.12em;text-transform:uppercase}
.v52-photo-rail b{display:block;margin-top:5px;color:#162b4c;font-size:12px;line-height:1.38}
/* Professional: no stock portrait needed; credential state is the visual. */
.v52-regulator-hero{padding:26px;overflow:hidden}
.v52-regulator-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:22px;align-items:center;min-height:375px}
.v52-status-orbit{position:relative;display:grid;place-items:center;width:290px;height:290px;margin:auto;border-radius:50%;border:1px solid #d7e4f5;background:radial-gradient(circle,#fff 0 29%,#f5f9ff 30% 52%,#edf6f8 53% 68%,transparent 69%)}
.v52-status-orbit:before,.v52-status-orbit:after{content:"";position:absolute;border-radius:50%;border:1px dashed #a9c2e8}.v52-status-orbit:before{inset:38px}.v52-status-orbit:after{inset:72px}
.v52-orbit-core{position:relative;z-index:2;display:grid;place-items:center;width:106px;height:106px;border-radius:28px;background:linear-gradient(145deg,#2f63f3,#43cdb7);color:#fff;font-size:17px;font-weight:900;letter-spacing:.08em;box-shadow:0 18px 42px rgba(47,99,243,.22)}
.v52-status-orbit>span{position:absolute;z-index:3;padding:8px 10px;border-radius:999px;background:#fff;border:1px solid #dce6f2;color:#315070;font-size:10px;font-weight:800;box-shadow:0 8px 22px rgba(29,65,114,.08)}
.v52-status-orbit .o1{left:7px;top:52px}.v52-status-orbit .o2{right:6px;top:65px}.v52-status-orbit .o3{left:18px;bottom:45px}.v52-status-orbit .o4{right:-2px;bottom:51px}
.v52-regulator-facts{display:grid;gap:11px}.v52-regulator-facts article{padding:15px 16px;border-radius:17px;border:1px solid #dce6f2;background:#fff}.v52-regulator-facts small{font-size:9px;color:#7186a5;font-weight:850;letter-spacing:.11em}.v52-regulator-facts b{display:block;margin-top:6px;font-size:12px;line-height:1.42}
/* Institution operations visual. */
.v52-ops-hero{padding:26px;overflow:hidden}.v52-ops-stack{display:grid;gap:10px}.v52-ops-stack article{display:grid;grid-template-columns:36px 1fr auto;gap:12px;align-items:center;padding:15px;border-radius:16px;border:1px solid #dce6f2;background:#fff}.v52-ops-stack>article>span{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#edf3ff;color:#2f63f3;font-size:10px;font-weight:900}.v52-ops-stack b{font-size:12px}.v52-ops-stack small{display:block;margin-top:4px;color:#7486a0;font-size:10px;line-height:1.38}.v52-ops-stack em{padding:6px 8px;border-radius:999px;background:#eef8f5;color:#188c74;font-size:8px;font-style:normal;font-weight:850;white-space:nowrap}
/* Candidate rights visual. */
.v52-rights-hero{padding:26px;overflow:hidden}.v52-rights-flow{display:grid;gap:9px}.v52-rights-flow article{position:relative;display:grid;grid-template-columns:34px 1fr;gap:12px;padding:12px 14px;border-radius:15px;border:1px solid #dce6f2;background:#fff}.v52-rights-flow article:not(:last-child):after{content:"";position:absolute;left:30px;top:47px;bottom:-11px;width:1px;background:#c5d4ea}.v52-rights-flow>article>span{position:relative;z-index:2;display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#2f63f3;color:#fff;font-size:10px;font-weight:900}.v52-rights-flow b{font-size:12px}.v52-rights-flow small{display:block;margin-top:3px;color:#7486a0;font-size:9.5px;line-height:1.38}
/* Homepage: native proof visual, not a collage of repeated photos. */
.v52-home-hero-visual{padding:26px;overflow:hidden}.v52-home-proof{display:grid;grid-template-columns:.82fr 1.18fr;gap:18px;align-items:center}.v52-doc-card{min-height:280px;display:flex;flex-direction:column;justify-content:center;padding:26px;border-radius:25px;background:linear-gradient(155deg,#112d5c,#214b8f);color:#fff;box-shadow:0 18px 45px rgba(19,54,105,.18)}.v52-doc-card span{font-size:10px;letter-spacing:.14em;text-transform:uppercase;color:#9ebbe6}.v52-doc-card b{margin-top:12px;font-size:21px;line-height:1.23}.v52-doc-card small{margin-top:14px;color:#c8d8ef;font-size:11px;line-height:1.5}.v52-proof-lines{display:grid;gap:9px}.v52-proof-lines article{display:grid;grid-template-columns:32px 1fr;gap:10px;padding:12px 13px;border-radius:15px;background:#fff;border:1px solid #dce6f2}.v52-proof-lines span{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#edf3ff;color:#2f63f3;font-size:9px;font-weight:900}.v52-proof-lines b{font-size:11px}.v52-proof-lines small{display:block;margin-top:3px;color:#75869f;font-size:9px;line-height:1.4}
.v52-pillar-native{height:220px;position:relative;display:grid;place-items:center;background:radial-gradient(circle at 50% 45%,rgba(121,96,235,.15),transparent 36%),linear-gradient(160deg,#f6f3ff,#edf4ff);overflow:hidden}.v52-pillar-ring{display:grid;place-items:center;width:92px;height:92px;border-radius:50%;border:16px solid #cfc6ff;color:#6753d9;font-size:28px;font-weight:900;background:#fff}.v52-pillar-native span{position:absolute;padding:7px 10px;border-radius:999px;background:#fff;border:1px solid #ddd9f5;color:#554b89;font-size:9px!important;font-weight:850}.v52-pillar-native span:nth-of-type(1){left:14%;top:20%}.v52-pillar-native span:nth-of-type(2){right:13%;top:30%}.v52-pillar-native span:nth-of-type(3){left:36%;bottom:13%}
.v52-dashboard-caption{position:absolute;left:18px;right:18px;bottom:18px;display:flex;gap:8px;flex-wrap:wrap}.v52-dashboard-caption span{padding:9px 11px;border-radius:999px;background:rgba(255,255,255,.96);box-shadow:0 8px 22px rgba(18,49,94,.11);font-size:10px;font-weight:800}.v5-human-card>img{object-position:left top}
/* Login: no blurred portrait. */
.v52-login-visual{display:flex;align-items:center;gap:16px;margin:0 0 26px;padding:18px;border-radius:22px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.12)}.v52-login-shield{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:linear-gradient(145deg,#3c72ff,#43cdb7);color:#fff;font-size:28px;font-weight:900}.v52-login-visual b{display:block;color:#fff;font-size:14px}.v52-login-visual small{display:block;margin-top:5px;color:#a8bfdf;font-size:10px;line-height:1.4}
/* Keep diagram cards inside their panel at every desktop width. */
.v51-tech,.v51-evidence,.v51-hero-stage{min-width:0;overflow:hidden}.v51-chain{width:100%;gap:5px}.v51-chain .box{min-width:0;padding:11px 9px}.v51-chain .box b{font-size:10px}.v51-chain .box small{font-size:8.5px}.v51-chain>i{flex:0 0 14px;text-align:center}.v51-endpoint,.v51-event,.v51-layer,.v51-registry-card{min-width:0}.v51-endpoint code{overflow-wrap:anywhere}
/* Reduce accidental giant headline stacks in secondary split sections. */
.v5-copy-block h2{font-size:clamp(34px,3.6vw,52px);line-height:1.03;max-width:720px}.v5-section-head h2{font-size:clamp(34px,3.5vw,52px)}
/* Old floated photo badges are intentionally retired in v5.2. */
.v51-badge{display:none!important}
@media(max-width:1180px){.v5-hero-grid{grid-template-columns:1fr}.v5-hero-copy h1{max-width:880px;font-size:clamp(48px,6.3vw,68px)}.v52-photo-stage{min-height:480px}.v52-home-proof{grid-template-columns:1fr 1fr}.v52-regulator-grid{grid-template-columns:1fr 1fr}.v52-status-orbit{width:270px;height:270px}.v51-chain{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.v51-chain>i{display:none}.v51-chain .box{min-height:82px}}
@media(max-width:760px){.v5-hero-copy h1{font-size:42px;line-height:1.02}.v52-photo-stage{min-height:410px}.v52-photo-media{min-height:270px}.v52-photo-rail{grid-template-columns:1fr}.v52-regulator-grid,.v52-home-proof{grid-template-columns:1fr}.v52-status-orbit{width:240px;height:240px}.v52-ops-stack article{grid-template-columns:34px 1fr}.v52-ops-stack em{grid-column:2}.v51-chain{grid-template-columns:1fr}.v52-dashboard-caption{position:static;padding:10px;background:#fff}.v52-pillar-native{height:180px}}
