/* ── additional styles for the service pages ─────────────────────────── */
.page-hero{padding:74px 0 54px;background:var(--paper);border-bottom:1px solid var(--line)}
.page-hero h1{font-family:var(--serif);font-weight:400;font-size:58px;line-height:1.05;letter-spacing:-1.6px;color:var(--navy-deep);margin:18px 0 0}
.page-lede{margin:22px 0 0;font-size:17px;line-height:1.66;color:var(--muted);max-width:62ch}
.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:4px;overflow:hidden}
.why-card{background:var(--white);padding:27px 25px 25px}
.why-card h3{margin:0 0 10px;font-size:15px;font-weight:700;color:var(--navy-deep);line-height:1.34}
.why-card p{margin:0;font-size:13.5px;line-height:1.68;color:var(--muted)}
.section-note{margin:26px 0 0;font-size:14px;line-height:1.72;color:var(--ink);max-width:76ch;padding-left:17px;border-left:3px solid var(--red)}
.method-list{display:grid;gap:1px;background:var(--line);border:1px solid var(--line);border-radius:4px;overflow:hidden}
.method-step{background:var(--white);display:grid;grid-template-columns:76px 1fr;gap:18px;padding:24px 26px}
.method-num{font-family:var(--serif);font-size:27px;color:var(--red);line-height:1}
.method-body h3{margin:0 0 7px;font-size:15.5px;font-weight:700;color:var(--navy-deep);line-height:1.34}
.method-body p{margin:0;font-size:13.5px;line-height:1.7;color:var(--muted);max-width:82ch}
.tick-list{list-style:none;margin:0;padding:0;display:grid;gap:13px}
.tick-list li{display:grid;grid-template-columns:22px 1fr;gap:11px;align-items:start;font-size:14px;line-height:1.64;color:var(--ink)}
.tick-list .icon{width:16px;height:16px;margin-top:3px;stroke:var(--red);fill:none;stroke-width:2.4}
.aga-band{background:var(--navy-deep);color:#e8eef6}
.aga-band .eyebrow{color:#8fb0d8}
.aga-band h2{color:#fff}
.aga-band .section-heading>p{color:#b7c7dc}
.aga-grid{display:grid;grid-template-columns:1fr 1fr;gap:52px}
.aga-col h3{margin:0 0 13px;font-size:16px;font-weight:700;color:#fff}
.aga-col p{margin:0 0 13px;font-size:14px;line-height:1.72;color:#b7c7dc}
.aga-col strong{color:#fff}
.aga-pull{border-left:3px solid var(--red);padding-left:16px;color:#dce6f2 !important}
.aga-note{margin-top:40px;padding-top:22px;border-top:1px solid rgba(255,255,255,.16);font-size:13px;line-height:1.7;color:#9fb5cf}
.aga-note strong{color:#fff}
.callout{border:1px solid var(--line);border-left:4px solid var(--red);border-radius:4px;padding:22px 24px;margin-bottom:30px;background:var(--paper)}
.callout h3{margin:0 0 8px;font-size:16px;font-weight:700;color:var(--navy-deep);line-height:1.36}
.callout p{margin:0;font-size:14px;line-height:1.7;color:var(--muted)}
.bg-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1px;background:var(--line);border:1px solid var(--line);border-radius:4px;overflow:hidden}
.bg-item{background:var(--white);padding:26px 25px}
.bg-item h3{margin:0 0 9px;font-size:15px;font-weight:700;color:var(--navy-deep)}
.bg-item p{margin:0;font-size:13.5px;line-height:1.68;color:var(--muted)}
.exp-para{font-size:14.5px;line-height:1.76;color:var(--ink);max-width:80ch;margin:0 0 16px}
.page-cta{background:var(--paper);border-top:1px solid var(--line)}
.page-cta-inner{display:flex;align-items:center;justify-content:space-between;gap:46px}
.page-cta h2{font-family:var(--serif);font-weight:400;font-size:35px;line-height:1.16;letter-spacing:-.7px;color:var(--navy-deep);margin:14px 0 0}
.nav-links a[aria-current="page"]{color:var(--red)}
@media(max-width:1000px){.why-grid{grid-template-columns:1fr 1fr}.page-hero h1{font-size:46px;letter-spacing:-1.2px}}
@media(max-width:860px){.aga-grid{grid-template-columns:1fr;gap:34px}.page-cta-inner{flex-direction:column;align-items:flex-start;gap:26px}}
@media(max-width:760px){.why-grid,.bg-grid{grid-template-columns:1fr}.page-hero{padding:52px 0 40px}.page-hero h1{font-size:38px;letter-spacing:-1px}.page-lede{font-size:15.5px}.method-step{grid-template-columns:1fr;gap:8px;padding:22px}.method-num{font-size:22px}}

/* two-card rows: the default why-grid is three columns, which leaves a hole
   when a section has only two cards. Specificity of .why-grid.two-up is
   (0,2,0), so the existing 760px collapse rule cannot reach it and it needs
   its own override below. */
.why-grid.two-up{grid-template-columns:1fr 1fr}
@media(max-width:760px){.why-grid.two-up{grid-template-columns:1fr}}