/* /tools — CBC toolkit + software */
.t-hero .inner { padding-top: calc(var(--header-h) + 84px); padding-bottom: 135px; }
.t-hero p { margin-top: 28px; }

.t-three .inner { padding-top: 39px; padding-bottom: 106px; }
.t-three .top { grid-column: 1 / -1; }
.t-three .label { margin: 2px 0 0; }
.t-three .head { grid-column: 1 / span 10; margin-top: 46px; }
.t-three .lede-col { grid-column: 11 / span 13; margin-top: 54px; }
.t-three .lede-col .t-normal { margin-top: 22px; }
.t-three .trio { grid-column: 11 / span 13; list-style: none; padding: 0; margin: 40px 0 0;
  display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--col-gap); }
.t-three .trio li { border-top: 1px solid var(--ink); padding-top: 16px; }
.t-three .trio .n { display: block; font: 500 var(--h3)/1 var(--f-head); color: var(--blue); margin-bottom: 10px; }
.t-three .trio li:last-child .n { color: var(--ink); font-style: italic; }

.t-tools .inner { padding-top: 90px; padding-bottom: 106px; }
.tools { display: grid; grid-template-columns: repeat(3, 1fr); gap: 22px; align-items: stretch; }
.tool { display: flex; flex-direction: column; background: rgba(255,255,255,.5); border-top: 3px solid var(--blue); padding: 30px 28px 28px; scroll-margin-top: 110px; }
.tool .tag { font-size: 12px; letter-spacing: .12em; text-transform: uppercase; color: var(--blue); margin: 0 0 12px; }
.tool h3 { margin-bottom: 14px; }
.tool .t-body { margin-bottom: 18px; }
.tool .formats { margin-top: auto; }
.tool .cite { font-size: 13px; line-height: 1.6; margin: 18px 0 0; opacity: .85; }
.tool .cite a { overflow-wrap: anywhere; }
.tool.dark { background: var(--slate); color: var(--ice); border-top-color: var(--pale); }
.tool.dark .tag { color: var(--pale); }
.tool.dark .mini { width: 132px; margin: 4px auto 22px; }
.tool.dark .btn { margin-top: auto; align-self: flex-start; }
.tool.stance { background: transparent; border: 1px solid var(--ink); border-top: 3px solid var(--ink); }
.tool.stance .tag { color: var(--ink); }
.tool.soon { margin-top: 22px; background: transparent; border: 1px dashed var(--stone); border-top: 3px dashed var(--stone); }
.tool.soon .t-body { margin-bottom: 0; }

.t-software .inner { padding-top: 39px; padding-bottom: 106px; }
.t-software .top { grid-column: 1 / -1; }
.t-software .label { margin: 2px 0 0; }
.t-software .sw-text { grid-column: 7 / span 14; margin-top: 46px; }
.t-software .sub { margin: 6px 0 22px; }
.t-software .btn-line.dark { color: var(--ink); min-height: 58px; }
.t-software .fine { font-size: 12.5px; margin-top: 22px; opacity: .8; }

@media (max-width: 900px) { .tools { grid-template-columns: 1fr; } }
@media (max-width: 767px) {
  .t-hero .inner { padding-top: calc(var(--header-h) + 46px); padding-bottom: 88px; }
  .t-three .inner, .t-tools .inner, .t-software .inner { padding-top: 34px; padding-bottom: 56px; }
  .t-three .trio { grid-template-columns: 1fr; gap: 14px; }
}
