/* The positioning stays legible at a glance; every example is always visible. */
.evolution-section{position:relative;padding:108px 0 76px;background:linear-gradient(180deg,#fff 0%,#f6f9ff 58%,#fff 100%);scroll-margin-top:110px}
.evolution-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,5vw,76px);align-items:center}
.evolution-copy{min-width:0}
.evolution-copy .eyebrow{margin-bottom:25px;color:#176bff}
.evolution-copy h2{font-family:var(--heading);font-weight:650;font-size:clamp(2.875rem,5.3vw,4.75rem);line-height:1.06;letter-spacing:-.065em;color:#102d52;margin:0}
.evolution-copy h2>span{display:inline-block;margin-top:12px;color:#1265ed}
.evolution-copy>p:not(.eyebrow){font-size:1rem;line-height:1.85;color:#536c89;margin:27px 0;max-width:430px}
.evolution-copy .text-link{font-size:.9375rem}
.evolution-board{position:relative;min-width:0;padding:22px;background:linear-gradient(145deg,#edf4ff,#f5f8ff);border:1px solid #dce8f9;border-radius:26px;box-shadow:0 24px 70px -38px #204e9854;isolation:isolate}
.evolution-board-heading{padding:3px 3px 22px}
.evolution-board-heading>span{font-size:.6875rem;letter-spacing:.09em;line-height:1.6;font-weight:650;color:#5a779a}
.evolution-board-heading h3{font-family:var(--heading);font-size:clamp(1.25rem,1.8vw,1.625rem);font-weight:650;letter-spacing:-.04em;line-height:1.3;color:#163b67;margin:7px 0 0}
.threat-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px}
.evolution-example{position:relative;min-width:0;background:#fff;border:1px solid #dce7f7;border-radius:17px;padding:24px 22px;box-shadow:0 5px 18px #1d477608;overflow:hidden}
.evolution-example:nth-child(2),.evolution-example:nth-child(3){background:linear-gradient(145deg,#fff,#f8fbff)}
.threat-tile-top{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-bottom:23px}
.threat-icon{width:43px;height:43px;flex:0 0 43px;fill:none;stroke:#176bff;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.threat-icon .threat-accent{stroke:#163b67;stroke-width:1.75}
.threat-tile-top>span{font-family:var(--heading);font-size:2.75rem;line-height:1;font-weight:500;letter-spacing:-.075em;color:#d9e7fb;user-select:none}
.evolution-channel{display:block;font-size:.6875rem;line-height:1.6;letter-spacing:.055em;font-weight:650;color:#55769e;margin-bottom:9px}
.evolution-example h4{font-family:var(--heading);font-size:clamp(1.0625rem,1.45vw,1.3125rem);line-height:1.35;letter-spacing:-.03em;font-weight:750;color:#173a61;margin:0}
.evolution-example>p{font-size:.9375rem;line-height:1.75;color:#5e7693;margin:12px 0 0}
.evolution-board-foot{display:flex;align-items:center;justify-content:center;gap:13px;padding:24px 3px 3px}
.evolution-board-foot>span{font-size:2.15rem;line-height:1;color:#176bff}
.evolution-board-foot>p{font-size:.8125rem;line-height:1.6;margin:0;color:#68809f}
.evolution-board-foot strong{font-weight:650;color:#234c79}
.specialist-statement{display:grid;grid-template-columns:1.05fr 1fr auto;align-items:center;gap:clamp(24px,4vw,55px);margin-top:52px;padding:31px 0;border-block:1px solid #dae5f4}
.specialist-focus{display:flex;align-items:center;gap:23px;min-width:0}
.specialist-one{font-family:var(--heading);font-size:6.8rem;line-height:.9;font-weight:650;letter-spacing:-.1em;color:#176bff;flex:0 0 auto;padding-right:6px}
.specialist-focus h3{font-family:var(--heading);font-size:clamp(1.25rem,2vw,1.75rem);line-height:1.3;letter-spacing:-.04em;font-weight:700;margin:0;color:#102d52}
.specialist-focus h3>span{color:#176bff}
.specialist-statement>p{font-size:.9375rem;line-height:1.8;color:#576f8b;margin:0}
.specialist-statement .text-link{font-size:.875rem;gap:17px;white-space:nowrap}
.evolution-sources{max-width:810px;border:0!important;border-radius:0!important;background:none!important;margin:18px 0 0;padding:0;box-shadow:none}
.evolution-sources summary{display:list-item!important;padding:0;font-size:.75rem;line-height:1.8;font-weight:450;color:#637d9b;cursor:pointer;list-style:revert}
.evolution-sources>p{font-size:.8125rem;line-height:1.9;color:#637d9b;padding:0;margin:10px 0 0}
.evolution-sources a{color:#2569ba;text-decoration:underline;text-underline-offset:3px}

@media(max-width:1100px){
 .evolution-layout{grid-template-columns:.88fr 1.12fr;gap:30px}
 .evolution-copy h2{font-size:clamp(2.75rem,5.8vw,4.1rem)}
 .evolution-board{padding:16px}.evolution-example{padding:20px 16px}
 .threat-grid{gap:10px}.evolution-channel{font-size:.625rem;letter-spacing:.025em}
 .evolution-example>p{font-size:.875rem}.threat-tile-top{margin-bottom:19px}
 .specialist-statement{grid-template-columns:1fr 1.15fr;gap:18px 32px}
 .specialist-statement>.text-link{grid-column:2;justify-self:start}
 .specialist-focus{grid-row:1/3}.specialist-one{font-size:6rem}
}
@media(max-width:760px){
 .evolution-section{padding:74px 0 50px}
 .evolution-layout{grid-template-columns:1fr;gap:35px}
 .evolution-copy h2{font-size:clamp(3rem,8.5vw,4.3rem)}
 .evolution-copy h2>span{margin-top:9px}
 .evolution-copy>p:not(.eyebrow){max-width:580px;margin:23px 0;font-size:1rem}
 .evolution-board{border-radius:21px;max-width:590px;width:100%;justify-self:center}
 .evolution-board-heading h3{font-size:1.5rem}
 .evolution-example{padding:23px}.evolution-example h4{font-size:1.25rem}
 .evolution-example>p{font-size:1rem}.evolution-channel{font-size:.6875rem}
 .specialist-statement{margin-top:35px;grid-template-columns:1fr;gap:20px;padding:28px 0}
 .specialist-focus{grid-row:auto;gap:24px}.specialist-one{font-size:5.4rem}
 .specialist-focus h3{font-size:1.625rem}
 .specialist-statement>.text-link{grid-column:auto}.specialist-statement>p{font-size:1rem}
}
@media(max-width:540px){
 .threat-grid{grid-template-columns:1fr;gap:12px}
 .evolution-board{padding:16px}.evolution-example{padding:23px 24px}
 .threat-tile-top{margin-bottom:17px}.threat-icon{width:40px;height:40px;flex-basis:40px}
 .evolution-channel{font-size:.6875rem}.evolution-example h4{font-size:1.375rem}
 .evolution-example>p{font-size:1rem;max-width:360px}
}
@media(max-width:380px){
 .evolution-copy h2{font-size:2.85rem}
 .evolution-board{padding:12px}.evolution-board-heading{padding:4px 5px 19px}
 .evolution-board-heading>span{font-size:.625rem;letter-spacing:.035em}
 .evolution-board-heading h3{font-size:1.35rem}.evolution-example{padding:21px}
}
@media(prefers-reduced-motion:no-preference){
 .motion-ready .evolution-board.reveal-item{transform:perspective(1200px) translateY(36px) rotateY(-5deg);transform-origin:0 50%}
 .motion-ready .evolution-board.reveal-item.is-visible{transform:none}
 .motion-ready .evolution-board.reveal-item .evolution-example{opacity:0;transform:translateX(20px);transition:opacity .7s ease,transform .9s cubic-bezier(.16,1,.3,1);transition-delay:calc(.1s + var(--example-order)*.16s)}
 .motion-ready .evolution-board.reveal-item.is-visible .evolution-example{opacity:1;transform:none}
 .motion-ready .evolution-board.reveal-item.is-visible .threat-trace{stroke-dasharray:1;animation:threat-draw 1s calc(.2s + var(--example-order)*.12s) both}
 .motion-ready .evolution-board.reveal-item.is-visible .evolution-board-foot>span{animation:evolution-refresh 1.2s .55s cubic-bezier(.16,1,.3,1) both}
 .motion-ready .specialist-statement.reveal-item.is-visible .specialist-one{animation:evolution-focus 1s .1s cubic-bezier(.16,1,.3,1) both}
 .evolution-example{transition:box-shadow .3s,border-color .3s}
 @media(hover:hover){.evolution-example:hover{border-color:#b6cff2;box-shadow:0 8px 25px #1d477611}}
 @keyframes threat-draw{from{stroke-dashoffset:1}to{stroke-dashoffset:0}}
 @keyframes evolution-refresh{from{transform:rotate(-150deg)}to{transform:rotate(0)}}
 @keyframes evolution-focus{from{opacity:.2;transform:translateY(12px) scale(.85)}to{opacity:1;transform:none}}
}
@media(prefers-reduced-motion:reduce){.evolution-board .evolution-example{opacity:1!important;transform:none!important;transition:none!important}}
@media print{.evolution-section{padding:30px 0}.evolution-board .evolution-example{opacity:1!important;transform:none!important}.evolution-copy h2{font-size:2.8rem}}
