/* Product pages: scoped styles preserve the agency's shared layout. */
.tools-page { color: #27354a; }
.tools-page .tools-hero { padding: 170px 0 85px; background: #0f1932; color: #fff; }
.tools-page .tools-label { color: #8bd5ff; font-size: 13px; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.tools-page h1 { color: #fff; font-size: clamp(34px, 4.5vw, 56px); line-height: 1.17; max-width: 850px; margin: 18px 0 25px; }
.tools-page .tools-intro { max-width: 760px; font-size: 19px; line-height: 1.8; color: #e2eaf5; }
.tools-page .tools-button { display: inline-block; background: #087ab9; color: #fff; padding: 15px 26px; border-radius: 5px; font-size: 15px; font-weight: 600; margin-top: 15px; }
.tools-page .tools-button:hover { background: #05679e; color: #fff; }
.tools-page a:focus-visible { outline: 3px solid #148fce; outline-offset: 5px; }
.tools-page .tools-section { padding: 70px 0; }
.tools-page .tools-section h2 { font-size: clamp(26px, 3vw, 36px); line-height: 1.3; color: #0f1932; margin-top: 0; }
.tools-page .tools-section > .container > p { max-width: 800px; }
.tools-page .tools-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 25px; margin-top: 32px; }
.tools-page .tools-grid-two { grid-template-columns: repeat(2, minmax(0, 1fr)); }
.tools-page .tools-card { padding: 28px; border: 1px solid #dce4ed; border-radius: 8px; background: #fff; }
.tools-page .tools-card h3 { font-size: 23px; color: #0f1932; margin: 0 0 15px; line-height: 1.35; }
.tools-page .tools-card p { font-size: 16px; line-height: 1.8; margin-bottom: 14px; }
.tools-page .tools-card ul { padding-left: 20px; font-size: 16px; }
.tools-page .tools-card li { margin-bottom: 10px; }
.tools-page .tools-card a:not(.tools-button), .tools-page .tools-crosslink { color: #076ca4; text-decoration: underline; text-underline-offset: 3px; }
.tools-page .tools-card img { width: 100%; aspect-ratio: 16 / 10; object-fit: cover; border-radius: 5px; margin-bottom: 24px; }
.tools-page .tools-soft { background: #f4f7fb; }
.tools-page .tools-cta { text-align: center; }
.tools-page .tools-cta p { margin-left: auto; margin-right: auto; }
.tools-page .tools-small { font-size: 14px; }
@media (max-width: 767px) {
 .tools-page .tools-hero { padding: 125px 0 50px; }
 .tools-page .tools-section { padding: 45px 0; }
 .tools-page .tools-grid { grid-template-columns: 1fr; gap: 18px; }
 .tools-page .tools-card { padding: 24px; }
}

.tools-page .tools-example { margin: 18px 0; font-size: 15px; }
.tools-page .tools-example summary { cursor: pointer; color: #076ca4; text-decoration: underline; text-underline-offset: 3px; }
.tools-page .tools-example summary:focus-visible { outline: 3px solid #148fce; outline-offset: 4px; }
.tools-page .tools-example img { aspect-ratio: auto; object-fit: contain; height: auto; margin: 16px 0 8px; border: 1px solid #dce4ed; }
