/* v19 — company page: templates, provider marks row, Company OS tree, local-data section. */
.company-templates { padding:30px 28px 70px; }
.template-grid { list-style:none; margin:34px auto 0; padding:0; max-width:900px; display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.template-grid li { text-align:left; background:#fff; border:1px solid var(--line); border-radius:16px; padding:24px 22px; }
.template-grid strong { display:block; font-size:17px; font-weight:600; letter-spacing:-.02em; color:var(--ink); }
.template-grid span { display:block; margin-top:6px; font-size:14px; line-height:1.5; color:#687581; }

.company-page .company-hero h1 .ink-blue { white-space:nowrap; }
.company-page .company-hero .hero-actions { margin-top:30px; }

.provider-marks-row { justify-content:center; gap:36px; margin:30px 0 0; }

.os-tree .context-branches > details > summary { display:flex; align-items:center; gap:16px; position:relative; padding:14px 0; font-size:15px; min-height:44px; cursor:pointer; list-style:none; }
.os-tree .context-branches > details > summary::-webkit-details-marker { display:none; }
.os-tree .context-branches > details > summary::before { content:''; height:1px; background:#dce5ee; width:20px; position:absolute; left:-32px; }
.os-tree .os-chevron { display:grid; place-items:center; width:30px; height:38px; border:1px solid #dce5ee; border-radius:7px; color:#6e94b7; font-size:22px; line-height:1; transition:transform .2s; }
.os-tree details[open] > summary .os-chevron { transform:rotate(90deg); }
.os-tree .os-children { margin:0 0 6px 46px; padding-left:16px; border-left:1px solid #dce5ee; display:flex; flex-direction:column; }
.os-tree .os-children span { font-size:14px; color:#48535e; padding:7px 0; }


@media(max-width:760px) {
 .company-templates { padding:10px 24px 50px; }
 .template-grid { grid-template-columns:1fr; }
 .provider-marks-row { gap:22px; flex-wrap:wrap; }
}

/* v21 — the data statement now lives in the machines section (v19 .company-data removed). */
.company-machines h2 { font-size:clamp(2.2rem,3.15vw,3rem); }
@media(max-width:760px) { .company-machines h2 { font-size:clamp(1.9rem,7.6vw,3rem); } }
/* v20 — dedicated watercolors: template thumbnails, connected plans, machines section. */
.template-grid li { padding:18px 18px 22px; }
.template-grid img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; object-position:center 60%; border-radius:10px; margin:0 0 16px; }

.plan-list { list-style:none; max-width:440px; margin:30px auto 0; padding:0 22px; text-align:left; background:#fff; border:1px solid var(--line); border-radius:16px; }
.plan-list li { display:flex; align-items:center; gap:14px; padding:16px 0; font-size:15px; color:var(--ink); }
.plan-list li + li { border-top:1px solid var(--line); }
.plan-list img { flex:0 0 40px; object-fit:contain; }
.plan-name small { display:block; margin-top:3px; font-size:12px; color:#8b959e; }
.plan-state { margin-left:auto; display:inline-flex; align-items:center; gap:8px; font-size:13px; color:var(--blue); }
.plan-state::before { content:''; width:8px; height:8px; border-radius:50%; background:var(--blue); }

.machines-art { width:100%; max-width:560px; justify-self:center; }
.machines-art img { display:block; width:100%; height:auto; aspect-ratio:4/3; object-fit:cover; object-position:right center; }

/* team-work.webp reframed: the v15 offsets were cut for friends-team.webp. */
.company-team .collaboration-art img { width:790px; height:auto; left:calc(50% - 407px); top:-110px; }
@media(max-width:760px) {
 .company-team .collaboration-art img { width:550px; left:calc(50% - 283px); top:-72px; }
}
