/* Cybersecurity services: image-led editorial service chapters. */
.cy { --cy-header: 76px; --cy-jump: 58px; --cy-blue: #2474c5; --cy-line: #dce5f1; }
.cy main { overflow: clip; }
.cy main [id] { scroll-margin-top: calc(var(--cy-header) + var(--cy-jump) + 22px); }
.cy-in { width: var(--wide); margin-inline: auto; }
.cy main h1, .cy main h2, .cy main h3 { color: #11234e; letter-spacing: -.035em; line-height: 1.13; }
.cy main h2 { font-size: clamp(30px, 2.8vw, 47px); font-weight: 900; }
.cy main h3 { font-size: 21px; font-weight: 800; }
.cy main p { margin: 0; }
.cy main a:focus-visible, .cy main button:focus-visible { outline: 3px solid #3e96ec; outline-offset: 5px; }
.cy-kicker { display: flex; align-items: center; gap: 14px; font-size: 11px; font-weight: 800; letter-spacing: .16em; text-transform: uppercase; color: #4775ab; margin-bottom: 18px !important; }
.cy-kicker::before { content: ''; width: 28px; height: 2px; background: var(--red); }
.cy-lead { margin-top: 21px !important; color: #5d6c87; max-width: 730px; font-size: clamp(16px, 1.2vw, 19px); line-height: 1.75; }
.cy-section { padding-block: clamp(56px, 5vw, 88px); }
.cy-pale { background: #f2f6fb; }
.cy-dark { background: var(--navy); color: #c8d0ee; }
.cy .cy-dark h2, .cy .cy-dark h3 { color: #fff; }
.cy-dark .cy-kicker { color: #9bbde9; }
.cy-dark .cy-lead { color: #bdcce3; }
.cy-title { display: flex; justify-content: space-between; align-items: flex-end; gap: 45px; margin-bottom: 34px; }
.cy-title > p { max-width: 570px; font-size: 16px; color: #5d6c87; }
.cy-split { display: grid; grid-template-columns: minmax(0, 1fr) minmax(0, 1fr); gap: clamp(35px, 5vw, 88px); align-items: start; }
.cy-actions { display: flex; gap: 14px; flex-wrap: wrap; margin-top: 28px; }
.cy-button { display: inline-flex; justify-content: center; align-items: center; gap: 22px; padding: 14px 22px; min-height: 50px; border: 1px solid transparent; border-radius: 9px; background: #e02d3c; color: #fff; font-size: 14px; font-weight: 800; }
.cy-button:hover { background: #be2031; }
.cy-button.outline { background: transparent; border-color: #a4b7d0; color: #244878; }
.cy-dark .cy-button.outline { color: #d7e7ff; border-color: #587397; }
.cy-link { display: inline-flex; gap: 18px; align-items: center; color: #195ea5; font-size: 14px; font-weight: 800; margin-top: 23px; }
.cy-link span { color: #e02d3c; font-size: 20px; }
.cy-crumb { font-size: 11px; display: flex; gap: 11px; color: #a6b8d4; margin-bottom: 44px; }
.cy-lifecycle { background: #fff; border-bottom: 1px solid var(--cy-line); }
.cy-lifecycle .cy-in { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); padding-block: 32px; }
.cy-lifecycle article { padding: 0 25px; border-left: 1px solid var(--cy-line); }
.cy-lifecycle article:first-child { border: 0; padding-left: 0; }
.cy-lifecycle article:last-child { padding-right: 0; }
.cy-lifecycle small { color: #517faf; font: 11px ui-monospace, monospace; }
.cy-lifecycle h2 { font-size: 18px !important; margin-block: 9px; font-weight: 800 !important; }
.cy-lifecycle p { font-size: 13px; color: #64758f; line-height: 1.7; }
.cy-jump { position: sticky; top: var(--cy-header); z-index: 30; background: #fffffff5; backdrop-filter: blur(16px); border-bottom: 1px solid #dfe6f1; }
.cy-jump .cy-in { display: flex; gap: 30px; overflow-x: auto; scrollbar-width: thin; }
.cy-jump a { display: inline-flex; align-items: center; flex: none; min-height: 58px; color: #586984; font-size: 12px; font-weight: 700; border-bottom: 3px solid transparent; white-space: nowrap; }
.cy-jump a[aria-current] { border-color: #e43844; color: #15558f; }
.cy-panel { border: 1px solid var(--cy-line); border-radius: 14px; padding: clamp(25px, 2.5vw, 40px); background: #fff; }
.cy-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 20px; padding-bottom: 20px; border-bottom: 1px solid #e0e8f2; }
.cy-panel-head small { font: 10px ui-monospace, monospace; letter-spacing: .1em; color: #7a91ae; }
.cy-blueprint { display: grid; gap: 22px; margin-top: 26px; }
.cy-blueprint li { display: flex; gap: 18px; }
.cy-blueprint li > span { flex: none; font: 12px ui-monospace, monospace; color: #648ab6; padding-top: 4px; }
.cy-blueprint b { color: #244574; font-size: 15px; }
.cy-blueprint p { color: #64738d; font-size: 14px; margin-top: 5px !important; }
.cy-chips { display: flex; flex-wrap: wrap; gap: 8px; margin-top: 22px; }
.cy-chips span { padding: 7px 11px; background: #edf4fb; border: 1px solid #dde8f4; border-radius: 5px; color: #486b95; font-size: 11px; }
.cy-strategy-note { margin-top: 25px !important; border-left: 2px solid #81acd6; padding-left: 20px; color: #62748f; font-size: 14px; }
.cy-assess-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; }
.cy-assess-card { display: flex; flex-direction: column; padding: 27px; background: #fff; border: 1px solid #dfe7f2; border-radius: 12px; }
.cy-assess-card small { font: 11px ui-monospace, monospace; color: #4e7aac; }
.cy-assess-card h3 { margin: 18px 0 12px; font-size: 20px !important; }
.cy-assess-card p { font-size: 14px; color: #60708b; margin-bottom: 18px !important; }
.cy-assess-card .cy-link { margin-top: auto; }
.cy-lab { position: relative; background: var(--navy); }
.cy-lab .cy-title > p { color: #bdcce4; }
.cy-lab-bottom { display: grid; grid-template-columns: 1fr 1fr; gap: 50px; margin-top: 37px; padding-top: 28px; border-top: 1px solid #304968; }
.cy-lab-bottom h3 { font-size: 17px !important; margin-bottom: 12px; }
.cy-lab-bottom p { font-size: 14px; color: #afc4dd; }
.cy-lab-bottom a { color: #9bd0ff; text-decoration: underline; text-underline-offset: 4px; }
.cy-methods { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 15px; }
.cy-methods span { padding: 5px 10px; color: #c7d7ee; border: 1px solid #3a5270; font: 11px ui-monospace, monospace; border-radius: 4px; }
.cy-deliverables { display: grid; grid-template-columns: repeat(3, 1fr); margin-top: 35px; padding-top: 25px; border-top: 1px solid #304968; gap: 28px; }
.cy-deliverables b { font-size: 14px; color: #d8e9fd; }
.cy-deliverables p { font-size: 13px; color: #9fb7d2; margin-top: 7px !important; }
.cy-process { display: grid; gap: 0; }
.cy-process li { display: grid; grid-template-columns: 46px 1fr; gap: 22px; padding: 22px; border: 1px solid var(--cy-line); background: #fff; border-radius: 10px; position: relative; }
.cy-process li + li { margin-top: 20px; }
.cy-process li + li::before { content: ''; position: absolute; top: -21px; left: 44px; height: 20px; width: 1px; background: #9fb9d5; }
.cy-process li > span { font: 13px ui-monospace, monospace; border-radius: 50%; width: 42px; height: 42px; display: grid; place-items: center; color: #2873b7; background: #eaf3fd; }
.cy-process b { display: block; font-size: 16px; color: #244776; }
.cy-process p { margin-top: 6px !important; font-size: 14px; color: #65758e; }
.cy-risk-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 18px; margin-top: 30px; }
.cy-risk-grid article { border: 1px solid #d9e4f1; border-radius: 11px; padding: 26px; background: #fff; }
.cy-risk-grid h3 { font-size: 19px !important; margin-bottom: 12px; }
.cy-risk-grid p { font-size: 14px; color: #62718a; }
.cy-decision { display: flex; gap: 20px; align-items: center; flex-wrap: wrap; margin-top: 27px; color: #687992; font-size: 13px; }
.cy-decision b { padding: 7px 15px; border-radius: 5px; background: #e6eef9; color: #385e8b; font-size: 12px; }
.cy-frameworks { display: grid; grid-template-columns: repeat(5, minmax(0, 1fr)); gap: 10px; margin-top: 26px; }
.cy-frameworks span { display: grid; place-items: center; min-height: 53px; padding: 12px 8px; background: #f0f5fc; border: 1px solid #dce7f4; border-radius: 6px; color: #345c8b; font-size: 13px; font-weight: 700; }
.cy-compliance-steps { margin-top: 30px; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 16px; }
.cy-compliance-steps b { display: block; font-size: 14px; color: #244a7a; border-top: 2px solid #a9c8e5; padding-top: 13px; }
.cy-compliance-steps p { font-size: 13px; color: #64758f; margin-top: 7px !important; }
.cy-request { border-top: 1px solid #dfE7f2; }
.cy-request .cy-split { grid-template-columns: .85fr 1.15fr; }
.cy-request-contact { margin-top: 30px; display: grid; gap: 9px; }
.cy-request-contact a { color: #205c9d; font-size: 16px; font-weight: 700; overflow-wrap: anywhere; }
.cy-form-title { display: flex; gap: 15px; align-items: center; justify-content: space-between; margin-bottom: 8px; }
.cy-form-title small { color: #6d7d92; font-size: 11px; }
.cy-preview { text-align: center; font-size: 12px; line-height: 1.6; color: #6a7890; }
.cy-request .pga-note { text-align: left; color: #315c8d; }
.cy-request .pga-note:empty { display: none; }
.cy-urgent { padding-block: 26px; background: var(--navy); color: #dce8fa; }
.cy-urgent .cy-in { display: flex; justify-content: space-between; gap: 20px; align-items: center; }
.cy-urgent p { font-size: 14px; }
.cy-urgent a { font-size: 14px; font-weight: 800; }
@media (min-width: 1101px) and (max-width: 1400px) {
  .cy .hx-command .hx-ua { display: none; }
  .cy .hx-command .hx-in { gap: 16px; }
  .cy .hx-command .hx-right { gap: 12px; }
  .cy .hx-command .hx-menu > a, .cy .hx-command .hx-dd > button { padding-inline: 10px; }
  .cy .hx-evolve .hx-brand i, .cy .hx-evolve .hx-brand [data-logo="threatresponder"] { display: none; }
  .cy .hx-evolve .hx-in { gap: 16px; }
  .cy .hx-evolve .hx-dd > button { padding-inline: 9px; }
  .cy .hx-ent .hx-link { display: none; }
  .cy .hx-ent .hx-in { gap: 14px; }
  .cy .hx-ann > .hx-in > span:not(.hx-new):not(.hx-grow) { display: none; }
}
@media (max-width: 1150px) {
  .cy-lifecycle article { padding-inline: 15px; }
  .cy-assess-grid, .cy-risk-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 900px) {
  .cy-lifecycle .cy-in { grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 25px 0; }
  .cy-lifecycle article:nth-child(4) { border: 0; padding-left: 0; }
  .cy-split, .cy-request .cy-split { grid-template-columns: 1fr; }
  .cy-title { display: block; }
  .cy-title > p { margin-top: 20px !important; }
  .cy-lab-bottom { gap: 30px; }
}
@media (max-width: 640px) {
  .cy .hx-in { gap: 10px; }
  .cy .hx-util, .cy .hx-ann { display: none; }
  .cy .hx-ent, .cy .hx-evolve { top: 0; }
  .cy .hx-right { gap: 6px; }
  .cy .hx-command .hx-tab { width: 128px; padding-inline: 8px; }
  .cy .hx-command .hx-tab [data-logo] { width: 112px; }
  .cy .hx-btn { padding-inline: 10px; font-size: 12px; }
  .cy .hx-evolve .hx-brand i, .cy .hx-evolve .hx-brand [data-logo="threatresponder"] { display: none; }
  .cy .hx-ent .hx-brand [data-logo="netsecurity"], .cy .hx-evolve .hx-brand [data-logo="netsecurity"] { width: 110px; }
  .cy .hx-ent .hx-icb { display: none; }
  .cy-lifecycle .cy-in { grid-template-columns: 1fr; gap: 18px; }
  .cy-lifecycle article { padding: 0 0 18px; border: 0; border-bottom: 1px solid #e3eaf3 !important; display: grid; grid-template-columns: 30px 1fr; column-gap: 9px; }
  .cy-lifecycle h2 { margin: 0 0 7px; }
  .cy-lifecycle p { grid-column: 2; }
  .cy-lifecycle article:last-child { border: 0 !important; padding-bottom: 0; }
  .cy-assess-grid, .cy-risk-grid { grid-template-columns: 1fr; }
  .cy-jump .cy-in { gap: 22px; }
  .cy-jump a { font-size: 11px; min-height: 53px; }
  .cy-lab-bottom, .cy-deliverables { grid-template-columns: 1fr; gap: 25px; }
  .cy-frameworks { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  .cy-compliance-steps { grid-template-columns: 1fr; gap: 18px; }
  .cy-form-title { flex-wrap: wrap; gap: 8px; }
  .cy-urgent .cy-in { flex-direction: column; align-items: flex-start; gap: 10px; }
}
@media (max-width: 360px) {
  .cy .hx-btn { padding-inline: 8px; font-size: 11px; }
  .cy .hx-command .hx-tab { width: 108px; padding-inline: 6px; }
  .cy .hx-command .hx-tab [data-logo] { width: 96px; }
}
@media (prefers-reduced-motion: reduce) {
  .cy *, .cy *::before, .cy *::after { animation: none !important; transition: none !important; }
}

/* Image-led direction: four original generated assets, content stays native and accessible. */
.cy-testing-feature .cy-testing-story { display: grid; grid-template-columns: 1fr 1fr; }
.cy-testing-feature .cy-story-image { height: 100%; min-height: 390px; aspect-ratio: auto; }
.cy-testing-feature .cy-story-copy { align-self: center; }
.cy-red-section .cy-testing-story { direction: rtl; }
.cy-red-section .cy-testing-story > * { direction: ltr; }
.cy-red-section .cy-story-copy h2 { margin-bottom: 22px; }
#testing-scope .cy-testing-coverage { margin-top: 0; padding-top: 0; border-top: 0; }
#testing-scope h2 { font-size: 29px; }
@media (min-width: 1100px) and (min-height: 700px) {
  html.cy-page { scroll-snap-type: y proximity; }
  .cs.cy main > .cy-section { scroll-snap-align: start; scroll-margin-top: calc(var(--cy-header) + var(--cy-jump)); min-height: calc(100svh - var(--cy-header) - var(--cy-jump)); padding-block: clamp(26px, 4vh, 48px); display: flex; align-items: center; }
  .cs .cy-title { margin-bottom: 25px; }
  .cs .cy-kicker { margin-bottom: 13px !important; }
  .cs .cy-lead { font-size: 16px; line-height: 1.7; }
  .cs .cy-panel { padding: 26px; }
  .cs .cy-blueprint { gap: 17px; margin-top: 20px; }
  .cs .cy-blueprint p { font-size: 13px; }
  .cs .cy-chips { margin-top: 18px; gap: 6px; }
  .cs .cy-chips span { font-size: 10px; padding: 5px 9px; }
  .cs .cy-lab .cy-title { margin-bottom: 25px; }
  .cs .cy-testing-feature .cy-story-image { min-height: 360px; }
  .cs .cy-story-copy { padding: 28px; }
  .cs .cy-story-copy > p:not(.cy-kicker) { font-size: 14px; line-height: 1.75; }
  .cs .cy-coverage-list { gap: 21px; }
  .cs .cy-coverage-list dd { font-size: 12px; line-height: 1.7; }
  .cs .cy-deliverables { margin-top: 26px; padding-block: 22px; }
  .cs .cy-lab-bottom { margin-top: 23px; }
  .cs .cy-lab-bottom p { font-size: 12px; }
  .cs .cy-investigation-questions { margin-top: 32px; gap: 30px; }
  .cs .cy-investigation-top { gap: 50px; }
  .cs .cy-operations-art { min-height: 0; height: clamp(370px, 47vh, 510px); }
  .cs .cy-operations-grid { gap: 50px; }
  .cs .cy-operations-grid .cy-lead { font-size: 14px; }
  .cs .cy-operations-principles { margin-top: 27px; padding-top: 22px; }
  .cs .cy-request .cy-split { align-items: center; }
}
@media (min-width: 1100px) and (min-height: 700px) and (max-height: 850px) {
  .cs main h2 { font-size: 34px; }
  .cs .cy-lead { font-size: 14px; margin-top: 16px !important; }
  .cs .cy-title > p { font-size: 13px; }
  .cs .cy-panel { padding: 22px; }
  .cs .cy-panel-head { padding-bottom: 15px; }
  .cs .cy-blueprint { margin-top: 16px; gap: 12px; }
  .cs .cy-blueprint b { font-size: 14px; }
  .cs .cy-blueprint p { font-size: 12px; }
  .cs .cy-testing-feature .cy-story-image { min-height: 330px; }
  .cs .cy-story-copy { padding: 23px 27px; }
  .cs .cy-story-copy h3 { font-size: 29px; margin-bottom: 15px; }
  .cs .cy-story-copy > p:not(.cy-kicker) { font-size: 13px; line-height: 1.75; }
  .cs .cy-testing-coverage { gap: 35px; }
  .cs .cy-coverage-list { gap: 17px; }
  .cs .cy-coverage-list dt { font-size: 13px; }
  .cs .cy-coverage-list dd { font-size: 11px; }
  .cs .cy-coverage-intro > p:not(.cy-kicker) { font-size: 12px; }
  .cs .cy-deliverables { margin-top: 20px; padding-block: 17px; }
  .cs .cy-deliverables p { font-size: 11px; }
  .cs .cy-lab-bottom { margin-top: 18px; }
  .cs .cy-lab-bottom h3 { font-size: 16px; }
  .cs .cy-lab-bottom p { font-size: 11px; }
  .cs .cy-investigation h2 { font-size: 40px; }
  .cs .cy-investigation-questions li > span { font-size: 28px; margin-bottom: 13px; }
  .cs .cy-investigation-questions h3 { font-size: 18px; }
  .cs .cy-investigation-questions p { font-size: 12px; }
  .cs .cy-operations-art { height: 365px; }
  .cs .cy-operations-art figcaption { left: 27px; bottom: 27px; }
  .cs .cy-operations-art figcaption b { font-size: 26px; }
  .cs .cy-operations-grid .cy-lead { font-size: 13px; }
  .cs .cy-operations-principles b { font-size: 12px; }
  .cs .cy-operations-principles p { font-size: 11px; }
  .cs.cy main > .cy-request { padding-block: 16px; }
  .cs #testing-scope { padding-block: 26px; }
}
@media (max-width: 900px) {
  .cy-testing-feature .cy-testing-story { grid-template-columns: 1fr; direction: ltr; }
  .cy-testing-feature .cy-story-image { min-height: 0; height: auto; aspect-ratio: 1.9; }
}
.cy-hero { position: relative; isolation: isolate; overflow: hidden; background: var(--navy); }
.cy-hero-art { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 65% 52%; z-index: -2; }
.cy-hero::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg, #0f1c4d 0%, #0f1c4df0 26%, #0f1c4da6 46%, #0f1c4d33 72%), linear-gradient(0deg, #172863, transparent 40%); }
.cy-hero-grid { display: block; padding-block: 55px 88px; min-height: 680px; position: relative; }
.cy-hero-grid > div { width: 55%; max-width: 860px; }
.cy-hero h1 { color: #fff !important; font-size: clamp(48px, 4.2vw, 78px); font-weight: 900; line-height: 1.03 !important; letter-spacing: -.05em; }
.cy-hero h1 span { color: #9dcefb; }
.cy-hero .cy-kicker { color: #a4caed; }
.cy-hero .cy-lead { color: #c1d3e9; max-width: 650px; font-size: clamp(17px, 1.15vw, 20px); }
.cy-hero .cy-actions { margin-top: 33px; }
.cy-hero .cy-crumb { margin-bottom: 52px; }
.cy-hero .cy-button.outline { color: #e0edfc; border-color: #6888ad; background: #10244050; }
.cy-lab { background: linear-gradient(140deg, var(--navy-2), var(--navy) 75%); }
.cy-lab .cy-title { align-items: center; margin-bottom: 43px; }
.cy-testing-stories { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 28px; }
.cy-testing-story { overflow: hidden; border: 1px solid #5269a866; border-radius: 12px; background: #1c2e65; }
.cy-story-image { position: relative; aspect-ratio: 1.9; overflow: hidden; background: #0c1930; }
.cy-story-image::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, #172863ed, transparent 60%); }
.cy-story-image img { width: 100%; height: 100%; object-fit: cover; }
.cy-story-image > span { position: absolute; left: 32px; bottom: 22px; z-index: 1; color: #dceaff; font-size: 11px; font-weight: 700; text-transform: uppercase; letter-spacing: .12em; }
.cy-story-copy { padding: 30px 34px 34px; }
.cy-story-copy .cy-kicker { font-size: 10px; margin-bottom: 15px !important; }
.cy .cy-story-copy h3 { font-size: clamp(27px, 2.2vw, 38px); line-height: 1.13; font-weight: 900; margin-bottom: 20px; }
.cy-story-copy > p:not(.cy-kicker) { color: #c1cfe3; font-size: 15px; line-height: 1.85; }
.cy-story-copy > p + p { margin-top: 13px !important; }
.cy-testing-coverage { display: grid; grid-template-columns: minmax(0, .65fr) minmax(0, 2fr); gap: 50px; margin-top: 52px; padding-top: 35px; border-top: 1px solid #2f425e; }
.cy .cy-coverage-intro h3 { font-size: 27px; }
.cy-coverage-intro > p:not(.cy-kicker) { margin-top: 17px; color: #a5bad4; font-size: 14px; line-height: 1.75; }
.cy-coverage-list { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 26px 25px; margin: 0; }
.cy-coverage-list > div { border-top: 1px solid #486280; padding-top: 14px; }
.cy-coverage-list dt { color: #e3edfb; font-size: 14px; font-weight: 800; line-height: 1.4; }
.cy-coverage-list dd { color: #a3bbd5; font-size: 13px; line-height: 1.75; margin: 10px 0 0; }
.cy-investigation { background: radial-gradient(ellipse at 6% 90%, var(--band), var(--navy) 70%); position: relative; }
.cy-investigation-top { display: grid; grid-template-columns: 1fr 1fr; gap: clamp(40px, 6vw, 110px); align-items: start; }
.cy .cy-investigation h2 { font-size: clamp(38px, 3.5vw, 62px); }
.cy-investigation h2 span { color: #87bfea; }
.cy-investigation-top .cy-lead { margin-top: 0 !important; font-size: 17px; }
.cy-investigation-top .cy-lead + .cy-lead { margin-top: 19px !important; font-size: 15px; }
.cy-investigation-top .cy-button { margin-top: 26px; }
.cy-investigation-questions { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 40px; margin-top: 55px; }
.cy-investigation-questions li { border-top: 1px solid #42617d; padding-top: 22px; }
.cy-investigation-questions li > span { display: block; font-size: 36px; line-height: 1; font-weight: 300; color: #679ac3; margin-bottom: 19px; }
.cy .cy-investigation-questions h3 { font-size: 20px; }
.cy-investigation-questions p { color: #a9bfd9; font-size: 14px; margin-top: 12px !important; }
.cy-investigation-note { margin-top: 32px !important; color: #84a5c9; font-size: 12px; }
.cy-operations-grid { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: 65px; align-items: center; }
.cy-operations-grid .cy-lead { font-size: 16px; }
.cy-operations-art { position: relative; min-height: 540px; height: 100%; overflow: hidden; border-radius: 10px; background: #10213b; }
.cy-operations-art::after { content: ''; position: absolute; inset: 0; background: linear-gradient(0deg, #0f1c4df5, transparent 70%); }
.cy-operations-art img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: 55% center; }
.cy-operations-art figcaption { position: absolute; z-index: 1; bottom: 36px; left: 36px; right: 36px; color: #e6effa; }
.cy-operations-art figcaption span { display: block; color: #b9d9f9; text-transform: uppercase; letter-spacing: .16em; font-size: 11px; margin-bottom: 16px; }
.cy-operations-art figcaption b { font-size: clamp(25px, 2.3vw, 37px); line-height: 1.2; letter-spacing: -.035em; font-weight: 800; }
.cy-operations-principles { margin-top: 40px; padding-top: 30px; border-top: 1px solid #cddcec; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 30px; }
.cy-operations-principles li { display: flex; gap: 16px; }
.cy-operations-principles li > span { color: #7a9fc4; font-size: 25px; font-weight: 300; line-height: 1.2; }
.cy-operations-principles b { color: #294870; display: block; font-size: 14px; }
.cy-operations-principles p { color: #637794; font-size: 13px; margin-top: 7px !important; }
@media (max-width: 1200px) {
  .cy-hero-grid > div { width: 62%; }
  .cy-testing-coverage { grid-template-columns: 1fr; gap: 27px; }
  .cy-coverage-intro h3 br { display: none; }
  .cy-coverage-intro > p:not(.cy-kicker) { margin-top: 12px; }
  .cy-operations-grid { gap: 40px; }
  .cy-operations-art { min-height: 530px; }
}
@media (max-width: 900px) {
  .cy-hero-grid { min-height: 620px; padding-block: 40px 70px; }
  .cy-hero-grid > div { width: 85%; max-width: 690px; }
  .cy-hero::before { background: linear-gradient(90deg, #0f1c4df2, #0f1c4dba 65%, #0f1c4d55), linear-gradient(0deg, #172863, transparent 50%); }
  .cy-hero .cy-crumb { margin-bottom: 42px; }
  .cy-story-copy { padding: 25px; }
  .cy-story-image { aspect-ratio: 1.45; }
  .cy-story-image > span { left: 25px; font-size: 9px; }
  .cy-coverage-list { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cy-investigation-top { grid-template-columns: 1fr; gap: 28px; }
  .cy-operations-grid { grid-template-columns: 1fr; gap: 32px; }
  .cy-operations-art { min-height: 390px; }
  .cy-operations-principles { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 640px) {
  .cy-hero-grid { padding-block: 29px 55px; min-height: 610px; }
  .cy-hero-grid > div { width: 100%; }
  .cy-hero .cy-crumb { margin-bottom: 42px; font-size: 10px; }
  .cy-hero h1 { font-size: clamp(45px, 10vw, 60px); }
  .cy-hero .cy-kicker { font-size: 10px; }
  .cy-hero-art { object-position: 70% center; opacity: .65; }
  .cy-hero::before { background: linear-gradient(90deg, #0f1c4df5, #0f1c4db0), linear-gradient(0deg, #172863, transparent 45%); }
  .cy-hero .cy-lead { font-size: 16px; }
  .cy-hero .cy-button { font-size: 12px; min-height: 47px; padding-inline: 17px; }
  .cy-testing-stories { grid-template-columns: 1fr; gap: 25px; }
  .cy-story-image { aspect-ratio: 1.6; }
  .cy-story-copy { padding: 25px 24px 29px; }
  .cy .cy-story-copy h3 { font-size: 29px; }
  .cy-story-copy > p:not(.cy-kicker) { font-size: 14px; }
  .cy-testing-coverage { margin-top: 38px; padding-top: 30px; }
  .cy-coverage-list { gap: 25px 20px; }
  .cy-coverage-list dt { font-size: 13px; }
  .cy-coverage-list dd { font-size: 12px; }
  .cy-investigation-questions { grid-template-columns: 1fr; gap: 25px; margin-top: 34px; }
  .cy-investigation-questions li { display: grid; grid-template-columns: 40px 1fr; gap: 0 12px; }
  .cy-investigation-questions li > span { grid-row: span 2; font-size: 28px; }
  .cy-investigation-questions p { grid-column: 2; margin-top: 9px !important; }
  .cy .cy-investigation-questions h3 { font-size: 18px; }
  .cy-operations-art { min-height: 360px; }
  .cy-operations-art figcaption { left: 25px; right: 25px; bottom: 26px; }
  .cy-operations-principles { gap: 26px; grid-template-columns: 1fr; }
}
