.ethics-hero { padding-block:clamp(3rem,6vw,6rem); border-block-end:1px solid var(--line,#c8d9e7); }
.ethics-hero-layout { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:clamp(2.5rem,7vw,7rem); align-items:center; }
.ethics-hero-copy h1 { font-size:clamp(3.5rem,7.5vw,7rem); line-height:1; letter-spacing:-.055em; margin:0 0 1.75rem; }
.ethics-hero-copy > p:not(.eyebrow) { max-width:37rem; }
.ethics-hero-copy .ethics-standfirst { font-size:clamp(1.3rem,2vw,1.65rem); line-height:1.45; color:var(--navy,#082238); margin-block:0 1.25rem; }
.ethics-hero-copy > .text-link { margin-block-start:.75rem; }
.ethics-promise { padding:clamp(2rem,4vw,3.5rem); color:#fff; background:#082238; border-radius:3px; }
.ethics-promise-mark { display:block; color:#90caff; margin-block-end:2rem; }
.ethics-promise h2 { color:#fff; font-size:clamp(2rem,3.1vw,3rem); line-height:1.15; margin:0 0 1.5rem; }
.ethics-promise p { color:#e0ebf4; font-size:1rem; line-height:1.8; margin:0; }
.ethics-promise .ethics-promise-signoff { border-block-start:1px solid #486175; padding-block-start:1.5rem; margin-block-start:2rem; color:#fff; font-weight:600; }
.ethics-standards { display:grid; grid-template-columns:minmax(13rem,.75fr) minmax(0,1.6fr); gap:clamp(2.5rem,7vw,7rem); align-items:start; }
.ethics-standards-intro { position:sticky; top:7rem; }
.ethics-standards-intro h2 { font-size:clamp(2rem,3.2vw,3rem); line-height:1.15; margin-block:0 1.5rem; }
.ethics-standards-intro > p:not(.eyebrow) { font-size:1rem; max-width:25rem; }
.ethics-page-nav { display:grid; gap:.25rem; margin-block-start:1.75rem; border-block-start:1px solid var(--line,#c8d9e7); padding-block-start:1rem; }
.ethics-page-nav a { width:fit-content; display:flex; align-items:center; min-height:44px; color:#075ca8; font-size:.9375rem; text-decoration:underline; text-underline-offset:.2em; }
.ethics-principles { list-style:none; padding:0; margin:0; }
.ethics-principles > li { display:grid; grid-template-columns:2.5rem minmax(0,1fr); gap:1.25rem; padding-block:2rem; border-block-start:1px solid var(--line,#c8d9e7); }
.ethics-principles > li:first-child { padding-block-start:0; border-block-start:0; }
.ethics-principles > li:last-child { padding-block-end:0; }
.ethics-number { color:#075ca8; font-size:.875rem; line-height:1.6; font-weight:700; padding-block-start:.25rem; font-variant-numeric:tabular-nums; }
.ethics-principles h3 { font-family:var(--serif,Georgia,serif); font-size:clamp(1.45rem,2vw,1.9rem); line-height:1.25; letter-spacing:-.02em; font-weight:400; color:var(--navy,#082238); margin:0 0 .875rem; }
.ethics-principles p { font-size:1.0625rem; line-height:1.8; margin:0; max-width:43rem; }
.ethics-agreement { background:#f1f6fa; border-block:1px solid #d7e4ee; padding-block:clamp(3rem,5vw,5rem); }
.ethics-agreement-layout { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.15fr); gap:clamp(2rem,6vw,6rem); align-items:start; }
.ethics-agreement h2, .ethics-contact h2 { font-size:clamp(2rem,3.2vw,3rem); line-height:1.15; margin-block:0 1.5rem; }
.ethics-agreement p { margin-block:0 1rem; }
.ethics-contact { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,.75fr); gap:clamp(2rem,6vw,6rem); align-items:center; }
.ethics-contact p { max-width:41rem; }
.ethics-contact-actions { display:flex; flex-direction:column; align-items:flex-start; gap:1.25rem; }
.ethics-phone { font-size:1.35rem; color:var(--navy,#082238); text-underline-offset:.2em; }
:is(.ethics-hero,.ethics-standards,.ethics-agreement,.ethics-contact) [id] { scroll-margin-block-start:2rem; }
:is(#our-commitments,#your-agreement,#ethics-questions) { scroll-margin-block-start:2rem; }
:is(.ethics-hero,.ethics-standards,.ethics-agreement,.ethics-contact) a:focus-visible { outline:3px solid #075ca8; outline-offset:5px; }
@media(max-width:56em) {
  .ethics-hero-layout,.ethics-standards,.ethics-agreement-layout,.ethics-contact { grid-template-columns:minmax(0,1fr); }
  .ethics-hero-copy h1 { font-size:clamp(3.5rem,11vw,6rem); }
  .ethics-promise { max-width:42rem; }
  .ethics-standards-intro { position:static; }
  .ethics-page-nav { margin-block-start:1.25rem; }
  .ethics-standards-intro > p:not(.eyebrow) { max-width:38rem; }
}
@media(max-width:30em) {
  .ethics-principles > li { grid-template-columns:1.75rem minmax(0,1fr); gap:.75rem; }
  .ethics-principles p { font-size:1rem; }
  .ethics-contact-actions .button { width:100%; justify-content:space-between; }
}
@media print {
  .ethics-promise { color:#082238; background:#fff; border:1px solid #c8d9e7; }
  .ethics-promise h2,.ethics-promise p,.ethics-promise .ethics-promise-signoff { color:#082238; }
  .ethics-standards-intro { position:static; }
  .ethics-page-nav { display:none; }
  .ethics-principles > li { break-inside:avoid; }
}
