/* All additions are limited to this local MEO page. */
#meo-review { color: #28282d; }
#meo-review * { box-sizing: border-box; letter-spacing: 0; }
#meo-review [id], #meo-strategy { scroll-margin-top: 100px; }
#meo-review .meo-section, #meo-strategy { padding: 88px 40px; }
#meo-review .meo-width, #meo-strategy .meo-width { max-width: 1100px; margin: 0 auto; }
#meo-review .meo-soft { background: #f5f5f5; }
#meo-review h2, #meo-strategy h2 { margin: 16px 0 40px; font-size: 40px; line-height: 1.55; font-weight: 700; }
#meo-review h3 { font-size: 22px; line-height: 1.7; margin: 0 0 20px; font-weight: 700; }
#meo-review h4 { font-size: 18px; line-height: 1.7; margin: 0 0 12px; }
#meo-review .meo-title-line { display: block; text-wrap: balance; }
#meo-review p, #meo-review dd, #meo-strategy p { font-size: 16px; line-height: 2; margin: 0; color: #5a5a60; }
#meo-review p + p { margin-top: 20px; }
#meo-review strong { font-weight: 700; color: #28282d; }
#meo-review .meo-note { font-size: 14px; line-height: 1.9; }
#meo-review .meo-lead { max-width: 880px; margin-bottom: 40px; }
#meo-review .meo-three { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 32px; }
#meo-review .meo-two { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 40px; }
#meo-review .meo-concerns > div { border-top: 1px solid #d2d2d5; padding-top: 24px; }
#meo-review .meo-number { display: block; margin-bottom: 24px; font-size: 14px; color: #727278; }
#meo-review [data-icon] { display: inline-flex; width: 30px; height: 30px; flex: none; color: #5a5a60; }
#meo-review [data-icon] svg { width: 100%; height: 100%; }
#meo-review .meo-journey { margin: 40px 0 0; }
#meo-review figcaption { font-size: 16px; line-height: 1.8; font-weight: 700; margin-bottom: 24px; }
#meo-review .meo-journey ol { list-style: none; padding: 28px 0; margin: 0 0 24px; border-top: 1px solid #bcbcc2; border-bottom: 1px solid #bcbcc2; }
#meo-review .meo-journey h3 { margin-top: 20px; }
#meo-review .meo-service-row { display: grid; grid-template-columns: minmax(0, 2fr) minmax(0,3fr); gap: 64px; padding: 40px 0; border-top: 1px solid #d2d2d5; }
#meo-review .meo-service-heading { display: grid; grid-template-columns: 36px 1fr; gap: 16px; align-content: start; }
#meo-review .meo-service-heading h3 { grid-column: 1 / -1; margin-bottom: 0; }
#meo-review .meo-step { font-size: 18px; line-height: 30px; color: #727278; }
#meo-review .meo-sample { margin-top: 28px; padding: 24px 0; border-top: 1px solid #bcbcc2; text-align: center; }
#meo-review .meo-sample-images { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; width: 100%; max-width: 256px; margin: 16px auto 0; }
#meo-review .meo-sample-images figure { margin: 0; min-width: 0; }
#meo-review .meo-sample-images a { display: block; }
#meo-review .meo-sample-images img { display: block; width: 100%; max-width: 120px; height: auto; aspect-ratio: 1191 / 1740; object-fit: contain; }
#meo-review .meo-sample-images figcaption { margin-top: 8px; font-size: 14px; }
#meo-review .meo-sample-images a:focus-visible { outline: 2px solid #252529; outline-offset: 4px; }
#meo-review .meo-sample p { margin-top: 12px; }
#meo-review .meo-sample .meo-sample-credit { margin-top: 8px; font-size: 12px; line-height: 1.5; color: #555; }
#meo-review .meo-responsibility { margin-top: 56px; }
#meo-review .meo-responsibility > h3 { text-align: center; margin-bottom: 28px; }
#meo-review .meo-role-table { border: 1px solid #dedee0; border-radius: 8px; background: #fff; overflow: clip; }
#meo-review .meo-role-head, #meo-review .meo-role-row { display: grid; grid-template-columns: 1fr 1.35fr 1.35fr; gap: 0; padding: 0; border-bottom: 1px solid #dedee0; }
#meo-review .meo-role-row:last-child { border-bottom: 0; }
#meo-review .meo-role-head { background: #f5f5f5; font-size: 17px; font-weight: 700; text-align: center; }
#meo-review .meo-role-head > *, #meo-review .meo-role-row > * { min-width: 0; padding: 24px; margin: 0; display: flex; align-items: center; justify-content: center; }
#meo-review .meo-role-head > * + *, #meo-review .meo-role-row > * + * { border-left: 1px solid #dedee0; }
#meo-review .meo-role-row p { text-align: center; line-height: 1.8; }
#meo-review .meo-role-row h4 { font-size: 16px; margin: 0; justify-content: flex-start; background: #fafafa; }
#meo-review .meo-role-row .meo-role-name { position: absolute; width: 1px; height: 1px; overflow: hidden; clip-path: inset(50%); }
#meo-review .meo-role-row p + p { margin-top: 0; }
#meo-review .meo-case-org { margin-top: 28px; }
#meo-review #meo-case-title { font-size: 36px; margin-top: 8px; }
#meo-review .meo-case-subtitle { font-size: 26px; margin-bottom: 32px; }
#meo-review .meo-case-copy { display: grid; grid-template-columns: 1fr 1fr; gap: 40px; }
#meo-review .meo-case-copy > div { border-top: 1px solid #ccc; padding-top: 24px; }
#meo-review .meo-case-copy > div:last-child { grid-column: 1 / -1; }
#meo-review .meo-secondary-case { margin-top: 64px; padding-top: 40px; border-top: 1px solid #bcbcc2; }
#meo-review .meo-secondary-case h3 { margin-top: 20px; }
#meo-review .meo-link, #meo-strategy .meo-link { display: inline-block; max-width: 100%; margin-top: 32px; font-size: 16px; font-weight: 700; color: #28282d; line-height: 1.9; text-decoration: underline; text-underline-offset: 7px; }
#meo-review a:focus-visible, #meo-strategy a:focus-visible { outline: 2px solid currentColor; outline-offset: 5px; }
#meo-review .meo-price-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1.4fr); gap: 60px; border-top: 1px solid #bcbcc2; padding-top: 36px; }
#meo-review .meo-price-grid h3 { margin-top: 16px; }
#meo-review .meo-price { color: #28282d; margin-bottom: 24px; }
#meo-review .meo-price > span:first-child { font-size: 56px; line-height: 1.4; font-weight: 700; }
#meo-review .meo-tax { display: block; font-size: 14px; }
#meo-review .meo-examples { background: #f5f5f5; padding: 32px; margin: 40px 0; }
#meo-review .meo-examples > p { margin-top: 24px; }
#meo-review .meo-condition-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); border-top: 1px solid #d2d2d5; border-bottom: 1px solid #d2d2d5; margin-top: 28px; }
#meo-review .meo-condition-group { min-width: 0; padding: 28px; }
#meo-review .meo-condition-group + .meo-condition-group { border-left: 1px solid #d2d2d5; }
#meo-review .meo-condition-group h4 { font-size: 21px; margin: 0 0 24px; line-height: 1.5; }
#meo-review .meo-conditions dl { margin: 0; }
#meo-review .meo-conditions dl > div { display: grid; grid-template-columns: minmax(0,1fr); gap: 8px; padding: 20px 0; border-top: 1px solid #e3e3e5; }
#meo-review .meo-conditions dt { font-size: 15px; font-weight: 700; line-height: 1.7; }
#meo-review .meo-conditions dd { margin: 0; font-size: 15px; line-height: 1.9; }
#meo-review .meo-sp-only { display: none; }
#meo-strategy { background: #f5f5f5; }
#meo-strategy h2 { font-size: 32px; margin-bottom: 24px; }
@media(max-width:900px) {
 #meo-review .meo-three { gap: 24px; }
 #meo-review .meo-service-row { gap: 32px; }
 #meo-review .meo-price-grid { gap: 32px; }
}
@media(max-width:767px) {
 #meo-review .meo-section, #meo-strategy { padding: 56px 20px; }
 #meo-review h2, #meo-strategy h2, #meo-review #meo-case-title { font-size: 28px; line-height: 1.65; margin-bottom: 28px; }
 #meo-review h3, #meo-review .meo-case-subtitle { font-size: 21px; }
 #meo-review .meo-three, #meo-review .meo-two, #meo-review .meo-price-grid, #meo-review .meo-case-copy, #meo-review .meo-service-row { grid-template-columns: minmax(0,1fr); gap: 28px; }
 #meo-review .meo-case-copy > div:last-child { grid-column: auto; }
 #meo-review .meo-service-row { padding: 28px 0; }
 #meo-review .meo-journey li + li { border-top: 1px solid #d2d2d5; padding-top: 28px; }
 #meo-review .meo-role-head { display: none; }
 #meo-review .meo-role-row { grid-template-columns: repeat(2,minmax(0,1fr)); gap: 0; }
 #meo-review .meo-role-row > * { padding: 16px 12px; }
 #meo-review .meo-role-row p { display: block; text-align: left; font-size: 14px; }
 #meo-review .meo-role-row p:nth-child(2) { border-left: 0; }
 #meo-review .meo-role-row .meo-role-name { display: block; position: static; width: auto; height: auto; overflow: visible; clip-path: none; font-size: 13px; font-weight: 700; color: #252529; margin-bottom: 8px; }
 #meo-review .meo-role-row h4 { grid-column: 1 / -1; font-size: 16px; border-bottom: 1px solid #dedee0; }
 #meo-review .meo-price > span:first-child { font-size: 48px; }
 #meo-review .meo-price-grid > div + div { border-top: 1px solid #d2d2d5; padding-top: 28px; }
 #meo-review .meo-conditions dl > div { grid-template-columns: minmax(0,1fr); gap: 8px; }
 #meo-review .meo-condition-grid { grid-template-columns: minmax(0,1fr); }
 #meo-review .meo-condition-group { padding: 24px 0; }
 #meo-review .meo-condition-group + .meo-condition-group { border-left: 0; border-top: 1px solid #d2d2d5; }
 #meo-review .meo-examples { padding: 24px 20px; }
 #meo-review .meo-sp-only { display: block; }
}
