/* Readable service facts without changing the shared header or main-page flow. */
body.figma-site-style.public-pricing { background: #f7f6f2; }
body.figma-site-style.public-page.public-pricing .geo-pricing { max-width: 1180px; margin: 0 auto; padding: 28px 32px 96px; color: #20221f; }
.geo-pricing *, .geo-quick-links * { box-sizing: border-box; }
.geo-breadcrumb { display: flex; flex-wrap: wrap; gap: 12px; font-size: 14px; color: #686b65; }
.geo-breadcrumb a { min-height: 44px; display: inline-flex; align-items: center; }
.geo-breadcrumb > span { display: inline-flex; align-items: center; }
.geo-pricing-intro { padding: 48px 0 16px; max-width: 860px; }
.geo-eyebrow { font-size: 14px; font-weight: 650; color: #456e25; margin: 0 0 20px; }
body.figma-site-style.public-page.public-pricing main h1 { margin: 0; font-size: clamp(34px,3.8vw,48px); line-height: 1.3; font-weight: 750; letter-spacing: -.04em; }
body.figma-site-style.public-page.public-pricing main .geo-lead { margin: 26px 0 0; max-width: 780px; font-size: 18px; line-height: 1.85; color: #444a40; word-break: keep-all; }
.geo-lead strong { color: #1d6398; font-weight: 700; }
.geo-pricing .geo-note { margin: 20px 0 0; font-size: 14px; line-height: 1.85; color: #686b65; max-width: 900px; word-break: keep-all; }
.geo-pricing .geo-note a { text-decoration: underline; text-underline-offset: 3px; color: #1d6398; }
.geo-pricing .geo-primary-link { display: inline-flex; align-items: center; justify-content: center; gap: 28px; padding: 15px 24px; min-height: 54px; margin-top: 28px; border-radius: 6px; color: #fff; background: #456e25; font-weight: 650; font-size: 15px; }
.geo-pricing .geo-primary-link:hover { background: #35571b; }
body.figma-site-style.public-page.public-pricing .geo-pricing > section { margin: 72px 0 0; padding: 0; }
body.figma-site-style.public-page.public-pricing main h2 { font-size: 30px; line-height: 1.4; font-weight: 700; letter-spacing: -.03em; margin: 0; }
.geo-pricing .geo-answer { font-size: 16px; line-height: 1.85; color: #686b65; margin: 18px 0 0; max-width: 860px; word-break: keep-all; }
.geo-plan-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 20px; margin-top: 32px; }
.geo-plan-summary { background: #fff; border-radius: 12px; padding: 28px; }
body.figma-site-style.public-page.public-pricing main .geo-plan-summary h3 { font-size: 21px; font-weight: 700; margin: 0; }
.geo-plan-description { font-size: 14px; line-height: 1.8; color: #686b65; margin: 14px 0 28px; min-height: 76px; }
.geo-plan-price { color: #1d6398; font-size: 30px; line-height: 1.3; letter-spacing: -.035em; font-weight: 750; margin: 0; white-space: nowrap; }
.geo-plan-condition { margin: 10px 0 0; color: #53594c; font-size: 13px; line-height: 1.65; }
 .geo-plan-spec { margin: -12px 0 22px; color: #686b65; font-size: 13px; line-height: 1.7; }
.geo-plan-first { margin: 16px 0 0; color: #686b65; font-size: 13px; line-height: 1.8; }
.geo-table-scroll { margin-top: 32px; max-width: 100%; overflow-x: auto; border-radius: 8px; background: #fff; }
.geo-table-hint { display: none; }
.geo-price-table { width: 100%; min-width: 620px; border-collapse: collapse; font-size: 15px; }
.geo-price-table caption { text-align: left; font-size: 14px; font-weight: 650; color: #53594c; padding: 20px 24px; }
.geo-price-table th,.geo-price-table td { padding: 17px 24px; border-bottom: 1px solid #e8eae2; line-height: 1.65; text-align: right; font-variant-numeric: tabular-nums; }
.geo-price-table thead th { background: #edf0e7; font-size: 14px; font-weight: 650; color: #444a40; }
.geo-price-table th:first-child { text-align: left; }
.geo-price-table tbody th { font-weight: 550; color: #383d33; }
.geo-price-table td { color: #1d6398; font-weight: 650; }
.geo-price-detail { display: block; margin-top: 4px; color: #686b65; font-size: 12px; font-weight: 400; }
.geo-price-table thead span { font-size: 12px; font-weight: 400; }
.geo-fact-list { margin: 28px 0 0; }
.geo-fact-list > div { display: grid; grid-template-columns: 220px minmax(0,1fr); gap: 24px; border-top: 1px solid #dfe2d8; padding: 22px 0; }
.geo-fact-list dt { font-size: 16px; font-weight: 650; }
.geo-fact-list dd { margin: 0; font-size: 15px; line-height: 1.85; color: #686b65; word-break: keep-all; }
.geo-included-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); column-gap: 40px; margin: 26px 0 0; padding: 0; list-style: none; }
.geo-included-list li { padding: 16px 0; border-bottom: 1px solid #dfe2d8; font-size: 15px; }
.geo-related nav { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 12px 32px; margin-top: 24px; }
.geo-related nav a { display: flex; align-items: center; min-height: 48px; color: #1d6398; font-size: 15px; text-decoration: underline; text-underline-offset: 4px; }
.geo-pricing :is(a,button):focus-visible,.geo-table-scroll:focus-visible,.geo-quick-links a:focus-visible { outline: 2px solid #1d6398; outline-offset: 4px; }
.geo-quick-links { margin-top: 24px; display: flex; flex-wrap: wrap; gap: 8px 24px; }
.geo-quick-links a { color: #1d6398; font-size: 14px; min-height: 44px; display: inline-flex; align-items: center; text-decoration: underline; text-underline-offset: 4px; }
.geo-direct-answer { margin-top: 20px; font-size: 16px; line-height: 1.85; color: #686b65; word-break: keep-all; }
@media(max-width:900px) { .geo-plan-summary { padding: 24px; } .geo-plan-price { font-size: 25px; } }
@media(max-width:767px) {
 .geo-table-hint { display: block; margin: 24px 0 12px; color: #686b65; font-size: 13px; line-height: 1.8; }
 .geo-table-hint + .geo-table-scroll { margin-top: 0; }
 body.figma-site-style.public-page.public-pricing .geo-pricing { padding: 20px 20px 64px; }
 .geo-pricing-intro { padding-top: 32px; }
 body.figma-site-style.public-page.public-pricing main h1 { font-size: 34px; }
 body.figma-site-style.public-page.public-pricing main .geo-lead { font-size: 16px; line-height: 1.85; }
 body.figma-site-style.public-page.public-pricing .geo-pricing > section { margin-top: 48px; }
 body.figma-site-style.public-page.public-pricing main h2 { font-size: 26px; }
 .geo-plan-grid { grid-template-columns: minmax(0,1fr); gap: 16px; }
 .geo-plan-summary { padding: 24px; }
 .geo-plan-description { min-height: 0; margin: 14px 0 24px; }
 .geo-plan-price { font-size: 32px; }
 .geo-fact-list > div { grid-template-columns: 1fr; gap: 8px; padding: 20px 0; }
 .geo-included-list,.geo-related nav { grid-template-columns: 1fr; }
 .geo-price-table th,.geo-price-table td { padding: 15px 18px; }
 .geo-pricing .geo-primary-link { padding-inline: 20px; gap: 20px; max-width: 100%; }
}
