/* Targeted page-family alignment for the 0.5.169 candidate. */

.platform-security-hero { padding-block: 48px 58px; }
.platform-security-hero__grid { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:clamp(32px,5vw,76px); align-items:center; }
.platform-security-hero h1 { max-width:700px; }
.platform-security-path { margin:0; padding:28px; color:#f4f8ff; background:linear-gradient(145deg,#071a36,#112f59); border:1px solid #28466e; border-radius:24px; box-shadow:0 24px 48px rgba(10,32,65,.15); }
.platform-security-path__head { display:flex; justify-content:space-between; gap:16px; padding-bottom:18px; border-bottom:1px solid #46617f; color:#a9c8df; text-transform:uppercase; font-size:12px; font-weight:800; letter-spacing:.08em; }
.platform-security-path ol { list-style:none; margin:0; padding:0; }
.platform-security-path li { display:grid; grid-template-columns:38px 1fr; gap:16px; padding-block:22px; border-bottom:1px solid #304e71; }
.platform-security-path li>span { display:grid; place-items:center; width:34px; height:34px; border:1px solid #54c8d2; border-radius:10px; color:#a7edf1; font-size:12px; font-weight:800; }
.platform-security-path strong { display:block; margin-bottom:6px; font-size:20px; line-height:1.2; }
.platform-security-path p { margin:0; color:#c2d1e4; font-size:14px; line-height:1.5; }
.platform-security-path figcaption { padding-top:18px; color:#b2c6dd; font-size:12px; line-height:1.45; }
.platform-security-next .related { display:grid; gap:10px; }

/* Put the topic introduction in a deliberate centered composition. */
#main .platform-hero--visual-focus { padding-block:34px 18px; }
#main .platform-hero--visual-focus .hero-grid { display:block; }
#main .platform-hero--visual-focus .hero-grid > div:first-child { display:block; width:100%; max-width:none; text-align:center; }
#main .platform-hero--visual-focus h1 { max-width:880px; margin-inline:auto; font-size:clamp(40px,4.1vw,58px); line-height:1.05; }
#main .platform-hero--visual-focus .lead { max-width:750px; margin-inline:auto; }
#main .platform-hero--visual-focus .hero-actions { justify-content:center; margin-top:24px; }
#main .platform-hero--visual-focus .family-strip { max-width:1180px; margin:32px auto 0; flex-wrap:nowrap; }
#main .platform-hero--visual-focus .family-strip a { flex:1 1 0; min-width:0; padding-inline:6px; }
#main .platform-hero--visual-focus + .platform-family-visual { padding-top:24px; }

/* Give plan choices enough width to read and make the 3+2 rhythm intentional. */
.plans-hero { padding-block:42px 30px; }
.plans-hero h1 { font-size:clamp(40px,4vw,52px); }
.plans { grid-template-columns:repeat(6,minmax(0,1fr)); gap:18px; margin-top:32px; }
.plan { grid-column:span 2; min-height:290px; padding:28px; }
.plan:nth-child(n+4) { grid-column:span 3; }
.plan h3 { font-size:25px; }
.plan-desc { min-height:0; font-size:15px; line-height:1.55; }
.plan ul { margin-bottom:4px; font-size:14.5px; line-height:1.55; }

/* The guide cards are the main content of the Resources hub. */
.resources-hero { padding-block:30px 20px; }
.resources-hero h1 { max-width:900px; font-size:clamp(36px,3.8vw,50px); }
.resources-hero .lead { max-width:740px; }
#resource-guides { padding-top:38px; }

@media (max-width:1020px) {
  .platform-security-hero__grid { grid-template-columns:1fr; }
  .plans { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .plan,.plan:nth-child(n+4) { grid-column:auto; }
  .plan:last-child { grid-column:1/-1; }
  #main .platform-hero--visual-focus .family-strip { flex-wrap:wrap; }
  #main .platform-hero--visual-focus .family-strip a { flex:1 1 140px; }
}

@media (max-width:700px) {
  .platform-security-hero { padding-block:28px 42px; }
  .platform-security-path { padding:20px; }
  .platform-security-path strong { font-size:18px; }
  #main .platform-hero--visual-focus { padding-block:26px 12px; }
  #main .platform-hero--visual-focus .hero-grid > div:first-child { text-align:start; }
  #main .platform-hero--visual-focus h1,#main .platform-hero--visual-focus .lead { margin-inline:0; }
  #main .platform-hero--visual-focus h1 { font-size:clamp(31px,8.4vw,38px); }
  #main .platform-hero--visual-focus .hero-actions { justify-content:stretch; }
  #main .platform-hero--visual-focus .family-strip { display:flex; flex-wrap:nowrap; overflow-x:auto; margin-top:18px; scroll-snap-type:x proximity; scrollbar-width:thin; }
  #main .platform-hero--visual-focus .family-strip a { flex:0 0 auto; min-width:108px; width:auto; scroll-snap-align:start; }
  .plans-hero { padding-block:30px 22px; }
  .plans { grid-template-columns:1fr; }
  .plan,.plan:nth-child(n+4),.plan:last-child { grid-column:auto; min-height:0; }
  .resources-hero { padding-block:22px 12px; }
  #resource-guides { padding-top:26px; }
}
