/* v37: open layouts, a concise home page, and optional reading depth. */
.editorial-v37 { --ed-line:#cfd0c5; --ed-muted:#62685d; }
.editorial-v37 .section { padding-block:76px; }
.editorial-v37 h2,.editorial-v37 h3 { text-wrap:pretty; }
.ed-eyebrow { color:var(--ed-muted); font-size:.8125rem; line-height:1.7; margin:0 0 16px; }
.ed-section-title,.ed-section-heading h2 { font-size:clamp(1.625rem,2.8vw,2.25rem); line-height:1.6; font-weight:600; margin:0 0 32px; letter-spacing:.015em; }
.ed-section-heading .ed-eyebrow { margin-bottom:10px; }
.ed-mobile-break { display:none; }
.ed-directory { background:var(--paper); }
.ed-service-index { border-top:1px solid var(--ed-line); }
.ed-service-index>a { display:grid; grid-template-columns:220px minmax(0,1fr) 28px; gap:28px; align-items:center; padding:28px 0; border-bottom:1px solid var(--ed-line); color:var(--ink); background:transparent; text-decoration:none; }
.ed-service-index>a>span { font-size:.875rem; color:var(--ed-muted); }
.ed-service-index h3 { font-size:clamp(1.25rem,2vw,1.625rem); margin:0; font-weight:600; line-height:1.6; }
.ed-service-index .icon { width:24px; height:24px; }
.ed-service-index>a:hover h3 { text-decoration:underline; text-underline-offset:7px; }
.ed-outsourcing { background:#f5f3ec; color:#313b32; }
.ed-ai-intro { display:grid; grid-template-columns:1fr 1fr; gap:64px; align-items:end; margin-bottom:32px; }
.ed-ai-intro h2 { font-size:clamp(1.875rem,3.3vw,2.75rem); font-weight:600; line-height:1.65; margin:0; }
.ed-ai-intro>p { color:var(--ed-muted); font-size:1rem; line-height:2; margin:0 0 4px; }
.ed-scope-inline { max-width:860px; margin:0 0 42px; }
.ed-scope-inline h3 { font-size:.875rem; font-weight:600; margin:0 0 6px; }
.ed-scope-inline p { color:var(--ed-muted); font-size:.875rem; line-height:1.9; margin:0 0 10px; }
.ed-scope-inline .text-link { font-size:.8125rem; padding:0 0 5px; }
.ed-price-art { margin-top:36px; scroll-margin-top:110px; }
.ed-price-art .outsourcing-cost-art { max-width:960px; }
.ed-price-art .outsourcing-price-note { font-size:.75rem; line-height:1.9; }
.ed-split { display:grid; grid-template-columns:minmax(0,.72fr) minmax(0,1.28fr); gap:72px; align-items:start; }
.ed-split>h3,.ed-split h3 { font-size:clamp(1.375rem,2.3vw,1.875rem); font-weight:600; line-height:1.7; margin:0; }
.ed-price-example { margin-top:48px; padding-top:30px; border-top:1px solid var(--ed-line); scroll-margin-top:110px; }
.ed-body { font-size:.9375rem; line-height:1.95; margin:0 0 18px; }
.ed-note { font-size:.8125rem; line-height:1.9; color:var(--ed-muted); margin:16px 0 0; }
.ed-disclosure { border-top:1px solid var(--ed-line); border-bottom:1px solid var(--ed-line); margin:22px 0; }
.ed-disclosure>summary { display:flex; justify-content:space-between; align-items:center; gap:20px; padding:16px 0; list-style:none; cursor:pointer; font-size:.875rem; font-weight:500; line-height:1.8; }
.ed-disclosure>summary::-webkit-details-marker { display:none; }
.ed-disclosure>summary::after { content:'＋'; flex:0 0 auto; font-size:1.125rem; font-weight:400; }
.ed-disclosure[open]>summary::after { content:'−'; }
.ed-detail-body { padding:0 0 20px; }
.ed-definition { margin:0; }
.ed-definition>div { display:grid; grid-template-columns:150px minmax(0,1fr); gap:20px; padding:12px 0; font-size:.8125rem; line-height:1.9; }
.ed-definition dt { font-weight:600; }
.ed-definition dd { margin:0; color:var(--ed-muted); }
.editorial-v37 .ed-cta { background:#f3d777; color:#313b32; border:1px solid #e6c967; border-radius:2px; box-shadow:none; font-size:.875rem; line-height:1.8; white-space:normal; padding:15px 20px; display:inline-flex; align-items:center; justify-content:space-between; gap:24px; max-width:100%; }
.editorial-v37 .ed-cta:hover { background:#efce62; }
.ed-cta .icon { width:22px; height:22px; flex:0 0 22px; }
.ed-quality { margin-top:64px; scroll-margin-top:110px; }
.ed-process { display:flex; padding:0; margin:26px 0 0; list-style:none; }
.ed-process>li { flex:1 1 0; min-width:0; position:relative; padding:18px 12px 0 0; border-top:1px solid #a6af99; }
.ed-process>li::before { content:''; position:absolute; width:7px; height:7px; border-radius:50%; background:#91a082; top:-4px; left:0; }
.ed-process>li:first-child::before { background:#d7b64a; }
.ed-process>li:not(:last-child)::after { content:'›'; position:absolute; right:12px; top:21px; color:#8a967b; font-size:1.2rem; }
.ed-process span { font:400 .75rem/1.6 Arial,sans-serif; color:var(--ed-muted); display:block; margin-bottom:6px; }
.ed-process strong { font-size:.875rem; font-weight:500; line-height:1.8; }
.ed-assurance { margin-top:48px; scroll-margin-top:110px; }
.ed-assurance .ed-disclosure { margin:0; }
.ed-more { display:flex; flex-wrap:wrap; gap:20px 40px; margin-top:36px; padding-top:24px; border-top:1px solid var(--ed-line); }
.ed-more .text-link { font-size:.875rem; padding:0 0 6px; }
.ed-more>div { scroll-margin-top:110px; }
.ed-consulting { background:var(--paper); }
.editorial-v37 .ed-consult-row { display:grid; grid-template-columns:1fr 1fr; gap:56px; padding:30px 0; border-bottom:1px solid var(--ed-line); margin:0; }
.ed-consult-row:first-child { border-top:1px solid var(--ed-line); }
.ed-consult-name { display:flex; align-items:flex-start; gap:22px; }
.ed-consult-name>img { width:42px; height:42px; flex:0 0 42px; margin-top:5px; }
.editorial-v37 .ed-consult-name h3 { font-size:1.1875rem; line-height:1.8; font-weight:600; margin:0; }
.ed-consult-name h3>span { display:block; }
.ed-consult-copy>p { font-size:.875rem; line-height:1.95; color:var(--ed-muted); margin:0; }
.ed-consult-copy .ed-disclosure { margin:14px 0 0; border:0; }
.ed-consult-copy .ed-disclosure>summary { padding:0; font-size:.8125rem; }
.ed-consult-copy ul { margin:16px 0 0; padding-left:1.25em; }
.ed-consult-copy li { font-size:.875rem; line-height:1.95; margin:6px 0; color:var(--ed-muted); }
.ed-section-foot { margin-top:26px; }
.home-v37 .home-case-list { display:block; margin-bottom:24px; border-top:1px solid var(--ed-line); }
.home-v37 .home-case-list article { display:grid; grid-template-columns:190px 1fr 1fr; gap:28px; align-items:baseline; border:0; border-bottom:1px solid var(--ed-line); padding:25px 0; }
.home-v37 .home-case-list h3 { font-size:1.0625rem; line-height:1.8; font-weight:600; margin:0; }
.home-v37 .home-case-list h3 br { display:none; }
.home-v37 .home-case-list p { margin:0; }
.home-v37 .home-case-list .v36-eyebrow { font-size:.75rem; }
.home-v37 .home-case-list article>p:last-child { font-size:.8125rem; }
.home-v37 .home-about-grid { margin-top:24px; grid-template-columns:150px minmax(0,1fr); max-width:940px; }
.home-v37 .home-founder-photo img { width:150px; height:180px; }
.home-v37 .home-about-grid h2 { font-size:clamp(1.25rem,2.2vw,1.75rem); }
.home-v37 .home-resources { display:flex; gap:48px; padding-block:0 48px; }
.home-v37 .home-resources>div { border:0; padding:0; }
.home-v37 .home-resources p { font-size:.75rem; }
.home-v37 .contact-grid { display:block; }
.home-v37 .contact-grid .section-label { font-size:1rem; }
.home-v37 .contact-grid .section-label>span { display:none; }
.home-v37 .contact-form-area { max-width:860px; }
/* Detailed pages use open rows in place of repeated equal-sized panels. */
.editorial-v37 .outsourcing-task-list { display:block; }
.editorial-v37 .outsourcing-task-list>li { display:grid; grid-template-columns:38px minmax(0,1fr); gap:20px; padding:19px 0; border-top:1px solid var(--ed-line); background:transparent; }
.editorial-v37 .outsourcing-task-list>li>div { display:grid; grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr); gap:32px; }
.editorial-v37 .outsourcing-task-list img { width:32px; height:32px; }
.editorial-v37 .outsourcing-task-list h4 { font-size:1rem; margin:0; }
.editorial-v37 .outsourcing-task-list p { margin:0; font-size:.875rem; line-height:1.9; }
.editorial-v37 .outsourcing-strength-list { display:block; }
.editorial-v37 .outsourcing-strength-list>div { display:grid; grid-template-columns:28px minmax(0,.9fr) minmax(0,1.1fr); gap:28px; padding:20px 0; border-top:1px solid var(--ed-line); }
.editorial-v37 .outsourcing-strength-list>div>span { margin:3px 0 0; grid-column:auto; grid-row:auto; }
.editorial-v37 .outsourcing-strength-list h4,.editorial-v37 .outsourcing-strength-list p { margin:0; grid-column:auto; }
.editorial-v37 .outsourcing-start-flow { gap:0; }
.editorial-v37 .outsourcing-start-flow>li { padding:20px 26px 0 0; }
.editorial-v37 .outsourcing-start-flow>li>span { background:transparent; border-radius:0; width:auto; height:auto; display:block; margin:0 0 16px; }
.editorial-v37 .outsourcing-start-flow>li:not(:last-child)::after { content:'›'; right:13px; top:10px; }
.ed-end-cta { margin:36px 0 0; }
.editorial-v37 .bpo-service-list { border-top:1px solid var(--ed-line); }
.editorial-v37 .bpo-service { border-color:var(--ed-line); }
.editorial-v37 .bpo-service h3 { font-size:1.1875rem; }
.editorial-v37 .bpo-service-icon { width:48px; height:48px; background:transparent; padding:0; border:0; }
.editorial-v37 .bpo-service-icon img { width:44px; height:44px; }
.editorial-v37 .engagement-grid { display:block; }
.editorial-v37 .engagement-grid article { display:grid; grid-template-columns:36px 220px minmax(0,1fr); gap:24px; padding:22px 0; border:0; border-top:1px solid var(--ed-line); border-radius:0; box-shadow:none; background:transparent; }
.editorial-v37 .engagement-grid article>span,.editorial-v37 .engagement-grid h3,.editorial-v37 .engagement-grid p { margin:0; }
.editorial-v37.company-v36 .member-list { display:block; }
.editorial-v37 .member-copy { display:grid; grid-template-columns:190px minmax(0,1fr); column-gap:44px; }
.editorial-v37 .member-copy .member-role,.editorial-v37 .member-copy .member-name { grid-column:1; margin:0; }
.editorial-v37 .member-copy .member-name { grid-row:2; font-size:1.375rem; }
.editorial-v37 .member-copy>p:not(.member-role) { grid-column:2; margin:0 0 12px; font-size:.9375rem; line-height:1.95; }
.editorial-v37 .member-copy>p:nth-of-type(2) { grid-row:1 / span 2; }
.editorial-v37 .salary-grid { display:block; }
.editorial-v37 .salary-grid article { display:flex; align-items:center; justify-content:space-between; gap:30px; padding:22px 0; border:0; border-top:1px solid var(--ed-line); background:transparent; border-radius:0; box-shadow:none; }
.editorial-v37 .salary-grid article>span { margin:0; }
.editorial-v37 .salary-grid strong { font-size:2rem; margin:0; }
.editorial-v37 .requirement-grid { display:block; }
.editorial-v37 .requirement-grid article { display:grid; grid-template-columns:250px minmax(0,1fr); gap:36px; padding:26px 0; min-height:0; }
.editorial-v37 .requirement-grid article:hover { transform:none; box-shadow:none; }
.editorial-v37 .requirement-grid .requirement-title { margin:0; align-self:start; padding:0; border:0; }
.editorial-v37 .requirement-grid ul { margin:0; }
.editorial-v37 .recruit-market.market-panel { background:transparent!important; border:0; border-left:2px solid #ddc264; box-shadow:none; border-radius:0; aspect-ratio:auto; min-height:0; max-width:none; text-align:left; }
.editorial-v37 .recruit-market::after { content:none; }
.editorial-v37 .project-grid { display:block; }
.editorial-v37 .project-item { padding:32px 0; border-bottom:1px solid var(--ed-line); }
.editorial-v37 .project-item-wide { display:block; }
.editorial-v37 a:focus-visible,.editorial-v37 summary:focus-visible { outline:2px solid #53614d; outline-offset:5px; }
@media(max-width:900px) {
 .ed-service-index>a { grid-template-columns:170px minmax(0,1fr) 24px; gap:18px; }
 .ed-ai-intro { gap:36px; }
 .ed-split { gap:36px; grid-template-columns:minmax(0,.7fr) minmax(0,1.3fr); }
 .ed-definition>div { grid-template-columns:1fr; gap:4px; }
 .editorial-v37 .ed-consult-row { gap:30px; }
 .home-v37 .home-case-list article { grid-template-columns:150px 1fr; gap:10px 24px; }
 .home-v37 .home-case-list article>p:last-child { grid-column:2; }
 .editorial-v37 .engagement-grid article { grid-template-columns:28px 180px minmax(0,1fr); gap:20px; }
}
@media(max-width:700px) {
 .ed-mobile-break { display:initial; }
 .editorial-v37 .section { padding-block:52px; }
 .ed-section-title,.ed-section-heading h2 { margin-bottom:24px; font-size:1.5rem; }
 .ed-service-index>a { grid-template-columns:minmax(0,1fr) 24px; gap:7px 16px; padding:22px 0; }
 .ed-service-index>a>span { grid-column:1; font-size:.75rem; }
 .ed-service-index h3 { grid-column:1; font-size:1.1875rem; }
 .ed-service-index .icon { grid-column:2; grid-row:1 / span 2; }
 .ed-ai-intro { display:block; margin-bottom:24px; }
 .ed-ai-intro h2 { font-size:1.875rem; }
 .ed-ai-intro>p { margin:20px 0 0; font-size:.9375rem; }
 .ed-scope-inline { margin-bottom:28px; }
 .ed-price-art { margin-top:24px; }
 .ed-split { display:block; }
 .ed-split>h3,.ed-split h3 { font-size:1.375rem; margin-bottom:20px; }
 .ed-price-example { margin-top:28px; padding-top:26px; }
 .ed-quality { margin-top:42px; }
 .ed-assurance { margin-top:36px; }
 .ed-body { font-size:.9375rem; line-height:1.9; }
 .ed-process { display:block; margin:24px 0 0 4px; }
 .ed-process>li { display:flex; gap:22px; align-items:baseline; border-top:0; border-left:1px solid #a6af99; padding:0 0 20px 22px; }
 .ed-process>li:last-child { border-left-color:transparent; padding-bottom:0; }
 .ed-process>li::before { top:8px; left:-4px; }
 .ed-process>li:not(:last-child)::after { content:none; }
 .ed-process span { margin:0; width:18px; flex:0 0 18px; }
 .ed-process strong { font-size:.9375rem; }
 .ed-more { gap:20px; display:block; margin-top:30px; }
 .ed-more>div+div { margin-top:16px; }
 .editorial-v37 .ed-consult-row { display:block; padding:25px 0; }
 .ed-consult-name { gap:18px; }
 .ed-consult-name>img { width:36px; height:36px; flex-basis:36px; }
 .editorial-v37 .ed-consult-name h3 { font-size:1.0625rem; }
 .ed-consult-copy { padding-left:54px; margin-top:15px; }
 .ed-consult-copy>p,.ed-consult-copy li { font-size:.8125rem; }
 .home-v37 .home-case-list article { display:block; padding:23px 0; }
 .home-v37 .home-case-list h3 { font-size:1.0625rem; margin:7px 0; }
 .home-v37 .home-about-grid { display:block; }
 .home-v37 .home-founder-photo { float:right; margin:0 0 18px 16px; }
 .home-v37 .home-founder-photo img { width:90px; height:112px; }
 .home-v37 .home-about-grid h2 { font-size:1.25rem; overflow-wrap:anywhere; }
 .home-v37 .home-about-grid p:not(.v36-eyebrow) { clear:both; padding-top:8px; }
 .home-v37 .home-resources { display:block; padding-bottom:36px; }
 .home-v37 .home-resources>div+div { margin-top:20px; }
 .editorial-v37 .outsourcing-task-list>li { grid-template-columns:28px minmax(0,1fr); gap:16px; }
 .editorial-v37 .outsourcing-task-list>li>div { display:block; }
 .editorial-v37 .outsourcing-task-list p { margin-top:7px; }
 .editorial-v37 .outsourcing-task-list img { width:28px; height:28px; }
 .editorial-v37 .outsourcing-strength-list>div { grid-template-columns:24px minmax(0,1fr); gap:6px 16px; }
 .editorial-v37 .outsourcing-strength-list h4,.editorial-v37 .outsourcing-strength-list p { grid-column:2; }
 .editorial-v37 .outsourcing-strength-list>div>span { grid-row:1 / span 2; }
 .editorial-v37 .outsourcing-start-flow>li { padding:0 0 24px 40px; }
 .editorial-v37 .outsourcing-start-flow>li>span { left:-16px; top:0; background:#f5f3ec; padding:2px 3px; }
 .editorial-v37 .outsourcing-start-flow>li:not(:last-child)::after { content:'↓'; right:auto; left:-7px; top:auto; bottom:6px; }
 .editorial-v37 .engagement-grid article { grid-template-columns:24px minmax(0,1fr); gap:5px 16px; }
 .editorial-v37 .engagement-grid article>span { grid-row:1 / span 2; }
 .editorial-v37 .engagement-grid p { grid-column:2; }
 .editorial-v37 .member-copy { display:block; }
 .editorial-v37 .member-copy .member-name { margin:6px 0 20px; }
 .editorial-v37 .salary-grid article { gap:20px; align-items:flex-start; }
 .editorial-v37 .salary-grid strong { font-size:1.5rem; white-space:nowrap; }
 .editorial-v37 .salary-grid article>span { font-size:.875rem; }
 .editorial-v37 .requirement-grid article { display:block; }
 .editorial-v37 .requirement-grid .requirement-title { margin-bottom:18px; }
}
@media(max-width:359px) {
 .ed-consult-copy { padding-left:0; }
 .ed-ai-intro h2 { font-size:1.625rem; }
 .editorial-v37 .salary-grid article { display:block; }
 .editorial-v37 .salary-grid strong { margin-top:10px; }
}
