.features-page { color: #354638; }
.features-page p { padding: 0; font-size: 16px; line-height: 1.95; }
.features-page figure { margin: 0; min-width: 0; }
.features-page figure img { display: block; width: 100%; height: auto; border: 1px solid #e0e7dc; border-radius: 12px; box-shadow: 0 20px 48px -20px rgba(27,67,35,.25); }
.features-page .features-eyebrow { font-size: 13px; font-weight: 700; letter-spacing: .12em; color: #288539; margin: 0 0 14px; }
.features-page .features-small { font-size: 13px; line-height: 1.9; color: #667360; margin-top: 15px; }
.features-nav { padding-top: 28px; }
.features-nav ul { display: grid; grid-template-columns: repeat(6,minmax(0,1fr)); gap: 10px; padding: 0; margin: 0; list-style: none; }
.features-nav li { padding: 0; margin: 0; }
.features-nav a { display: flex; height: 100%; align-items: center; justify-content: space-between; gap: 8px; padding: 17px 14px; border: 1px solid #dde6d6; border-radius: 8px; color: #3d563e; font-size: 14px; font-weight: 700; }
.features-nav a:hover { background: #f4f8ef; color: #208333; }
.features-section { padding-top: 76px; padding-bottom: 76px; }
.features-page section[id] { scroll-margin-top: 110px; }
.features-section__heading { margin-bottom: 34px; }
.features-page h2 { color: #263f2c; }
.features-section__heading h2, .features-split h2 { margin: 0 0 18px; font-size: clamp(26px,2.7vw,36px); line-height: 1.65; }
.features-section__heading p { margin: 0; }
.features-report-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 24px; }
.features-report { --report-color: #298d3d; padding: 32px; border: 1px solid #dce5d7; border-top: 4px solid var(--report-color); border-radius: 14px; display: flex; flex-direction: column; }
.features-report--google { --report-color: #3278b9; }
.features-report--meta { --report-color: #8053b3; }
.features-report--integrated { --report-color: #487649; }
.features-report .features-report__eyebrow { color: var(--report-color); font-size: 13px; font-weight: 700; margin: 0 0 10px; }
.features-report h3 { margin: 0 0 16px; color: #253e2d; font-size: 25px; }
.features-report > p { margin: 0 0 20px; }
.features-report ul { padding: 0; margin: 0 0 22px; list-style: none; }
.features-report li { position: relative; padding: 11px 0 11px 23px; border-bottom: 1px solid #edf0e9; font-size: 15px; line-height: 1.85; }
.features-report li::before { content: '✓'; color: var(--report-color); position: absolute; left: 0; font-weight: 700; }
.features-report .features-report__note { color: #6c7567; font-size: 13px; line-height: 1.85; margin-top: auto; }
.features-report a { font-size: 14px; font-weight: 700; }
.features-band { background: #f7f9f4; padding: 72px 0; }
.features-split { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); align-items: center; gap: 60px; }
.features-points { list-style: none; padding: 0; margin: 24px 0; }
.features-points li { padding: 16px 0; border-top: 1px solid #dfe7d9; line-height: 1.85; }
.features-points strong { display: block; font-size: 17px; color: #2e5237; margin-bottom: 5px; }
.features-points span { font-size: 15px; }
.features-points .features-point-note { display: block; margin-top: 8px; color: #727d70; font-size: 13px; line-height: 1.8; }
.features-delivery-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 24px; }
.features-delivery-grid article { border: 1px solid #e0e6da; border-radius: 14px; background: white; padding: 30px; display: flex; flex-direction: column; }
.features-format-icon { display: flex; flex-direction: column; align-items: center; justify-content: center; align-self: flex-start; width: 104px; height: 104px; border-radius: 50%; background: #e8f3df; color: #25883b; }
.features-format-icon img { width: 48px; height: 48px; color: inherit; }
.features-format-icon span { margin-top: 3px; font-size: 12px; font-weight: 800; line-height: 1; letter-spacing: .1em; }
.features-delivery-grid h3 { margin: 24px 0 15px; font-size: 21px; line-height: 1.65; }
.features-delivery-grid p { margin: 0 0 16px; }
.features-delivery-grid a { margin-top: auto; font-weight: 700; font-size: 14px; }
.features-page .features-footnote { margin: 28px 0 0; font-size: 14px; color: #6c7665; }
.features-management-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 30px; }
.features-management-grid article { border-left: 3px solid #a3c78d; padding: 6px 0 6px 22px; }
.features-management-grid h3 { font-size: 21px; margin: 0 0 14px; line-height: 1.6; }
.features-management-grid p { margin: 0; }
.features-matrix { overflow-x: auto; border: 1px solid #d9e3d1; border-radius: 12px; background: white; }
.features-matrix table { width: 100%; min-width: 850px; border-collapse: collapse; font-size: 14px; line-height: 1.8; }
.features-matrix th,.features-matrix td { padding: 18px 16px; border: 1px solid #e3e9dc; text-align: center; }
.features-matrix th:first-child { text-align: left; width: 27%; }
.features-matrix thead th { background: #e8f2de; color: #335536; font-weight: 700; }
.features-matrix tbody th { font-weight: 600; background: #fafcf7; }
.features-matrix tbody tr:nth-child(even) td { background: #fcfdfb; }
.features-related { display: flex; justify-content: center; flex-wrap: wrap; gap: 25px; margin-top: 35px; }
.features-related a { font-size: 15px; font-weight: 700; }
.features-page a:focus-visible,.features-matrix:focus-visible { outline: 3px solid #258a38; outline-offset: 4px; }
.features-page + .final-cta-section { padding-top: 72px; }
@media(max-width: 1050px) {
 .features-nav ul { grid-template-columns: repeat(3,minmax(0,1fr)); }
 .features-split, .features-delivery-grid { gap: 16px; }
 .features-delivery-grid article { padding: 24px; }
}
@media(max-width: 760px) {
  .features-split,.features-report-grid,.features-delivery-grid,.features-management-grid { grid-template-columns: 1fr; }
 .features-nav ul { grid-template-columns: repeat(2,minmax(0,1fr)); }
 .features-section,.features-band { padding-top: 48px; padding-bottom: 48px; }
 .features-report { padding: 25px 22px; }
 .features-split--ai figure { margin-top: 10px; }
 }

/* Hero typography and CTA use the same shared classes as the homepage. */
.features-page .features-hero .service-hero__title { margin: 0; font-weight: 800; }
.features-page .features-hero .service-hero__lead { margin: 28px 0 0; color: #242a23; line-height: 1.8; }
.features-page .features-hero .service-hero__trial-note { margin: 28px 0 0; font-size: 14px; color: #30372d; line-height: 1.7; }
@media (max-width: 480px) {
 .features-page .features-hero .service-hero__lead { margin-top: 22px; font-size: 15px; }
 .features-page .features-hero .service-hero__trial-note { margin-top: 20px; font-size: 12px; }
}

/* Match the pricing hero layout while keeping its first headline on one line. */
.features-hero .service-hero__inner { min-height: 560px; }
.features-hero .service-hero__title-line { white-space: nowrap; }
@media (max-width: 900px) {
  .features-hero .service-hero__title-line { font-size: clamp(16px, 3.8vw, 32px); }
}

.features-hero .service-eyebrow { line-height: 1.35; }
