/* CAD AI: editorial comparison, outcome steps, workflow and capability field guide. */
.ca-page main :is(h3,h4){font-family:var(--font-display);font-size:var(--type-subhead-size);font-weight:700;line-height:1.35}.ca-page h2 em{color:#169da5}.ca-page figure{margin:0}.ca-page [hidden]{display:none!important}.ca-page :is(article,figure,.ca-section-heading>*){min-width:0}.ca-hero-visual img{object-position:center}.ca-page figcaption{font-size:var(--type-secondary-size);line-height:1.65}
.ca-section-heading{display:grid;grid-template-columns:1.3fr 1fr;gap:7%;align-items:end;margin-bottom:42px}.ca-section-heading h2{margin-bottom:0}.ca-section-heading>p{margin:0;max-width:58ch}

.ca-automation{background:#f3f7f9}.ca-workflow{position:relative;overflow:hidden;background:#fff;border:1px solid var(--line);padding:28px}.ca-workflow-caption{font-weight:700;color:#087f8d;margin:0 0 28px}.ca-workflow ol{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:32px;margin:0;padding:0}.ca-workflow li{position:relative;padding-top:22px;border-top:2px solid #bed8df}.ca-workflow li:not(:last-child):after{content:'→';position:absolute;right:-26px;top:-15px;color:#087f8d;background:#fff;padding-inline:3px}.ca-workflow h3{margin:0 0 12px}.ca-workflow li p{margin:0}.ca-workflow:before{content:'';position:absolute;top:0;left:0;right:0;height:2px;background:linear-gradient(90deg,transparent,#169da5,transparent);background-size:50% 100%;background-repeat:no-repeat;opacity:0}.ca-film-spread{display:grid;grid-template-columns:1.15fr 1fr;gap:6%;align-items:center;margin-top:42px}.ca-film-spread h3{margin:0 0 18px}.ca-film-spread .ip-label{margin-bottom:18px}.ca-video{min-width:0}.ca-video-stage{position:relative;aspect-ratio:16/9;background:#082a3d;overflow:hidden}.ca-video-stage img,.ca-video-stage iframe{display:block;width:100%;height:100%;object-fit:cover;border:0}.ca-video-stage iframe{position:absolute;inset:0}.ca-watch{position:absolute;bottom:16px;left:16px;right:16px;background:#fff;color:#082a3d;border:0;padding:15px 18px;font:inherit;font-weight:700;cursor:pointer;text-align:left;box-shadow:0 8px 24px #0003}.ca-watch span{color:#087f8d;margin-right:10px}.ca-video-tools{display:flex;gap:20px;justify-content:space-between;align-items:center;padding:12px 0}.ca-video-tools a{color:#087f8d;font-weight:700}.ca-close{background:transparent;border:1px solid var(--line);padding:8px 12px;font:inherit;cursor:pointer}.ca-player-status{font-size:var(--type-secondary-size);margin:0}
.ca-capabilities{background:var(--ip-navy);color:var(--body-text-on-dark)}.ca-capabilities :is(h2,h3,h4){color:#fff}.ca-capabilities h2 em{color:var(--cyan)}.ca-capabilities .ip-label{color:var(--cyan)}.ca-context-band h3{margin:0 0 16px}.ca-context-band .ip-inline-link{color:#fff;max-width:440px}.ca-capability-group+.ca-capability-group{margin-top:36px}.ca-group-label{display:flex;align-items:baseline;justify-content:space-between;gap:24px;margin-bottom:18px}.ca-group-label .ip-label{margin:0}.ca-group-label h3{margin:0}.ca-capability-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.ca-capability-grid article{display:flex;flex-direction:column;align-items:stretch;border:1px solid #456f82;padding:26px;background:#103448;transition:border-color .25s,background .25s;position:relative}.ca-capability-grid article:before{content:'';position:absolute;top:-1px;left:26px;width:42px;height:3px;background:var(--cyan)}.ca-capability-grid article:is(:hover,:focus-within){border-color:#8dd5dc;background:#143c50}.ca-capability-tag{color:#8dd5dc;font-size:var(--type-secondary-size);margin-bottom:18px}.ca-capability-grid h4{margin:0 0 18px}.ca-capability-grid article>p{margin:0 0 24px}.ca-capability-grid .ip-inline-link{color:#fff;margin-top:auto}.ca-capability-grid details{margin-top:20px;border-top:1px solid #456f82;padding-top:16px}.ca-capability-grid summary{list-style:none;display:flex;gap:16px;align-items:center;justify-content:space-between;color:#d5eaee;font-weight:700;cursor:pointer}.ca-capability-grid summary::-webkit-details-marker{display:none}.ca-capability-grid summary span{color:var(--cyan);transition:transform .2s}.ca-capability-grid details[open] summary span{transform:rotate(45deg)}.ca-capability-grid details p{margin:16px 0 0}.ca-product-referral{display:flex;align-items:center;justify-content:space-between;gap:32px;border-top:1px solid #456f82;margin-top:38px;padding-top:28px}.ca-product-referral>div{display:flex;align-items:center;gap:22px;max-width:720px}.ca-product-referral img{flex-shrink:0}.ca-product-referral p{margin:0}.ca-product-referral .motion-cta{flex-shrink:0}

@media(prefers-reduced-motion:no-preference){.ca-workflow:before{animation:ca-task-flow 12s ease-in-out infinite;animation-play-state:paused}.ca-workflow.ip-animation-active:before{animation-play-state:running}@keyframes ca-task-flow{0%,15%,100%{background-position:-100% 0;opacity:0}30%,65%{opacity:.75}80%{background-position:200% 0;opacity:0}}}
@media(max-width:1100px){.ca-capability-grid{grid-template-columns:1fr}.ca-capability-grid article{display:grid;grid-template-columns:1fr 1fr;gap:0 28px}.ca-capability-grid :is(.ca-capability-tag,h4){grid-column:1}.ca-capability-grid article>p{grid-column:1}.ca-capability-grid .ip-inline-link{grid-column:2;grid-row:2;align-self:start;margin:0}.ca-capability-grid details{grid-column:2;grid-row:3;margin:0;align-self:start}.ca-workflow ol{grid-template-columns:1fr 1fr;gap:30px}.ca-workflow li:nth-child(2):after{display:none}.ca-group-label{align-items:flex-start;flex-direction:column;gap:10px}}
@media(max-width:750px){.ca-section-heading,.ca-film-spread{grid-template-columns:1fr;gap:26px}.ca-section-heading{margin-bottom:30px}.ca-workflow{padding:24px}.ca-workflow ol{grid-template-columns:1fr;gap:28px}.ca-workflow li:not(:last-child):after{display:none}.ca-workflow li{padding-top:16px}.ca-film-spread{margin-top:32px}.ca-capability-grid article{display:flex;gap:0;padding:24px}.ca-capability-grid .ip-inline-link{align-self:stretch;margin-top:auto}.ca-capability-grid details{margin-top:20px;align-self:stretch}.ca-product-referral,.ca-product-referral>div,.ca-product-referral>div{flex-direction:row}.ca-video-tools{flex-wrap:wrap;align-items:flex-start}.ca-watch{left:10px;right:10px;bottom:10px;padding:10px 12px}}
@media(prefers-reduced-motion:reduce){.ca-page *,.ca-page *:before,.ca-page *:after{animation:none!important;transition:none!important}}

.ca-benefits {
  background: radial-gradient(ellipse at 0 42%, #e7f3f5, transparent 65%), #fff;
}

.ca-outcomes {
  border-block: 2px solid #277783;
}

.ca-outcomes article {
  display: grid;
  grid-template-columns: minmax(0, .47fr) minmax(0, 1.48fr) minmax(0, .86fr);
  border-bottom: 1px solid #a9c9d2;
}

.ca-outcomes article:last-child {
  border-bottom: 0;
}

.ca-outcome-topic,
.ca-outcome-reading,
.ca-outcome-evidence {
  min-width: 0;
  padding: clamp(14px, 2.7vw, 36px);
}

.ca-outcome-topic {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: .65rem;
  padding-inline-start: 0;
  color: #135765;
  font-weight: 700;
  overflow-wrap: anywhere;
}

.ca-outcome-topic .ms-icon {
  color: #247985;
  font-size: 28px;
}

.ca-outcome-reading {
  border-inline-start: 1px solid #bcd7de;
  background: #ffffffa8;
}

.ca-outcome-reading h3 {
  margin: 0 0 .6rem;
}

.ca-outcome-reading p,
.ca-outcome-evidence p {
  margin: 0;
}

.ca-outcome-evidence {
  border-inline-start: 3px solid #42949e;
  background:
    linear-gradient(90deg, #77d1d010 1px, transparent 1px) 0 0 / 20px 20px,
    #10394d;
}

.ca-outcome-evidence strong {
  display: block;
  margin-bottom: .55rem;
  color: #92e4df;
}

.ca-outcome-evidence p {
  color: #eff8fb;
}

@media (max-width: 800px) {
  .ca-outcomes article {
    grid-template-columns: minmax(0, 1fr);
    padding-block: 18px;
  }

  .ca-outcome-topic {
    flex-direction: row;
    align-items: center;
    padding: 0;
  }

  .ca-outcome-reading {
    padding-inline: 0;
    border-inline-start: 0;
  }

  .ca-outcome-evidence {
    padding: 14px 16px;
  }
}

.ca-understanding {
  text-align: center;
  background: linear-gradient(180deg, #fff, #edf5f7);
}

.ca-understanding-head {
  max-width: 680px;
  margin: 0 auto clamp(22px, 4vw, 48px);
}

.ca-understanding-head h2 {
  margin-bottom: 1rem;
}

.ca-understanding-head p {
  margin: 0;
}

.ca-understanding-field {
  background:
    linear-gradient(180deg, #d7e9ee, #f4f9fa 9rem, #fff);
}

.ca-distinction {
  --approach-mark-size: 68px;
  --approach-top: clamp(18px, 3vw, 36px);
  position: relative;
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  padding-block: var(--approach-top) clamp(18px, 3vw, 36px);
}

.ca-distinction::before {
  position: absolute;
  top: calc(var(--approach-top) + var(--approach-mark-size) / 2);
  inset-inline: calc(100% / 6);
  height: 1px;
  background: #83adb9;
  content: "";
}

.ca-distinction article {
  position: relative;
  padding-inline: clamp(14px, 3vw, 38px);
}

.ca-approach-mark {
  display: grid;
  place-items: center;
  width: var(--approach-mark-size);
  aspect-ratio: 1;
  margin: 0 auto clamp(18px, 2.7vw, 34px);
  color: #effbff;
  background: #103c50;
  border: 1px solid #286b7a;
  border-radius: 50%;
  box-shadow: 0 0 0 6px #ebf5f7, 0 0 0 7px #a0c4cd;
}

.ca-approach-mark .ms-icon {
  font-size: 30px;
}

.ca-distinction h3 {
  margin: 0 0 8px;
  color: #0a344a;
}

.ca-distinction p {
  margin: 0;
}

.ca-distinction .ca-definition-purpose {
  margin-bottom: .65rem;
  color: #165d68;
  font-weight: 700;
}

.ca-understanding-key {
  margin: 0;
  padding: clamp(16px, 2.5vw, 28px) clamp(14px, 3vw, 38px);
  border-top: 1px solid #a8cbd3;
  background: #e2f0f2;
  color: #163c4f;
}

@media (max-width: 800px) {
  .ca-distinction {
    grid-template-columns: minmax(0, 1fr);
    padding-block: 0;
  }

  .ca-distinction::before {
    content: none;
  }

  .ca-distinction article {
    padding-block: 22px;
  }

  .ca-distinction article + article {
    border-top: 1px solid #c5dde3;
  }

  .ca-approach-mark {
    width: 46px;
    margin: 0 auto 18px;
  }

  .ca-approach-mark .ms-icon {
    font-size: 24px;
  }
}

.ca-role {
  background: linear-gradient(118deg, #fff 38%, #e8f3f5);
}

.ca-role-spread {
  display: grid;
  grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr);
  gap: clamp(22px, 4.5vw, 64px);
  align-items: center;
}

.ca-role-heading {
  min-width: 0;
}

.ca-role-heading h2 {
  margin-bottom: clamp(14px, 2vw, 24px);
}

.ca-role-heading p,
.ca-role-followup p {
  margin: 0;
}

.ca-role .ca-role-spread figure {
  position: relative;
  min-width: 0;
  padding: clamp(10px, 1.5vw, 20px);
  border: 1px solid #9cbfc9;
  background:
    linear-gradient(#5b9dad1a 1px, transparent 1px) 0 0 / 20px 20px,
    linear-gradient(90deg, #5b9dad1a 1px, transparent 1px) 0 0 / 20px 20px,
    #e4eff2;
  box-shadow: 12px 12px #c6e0e5;
}

.ca-role-spread figure img {
  display: block;
  width: 100%;
  height: auto;
}

.ca-role-spread figcaption {
  padding-top: 10px;
  color: var(--body-text);
}

.ca-role-followup {
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr);
  align-items: center;
  gap: clamp(18px, 5vw, 64px);
  margin-top: clamp(30px, 5vw, 64px);
  padding-block: clamp(18px, 3vw, 38px);
  border-block: 1px solid #9fbdc7;
}

.ca-start-question {
  padding: 3px 0 3px clamp(14px, 2.4vw, 30px);
  border-inline-start: 3px solid #318b99;
}

.ca-start-question > span {
  display: block;
  margin-bottom: .55rem;
  color: #176170;
  font-weight: 700;
}

.ca-start-question p {
  font-family: var(--font-display);
  font-size: var(--type-subhead-size);
  line-height: 1.42;
  letter-spacing: -.03em;
}

@media (max-width: 800px) {
  .ca-role-spread,
  .ca-role-followup {
    grid-template-columns: minmax(0, 1fr);
  }

  .ca-role .ca-role-spread figure {
    box-shadow: 6px 6px #c6e0e5;
  }
}

.ca-future {
  background: linear-gradient(155deg, #eaf4f6, #fff 70%);
}

.ca-future-banner {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  align-items: stretch;
  background: radial-gradient(ellipse at 100% 50%, #195064, #08283b 72%);
  border-block-end: 4px solid #6bc8cb;
}

.ca-future-heading {
  align-self: center;
  min-width: 0;
  padding: clamp(20px, 4.4vw, 60px);
}

.ca-future .ca-future-heading :is(h2, p) {
  color: #f5fbff;
}

.ca-future .ca-future-heading :is(.ip-label, h2 em) {
  color: #95dfdd;
}

.ca-future-heading p {
  margin: 0;
}

.ca-future .ca-horizon-image {
  position: relative;
  min-width: 0;
}

.ca-horizon-image img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.ca-horizon {
  display: grid;
  grid-template-columns: minmax(0, .85fr) minmax(0, 1.15fr);
  gap: clamp(22px, 5vw, 70px);
  padding-block: clamp(24px, 4vw, 54px);
}

.ca-horizon h3 {
  margin: 0 0 .75rem;
}

.ca-horizon ul {
  margin: 0;
  padding: 0;
  list-style: none;
}

.ca-horizon li {
  position: relative;
  padding: 12px 0 12px 24px;
  border-top: 1px solid #a4c7cf;
}

.ca-horizon li::before {
  position: absolute;
  top: 1.16em;
  left: 2px;
  width: 7px;
  height: 7px;
  background: #2a8792;
  transform: rotate(45deg);
  content: "";
}

.ca-future-scope {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  gap: 12px 32px;
  padding: 16px clamp(12px, 2.5vw, 28px);
  background: #e4f0f3;
  border-inline-start: 3px solid #3b909b;
}

.ca-future-scope p {
  margin: 0;
}

.ca-future-scope a {
  max-width: 100%;
}

@media (max-width: 780px) {
  .ca-future-banner,
  .ca-horizon {
    grid-template-columns: minmax(0, 1fr);
  }

  .ca-future .ca-horizon-image {
    aspect-ratio: 3 / 2;
  }
}

.ca-context-band {
  display: grid;
  grid-template-columns: minmax(0, 1fr) minmax(0, 1.45fr);
  border: 1px solid #426b7e;
  background: #103448;
  margin-bottom: 40px;
}

.ca-context-band > div {
  align-self: center;
  min-width: 0;
  padding: clamp(18px, 3vw, 34px);
}

.ca-context-band figure {
  position: relative;
  min-width: 0;
}

.ca-context-band figure img {
  position: absolute;
  inset: 0;
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
}

@media (max-width: 750px) {
  .ca-context-band {
    grid-template-columns: minmax(0, 1fr);
  }

  .ca-context-band figure {
    aspect-ratio: 3 / 2;
  }
}

.ca-workflow-art {
  display: block;
  width: 96px;
  max-width: 100%;
  height: auto;
  margin-bottom: 14px;
  background: radial-gradient(ellipse at center, #e8f4f6, transparent 75%);
}
