/* Services page */
.services-page .reference-shell { padding-top: 78px; padding-bottom: 148px; }
.services-page .publication-hero { min-height: 330px; padding-bottom: 38px; }
.services-page .publication-hero h1 { max-width: 960px; font-size: clamp(60px,6.1vw,100px); }
.services-positioning {
  display: grid;
  grid-template-columns: minmax(0,1.14fr) minmax(300px,.86fr);
  gap: 56px;
  align-items: end;
  margin: 0 0 18px;
  padding: 31px 32px 34px;
  border: 1px solid rgba(84,213,255,.28);
  border-radius: var(--avds-radius);
  background: linear-gradient(135deg,#112b44,#0a1724 76%);
}
.services-positioning h2 {
  max-width: 820px;
  margin: 18px 0 0;
  color: #e7f8ff;
  font-size: clamp(38px,4.1vw,66px);
  line-height: .92;
  letter-spacing: -.075em;
}
.services-positioning > p { max-width: 540px; margin: 0; color: #a8bdca; font-size: 14px; line-height: 1.65; }
.services-proof-grid {
  display: grid;
  grid-template-columns: repeat(4,minmax(0,1fr));
  gap: 1px;
  margin: 0 0 18px;
  overflow: hidden;
  border: 1px solid var(--line);
  border-radius: var(--avds-radius);
  background: var(--line);
}
.services-proof-grid article { min-height: 152px; padding: 23px 22px; background: #09131e; }
.services-proof-grid span { display: block; color: #71899d; font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.services-proof-grid strong { display: block; margin-top: 30px; color: var(--blue); font-size: 42px; line-height: .9; letter-spacing: -.08em; }
.services-proof-grid p { margin: 10px 0 0; color: #879ead; font-size: 10px; line-height: 1.4; }
.services-section { margin-top: 116px; }
.services-section .section-title-row { margin-bottom: 34px; }
.services-section .section-title-row h2 { font-size: clamp(44px,4.5vw,72px); }
.services-audience-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 14px; }
.services-audience-grid article {
  min-height: 270px;
  display: flex;
  flex-direction: column;
  padding: 25px;
  border: 1px solid var(--line);
  border-radius: var(--avds-radius);
  background: linear-gradient(145deg,#102137,#09131e);
}
.services-audience-grid article.is-paid { border-color: rgba(84,213,255,.25); background: linear-gradient(145deg,#12304b,#0a1724); }
.services-audience-grid h3 { margin: 42px 0 12px; color: #e0f0f8; font-size: 24px; line-height: 1.02; letter-spacing: -.055em; }
.services-audience-grid article > p:not(.source-class) { margin: 0; color: #9aafbd; font-size: 12px; line-height: 1.58; }
.services-audience-marker { margin-top: auto; padding-top: 24px; color: var(--blue); font-size: 9px; letter-spacing: .11em; text-transform: uppercase; }
.services-offer-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.services-offer-grid article {
  min-height: 360px;
  display: flex;
  flex-direction: column;
  padding: 28px;
  border: 1px solid var(--line);
  border-radius: var(--avds-radius);
  background: linear-gradient(145deg,#10253b,#09131e 84%);
}
.services-offer-head { display: flex; justify-content: space-between; align-items: start; gap: 20px; }
.services-offer-head span { color: var(--blue); font-size: 9px; letter-spacing: .12em; text-transform: uppercase; }
.services-offer-head b { color: #526e83; font-size: 24px; font-weight: 500; letter-spacing: -.08em; }
.services-offer-grid h3 { max-width: 520px; margin: 52px 0 11px; color: #e1f2fa; font-size: 29px; line-height: .98; letter-spacing: -.06em; }
.services-offer-audience { margin: 0 0 16px !important; color: #78a5ba !important; font-size: 10px !important; letter-spacing: .05em; }
.services-offer-grid article > p:not(.services-offer-audience) { max-width: 640px; margin: 0; color: #a0b4c1; font-size: 13px; line-height: 1.58; }
.services-offer-grid ul { margin: auto 0 0; padding: 22px 0 0 17px; color: #d0e3ec; font-size: 11px; line-height: 1.7; }
.services-offer-grid li::marker { color: var(--blue); }
.services-workflow-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 1px; background: var(--line); border: 1px solid var(--line); border-radius: var(--avds-radius); overflow: hidden; }
.services-workflow-grid article { min-height: 220px; padding: 24px; background: #09131e; }
.services-workflow-grid span { color: var(--blue); font-size: 10px; }
.services-workflow-grid h3 { margin: 52px 0 11px; color: #e0f0f8; font-size: 25px; letter-spacing: -.06em; }
.services-workflow-grid p { margin: 0; color: #91a7b7; font-size: 12px; line-height: 1.55; }
.services-request {
  display: grid;
  grid-template-columns: minmax(0,.92fr) minmax(360px,1.08fr);
  gap: 60px;
  margin-top: 116px;
  padding: 34px;
  border: 1px solid rgba(84,213,255,.3);
  border-radius: var(--avds-radius);
  background: linear-gradient(135deg,#12304b,#081521 76%);
}
.services-request h2 { max-width: 620px; margin: 18px 0 16px; color: #e8f8ff; font-size: clamp(42px,4.5vw,70px); line-height: .91; letter-spacing: -.075em; }
.services-request > div > p:not(.eyebrow) { max-width: 440px; margin: 0; color: #a9bdca; font-size: 13px; line-height: 1.6; }
.services-request-actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: 28px; }
.services-request ol { display: grid; gap: 0; margin: 0; padding: 0; list-style: none; border-top: 1px solid rgba(153,208,230,.18); }
.services-request li { display: grid; grid-template-columns: 1fr 1.1fr; gap: 24px; padding: 17px 0; border-bottom: 1px solid rgba(153,208,230,.18); }
.services-request li b { color: #e2f2fa; font-size: 12px; }
.services-request li span { color: #89a5b5; font-size: 11px; line-height: 1.45; }
.services-boundary { margin-top: 24px; padding-top: 22px; border-top: 1px solid var(--line); }
.services-boundary p { margin: 0; color: #758c9e; font-size: 10px; line-height: 1.6; }
.services-boundary p + p { margin-top: 9px; color: #61798c; }
.services-boundary a { color: #94cfe3; }

@media (min-width: 1600px) {
  .services-page .publication-hero h1 { max-width: 1180px; }
  .services-offer-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .services-audience-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
  .services-workflow-grid { grid-template-columns: repeat(4,minmax(0,1fr)); }
}

@media (min-width: 2400px) {
  .services-positioning { grid-template-columns: minmax(0,10fr) minmax(420px,6fr); }
  .services-proof-grid,
  .services-audience-grid,
  .services-workflow-grid { grid-template-columns: repeat(8,minmax(0,1fr)); }
  .services-proof-grid article,
  .services-audience-grid article,
  .services-workflow-grid article { grid-column: span 2; }
  .services-offer-grid { grid-template-columns: repeat(8,minmax(0,1fr)); }
  .services-offer-grid article { grid-column: span 2; }
  .services-request { grid-template-columns: minmax(0,7fr) minmax(0,9fr); }
}

@media (max-width: 1180px) {
  .services-page .publication-hero { min-height: 0; }
  .services-proof-grid,
  .services-audience-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .services-request { grid-template-columns: 1fr; gap: 38px; }
}

@media (max-width: 820px) {
  .services-positioning { grid-template-columns: 1fr; gap: 26px; }
  .services-page .reference-shell { padding-top: 54px; padding-bottom: 100px; }
  .services-page .publication-hero { min-height: 0; padding-bottom: 42px; }
  .services-page .publication-hero h1 { font-size: clamp(46px,12vw,70px); }
  .services-section { margin-top: 84px; }
  .services-section .section-title-row { display: block; }
  .services-section .section-title-row > p { margin-top: 24px; }
  .services-offer-grid { grid-template-columns: 1fr; }
  .services-workflow-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
}

@media (max-width: 620px) {
  .services-proof-grid,
  .services-audience-grid,
  .services-workflow-grid { grid-template-columns: 1fr; }
  .services-positioning { display: block; padding: 25px; }
  .services-positioning > p { margin-top: 25px; }
  .services-request { display: block; margin-top: 84px; padding: 25px; }
  .services-request-actions { display: grid; }
  .services-request-actions .button { justify-content: center; }
  .services-request li { display: block; padding: 16px 0; }
  .services-request li span { display: block; margin-top: 7px; }
}
