.columns-section { padding:72px 0 96px; min-height:65vh; }
.columns-intro { padding-bottom:32px; border-bottom:1px solid var(--line); }
.columns-intro>p:first-child { color:var(--blue); font-size:13px; font-weight:500; }
.columns-intro h1 { margin-top:12px; font-size:38px; font-weight:500; letter-spacing:-1px; line-height:1.35; }
.columns-intro>p:last-child { margin-top:16px; max-width:640px; font-size:16px; color:var(--muted); }
.columns-count { margin:28px 0 18px; font-size:13px; color:#7b889b; }
.column-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:28px 24px; list-style:none; padding:0; margin:0; }
.column-card { display:flex; flex-direction:column; height:100%; border:1px solid var(--line); border-radius:10px; overflow:hidden; background:#fff; }
.column-card:hover { border-color:#9bb5ed; }
.column-cover { width:100%; height:auto; aspect-ratio:16/10; object-fit:cover; background:var(--tint); }
.column-card-copy { display:flex; flex:1; flex-direction:column; padding:23px; }
.column-card-meta { display:flex; flex-wrap:wrap; align-items:center; gap:6px 12px; font-size:11px; color:#8693a7; }
.column-card-meta>span:first-child { color:var(--blue); font-weight:500; }
.column-card h2 { margin-top:13px; font-size:21px; font-weight:500; line-height:1.5; letter-spacing:-.5px; }
.column-description { display:-webkit-box; -webkit-box-orient:vertical; -webkit-line-clamp:2; overflow:hidden; margin-top:12px; font-size:14px; line-height:1.8; color:var(--muted); }
.column-read { display:block; margin-top:auto; padding-top:24px; font-size:13px; font-weight:500; color:var(--blue); }
.columns-return { display:flex; justify-content:center; margin-top:40px; }
body:not([data-view="service"]) .motion-toggle { display:none; }
@media(max-width:1100px) { .column-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) {
  .header-inner { display:grid; grid-template-columns:minmax(0,1fr); height:auto; min-height:104px; padding-top:12px; row-gap:4px; }
  .site-header .site-brand { justify-self:start; min-height:32px; }
  .view-tabs { position:static; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); width:100%; min-height:44px; margin-left:0; gap:0; transform:none; }
  .view-tab { min-height:44px; padding:0 6px; font-size:13px; white-space:nowrap; }
  .view-tab.active:after { bottom:0; left:14px; right:14px; }
  section[id],main[id] { scroll-margin-top:116px; }
  .columns-section { padding:38px 0 60px; }
  .columns-intro { padding-bottom:24px; }
  .columns-intro h1 { font-size:29px; letter-spacing:-.8px; }
  .columns-intro>p:last-child { font-size:14px; }
  .columns-count { margin-top:22px; }
  .column-grid { grid-template-columns:minmax(0,1fr); gap:22px; }
  .column-card-copy { padding:20px; }
  .column-card h2 { font-size:20px; }
}
