/* OOAKS / shared design, September 2026.
 * Keep SWELL blocks and form behavior intact. The two roots distinguish custom
 * templates from WordPress content; no template-specific price or text is changed.
 * !important is limited to replacing the existing high-specificity design layer.
 */
.ooaks-site-renewal {
  --ooaks-primary:#000; --ooaks-primary-dark:#222; --ooaks-accent:#222;
  --ooaks-text:#222; --ooaks-text-muted:#555; --ooaks-text-light:#666;
  --ooaks-bg-light:#f7f7f7; --ooaks-border:#e5e5e5; --container-max:1240px; --color_link:#333;
  color:#222; font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;
}
.ooaks-site-renewal :is(a,button,input,select,textarea,summary):focus-visible {outline:3px solid #326c50; outline-offset:4px;}
.ooaks-site-renewal :is(.l-header,.l-fixHeader) {background:rgba(255,255,255,.97); box-shadow:none; border-bottom:1px solid #eee;}
.ooaks-site-renewal :is(.c-gnav > li > a,.c-gnav .sub-menu a) {font-size:14px; letter-spacing:.015em;}
.ooaks-interior-renewal #content {margin-bottom:0;}
.ooaks-interior-renewal .ooaks-container {max-width:1240px; padding-inline:40px;}
.ooaks-interior-renewal .ooaks-section {padding-block:88px!important;}
.ooaks-interior-renewal [data-animate][data-animate] {opacity:1; transform:none; transition:none;}
.ooaks-interior-renewal .ooaks-section-title {font-size:clamp(26px,3vw,38px)!important; font-weight:700; line-height:1.55; text-align:left; margin-bottom:18px; padding:0; border:0; background:none; letter-spacing:.015em;}
.ooaks-interior-renewal .ooaks-section-title::before,
.ooaks-interior-renewal .ooaks-section-title::after {display:none!important;}
.ooaks-interior-renewal .ooaks-section-lead {text-align:left; font-size:16px; line-height:1.9; margin-bottom:40px; color:#555;}
.ooaks-interior-renewal :is(h1,h2,h3,h4,p,li,td,th) {overflow-wrap:anywhere;}
.ooaks-interior-renewal :is(.page-hero,.page-hero-enhanced) {background:#fafafa!important; color:#222; padding:32px 0 64px!important; border-bottom:1px solid #e5e5e5; min-height:0;}
.ooaks-interior-renewal .page-hero-enhanced::before,
.ooaks-interior-renewal .page-hero-enhanced::after {display:none!important;}
.ooaks-interior-renewal .page-hero-bg {display:none;}
.ooaks-interior-renewal .page-hero-enhanced .ooaks-container {max-width:1240px; text-align:left;}
.ooaks-interior-renewal .page-hero-content {max-width:none; margin:0; text-align:left;}
.ooaks-interior-renewal .breadcrumb {justify-content:flex-start; gap:8px 12px; margin:0 0 40px; font-size:12px; line-height:1.8;}
.ooaks-interior-renewal .breadcrumb a {text-underline-offset:4px;}
.ooaks-interior-renewal .page-hero-enhanced .page-hero-label {display:block; color:#666!important; background:none!important; border:0; border-radius:0; padding:0; font:500 13px/1.6 "Avenir Next",sans-serif; letter-spacing:.12em; margin:0 0 14px;}
.ooaks-interior-renewal .page-hero-enhanced :is(.page-hero-title,h1) {font-size:clamp(32px,4vw,50px)!important; font-weight:700; line-height:1.4; letter-spacing:.015em; margin:0 0 22px; color:#222!important; text-shadow:none; text-align:left;}
.ooaks-interior-renewal .page-hero-description {color:#555!important; font-size:16px; line-height:1.9; max-width:780px; margin:0; text-align:left;}
/* Both hero metric markups share the same columns and text sizing. */
.ooaks-interior-renewal .page-hero-stats {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); max-width:720px; justify-content:start; margin:36px 0 0; gap:32px;}
.ooaks-interior-renewal .page-hero-stats > :is(.hero-stat,.page-hero-stat) {min-width:0; text-align:left; padding:0; margin:0; border:0;}
.ooaks-interior-renewal .page-hero-stats :is(.hero-stat-number,.stat-number) {display:block; font:700 38px/1.3 "Avenir Next",sans-serif; font-variant-numeric:tabular-nums; white-space:nowrap; letter-spacing:0; color:#222;}
.ooaks-interior-renewal .page-hero-stats :is(.hero-stat-label,.stat-label) {display:block; font-size:13px; line-height:1.7; color:#555; margin-top:8px; overflow-wrap:anywhere;}
.ooaks-interior-renewal :is(.btn-primary,.btn-secondary,.btn-outline,.btn-primary-lg) {border-radius:8px; min-height:54px; padding:16px 26px; box-shadow:none!important; transform:none!important; line-height:1.65;}
.ooaks-interior-renewal .btn-primary {background:#000!important; border:1px solid #000; color:#fff!important;}
.ooaks-interior-renewal :is(.btn-secondary,.btn-outline) {background:transparent; border:1px solid #bbb; color:#222;}
.ooaks-interior-renewal .btn-primary:hover {background:#333!important;}
.ooaks-interior-renewal :is(.btn-secondary,.btn-outline):hover {background:#f3f3f3;}
.ooaks-interior-renewal :is(.btn-primary,.btn-secondary,.btn-outline)::before {display:none;}
.ooaks-interior-renewal :is(.service-overview-grid,.service-intro-grid) {gap:56px;}
.ooaks-interior-renewal .service-overview-content {text-align:left;}
.ooaks-interior-renewal .service-overview-title {font-size:clamp(24px,2.5vw,32px); line-height:1.65; text-align:left; text-wrap:balance;}
.ooaks-interior-renewal :is(.service-overview-text,.feature-detail-text,.service-feature-card p) {font-size:15px; line-height:1.95; color:#555;}
.ooaks-interior-renewal .service-overview-image {background:#f7f7f7; border:1px solid #eee; border-radius:12px; overflow:hidden;}
.ooaks-interior-renewal .service-overview-image img {display:block; width:100%; height:auto; aspect-ratio:16/10; max-height:360px; object-fit:cover; border-radius:0;}
.ooaks-interior-renewal .service-overview-image img[src*=".svg"] {object-fit:contain;}
/* Quiet surfaces, no decorative edge stripe or floating-card hover. */
.ooaks-interior-renewal :is(.feature-card,.feature-detail-card,.service-feature-card,.problem-card,.approach-card,.pricing-card-detail,.pricing-card-new,.pricing-plan,.related-service-card,.industry-card,.service-card-large,.service-card-medium,.mvv-item,.case-more-box) {
  border:1px solid #e5e5e5!important; border-radius:12px!important; box-shadow:none!important; transform:none!important; background:#fff;
}
.ooaks-interior-renewal :is(.feature-detail-card,.service-feature-card,.approach-card,.related-service-card,.mvv-item) {padding:28px;}
.ooaks-interior-renewal :is(.feature-detail-card,.service-feature-card,.mvv-item)::before {display:none;}
.ooaks-interior-renewal :is(.feature-detail-number,.approach-number,.feature-number) {font-family:"Avenir Next",sans-serif; font-size:32px; color:#777!important; opacity:1; background:none; width:auto; height:auto; border-radius:0; line-height:1.3; margin-bottom:18px;}
.ooaks-interior-renewal :is(.feature-detail-title,.approach-title,.related-service-title) {font-size:21px; line-height:1.6;}
.ooaks-interior-renewal .related-service-card:has(.related-arrow) {display:grid; grid-template-columns:minmax(0,1fr) 24px; column-gap:16px; text-align:left;}
.ooaks-interior-renewal .related-service-card:has(.related-arrow) > :is(h3,p) {grid-column:1; text-align:left;}
.ooaks-interior-renewal .related-service-card .related-arrow {position:static; grid-column:2; grid-row:1/3; align-self:center; transform:none;}
.ooaks-interior-renewal :is(.approach-card-featured,.pricing-plan-featured) {background:#222!important; color:#fff;}
.ooaks-interior-renewal .approach-card .approach-number {display:block; background:transparent!important; box-shadow:none; color:#777!important;}
.ooaks-interior-renewal .approach-card-featured .approach-number {color:#bbb!important;}
.ooaks-interior-renewal .approach-card-featured .approach-highlight {background:#333!important; border:1px solid #484848; border-radius:8px; padding:16px 20px;}
.ooaks-interior-renewal .approach-card-featured .approach-highlight span {color:#fff!important; font-size:14px; line-height:1.8;}
.ooaks-interior-renewal .pricing-plan-featured .btn-primary {background:#fff!important; color:#222!important;}
.ooaks-interior-renewal .pricing-plan-badge {position:static; display:inline-block; transform:none; margin-bottom:16px; border-radius:4px; background:#eee; color:#222;}
.ooaks-interior-renewal .pricing-plan-price .price-amount {font-size:clamp(28px,3vw,38px);}
.ooaks-interior-renewal .pricing-plan .pricing-plan-price {display:flex; align-items:baseline; flex-wrap:wrap; gap:4px 8px;}
.ooaks-interior-renewal .pricing-plan .price-unit {white-space:nowrap;}
.ooaks-interior-renewal .problem-card {display:flex; align-items:flex-start; text-align:left; padding:24px!important; gap:16px;}
.ooaks-interior-renewal .problem-card .problem-icon {flex:none; width:30px; height:30px; margin:0; font-size:17px; color:#555; background:#f3f3f3; border-radius:6px;}
.ooaks-interior-renewal .problem-card p {font-size:15px!important; line-height:1.8!important; color:#444!important;}
.ooaks-interior-renewal .flow-section {background:#f7f7f7!important;}
.ooaks-interior-renewal .flow-section .flow-timeline {padding:0!important; gap:24px!important; grid-template-columns:repeat(3,minmax(0,1fr))!important;}
.ooaks-interior-renewal .flow-section .flow-timeline .flow-item {padding:28px!important; border:1px solid #e5e5e5!important; border-radius:12px!important; box-shadow:none!important; transform:none!important;}
.ooaks-interior-renewal .flow-section .flow-timeline .flow-step {display:block!important; width:auto!important; height:auto!important; background:none!important; color:#666!important; border-radius:0!important; font:600 13px/1.6 "Avenir Next",sans-serif!important; letter-spacing:.08em!important; margin-bottom:18px!important;}
.ooaks-interior-renewal .flow-section .flow-timeline .flow-title {line-height:1.6!important;}
.ooaks-interior-renewal .flow-section .flow-timeline .flow-text {font-size:15px!important; color:#555!important;}
.ooaks-interior-renewal :is(.pricing-card-detail,.pricing-card-new,.pricing-plan) {overflow:hidden;}
.ooaks-interior-renewal :is(.pricing-card-detail.is-popular,.pricing-card-new.featured,.pricing-plan-featured) {border-color:#222!important; transform:none!important;}
.ooaks-interior-renewal .pricing-card-header {background:#f7f7f7; padding:28px 24px;}
.ooaks-interior-renewal :is(.pricing-card-body,.pricing-plan) {padding:28px;}
/* Popular labels have a real row; no absolute positioning over a plan name. */
.ooaks-interior-renewal .pricing-grid:has(> .pricing-card-detail > .popular-badge) > .pricing-card-detail {display:grid; grid-template-columns:minmax(0,1fr); grid-template-rows:52px auto 1fr; background:#f7f7f7;}
.ooaks-interior-renewal .pricing-card-detail > .popular-badge {position:static; inset:auto; transform:none; display:block; grid-row:1; grid-column:1; align-self:end; justify-self:start; width:max-content; max-width:calc(100% - 48px); margin:0 24px; padding:4px 10px; border-radius:4px; background:#222; color:#fff; font:600 12px/1.6 sans-serif;}
.ooaks-interior-renewal .pricing-grid:has(> .pricing-card-detail > .popular-badge) .pricing-card-header {grid-row:2; padding-top:12px;}
.ooaks-interior-renewal .pricing-card-detail .pricing-card-body {grid-row:3; background:#fff;}
/* Content plans use a third markup: keep one padding layer per region. */
.ooaks-interior-renewal .pricing-card-new {display:flex; flex-direction:column; padding:0;}
.ooaks-interior-renewal .pricing-card-new .pricing-badge {position:static; inset:auto; transform:none; display:inline-block; margin:0 0 16px; padding:4px 10px; font-size:12px; line-height:1.6;}
.ooaks-interior-renewal .pricing-card-new .pricing-card-header {text-align:left;}
.ooaks-interior-renewal .pricing-card-new .pricing-plan-price {font:700 clamp(24px,2.5vw,30px)/1.6 "Avenir Next",sans-serif; color:#222; padding:0; border:0; margin:0;}
.ooaks-interior-renewal .pricing-card-new .pricing-plan-price span {font-size:14px; font-weight:400; white-space:nowrap;}
.ooaks-interior-renewal .pricing-card-new .pricing-card-footer {margin-top:auto; padding:24px;}
.ooaks-interior-renewal .pricing-card-new .pricing-card-footer a {display:flex; justify-content:center; width:100%;}
.ooaks-interior-renewal .pricing-plan-features li {padding-left:26px;}
.ooaks-interior-renewal .pricing-plan-features li::before {color:#555;}
.ooaks-interior-renewal .pricing-plan-featured .pricing-plan-features li::before {color:#ddd;}
.ooaks-interior-renewal .pricing-price-box {display:flex; align-items:baseline; flex-wrap:wrap; gap:4px;}
.ooaks-interior-renewal :is(.pricing-amount,.price-amount) {font-family:"Avenir Next",sans-serif; font-size:48px; line-height:1.2;}
.ooaks-interior-renewal .pricing-unit {font-size:14px; white-space:normal;}
.ooaks-interior-renewal :is(.pricing-badge,.service-card-badge) {background:#222!important; color:#fff!important; box-shadow:none; border-radius:4px;}
.ooaks-interior-renewal :is(.faq-list,.faq-section .ooaks-container) {max-width:1000px;}
.ooaks-interior-renewal .faq-item {border:0; border-bottom:1px solid #ddd; border-radius:0; box-shadow:none; padding:28px 0; background:none;}
.ooaks-interior-renewal .faq-question {font-size:17px!important; line-height:1.8; color:#222!important;}
.ooaks-interior-renewal .faq-question::before {background:#eee; color:#222; border-radius:4px;}
.ooaks-interior-renewal .faq-answer {font-size:15px!important; line-height:1.95; color:#555!important;}
/* Service directory. */
.ooaks-interior-renewal .service-nav-section {background:#fff; border-bottom:1px solid #e5e5e5; padding-block:24px;}
.ooaks-interior-renewal .service-nav-grid {display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; overflow:visible; padding:0;}
.ooaks-interior-renewal .service-nav-item {background:#f7f7f7; border:1px solid #eee; border-radius:8px; box-shadow:none; padding:18px 10px; transform:none; min-width:0;}
.ooaks-interior-renewal .service-nav-icon {background:none; color:#222!important; width:28px; height:28px;}
.ooaks-interior-renewal .service-nav-label {font-size:14px; color:#222!important; white-space:normal;}
.ooaks-interior-renewal :is(.service-nav-icon,.service-card-large.is-strength .service-card-icon) svg {stroke:#222!important;}
.ooaks-interior-renewal .service-category-header {border:0; border-bottom:1px solid #ddd; padding-bottom:28px; gap:24px; align-items:baseline;}
.ooaks-interior-renewal .service-category-section .service-category-number {background:none; color:#777; opacity:1; font:500 30px/1.4 "Avenir Next",sans-serif; min-width:0; width:auto; height:auto;}
.ooaks-interior-renewal .service-category-title {font-size:clamp(24px,2.5vw,32px); line-height:1.55;}
.ooaks-interior-renewal .service-card-large.is-strength {background:#f7f7f7; border-color:#ddd!important;}
.ooaks-interior-renewal .service-card-large.is-strength :is(.service-card-title,.service-card-arrow,.service-card-icon) {color:#222!important;}
.ooaks-interior-renewal .service-card-large.is-strength .service-card-description {color:#555!important;}
.ooaks-interior-renewal :is(.service-card-large,.service-card-medium,.industry-card):hover {background:#f3f3f3; border-color:#aaa!important;}
.ooaks-interior-renewal :is(.service-card-icon,.service-card-icon-small,.industry-card-icon,.related-service-icon) {background:#f3f3f3; color:#222; border-radius:8px;}
.ooaks-interior-renewal .service-card-title {font-size:23px; line-height:1.6;}
.ooaks-interior-renewal .service-card-title-small {font-size:18px; line-height:1.6;}
.ooaks-interior-renewal .service-card-description {font-size:15px; line-height:1.9;}
/* Company and case studies. */
.ooaks-interior-renewal .company-message {text-align:left; max-width:1000px; margin:0;}
.ooaks-interior-renewal .company-message-heading {color:#666; font:500 14px/1.6 "Avenir Next",sans-serif; letter-spacing:.1em;}
.ooaks-interior-renewal .company-message-text {font-size:clamp(24px,3vw,36px); line-height:1.6;}
.ooaks-interior-renewal .mvv-item {text-align:left; background:transparent; border:0!important; border-top:1px solid #ddd!important; border-radius:0!important; padding:24px 0 0;}
.ooaks-interior-renewal .mvv-label {background:none; color:#666; padding:0; letter-spacing:.06em;}
.ooaks-interior-renewal .achievement-item {background:none; border:0; border-radius:0; box-shadow:none; transform:none;}
.ooaks-interior-renewal .achievement-number {font-family:"Avenir Next",sans-serif; font-size:56px; font-variant-numeric:tabular-nums; color:#222;}
.ooaks-interior-renewal .representative-card-enhanced {background:none; box-shadow:none; border-radius:0; gap:48px; padding:0;}
.ooaks-interior-renewal .representative-photo-placeholder {border-radius:12px; overflow:hidden;}
.ooaks-interior-renewal .bio-message-text {border:0; border-radius:8px; background:#eee; padding:24px; color:#444;}
.ooaks-interior-renewal .company-info-table {font-size:15px; line-height:1.9;}
.ooaks-interior-renewal .company-info-table :is(th,td) {padding:20px 16px; border-bottom:1px solid #ddd;}
.ooaks-interior-renewal .company-info-table th {background:#f7f7f7; width:26%; min-width:0;}
.ooaks-interior-renewal .company-map iframe {border-radius:12px;}
.ooaks-interior-renewal .case-filters {gap:10px; flex-wrap:wrap;}
.ooaks-interior-renewal .case-filter-btn {border:1px solid #ddd; border-radius:8px; box-shadow:none; min-height:44px; padding:10px 20px; font-size:14px;}
.ooaks-interior-renewal .case-filter-btn.active {background:#222; border-color:#222; color:#fff;}
.ooaks-interior-renewal .case-study-item {display:grid!important; grid-template-columns:300px minmax(0,1fr); border:1px solid #e5e5e5; border-radius:12px!important; box-shadow:none!important;}
.ooaks-interior-renewal .case-study-item:not(:has(> .case-study-image)) {grid-template-columns:minmax(0,1fr);}
.ooaks-interior-renewal .case-study-item.is-hidden {display:none!important;}
.ooaks-interior-renewal .case-study-item .case-study-image {width:100%!important; min-width:0!important; max-width:none!important; height:220px!important; margin:0!important; border-radius:0!important; background:#fafafa!important;}
.ooaks-interior-renewal .case-study-item .case-study-image img {object-fit:contain!important; padding:20px;}
.ooaks-interior-renewal .case-study-item .case-study-image--photo img {object-fit:cover!important; padding:0;}
.ooaks-interior-renewal .case-study-header {padding:28px!important; align-self:stretch;}
.ooaks-interior-renewal .case-study-body {grid-column:1/-1; padding:28px!important; border-top:1px solid #e5e5e5;}
.ooaks-interior-renewal .case-study-quote {border:0; background:#f7f7f7; padding:24px; border-radius:8px;}
.ooaks-interior-renewal .case-study-quote::before {display:none;}
.ooaks-interior-renewal .case-study-results {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; padding:28px; border-radius:8px; background:#f7f7f7;}
.ooaks-interior-renewal .case-study-results .case-result {display:flex; flex-direction:column; align-items:flex-start; gap:8px; padding:0; min-width:0;}
.ooaks-interior-renewal .case-result-value {font-size:clamp(24px,2.4vw,32px); color:#222;}
.ooaks-interior-renewal .case-result-label {font-size:13px; line-height:1.7; color:#555;}
.ooaks-interior-renewal :is(.result-value,.metric-after) {color:#222!important;}
.ooaks-interior-renewal .owned-media-stat {color:#555;}
.ooaks-interior-renewal .cta-section {background:#000!important; color:white;}
.ooaks-interior-renewal .cta-section :is(.ooaks-section-title,.ooaks-section-lead) {text-align:center; color:white!important;}
.ooaks-interior-renewal .cta-section .btn-primary {background:white!important; color:#000!important; border-color:white;}
.ooaks-interior-renewal .cta-section .btn-primary:hover {background:#eee!important;}
.ooaks-interior-renewal .cta-section .btn-outline {color:white; border-color:#aaa;}
.ooaks-interior-renewal .cta-section .btn-outline:hover {background:#333;}
.ooaks-interior-renewal .cta-note {text-align:center; color:#ddd;}
/* WordPress pages, articles and archives retain their native structure. */
.ooaks-editorial-renewal #content {padding-top:56px; margin-bottom:80px;}
.ooaks-editorial-renewal .c-pageTitle {font-size:clamp(28px,3vw,42px); line-height:1.5; border:0; padding:0 0 28px; margin:0 0 36px; letter-spacing:.015em;}
.ooaks-editorial-renewal .c-pageTitle::after {width:64px; height:2px; background:#222;}
.ooaks-editorial-renewal .c-pageTitle__inner {padding:0; border:0;}
.ooaks-editorial-renewal .c-pageTitle + .post_content {margin-top:0;}
.ooaks-editorial-renewal .post_content {font-size:16px; line-height:2; color:#333;}
.ooaks-editorial-renewal .post_content > p {margin-bottom:1.7em;}
.ooaks-editorial-renewal .post_content > :is(h2,h3) {background:none; border:0; border-bottom:1px solid #ddd; border-radius:0; padding:0 0 18px; color:#222; line-height:1.65;}
.ooaks-editorial-renewal .post_content > h2 {font-size:clamp(23px,2.5vw,30px); margin-top:64px; text-align:left;}
.ooaks-editorial-renewal .post_content > h3 {font-size:21px; margin-top:40px;}
.ooaks-editorial-renewal .post_content > :is(h2,h3)::before,
.ooaks-editorial-renewal .post_content > :is(h2,h3)::after {display:none;}
.ooaks-editorial-renewal .post_content a:not([class]) {text-underline-offset:4px;}
.ooaks-editorial-renewal .swell-block-button__link {background:#000!important; color:#fff!important; border:1px solid #000; border-radius:8px; box-shadow:none!important; min-height:52px; padding:16px 28px; font-weight:700; font-size:16px; line-height:1.7;}
.ooaks-editorial-renewal .swell-block-button__link::after {animation:none;}
.ooaks-editorial-renewal .swell-block-button__link:hover {background:#333!important; opacity:1; transform:none;}
.ooaks-editorial-renewal .swell-block-faq__item {border:0; border-bottom:1px solid #ddd; background:none; padding:28px 0; margin:0;}
/* Keep SWELL Q/A markers aligned with the first text line and a shared text column. */
.ooaks-editorial-renewal .faq_q {position:relative; background:none; font-size:17px; line-height:1.8; padding:0 0 0 44px; min-height:28px;}
.ooaks-editorial-renewal .faq_a {position:relative; font-size:15px; line-height:1.95; padding:16px 0 0 44px; margin:0;}
.ooaks-editorial-renewal :is(.faq_q,.faq_a)::before {position:absolute; top:1px; left:0; display:grid; place-items:center; width:28px; height:28px; padding:0; border:0; font-size:14px; line-height:1; color:#222; background:#eee; border-radius:4px; transform:none;}
.ooaks-editorial-renewal .faq_a::before {top:17px;}
.ooaks-editorial-renewal .wp-block-table {border-radius:8px; overflow:auto;}
.ooaks-editorial-renewal .wp-block-table :is(td,th) {padding:16px; border-color:#ddd; font-size:14px; line-height:1.8;}
.ooaks-editorial-renewal .wp-block-table thead th {background:#222; color:#fff;}
.ooaks-editorial-renewal .wp-block-table tbody th {background:#f7f7f7; color:#222;}
.ooaks-editorial-renewal .p-toc {background:#f7f7f7; border:1px solid #e5e5e5; border-radius:8px; box-shadow:none; padding:28px;}
.ooaks-editorial-renewal .p-toc a {color:#333; text-underline-offset:4px;}
.ooaks-editorial-renewal .p-toc a:hover {text-decoration:underline;}
.ooaks-editorial-renewal .twitter-follow-button {color:#fff; text-underline-offset:4px;}
.ooaks-editorial-renewal .yyi-rinker-contents :is(.credit-box,.price-box,.price-box *) {color:#555;}
.ooaks-editorial-renewal .yyi-rinker-contents .yyi-rinker-links li {background:#222; border:1px solid #222; border-radius:6px; box-shadow:none;}
.ooaks-editorial-renewal .yyi-rinker-contents .yyi-rinker-links a {background:#222; color:#fff; border-radius:6px; box-shadow:none;}
.ooaks-editorial-renewal .yyi-rinker-contents .yyi-rinker-links a:hover {background:#444;}
.ooaks-editorial-renewal main .p-postList__link {border:1px solid #e5e5e5; border-radius:10px; overflow:hidden; height:100%; background:#fff;}
.ooaks-editorial-renewal main .p-postList__body {padding:22px;}
.ooaks-editorial-renewal main .p-postList__title {font-size:17px; line-height:1.7; color:#222;}
.ooaks-editorial-renewal main .c-postThumb__figure {aspect-ratio:16/9;}
.ooaks-editorial-renewal main .c-postThumb__img {object-fit:contain; background:#f7f7f7;}
.ooaks-editorial-renewal main .p-postList__meta {font-size:13px;}
.ooaks-editorial-renewal .c-bannerLink {background:#fff!important; border:1px solid #e5e5e5; border-radius:10px; overflow:hidden; box-shadow:none; text-decoration:none;}
.ooaks-editorial-renewal .c-bannerLink__figure {aspect-ratio:16/9;}
.ooaks-editorial-renewal .c-bannerLink__figure::after {display:none;}
.ooaks-editorial-renewal .c-bannerLink__img {width:100%; height:100%; object-fit:contain; opacity:1; background:#f7f7f7;}
.ooaks-editorial-renewal .c-bannerLink__text {position:static; height:auto; padding:20px; color:#222; text-shadow:none; text-align:left; align-items:flex-start;}
.ooaks-editorial-renewal .c-bannerLink__title {font-size:18px; line-height:1.6; color:#222;}
.ooaks-editorial-renewal .c-bannerLink__description {font-size:13px; line-height:1.8; color:#555; margin-top:6px;}
.ooaks-editorial-renewal .c-pagination .page-numbers {border-radius:6px; min-width:44px; min-height:44px;}
.ooaks-editorial-renewal .c-pagination a.page-numbers {color:#222; background:#f3f3f3; border:1px solid #ddd;}
.ooaks-editorial-renewal .c-pagination .page-numbers.current {color:#fff; background:#222;}
.ooaks-editorial-renewal .c-pagination a.page-numbers:hover {background:#ddd;}
.ooaks-editorial-renewal .c-pagination__dot {color:#666;}
/* Contact / document request: same controls, readable labels, preserved errors. */
.ooaks-editorial-renewal .wpcf7-form {background:#fafafa; border:1px solid #e5e5e5; border-radius:12px; padding:36px;}
.ooaks-editorial-renewal .wpcf7 {padding:0; background:none; max-width:760px;}
.ooaks-editorial-renewal .wpcf7-form label {font-weight:600; font-size:15px;}
.ooaks-editorial-renewal .wpcf7-form-control-wrap {display:block; margin-top:10px;}
.ooaks-editorial-renewal .wpcf7 :is(input:not([type=hidden]):not([type=checkbox]):not([type=radio]):not([type=submit]),select,textarea) {display:block; width:100%; max-width:100%; padding:14px 16px; min-height:50px; font-size:16px; line-height:1.6; color:#222; background:#fff; border:1px solid #bbb; border-radius:6px; box-shadow:none;}
.ooaks-editorial-renewal .wpcf7 :is(input[type=checkbox],input[type=radio]) {accent-color:#222; width:18px; height:18px; flex:none;}
.ooaks-editorial-renewal .wpcf7-list-item {display:block; margin:0;}
.ooaks-editorial-renewal .wpcf7-list-item-label {color:#333;}
.ooaks-editorial-renewal .wpcf7-list-item label {display:flex; gap:10px; align-items:center; min-height:44px; font-size:14px; font-weight:400;}
.ooaks-editorial-renewal .wpcf7-submit {background:#000; color:#fff; border:1px solid #000; border-radius:8px; min-height:54px; padding:14px 32px; font-size:16px; font-weight:700;}
.ooaks-editorial-renewal .wpcf7-submit:disabled {opacity:.45; cursor:not-allowed;}
.ooaks-editorial-renewal .wpcf7-not-valid {border-color:#ad3333!important;}
/* Estimate keeps the published CSS, selections, progress, calculations and errors. */
.ooaks-editorial-renewal .ooaks-estimate-form {border:1px solid #e5e5e5; border-radius:12px; box-shadow:none;}
.ooaks-editorial-renewal .ooaks-estimate-form :is(.ooaks-service-card,.ooaks-option-btn,.ooaks-input,.ooaks-textarea,.ooaks-notice,.ooaks-result) {border-radius:8px; box-shadow:none;}
.ooaks-editorial-renewal .ooaks-estimate-form .ooaks-service-card.selected {border-color:#222; background:#f3f3f3;}
.ooaks-editorial-renewal .ooaks-estimate-form :is(.ooaks-btn,.ooaks-option-btn) {border-radius:8px; min-height:48px;}
.ooaks-editorial-renewal .ooaks-estimate-form :is(.ooaks-input,.ooaks-textarea) {font-size:16px;}
.ooaks-editorial-renewal .ooaks-estimate-form .ooaks-progress-label {font-size:12px;}
.ooaks-editorial-renewal .ooaks-estimate-form .ooaks-progress-circle:not(.active):not(.completed) {color:#555;}
.ooaks-editorial-renewal .ooaks-estimate-form .ooaks-progress-label {color:#555;}
.ooaks-editorial-renewal .ooaks-estimate-form :is(.ooaks-progress-circle.active,.ooaks-progress-circle.completed) + .ooaks-progress-label {color:#222;}
.ooaks-editorial-renewal .ooaks-estimate-form .ooaks-btn:disabled {color:#666;}
/* Recruitment embeds its own important styles in the page content. */
.ooaks-editorial-renewal .ooaks-recruit.ooaks-recruit {--c-accent:#222!important; --c-accent-dark:#444!important; --c-ink-4:#666!important;}
.ooaks-editorial-renewal .ooaks-recruit.ooaks-recruit :is(.rc-btn,.rc-cta) {border-radius:8px!important; box-shadow:none!important;}
.ooaks-editorial-renewal .ooaks-recruit.ooaks-recruit .rc-lead {border-top:0!important; padding-top:0!important;}
.ooaks-editorial-renewal .ooaks-recruit.ooaks-recruit .rc-cta {border:1px solid #ddd!important;}
.ooaks-editorial-renewal .ooaks-recruit.ooaks-recruit .rc-h2 {border-left:0!important; border-bottom:1px solid #ddd!important; padding:0 0 18px!important;}
/* Footer visual treatment follows the home, including native SWELL footers. */
body:has(.ooaks-site-renewal) .footer-enhanced {border-top:1px solid #292929;}
body:has(.ooaks-site-renewal) .footer-enhanced > .ooaks-container {max-width:1240px; padding-inline:40px;}
body:has(.ooaks-site-renewal) .footer-logo {text-decoration:none;}
body:has(.ooaks-site-renewal) :is(.footer-btn-primary,.footer-btn-secondary) {border-radius:8px; min-height:48px; display:inline-flex; align-items:center; justify-content:center;}
body:has(.ooaks-site-renewal) .footer-enhanced a:focus-visible {outline:2px solid #fff; outline-offset:5px;}
.ooaks-editorial-renewal .l-footer {background:#111; color:#eee;}
.ooaks-editorial-renewal .l-footer a {color:#eee; text-underline-offset:4px;}
.ooaks-editorial-renewal .l-footer .widgettitle {background:none; border-bottom:1px solid #444; color:#fff;}
@media(max-width:1024px) {
  .ooaks-interior-renewal :is(.features-detail-grid.four-col,.flow-section .flow-timeline) {grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .ooaks-interior-renewal .ooaks-container {padding-inline:28px;}
  .ooaks-interior-renewal .service-card-title {font-size:21px;}
  .ooaks-interior-renewal .pricing-grid:has(> .pricing-card-detail > .popular-badge) > .pricing-card-detail:not(:has(> .popular-badge)) {grid-template-rows:0 auto 1fr;}
  .ooaks-interior-renewal .pricing-grid .pricing-card-detail:not(:has(> .popular-badge)) .pricing-card-header {padding-top:28px;}
}
@media(max-width:767px) {
  .ooaks-interior-renewal .ooaks-container {padding-inline:24px;}
  .ooaks-interior-renewal .ooaks-section {padding-block:60px!important;}
  .ooaks-interior-renewal .page-hero-enhanced {padding-block:24px 44px!important;}
  .ooaks-interior-renewal .breadcrumb {font-size:11px; margin-bottom:28px;}
  .ooaks-interior-renewal .page-hero-enhanced :is(.page-hero-title,h1) {font-size:clamp(28px,7vw,38px)!important;}
  .ooaks-interior-renewal .page-hero-description {font-size:14px;}
  .ooaks-interior-renewal .page-hero-description br {display:none;}
  .ooaks-interior-renewal .ooaks-section-lead {font-size:15px; margin-bottom:28px;}
  .ooaks-interior-renewal :is(.service-overview-grid,.service-intro-grid) {grid-template-columns:1fr; gap:28px;}
  .ooaks-interior-renewal .service-overview-image {order:0;}
  .ooaks-interior-renewal .service-overview-image img {max-height:260px;}
  .ooaks-interior-renewal :is(.features-detail-grid,.features-detail-grid.four-col,.pricing-grid,.problems-grid) {grid-template-columns:1fr!important; gap:18px;}
  .ooaks-interior-renewal .flow-section .flow-timeline {display:grid!important; grid-template-columns:1fr!important; gap:16px!important;}
  .ooaks-interior-renewal :is(.feature-detail-card,.service-feature-card,.approach-card,.related-service-card,.flow-section .flow-timeline .flow-item) {padding:24px!important;}
  .ooaks-interior-renewal .service-nav-grid {grid-template-columns:repeat(3,minmax(0,1fr)); gap:8px;}
  .ooaks-interior-renewal .service-nav-item {padding:14px 4px;}
  .ooaks-interior-renewal .service-nav-label {font-size:12px;}
  .ooaks-interior-renewal .service-category-header {gap:14px;}
  .ooaks-interior-renewal .service-category-number {font-size:24px;}
  .ooaks-interior-renewal .page-hero-stats {gap:12px; margin-top:28px;}
  .ooaks-interior-renewal .page-hero-stats :is(.hero-stat-number,.stat-number) {font-size:clamp(22px,7vw,28px);}
  .ooaks-interior-renewal .page-hero-stats :is(.hero-stat-label,.stat-label) {font-size:11px;}
  .ooaks-interior-renewal .achievement-number {font-size:42px;}
  .ooaks-interior-renewal .representative-card-enhanced {gap:32px;}
  .ooaks-interior-renewal .company-message-body br {display:none;}
  .ooaks-interior-renewal .company-info-table :is(th,td) {padding:16px 10px; font-size:14px;}
  .ooaks-interior-renewal :is(.case-study-header,.case-study-body) {padding:24px!important;}
  .ooaks-interior-renewal .case-study-item {grid-template-columns:minmax(0,1fr);}
  .ooaks-interior-renewal .case-study-item .case-study-header {text-align:left!important;}
  .ooaks-interior-renewal .case-study-results {grid-template-columns:1fr; gap:24px; padding:24px;}
  .ooaks-interior-renewal .cta-section .ooaks-section-title {font-size:clamp(21px,6vw,28px)!important; text-wrap:balance;}
  .ooaks-editorial-renewal #content {padding-top:36px; margin-bottom:56px;}
  .ooaks-editorial-renewal .post_content {font-size:15px; line-height:1.95;}
  .ooaks-editorial-renewal .c-pageTitle {font-size:28px; padding-bottom:24px; margin-bottom:28px;}
  .ooaks-editorial-renewal .post_content > h2 {margin-top:48px;}
  .ooaks-editorial-renewal .wpcf7-form {padding:24px 18px;}
  .ooaks-editorial-renewal .wpcf7-submit {width:100%;}
  .ooaks-editorial-renewal main .p-postList__body {padding:20px;}
  .ooaks-editorial-renewal .ooaks-estimate-form {padding:24px 16px;}
  .ooaks-editorial-renewal .ooaks-estimate-form .ooaks-progress-label {font-size:10px; white-space:normal;}
  body:has(.ooaks-site-renewal) .footer-enhanced > .ooaks-container {padding-inline:24px;}
  body:has(.ooaks-site-renewal) .footer-grid {grid-template-columns:repeat(2,minmax(0,1fr)); gap:28px 20px;}
  body:has(.ooaks-site-renewal) .footer-brand {grid-column:1/-1; text-align:left;}
  body:has(.ooaks-site-renewal) .footer-nav {text-align:left; min-width:0;}
  body:has(.ooaks-site-renewal) .footer-nav ul {display:block;}
  body:has(.ooaks-site-renewal) .footer-nav a {display:inline-flex; align-items:center; min-height:44px; font-size:13px; line-height:1.6;}
  body:has(.ooaks-site-renewal) .footer-nav li {margin-bottom:0;}
}
@media(prefers-reduced-motion:reduce) {
  .ooaks-site-renewal *, .ooaks-site-renewal *::before, .ooaks-site-renewal *::after {scroll-behavior:auto!important; animation:none!important; transition:none!important;}
}

/* Short, transform-only responses preserve the reviewed layout and card spacing. */
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .ooaks-site-renewal :is(.btn-primary,.btn-secondary,.btn-outline,.swell-block-button__link,.p-postList__link,.column-card,.case-card,.media-card-enhanced) {
    transition:translate .22s ease, background-color .22s ease, border-color .22s ease;
  }
  .ooaks-site-renewal :is(.btn-primary,.btn-secondary,.btn-outline,.swell-block-button__link,.p-postList__link,.column-card,.case-card,.media-card-enhanced):hover {translate:0 -3px;}
}

/* Brand accents: actions, destinations and recommended choices share one green.
 * Deliberately scoped to renewal pages; single posts keep their SWELL palette.
 * Existing component geometry, motion and validation colors remain independent.
 */
body:has(.ooaks-site-renewal) {
  --ooaks-action:#3f652f;
  --ooaks-action-hover:#2d4b21;
  --ooaks-action-soft:#eef4e8;
  --ooaks-action-line:#c8d9bd;
}
.ooaks-site-renewal.ooaks-site-renewal :is(.btn-primary,.btn-primary-lg,.swell-block-button__link,.wpcf7-submit,.floating-btn-main),
.ooaks-editorial-renewal .ooaks-estimate-form :is(.ooaks-btn-next,.ooaks-btn-submit):not(:disabled),
.ooaks-editorial-renewal .ooaks-recruit.ooaks-recruit .rc-btn {
  background:var(--ooaks-action)!important; border-color:var(--ooaks-action)!important; color:#fff!important;
}
.ooaks-site-renewal.ooaks-site-renewal :is(.btn-primary,.btn-primary-lg,.swell-block-button__link,.wpcf7-submit,.floating-btn-main):hover,
.ooaks-editorial-renewal .ooaks-estimate-form :is(.ooaks-btn-next,.ooaks-btn-submit):not(:disabled):hover,
.ooaks-editorial-renewal .ooaks-recruit.ooaks-recruit .rc-btn:hover {
  background:var(--ooaks-action-hover)!important; border-color:var(--ooaks-action-hover)!important;
}
/* Light green actions retain contrast against the existing dark CTA surfaces. */
.ooaks-site-renewal.ooaks-site-renewal :is(.cta-section,.document-cta-box,.pricing-plan-featured) .btn-primary,
body:has(.ooaks-site-renewal) footer.footer-enhanced .footer-cta .footer-cta-buttons a.footer-btn-primary {
  background:var(--ooaks-action-soft)!important; border-color:var(--ooaks-action-line)!important; color:var(--ooaks-action)!important;
}
.ooaks-site-renewal.ooaks-site-renewal :is(.cta-section,.document-cta-box,.pricing-plan-featured) .btn-primary:hover,
body:has(.ooaks-site-renewal) footer.footer-enhanced .footer-cta .footer-cta-buttons a.footer-btn-primary:hover {
  background:#dce9d2!important; color:var(--ooaks-action-hover)!important;
}
.ooaks-site-renewal.ooaks-site-renewal :is(.strength-link,.media-card-link,.dm-service-arrow,.growth-label b,.service-card-arrow,.related-arrow,.case-study-link) {
  color:var(--ooaks-action)!important;
}
.ooaks-site-renewal :is(.growth-label,.dm-service-item,.related-service-card,.service-card-large,.service-card-medium):hover {
  border-color:var(--ooaks-action-line)!important; background:var(--ooaks-action-soft)!important;
}
.ooaks-site-renewal .home-jump-nav a:hover {color:var(--ooaks-action);}
.ooaks-editorial-renewal .post_content :is(p,li,td) > a:not([class]) {
  color:var(--ooaks-action); text-decoration:underline; text-underline-offset:3px;
}
.ooaks-site-renewal.ooaks-site-renewal :is(.popular-badge,.pricing-badge,.pricing-plan-badge,.service-card-badge) {
  background:var(--ooaks-action-soft)!important; color:var(--ooaks-action)!important;
}
.ooaks-interior-renewal :is(.pricing-card-detail.is-popular,.pricing-card-new.featured,.pricing-plan-featured) {border-color:var(--ooaks-action)!important;}
.ooaks-interior-renewal .case-filter-btn.active,
.ooaks-editorial-renewal .c-pagination .page-numbers.current {
  background:var(--ooaks-action); border-color:var(--ooaks-action); color:#fff;
}
.ooaks-editorial-renewal .wpcf7 :is(input[type=checkbox],input[type=radio]) {accent-color:var(--ooaks-action);}
.ooaks-editorial-renewal .ooaks-estimate-form :is(.ooaks-service-card.selected,.ooaks-option-btn.selected) {
  border-color:var(--ooaks-action); background:var(--ooaks-action-soft); color:var(--ooaks-action);
}
.ooaks-site-renewal :is(a,button,input,select,textarea,summary):focus-visible {
  outline-color:var(--ooaks-action);
}

.ooaks-interior-renewal .service-card-large.is-strength .service-card-arrow {color:var(--ooaks-action)!important;}

/* September 13: shared service layouts. Remove inherited fixed widths before
 * choosing columns, so a four-step process stays balanced at every breakpoint. */
.ooaks-interior-renewal .flow-section .flow-timeline {
  display:grid!important; width:100%; max-width:none!important; margin:0!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important; gap:20px!important;
}
.ooaks-interior-renewal .flow-section .flow-timeline .flow-item {
  width:auto!important; max-width:none!important; min-width:0; margin:0!important;
  text-align:left!important; padding:28px!important;
}
.ooaks-interior-renewal .flow-section .flow-timeline :is(.flow-title,.flow-text) {text-align:left!important;}
.ooaks-interior-renewal .flow-section .flow-timeline .flow-step {color:var(--ooaks-action)!important;}
.ooaks-interior-renewal .process-timeline {
  display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px;
  width:100%; max-width:none; margin:0;
}
.ooaks-interior-renewal .process-timeline::before {display:none;}
.ooaks-interior-renewal .process-timeline .process-item {
  display:flex; flex-direction:column; align-items:stretch; gap:16px; min-width:0;
  margin:0; padding:28px; border:1px solid #e1e7dc; border-radius:12px; background:white;
}
.ooaks-interior-renewal .process-timeline :is(.process-marker,.process-number) {
  position:static; width:auto; margin:0; text-align:left; font:600 16px/1.5 sans-serif; color:var(--ooaks-action);
}
.ooaks-interior-renewal .process-timeline .process-step {background:var(--ooaks-action-soft); color:var(--ooaks-action); border-radius:4px;}
.ooaks-interior-renewal .process-timeline .process-content {padding:0; border:0; border-radius:0; background:none; min-width:0;}
.ooaks-interior-renewal .process-timeline .process-content h3 {font-size:20px; line-height:1.6; margin:0 0 12px; text-align:left;}
.ooaks-interior-renewal .process-timeline .process-details {margin:16px 0 0; padding:14px 0 0; border-top:1px solid #e5e5e5;}
.ooaks-interior-renewal .process-timeline .process-details li {line-height:1.85;}
.ooaks-interior-renewal .platforms-grid {gap:20px; align-items:stretch;}
.ooaks-interior-renewal .platform-card {padding:28px; text-align:left; box-shadow:none; transform:none;}
.ooaks-interior-renewal .platform-card .platform-icon {margin:0 0 20px; background:var(--ooaks-action-soft); color:var(--ooaks-action);}
.ooaks-interior-renewal .platform-card h3 {font-size:20px; line-height:1.5; margin:0 0 14px; text-align:left;}
.ooaks-interior-renewal .platform-card ul {margin:0; padding:0; list-style:none;}
.ooaks-interior-renewal .platform-card li {font-size:14px; line-height:1.85; padding:4px 0; text-align:left;}
.ooaks-interior-renewal .platform-note {margin-top:24px; padding:18px 22px; background:var(--ooaks-action-soft); border-radius:8px; font-size:14px; line-height:1.8;}
.ooaks-interior-renewal .representative-card-enhanced {
  grid-template-columns:minmax(220px,.65fr) minmax(0,1.7fr); gap:48px; border:0; align-items:start;
}
.ooaks-interior-renewal .representative-photo-area {text-align:left;}
.ooaks-interior-renewal .representative-photo-placeholder {width:100%; height:auto; aspect-ratio:1; max-width:320px; margin:0; border:0; border-radius:12px; overflow:hidden;}
.ooaks-interior-renewal .representative-photo-placeholder img {width:100%; height:100%; object-fit:cover; border-radius:0;}
.ooaks-interior-renewal .representative-badges {justify-content:flex-start; gap:6px; margin-top:16px;}
.ooaks-interior-renewal .representative-badges .badge {background:var(--ooaks-action-soft); color:var(--ooaks-action); padding:6px 10px;}
.ooaks-interior-renewal .representative-info-area {min-width:0;}
.ooaks-interior-renewal .representative-header {text-align:left; margin:0 0 28px;}
.ooaks-interior-renewal .history-timeline {border:0; padding:0; margin:0;}
.ooaks-interior-renewal .history-item {display:grid; grid-template-columns:64px minmax(0,1fr); gap:16px; padding:16px 0; margin:0; border-top:1px solid #e2e2e2;}
.ooaks-interior-renewal .history-item::before {display:none;}
.ooaks-interior-renewal .history-year {color:var(--ooaks-action); margin:0;}
.ooaks-interior-renewal .history-content {min-width:0;}
/* Practical page navigation and a readable scope comparison for service buyers. */
.ooaks-interior-renewal .service-page-nav {background:white; border-bottom:1px solid #e5e5e5; padding:20px 0;}
.ooaks-interior-renewal .service-page-nav .ooaks-container {display:flex; flex-wrap:wrap; gap:10px;}
.ooaks-interior-renewal .service-page-nav a {display:inline-flex; gap:18px; align-items:center; padding:10px 16px; border-radius:6px; background:#f4f6f1; color:var(--ooaks-action); font-size:14px; text-decoration:none;}
.ooaks-interior-renewal .service-page-nav a:hover {background:#e5eddc;}
.ooaks-interior-renewal main section[id] {scroll-margin-top:110px;}
.ooaks-interior-renewal .service-scope-grid {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:22px;}
.ooaks-interior-renewal .service-scope-card {padding:28px; background:white; border:1px solid #dce5d4; border-radius:12px;}
.ooaks-interior-renewal .service-scope-card h3 {font-size:22px; line-height:1.5; margin:0 0 14px;}
.ooaks-interior-renewal .service-scope-card p {font-size:15px; line-height:1.9; margin:0 0 20px; color:#555;}
.ooaks-interior-renewal .service-scope-card a {color:var(--ooaks-action); font-weight:700; font-size:14px; text-underline-offset:5px;}
.ooaks-interior-renewal .service-deliverables {margin-top:28px; padding:24px 28px; background:#eef4e8; border-radius:10px;}
.ooaks-interior-renewal .service-deliverables h3 {font-size:18px; margin:0 0 12px;}
.ooaks-interior-renewal .service-deliverables p {font-size:15px; line-height:1.9; margin:0;}
@media(min-width:1100px) {
 .ooaks-interior-renewal .flow-section .flow-timeline:has(> .flow-item:nth-child(4):last-child) {grid-template-columns:repeat(4,minmax(0,1fr))!important;}
 .ooaks-interior-renewal .flow-section .flow-timeline:has(> .flow-item:nth-child(3):last-child),
 .ooaks-interior-renewal .flow-section .flow-timeline:has(> .flow-item:nth-child(6):last-child) {grid-template-columns:repeat(3,minmax(0,1fr))!important;}
}
@media(max-width:1099px) {
 .ooaks-interior-renewal .platforms-grid {grid-template-columns:repeat(2,minmax(0,1fr));}
 .ooaks-interior-renewal .representative-card-enhanced {grid-template-columns:240px minmax(0,1fr); gap:32px;}
 .ooaks-interior-renewal .service-scope-grid {grid-template-columns:1fr;}
}
@media(max-width:767px) {
 .ooaks-interior-renewal .flow-section .flow-timeline,
 .ooaks-interior-renewal .process-timeline,
 .ooaks-interior-renewal .platforms-grid,
 .ooaks-interior-renewal .representative-card-enhanced {grid-template-columns:minmax(0,1fr)!important;}
 .ooaks-interior-renewal .flow-section .flow-timeline .flow-item,
 .ooaks-interior-renewal .process-timeline .process-item {padding:24px!important;}
 .ooaks-interior-renewal .representative-photo-placeholder {max-width:280px;}
 .ooaks-interior-renewal .service-page-nav a {font-size:13px; padding:10px 12px;}
 .ooaks-interior-renewal .service-scope-card {padding:24px;}
}

.ooaks-interior-renewal .process-timeline .process-number {opacity:1;}
.ooaks-interior-renewal .history-timeline::before {display:none;}
.ooaks-interior-renewal .service-scope-card {display:flex; flex-direction:column;}
.ooaks-interior-renewal .service-scope-card > a {margin-top:auto; align-self:flex-start;}

.ooaks-editorial-renewal .collection-intro {font-size:16px; line-height:1.9; color:#555; margin:20px 0 24px;}
.ooaks-editorial-renewal .collection-nav {display:flex; gap:10px; margin:0 0 32px;}
.ooaks-editorial-renewal .collection-nav a {display:inline-flex; padding:12px 24px; color:var(--ooaks-action); border:1px solid var(--ooaks-action-line); border-radius:6px; text-decoration:none;}
.ooaks-editorial-renewal .collection-nav [aria-current=page] {background:var(--ooaks-action); border-color:var(--ooaks-action); color:white;}
.ooaks-editorial-renewal .collection-nav a:hover {background:var(--ooaks-action-soft); color:var(--ooaks-action);}

/* Service-specific guidance: readable steps, outputs and measurement. */
.ooaks-interior-renewal .service-practical {background:#f7f8f5;}
.ooaks-interior-renewal .service-practical-heading {display:grid; grid-template-columns:1fr 1fr; gap:48px; align-items:end; margin-bottom:36px;}
.ooaks-interior-renewal .service-practical-label {display:block; margin-bottom:14px; font-size:12px; letter-spacing:.16em; font-weight:700; color:var(--ooaks-action);}
.ooaks-interior-renewal .service-practical-heading .ooaks-section-title {margin:0; font-size:clamp(25px,2.6vw,34px)!important; line-height:1.5; text-wrap:balance; word-break:normal; word-break:auto-phrase;}
.ooaks-interior-renewal .service-practical-heading p {margin:0; font-size:16px; line-height:1.9; color:#555;}
.ooaks-interior-renewal .service-practical-steps {display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; list-style:none; padding:0; margin:0;}
.ooaks-interior-renewal .service-practical-steps > li {display:flex; flex-direction:column; min-width:0; padding:28px; background:#fff; border:1px solid #dce5d4; border-radius:12px;}
.ooaks-interior-renewal .service-practical-number {display:inline-flex; width:42px; height:42px; border-radius:50%; align-items:center; justify-content:center; margin-bottom:20px; color:#fff; background:var(--ooaks-action); font-size:16px; font-weight:700;}
.ooaks-interior-renewal .service-practical-steps h3 {margin:0 0 14px; font-size:21px; line-height:1.5;}
.ooaks-interior-renewal .service-practical-steps p {margin:0 0 24px; color:#555; font-size:15px; line-height:1.85;}
.ooaks-interior-renewal .service-practical-output {margin-top:auto; padding-top:18px; border-top:1px solid #e2e8dc;}
.ooaks-interior-renewal .service-practical-output span {display:block; font-size:11px; color:#666; margin-bottom:6px;}
.ooaks-interior-renewal .service-practical-output strong {font-size:14px; line-height:1.6; color:var(--ooaks-action);}
.ooaks-interior-renewal .service-practical-measure {display:grid; grid-template-columns:1fr 1fr; gap:32px; margin-top:24px; padding:28px; background:var(--ooaks-action-soft); border-radius:12px; align-items:center;}
.ooaks-interior-renewal .service-practical-measure h3 {font-size:18px; margin:0 0 16px;}
.ooaks-interior-renewal .service-practical-measure ul {display:flex; flex-wrap:wrap; list-style:none; gap:8px; margin:0; padding:0;}
.ooaks-interior-renewal .service-practical-measure li {font-size:12px; background:#fff; border:1px solid #d4dfca; padding:6px 10px; border-radius:4px;}
.ooaks-interior-renewal .service-practical-measure p {font-size:14px; line-height:1.9; color:#444; margin:0;}
.ooaks-interior-renewal .service-practical-questions {margin-top:36px;}
.ooaks-interior-renewal .service-practical-questions > h3 {font-size:20px; margin:0 0 18px;}
.ooaks-interior-renewal .service-practical-questions details {background:#fff; border:1px solid #e0e4dc; border-radius:8px; margin-top:12px;}
.ooaks-interior-renewal .service-practical-questions summary {display:flex; align-items:baseline; gap:14px; list-style:none; cursor:pointer; padding:20px 24px; font-weight:700; font-size:16px;}
.ooaks-interior-renewal .service-practical-questions summary::-webkit-details-marker {display:none;}
.ooaks-interior-renewal .service-practical-questions summary::after {content:'+'; margin-left:auto; color:var(--ooaks-action); flex-shrink:0;}
.ooaks-interior-renewal .service-practical-questions [open] summary::after {content:'−';}
.ooaks-interior-renewal .service-practical-questions summary:focus-visible {outline:2px solid var(--ooaks-action); outline-offset:4px; border-radius:8px;}
.ooaks-interior-renewal .service-practical-q {color:var(--ooaks-action);}
.ooaks-interior-renewal .service-practical-questions details p {padding:0 24px 22px 50px; margin:0; font-size:15px; line-height:1.9; color:#555;}
.ooaks-interior-renewal .service-practical-evidence {display:flex; align-items:center; gap:24px; justify-content:space-between; padding:24px 0 0; margin-top:28px; border-top:1px solid #dce5d4; color:var(--ooaks-action); text-decoration:none;}
.ooaks-interior-renewal .service-practical-evidence small {display:block; font-size:12px; margin-bottom:8px;}
.ooaks-interior-renewal .service-practical-evidence strong {display:block; font-size:18px; margin-bottom:8px;}
.ooaks-interior-renewal .service-practical-evidence span span {display:block; color:#555; font-size:14px; line-height:1.8;}
.ooaks-interior-renewal [id^=case-] {scroll-margin-top:110px;}
@media(max-width:1099px) {
 .ooaks-interior-renewal .service-practical-heading {gap:24px; grid-template-columns:1fr;}
 .ooaks-interior-renewal .service-practical-steps {grid-template-columns:1fr;}
 .ooaks-interior-renewal .service-practical-steps > li {display:grid; grid-template-columns:42px 1fr; gap:0 18px;}
 .ooaks-interior-renewal .service-practical-steps p,.ooaks-interior-renewal .service-practical-output {grid-column:2;}
 .ooaks-interior-renewal .service-practical-number {grid-row:1/3; margin:0;}
}
@media(max-width:767px) {
 .ooaks-interior-renewal .service-practical-heading p {font-size:15px;}
 .ooaks-interior-renewal .service-practical-steps > li {padding:24px; grid-template-columns:1fr; display:flex; gap:0;}
 .ooaks-interior-renewal .service-practical-number {margin-bottom:16px;}
 .ooaks-interior-renewal .service-practical-measure {grid-template-columns:1fr; padding:24px; gap:20px;}
 .ooaks-interior-renewal .service-practical-questions summary {font-size:15px; padding:18px; gap:10px;}
 .ooaks-interior-renewal .service-practical-questions details p {padding:0 18px 20px; font-size:14px;}
}

/* Shared price catalog — 2026-09-14. Scoped away from SWELL articles. */
.ooaks-pricing{background:#f6f8f4;color:#222}.ooaks-pricing-heading{margin-bottom:32px}.ooaks-pricing-heading>span{display:block;color:#426333;font-size:12px;font-weight:700;letter-spacing:.12em;margin-bottom:12px}.ooaks-pricing-heading>p{color:#60655c;margin:12px 0 0}.ooaks-pricing-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.ooaks-pricing-grid.has-four{grid-template-columns:repeat(2,minmax(0,1fr))}.ooaks-pricing .ooaks-price-card{display:flex;flex-direction:column;min-width:0;padding:30px;background:#fff;border:1px solid #dae2d3;border-radius:14px}.ooaks-price-index{font-size:12px;color:#4b693f;letter-spacing:.12em;margin-bottom:16px}.ooaks-pricing .ooaks-price-card>h3{font-size:21px;line-height:1.5;margin:0;background:none;padding:0;border:0;color:#222}.ooaks-pricing .ooaks-price-card>h3:before,.ooaks-pricing .ooaks-price-card>h3:after{display:none}.ooaks-pricing .ooaks-price-description{font-size:14px;line-height:1.7;color:#666;margin:10px 0 0}.ooaks-pricing .ooaks-price-value{display:flex;align-items:baseline;gap:9px;flex-wrap:wrap;margin:24px 0!important;line-height:1.1;color:#315625}.ooaks-price-value strong{font-size:clamp(36px,3.5vw,52px);font-weight:750;font-variant-numeric:tabular-nums;letter-spacing:-.025em}.ooaks-price-value>span{font-size:16px}.ooaks-price-value small{display:block;margin-top:8px;color:#60655c;font-size:12px}.ooaks-price-value strong.is-quote{font-size:25px}.ooaks-pricing .ooaks-price-card>ul{padding:20px 0 24px;margin:0;border-top:1px solid #e7eadf;list-style:none;flex:1}.ooaks-price-card>ul>li{font-size:14px;line-height:1.8;margin:0 0 9px;padding-left:17px;position:relative}.ooaks-price-card>ul>li:before{content:'✓';position:absolute;left:0;color:#456537;font-size:12px}.ooaks-pricing a.ooaks-price-link{display:flex;justify-content:space-between;gap:12px;border-top:1px solid #e7eadf;padding-top:18px;font-size:14px;font-weight:700;color:#315625;text-decoration:none}.ooaks-price-link:hover{color:#182b11}.ooaks-pricing-conditions{padding:24px 0 0;margin-top:12px}.ooaks-pricing-conditions>h3{font-size:15px!important;border:0!important;background:none!important;padding:0!important;margin:0 0 12px!important}.ooaks-pricing-conditions>ul{font-size:13px;color:#62665e;line-height:1.9;padding-left:1.3em;margin:0}.ooaks-pricing-conditions li{margin-bottom:6px}.ooaks-pricing-links{display:flex;gap:28px;flex-wrap:wrap;margin-top:24px}.ooaks-pricing-links a{color:#315625;font-size:14px;text-decoration:underline;text-underline-offset:5px}.ooaks-pricing a:focus-visible{outline:2px solid #426333;outline-offset:5px}.ooaks-price-summary{width:100%;border-collapse:collapse;font-size:14px}.ooaks-price-summary th,.ooaks-price-summary td{padding:16px;border-bottom:1px solid #dbe1d3;text-align:left}.ooaks-price-summary th{background:#eef3e9}.ooaks-price-summary a{color:#315625}.ooaks-pricing-table-wrap{overflow-x:auto}@media(max-width:1000px){.ooaks-pricing-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:640px){.ooaks-pricing-grid,.ooaks-pricing-grid.has-four{grid-template-columns:minmax(0,1fr)}.ooaks-pricing .ooaks-price-card{padding:24px}.ooaks-pricing-heading{margin-bottom:24px}.ooaks-price-value strong{font-size:42px}}
/* Scope custom pricing headings so SWELL article headings stay unchanged. */
.ooaks-pricing .ooaks-pricing-heading h2,.ooaks-pricing-page h2{background:transparent!important;border:0!important;box-shadow:none!important;color:#222!important;padding:0!important;margin:0 0 16px!important;font-size:clamp(24px,2.6vw,34px)!important;line-height:1.5!important}.ooaks-pricing .ooaks-pricing-heading h2:before,.ooaks-pricing .ooaks-pricing-heading h2:after,.ooaks-pricing-page h2:before,.ooaks-pricing-page h2:after{display:none!important}.ooaks-pricing .ooaks-price-value strong{border:0!important;background:none!important;text-decoration:none!important}.post_content .ooaks-pricing{padding:32px 24px;margin:32px 0}.post_content .ooaks-pricing .ooaks-container{width:100%;max-width:none;padding:0}.ooaks-pricing-page>.ooaks-section{padding:36px 0}.ooaks-pricing-page>.ooaks-pricing{padding:32px 24px}.ooaks-pricing-page .ooaks-container{width:100%;max-width:none;padding:0}.ooaks-pricing-page .ooaks-pricing-heading>span{margin-bottom:12px}.ooaks-pricing-page .ooaks-pricing-heading>p{margin:0}.ooaks-pricing-page .ooaks-price-summary{min-width:620px}@media(max-width:640px){.post_content .ooaks-pricing,.ooaks-pricing-page>.ooaks-pricing{padding:24px 16px}.post_content .ooaks-pricing .ooaks-price-card{padding:22px 18px}.ooaks-pricing-page>.ooaks-section{padding:28px 0}}

/* Legacy fixed-page HTML may not enqueue SWELL's block styles. */
.ooaks-editorial-renewal .faq_q {font-weight:700;}
.ooaks-editorial-renewal .faq_q::before {content:"Q";}
.ooaks-editorial-renewal .faq_a::before {content:"A";}
.ooaks-editorial-renewal .faq_a > :first-child {margin-top:0;}
.ooaks-editorial-renewal .swell-block-step.is-style-default {counter-reset:ooaks-step; margin:24px 0 40px;}
.ooaks-editorial-renewal .swell-block-step.is-style-default > .swell-block-step__item {counter-increment:ooaks-step; display:grid; grid-template-columns:56px minmax(0,1fr); column-gap:20px; position:relative; margin:0; padding:24px 0; border:0; border-bottom:1px solid #ddd;}
.ooaks-editorial-renewal .swell-block-step.is-style-default > .swell-block-step__item::before,
.ooaks-editorial-renewal .swell-block-step.is-style-default > .swell-block-step__item::after {content:none;}
.ooaks-editorial-renewal .swell-block-step.is-style-default .swell-block-step__number {position:static; grid-column:1; grid-row:1 / 3; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:2px; width:56px; height:56px; margin:0; padding:0; border:0; border-radius:10px; background:#eef3e9!important; color:#3f6331!important; line-height:1.2; transform:none;}
.ooaks-editorial-renewal .swell-block-step.is-style-default .swell-block-step__number .__label {font-size:10px; font-weight:700; letter-spacing:.08em;}
.ooaks-editorial-renewal .swell-block-step.is-style-default .swell-block-step__number::before {content:none;}
.ooaks-editorial-renewal .swell-block-step.is-style-default .swell-block-step__number::after {content:counter(ooaks-step,decimal-leading-zero); font-size:20px; font-weight:700;}
.ooaks-editorial-renewal .swell-block-step.is-style-default .swell-block-step__title {grid-column:2; margin:0; padding:0; font-size:18px; line-height:1.6; font-weight:700;}
.ooaks-editorial-renewal .swell-block-step.is-style-default .swell-block-step__body {grid-column:2; margin:8px 0 0; padding:0; line-height:1.9;}
.ooaks-editorial-renewal .swell-block-step.is-style-default .swell-block-step__body > :first-child {margin-top:0;}
@media (max-width:599px) {
 .ooaks-editorial-renewal .swell-block-step.is-style-default > .swell-block-step__item {column-gap:14px;}
 .ooaks-editorial-renewal .swell-block-step.is-style-default .swell-block-step__title {font-size:17px;}
}

/* Published client story: shared by home, case list and SEO service. */
.ooaks-main-content .ooaks-enagic-feature,
.ooaks-interior-renewal .ooaks-main-content .ooaks-enagic-feature {display:grid!important;grid-template-columns:minmax(200px,.8fr) minmax(0,1.7fr);gap:0;margin:0 0 40px;padding:0;overflow:hidden;border:1px solid #dce5d6;border-radius:16px!important;background:#fff;box-shadow:none;}
.ooaks-main-content .ooaks-enagic-feature.is-hidden {display:none!important;}
.ooaks-enagic-brand {display:flex;flex-direction:column;justify-content:center;align-items:center;gap:28px;padding:36px 28px;background:#f0f4eb;text-align:center;}
.ooaks-enagic-brand > span {font-size:11px;letter-spacing:.18em;font-weight:700;color:#3f6331;}
.ooaks-enagic-brand img {display:block;width:100%;max-width:280px;height:auto;background:#fff;padding:14px;border-radius:8px;object-fit:contain;}
.ooaks-enagic-brand p {margin:0;font-size:13px;line-height:1.9;color:#46533f;}
.ooaks-enagic-content {min-width:0;padding:36px;}
.ooaks-enagic-content .ooaks-enagic-label {margin:0 0 14px;font-size:12px;color:#3f6331;font-weight:700;}
.ooaks-enagic-content .ooaks-enagic-title {margin:0 0 18px;padding:0;border:0;background:none;font-size:clamp(22px,2.3vw,30px);line-height:1.65;letter-spacing:.02em;}
.ooaks-enagic-title a {color:#222;text-decoration:none;}
.ooaks-enagic-title a:hover {color:#3f6331;}
.ooaks-enagic-content > p {margin:0 0 20px;font-size:14px;line-height:1.9;}
.ooaks-enagic-metrics {display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin:24px 0;padding:20px 0;border-block:1px solid #e2e8dd;}
.ooaks-enagic-metrics dt {font-size:12px;color:#555;}
.ooaks-enagic-metrics dd {margin:6px 0 0;font-size:clamp(26px,3vw,38px);font-weight:700;color:#3f6331;line-height:1.3;}
.ooaks-enagic-metrics dd span {margin-left:3px;font-size:13px;}
.ooaks-enagic-content .ooaks-enagic-note {font-size:12px;line-height:1.8;color:#666;}
.ooaks-enagic-link {display:inline-flex;align-items:center;gap:20px;min-height:44px;font-size:14px;font-weight:700;color:#3f6331;text-decoration:underline;text-underline-offset:5px;}
.ooaks-enagic-link:focus-visible,.ooaks-enagic-title a:focus-visible {outline:2px solid #3f6331;outline-offset:4px;}
.service-practical-evidence + .service-practical-evidence {margin-top:16px;}
@media(max-width:767px){
 .ooaks-main-content .ooaks-enagic-feature,.ooaks-interior-renewal .ooaks-main-content .ooaks-enagic-feature {grid-template-columns:minmax(0,1fr);}
 .ooaks-enagic-brand {gap:14px;padding:24px;}
 .ooaks-enagic-brand img {max-width:220px;}
 .ooaks-enagic-content {padding:24px 20px;}
 .ooaks-enagic-metrics {gap:6px;}
}

/* Four client voices: balanced pairs on desktop and one column on mobile. */
.ooaks-main-content .testimonials-grid--with-enagic {grid-template-columns:repeat(2,minmax(0,1fr));}
.testimonial-case-link {display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:44px;margin-top:16px;font-size:14px;font-weight:700;color:#3f6331;text-decoration:underline;text-underline-offset:4px;}
.testimonial-case-link:focus-visible {outline:2px solid #3f6331;outline-offset:4px;}
@media(max-width:767px){.ooaks-main-content .testimonials-grid--with-enagic {grid-template-columns:minmax(0,1fr);}}

/* BaseMe uses the shared published-case layout with two comparable months. */
.ooaks-baseme-metrics {grid-template-columns:repeat(2,minmax(0,1fr));}

/* Destination cues move only on deliberate hover/focus/press. Logos and portraits
   retain their crop; only editorial thumbnails receive a small image zoom. */
@media (prefers-reduced-motion:no-preference) {
  .ooaks-site-renewal :is(.btn-primary,.btn-secondary,.btn-outline,.swell-block-button__link,.case-filter-btn) {
    transition:scale .18s ease,translate .22s ease,background-color .22s ease,border-color .22s ease;
  }
  .ooaks-site-renewal :is(.btn-primary,.btn-secondary,.btn-outline,.swell-block-button__link,.case-filter-btn):active {scale:.975;}
  .ooaks-site-renewal :is(.ooaks-enagic-link,.testimonial-case-link,.ooaks-price-link,.related-service-card,.service-page-nav a) > span[aria-hidden="true"],
  .ooaks-site-renewal .related-service-link {transition:translate .25s ease;}
  .ooaks-site-renewal :is(.ooaks-enagic-link,.testimonial-case-link,.ooaks-price-link):is(:hover,:focus-visible) > span[aria-hidden="true"],
  .ooaks-site-renewal .related-service-card:is(:hover,:focus-visible) .related-service-link {translate:5px 0;}
  .ooaks-site-renewal .service-page-nav a:is(:hover,:focus-visible) > span[aria-hidden="true"] {translate:0 3px;}
}
@media (hover:hover) and (pointer:fine) and (prefers-reduced-motion:no-preference) {
  .ooaks-site-renewal :is(.column-card-image,.c-postThumb) {overflow:hidden;}
  .ooaks-site-renewal :is(.column-card-image,.c-postThumb) img {transition:scale .55s cubic-bezier(.2,.7,.2,1);}
  .ooaks-site-renewal .column-card:is(:hover,:focus-visible) .column-card-image img,
  .ooaks-site-renewal .p-postList__link:is(:hover,:focus-visible) .c-postThumb img {scale:1.035;}
  .ooaks-site-renewal :is(.related-service-card,.service-card-large,.service-card-medium) {transition:translate .25s ease,background-color .25s ease;}
  .ooaks-site-renewal :is(.related-service-card,.service-card-large,.service-card-medium):is(:hover,:focus-visible) {translate:0 -4px;}
}
@media (prefers-reduced-motion:reduce) {
  .ooaks-site-renewal :is(.growth-sculpture,.related-service-card,.service-card-large,.service-card-medium,.column-card-image img,.c-postThumb img) {transform:none!important;translate:none!important;rotate:none!important;scale:none!important;}
}
