.inspections-page {
  margin: 0;
  color: #101633;
  background: #fff;
  font-family: "DM Sans", system-ui, sans-serif;
  letter-spacing: 0;
  line-height: 1.65;
}
.inspections-page *, .inspections-page *::before, .inspections-page *::after,
.inspection-showcase *, .inspection-showcase *::before { box-sizing: border-box; }
.inspections-page main { min-width: 0; }
.ins-wrap, .inspection-showcase__inner { width: min(1180px, calc(100% - 48px)); margin-inline: auto; }
.inspections-page h1, .inspections-page h2, .inspection-showcase h2 {
  margin: 0;
  font-family: "Playfair Display", Georgia, serif;
  font-weight: 500;
  letter-spacing: 0;
}
.inspections-page h1 { font-size: 100px; line-height: 1.02; }
.inspections-page h2 { font-size: 64px; line-height: 1.06; }
.inspection-showcase h2 { font-size: 48px; line-height: 1.12; }
.inspections-page h3 { margin: 0; font-size: 20px; line-height: 1.35; font-weight: 600; }
.inspections-page p { margin: 20px 0 0; }
.inspections-page .ins-eyebrow, .inspection-showcase .inspection-showcase__eyebrow {
  margin: 0 0 18px;
  color: #244690;
  font-size: 12px;
  font-weight: 700;
  letter-spacing: 0;
  text-transform: uppercase;
}
.ins-intro {
  position: relative;
  isolation: isolate;
  padding: 154px 0 40px;
  color: #fff;
  background: #050a26;
}
.ins-intro__backdrop { position: absolute; top: 80px; right: 0; height: calc(100% - 80px); aspect-ratio: 1672 / 941; z-index: -2; background: url('/_assets/inspections/field-inspection.png') center / contain no-repeat; mask-image: linear-gradient(90deg,transparent,#000 35%),linear-gradient(180deg,transparent,#000 6%); mask-composite: intersect; }
.ins-intro::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,rgba(5,10,38,.97),rgba(5,10,38,.88) 34%,rgba(5,10,38,.18) 72%),linear-gradient(0deg,#050a26,rgba(5,10,38,0) 50%); }
.ins-intro__content { max-width: 560px; }
.inspections-page .ins-eyebrow { display: flex; align-items: center; gap: 10px; }
.inspections-page .ins-eyebrow::before { content: ""; flex: 0 0 8px; height: 8px; border-radius: 50%; background: #19aa62; }
.ins-intro .ins-eyebrow, .ins-outro .ins-eyebrow { color: #95bff9; }
.ins-intro .ins-lead { max-width: 520px; color: #95bff9; font-family: "Playfair Display",Georgia,serif; font-size: 34px; font-style: italic; line-height: 1.3; }
.ins-intro__copy { max-width: 510px; color: #d5dced; font-size: 18px; }
.ins-actions { display: flex; align-items: center; flex-wrap: wrap; gap: 12px; margin-top: 32px; }
.ins-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 54px;
  gap: 12px;
  border: 1px solid rgba(255,255,255,.2);
  border-radius: 999px;
  padding: 15px 24px;
  background: linear-gradient(135deg,#c9009f,#2f73db);
  box-shadow: 0 18px 34px rgba(5,10,38,.22);
  color: #fff;
  font-size: 15px;
  font-weight: 700;
  text-decoration: none;
  text-align: center;
  transition: transform .2s, box-shadow .2s, border-color .2s;
}
.ins-button:hover { transform: translateY(-2px); border-color: rgba(255,255,255,.5); box-shadow: 0 22px 44px rgba(5,10,38,.32); }
.ins-button--ghost { background: rgba(255,255,255,.08); backdrop-filter: blur(16px); }
.ins-overview { padding-bottom: 32px; background: #050a26; }
.ins-journey { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-block: 1px solid rgba(149,191,249,.24); }
.ins-journey a { display: grid; grid-template-columns: 1fr 16px; gap: 6px 12px; padding: 22px 28px; color: #fff; text-decoration: none; background: rgba(5,10,38,.2); transition: background .2s; }
.ins-journey a + a { border-left: 1px solid rgba(149,191,249,.24); }
.ins-journey a:hover { background: rgba(149,191,249,.12); }
.ins-journey span { color: #95bff9; font-size: 11px; text-transform: uppercase; font-weight: 700; }
.ins-journey strong { grid-row: 2; font-size: 15px; line-height: 1.45; font-weight: 600; }
.ins-journey b { grid-column: 2; grid-row: 1 / span 2; align-self: center; color: #95bff9; }
.ins-text-link, .inspection-showcase__link { color: #244690; font-weight: 700; text-decoration: none; }
.ins-text-link:hover, .inspection-showcase__link:hover { text-decoration: underline; text-underline-offset: 5px; }
.ins-intro .ins-text-link { color: #fff; }
.ins-text-link span, .inspection-showcase__link span { margin-left: 10px; }
.inspection-showcase { padding: 80px 0; scroll-margin-top: 105px; }
.ins-section { padding: 104px 0; scroll-margin-top: 105px; background: #fff; }
.ins-section__head, .inspection-showcase__head { display: grid; grid-template-columns: minmax(0,1.15fr) minmax(0,1fr); align-items: end; gap: 60px; margin-bottom: 36px; }
.ins-section__head > p, .inspection-showcase__head > p { margin: 0; color: #586175; font-size: 17px; }
.ins-tabs { display: flex; gap: 32px; border-bottom: 1px solid #d9dfeb; margin-bottom: 28px; }
.ins-tabs button {
  display: block;
  min-height: 50px;
  border: 0;
  border-bottom: 3px solid transparent;
  padding: 10px 0;
  color: #586175;
  background: transparent;
  font: 600 15px/1.4 "DM Sans", system-ui, sans-serif;
  cursor: pointer;
}
.ins-tabs button[aria-selected="true"] { color: #244690; border-image: linear-gradient(90deg,#c9009f,#2f73db) 1; }
.ins-tabs button:hover { color: #244690; }
.ins-panels figure { margin: 0; }
.ins-panels figure[hidden] { display: none; }
.ins-image-link { display: block; cursor: zoom-in; }
.ins-image-link img { display: block; width: 100%; height: auto; border: 1px solid #dce1ea; border-radius: 8px; }
.ins-panels .ins-image-link { aspect-ratio: 2964 / 1638; background: #f6f7f9; box-shadow: 0 24px 64px rgba(16,22,51,.12); border-radius: 8px; }
.ins-panels .ins-image-link img { width: 100%; height: 100%; object-fit: contain; }
.ins-panels figcaption { display: flex; align-items: start; justify-content: space-between; gap: 24px; padding-top: 22px; }
.ins-panels figcaption p { max-width: 740px; margin-top: 6px; color: #586175; font-size: 15px; }
.ins-icon-button {
  display: inline-flex;
  flex: 0 0 44px;
  width: 44px;
  height: 44px;
  align-items: center;
  justify-content: center;
  padding: 0;
  border: 1px solid #ccd3e1;
  border-radius: 6px;
  background: #fff;
  cursor: pointer;
}
.ins-icon-button:hover { background: #edf2f9; }
.ins-field { background: linear-gradient(180deg,#050a26,#081433); color: #fff; }
.ins-field .ins-eyebrow, .ins-field .ins-text-link { color: #95bff9; }
.ins-field .ins-section__head > p, .ins-field .ins-mobile-grid figcaption p { color: #bac6dd; }
.ins-mobile-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 44px; margin: 60px 0 36px; }
.ins-mobile-grid figure { margin: 0; }
.ins-mobile-grid figure:nth-child(2) { padding-top: 44px; }
.ins-image-link--mobile { width: min(260px,100%); margin-inline: auto; }
.ins-image-link--mobile img { aspect-ratio: 1206 / 2622; object-fit: contain; box-shadow: 0 28px 50px rgba(0,0,0,.3); transition: transform .35s; }
@media (hover: hover) and (prefers-reduced-motion: no-preference) {
  .ins-mobile-grid .ins-image-link:hover img { transform: translateY(-8px); }
}
.ins-mobile-grid figcaption { padding-top: 24px; }
.ins-mobile-grid figcaption span { display: block; margin-bottom: 12px; color: #95bff9; font-size: 12px; font-weight: 700; text-transform: uppercase; }
.ins-mobile-grid figcaption p { margin-top: 10px; color: #586175; font-size: 15px; }
.ins-builder__grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: 80px; }
.ins-builder p { color: #586175; }
.ins-builder figure { width: min(460px,100%); margin: 0 auto; }
.ins-builder .ins-image-link { box-shadow: 0 24px 64px rgba(16,22,51,.1); border-radius: 8px; }
.ins-builder figcaption { margin-top: 12px; color: #586175; font-size: 13px; }
.ins-fields { margin: 28px 0 0; }
.ins-fields div { border-top: 1px solid #dce1ea; padding: 18px 0; }
.ins-fields dt { font-weight: 700; }
.ins-fields dd { margin: 6px 0 0; color: #586175; }
.ins-workflows { background: #f3f6fa; }
.ins-workflows h2 { max-width: 780px; }
.ins-workflow-list { margin-top: 34px; border-top: 1px solid #d5dce8; }
.ins-workflow-list a { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr) 24px; align-items: center; gap: 24px; padding: 24px 0; border-bottom: 1px solid #d5dce8; color: #101633; text-decoration: none; }
.ins-workflow-list a:hover { color: #244690; }
.ins-workflow-list a:hover b { transform: translateX(5px); }
.ins-workflow-list a span:first-child { font-size: 19px; font-weight: 600; }
.ins-workflow-list a span:nth-child(2) { color: #586175; font-size: 15px; }
.ins-workflow-list b { font-size: 22px; transition: transform .2s; }
.ins-outro { color: #fff; background: #050a26; }
.ins-outro h2 { max-width: 900px; font-size: 80px; }
.ins-outro h2 em { color: #95bff9; font-weight: 500; }
.ins-outro p:not(.ins-eyebrow) { max-width: 650px; margin-bottom: 28px; color: #ccd5e6; }
.ins-footer { padding: 64px 0 28px; background: #050a26; border-top: 1px solid #28304c; color: #aab5ca; }
.ins-footer__grid { display: grid; grid-template-columns: 1.7fr repeat(3,minmax(0,1fr)); gap: 40px; }
.ins-footer__logo { display: block; height: auto; filter: brightness(0) invert(1); }
.ins-footer nav { display: flex; flex-direction: column; align-items: flex-start; gap: 10px; }
.ins-footer nav h3 { margin-bottom: 10px; color: #95bff9; font: 700 12px/1.5 "DM Sans",system-ui,sans-serif; text-transform: uppercase; }
.ins-footer nav a { color: #dce3ef; text-decoration: none; font-size: 14px; }
.ins-footer nav a:hover { text-decoration: underline; }
.ins-footer p { font-size: 13px; margin: 0; }
.ins-footer__brand p { margin-top: 24px; max-width: 280px; }
.ins-footer__bottom { display: flex; justify-content: space-between; flex-wrap: wrap; gap: 20px; border-top: 1px solid #28304c; padding-top: 28px; margin-top: 48px; }
.ins-scroll-meter { position: fixed; inset: 0 0 auto; z-index: 1000; height: 3px; background: linear-gradient(90deg,#c9009f,#2f73db,#95bff9); transform: scaleX(0); transform-origin: left; pointer-events: none; }
.ins-lightbox { width: min(1500px,calc(100% - 32px)); max-width: none; max-height: calc(100dvh - 32px); margin: auto; padding: 12px; border: 0; border-radius: 8px; background: #fff; color: #101633; }
.ins-lightbox::backdrop { background: rgba(5,10,38,.85); }
.ins-lightbox__bar { display: flex; justify-content: flex-end; align-items: center; gap: 20px; margin-bottom: 12px; }
.ins-original { color: #244690; font-size: 14px; }
.ins-lightbox__image { display: block; width: 100%; height: auto; max-height: calc(100dvh - 124px); object-fit: contain; }
.inspections-page :focus-visible, .inspection-showcase :focus-visible { outline: 3px solid #2b6bd6; outline-offset: 4px; }
.inspection-showcase { background: #fff; color: #101633; font-family: "DM Sans",system-ui,sans-serif; letter-spacing: 0; line-height: 1.65; }
.inspection-showcase__views { display: grid; grid-template-columns: minmax(0,.8fr) minmax(0,1.5fr); align-items: center; gap: 44px; }
.inspection-showcase--core .inspection-showcase__views { grid-template-columns: minmax(0,1.5fr) minmax(0,.8fr); }
.inspection-showcase figure { min-width: 0; margin: 0; }
.inspection-showcase figure a { display: block; }
.inspection-showcase figure img { display: block; width: 100%; height: auto; border: 1px solid #dce1ea; border-radius: 8px; }
.inspection-showcase .inspection-showcase__mobile a { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.inspection-showcase__mobile img { aspect-ratio: 1206 / 2622; object-fit: contain; }
.inspection-showcase figcaption { margin-top: 16px; color: #101633; font-size: 14px; font-weight: 700; }
.inspection-showcase figcaption span { display: block; color: #586175; font-size: 13px; font-weight: 400; }
.inspection-showcase__link { display: inline-block; margin-top: 28px; }
@media (max-width: 900px) {
  .inspections-page h1 { font-size: 80px; }
  .inspections-page h2 { font-size: 48px; }
  .inspection-showcase h2 { font-size: 40px; }
  .ins-intro::before { background: linear-gradient(90deg,rgba(5,10,38,.96),rgba(5,10,38,.72) 60%,rgba(5,10,38,.35)),linear-gradient(0deg,#050a26,transparent); }
  .ins-journey a { padding: 18px 16px; }
  .ins-section { padding: 80px 0; }
  .ins-section__head, .inspection-showcase__head { gap: 30px; }
  .ins-builder__grid { gap: 36px; }
  .ins-mobile-grid { gap: 24px; }
  .ins-footer__grid { grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
  .ins-footer__brand { grid-column: 1 / -1; }
  .inspection-showcase__views, .inspection-showcase--core .inspection-showcase__views { grid-template-columns: 1fr 1fr; gap: 28px; }
}
@media (max-width: 640px) {
  .ins-wrap, .inspection-showcase__inner { width: calc(100% - 36px); }
  .ins-intro { padding: 126px 0 28px; }
  .ins-intro__backdrop { inset: 0; height: auto; aspect-ratio: auto; background-position: 62% center; background-size: cover; mask-image: none; }
  .ins-intro::before { background: linear-gradient(90deg,rgba(5,10,38,.93),rgba(5,10,38,.78)),linear-gradient(0deg,#050a26,transparent); }
  .inspections-page h1 { font-size: 54px; }
  .inspections-page h2, .inspection-showcase h2 { font-size: 36px; }
  .ins-intro .ins-lead { font-size: 26px; }
  .ins-intro__copy { font-size: 16px; }
  .ins-actions { gap: 10px; margin-top: 24px; }
  .ins-intro .ins-button { min-height: 48px; padding: 12px 18px; font-size: 14px; }
  .ins-journey { grid-template-columns: 1fr; }
  .ins-journey a { grid-template-columns: minmax(0,1fr) minmax(0,1fr) 16px; align-items: center; gap: 12px; padding: 14px 0; background: none; }
  .ins-journey a + a { border-left: 0; border-top: 1px solid rgba(149,191,249,.2); }
  .ins-journey span { font-size: 10px; }
  .ins-journey strong { grid-row: 1; grid-column: 2; font-size: 12px; }
  .ins-journey b { grid-row: 1; grid-column: 3; }
  .ins-section { padding: 64px 0; }
  .inspection-showcase { padding: 52px 0; }
  .ins-section__head, .inspection-showcase__head { grid-template-columns: 1fr; gap: 20px; margin-bottom: 28px; }
  .ins-section__head > p, .inspection-showcase__head > p { font-size: 16px; }
  .ins-tabs { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 12px; }
  .ins-tabs button { font-size: 13px; }
  .ins-panels figcaption { gap: 16px; }
  .ins-mobile-grid { grid-template-columns: 1fr; gap: 48px; margin-top: 40px; }
  .ins-mobile-grid figure:nth-child(2) { padding-top: 0; }
  .ins-mobile-grid figcaption { max-width: 320px; margin-inline: auto; }
  .ins-mobile-grid h3 { font-size: 20px; }
  .ins-mobile-grid figcaption p { font-size: 15px; }
  .ins-builder__grid { grid-template-columns: 1fr; gap: 28px; }
  .ins-workflow-list a { grid-template-columns: minmax(0,1fr) 24px; gap: 6px 18px; }
  .ins-workflow-list a span:nth-child(2) { grid-row: 2; }
  .ins-workflow-list b { grid-column: 2; grid-row: 1 / span 2; }
  .ins-outro h2 { font-size: 44px; }
  .ins-footer__grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .ins-lightbox { width: calc(100% - 16px); padding: 10px; }
  .inspection-showcase__views, .inspection-showcase--core .inspection-showcase__views { grid-template-columns: 1fr; gap: 32px; }
  .inspection-showcase__mobile { max-width: 360px; }
}
@media (max-width: 360px) {
  .inspections-page h1 { font-size: 48px; }
}
@media (max-width: 640px) and (max-height: 700px) {
  .ins-intro { padding: 100px 0 24px; }
  .ins-intro .ins-eyebrow { margin-bottom: 12px; }
  .ins-intro .ins-lead { margin-top: 14px; font-size: 22px; }
  .ins-intro__copy { display: none; }
  .ins-intro .ins-actions { margin-top: 20px; }
}
@media (prefers-reduced-motion: reduce) {
  .ins-button, .ins-journey a, .ins-mobile-grid img, .ins-workflow-list b { transition: none; }
  .ins-button:hover, .ins-workflow-list a:hover b { transform: none; }
  .ins-scroll-meter { display: none; }
}
