/* TEC: blog (2026-11-11). Article page + /blog/ hub, on top of tec-service.css tokens. */
.tec-bhero .wrap{grid-template-columns:1fr!important;max-width:1000px}
.tec-bhero h1{font-size:clamp(30px,3.8vw,48px);max-width:900px}
.tec-bhero .sub{max-width:760px;margin-bottom:18px}
.tec-bmeta{display:flex;flex-wrap:wrap;align-items:center;gap:6px 0;margin:0;font-size:15px;color:rgba(255,255,255,.72)}
.tec-bmeta b{color:#fff;font-weight:600}
.tec-bmeta span + span:before{content:"\00b7";margin:0 10px;opacity:.6}
.tec-bhub .sub{margin-bottom:0}

/* hub ("blog master", 2026-11-12): compact title bar, tools, featured card, show more, topics */
.tec-sp.tec-bhead{background:var(--navy-900);color:#fff;padding:34px 0 30px}
.tec-bhead .crumbs{margin-bottom:14px}
.tec-bhead .eyebrow{background:rgba(200,38,47,.18);color:#ffb3b7}
.tec-sp.tec-bhead h1{font-size:clamp(28px,3.4vw,42px);line-height:1.15;margin:12px 0 10px;color:#fff;max-width:820px}
.tec-bhead h1 .hl{color:#ff5a63}
.tec-bhead .sub{font-size:17px;line-height:1.55;color:rgba(255,255,255,.78);max-width:640px;margin:0}
.tec-bhead-row{display:flex;justify-content:space-between;align-items:flex-end;gap:24px;flex-wrap:wrap}
.tec-bhead-facts{margin:0;font-size:15px;color:rgba(255,255,255,.75);white-space:nowrap}
.tec-bhead-facts b{color:#fff;font-weight:700}
.tec-bhead-facts span{margin:0 8px;opacity:.5}
.tec-sp.tec-blist{padding:30px 0 64px;background:#fff}
.tec-btools{display:flex;flex-wrap:wrap;align-items:center;gap:14px 18px;margin:0 0 24px}
.tec-bsearch{position:relative;flex:1 1 300px;max-width:420px;margin:0}
.tec-bsearch svg{position:absolute;left:14px;top:50%;width:18px;height:18px;transform:translateY(-50%);color:var(--muted);pointer-events:none}
.tec-bsearch input{width:100%;height:46px;padding:0 14px 0 42px;border:1px solid var(--line);border-radius:var(--r-sm);font:400 15.5px var(--font);color:var(--ink);background:var(--soft)}
.tec-bsearch input:focus{outline:2px solid var(--navy-900);outline-offset:1px;background:#fff}
.tec-btools .tec-bchips{margin:0}
.tec-bchips button span{display:inline-block;min-width:22px;margin-left:4px;padding:1px 7px;border-radius:999px;background:var(--soft);font-size:12.5px;font-weight:700;color:var(--muted)}
.tec-bchips button.on span{background:rgba(255,255,255,.18);color:#fff}
.tec-bcard{position:relative}
.tec-bcard-flag{position:absolute;right:14px;top:14px;z-index:1;background:var(--red);color:#fff;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:5px 10px;border-radius:6px}
.tec-bcards:not(.is-filtered) .tec-bcard--feat{grid-column:1 / -1}
.tec-bcards:not(.is-filtered) .tec-bcard--feat a{flex-direction:row;align-items:stretch}
.tec-bcards:not(.is-filtered) .tec-bcard--feat .tec-bcard-img{flex:0 0 54%;aspect-ratio:1200/630;min-height:0}
.tec-bcards:not(.is-filtered) .tec-bcard--feat .tec-bcard-body{justify-content:center;padding:32px 36px}
.tec-sp .tec-bcards:not(.is-filtered) .tec-bcard--feat h3{font-size:28px;line-height:1.2}
.tec-bcards:not(.is-filtered) .tec-bcard--feat p{flex:0 0 auto;font-size:16px}
.tec-bcards.is-filtered .tec-bcard-flag{display:none}
.tec-bnone{margin:8px 0 0;font-size:17px;color:var(--muted);text-align:center}
.tec-bmore-wrap{display:flex;justify-content:center;margin-top:30px}
.tec-bmore[hidden]{display:none}
.tec-btagrow{display:flex;flex-wrap:wrap;align-items:center;gap:8px;width:100%}
.tec-btagrow > span{font-size:14px;font-weight:600;color:var(--muted);margin-right:2px}
.tec-btagrow button{border:0;background:var(--soft);color:var(--ink);border-radius:999px;padding:6px 12px;font:500 13.5px var(--font);cursor:pointer;min-height:32px}
.tec-btagrow button.on{background:var(--red);color:#fff}
.tec-btags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:28px 0 0;font-size:14.5px}
.tec-btags span{font-weight:600;color:var(--muted)}
.tec-article .tec-btags a{background:var(--soft);color:var(--ink);text-decoration:none;border-radius:999px;padding:5px 12px}
.tec-article .tec-btags a:hover{background:var(--red-50);color:var(--red)}
.tec-bguides-all{margin:22px 0 0;text-align:center}
.tec-bguides-all a{display:inline;font-weight:600;color:var(--red);text-decoration:none}
.tec-bguides-all a svg{width:16px;height:16px;vertical-align:-3px}
.tec-btopic-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;margin-top:8px}
.tec-btopic{background:#fff;border-radius:var(--r);box-shadow:var(--shadow-sm);padding:24px;display:flex;flex-direction:column}
.tec-btopic .ic{display:grid;place-items:center;width:48px;height:48px;border-radius:12px;background:var(--red-50);color:var(--red)}
.tec-btopic .ic svg{width:24px;height:24px}
.tec-sp .tec-btopic h3{font-size:19px;margin:14px 0 2px}
.tec-btopic-n{margin:0 0 12px;font-size:14px;color:var(--muted)}
.tec-btopic ul{list-style:none;margin:0 0 16px;padding:0;display:grid;gap:10px;flex:1}
.tec-btopic li{margin:0;font-size:15px;line-height:1.4}
.tec-btopic li a{color:var(--ink);text-decoration:none}
.tec-btopic li a:hover{color:var(--red)}
.tec-btopic-svc{display:inline;font-weight:600;font-size:15px;color:var(--red);text-decoration:none}
.tec-btopic-svc svg{width:16px;height:16px;vertical-align:-3px}

.tec-sp.tec-bwrap{padding:56px 0 72px;background:#fff}
.tec-bgrid{display:grid;grid-template-columns:240px minmax(0,760px);gap:56px;justify-content:center;align-items:start}
.tec-bgrid > .tec-article:only-child{grid-column:1 / -1;max-width:760px;margin:0 auto;width:100%}
.tec-btoc{position:sticky;top:110px;font-size:14px;line-height:1.45}
.tec-btoc details{border:1px solid var(--line);border-radius:var(--r);padding:16px 18px;background:var(--soft)}
.tec-btoc summary{font-weight:700;color:var(--ink);cursor:pointer;list-style:none;margin:0;display:flex;justify-content:space-between;align-items:center;gap:10px;min-height:24px}
.tec-btoc summary:after{content:"+";font-size:20px;line-height:1;color:var(--red)}
.tec-btoc details[open] summary:after{content:"\2212"}
.tec-btoc summary::-webkit-details-marker{display:none}
.tec-btoc ol{margin:12px 0 0;padding:0 0 0 18px;display:grid;gap:8px}
.tec-btoc li{margin:0;color:var(--muted)}
.tec-btoc a{color:var(--muted);text-decoration:none}
.tec-btoc a:hover,.tec-btoc a:focus{color:var(--red)}

.tec-article{font-size:17.5px;line-height:1.75;color:var(--ink);min-width:0}
.tec-article > *:first-child{margin-top:0}
.tec-article p{margin:0 0 18px}
.tec-sp.tec-bwrap .tec-article h2{font-size:clamp(23px,2.4vw,29px);line-height:1.25;letter-spacing:-.01em;margin:44px 0 14px;scroll-margin-top:110px;color:var(--navy-900)}
.tec-sp.tec-bwrap .tec-article h3{font-size:20px;line-height:1.3;margin:30px 0 10px;color:var(--navy-900)}
.tec-sp .tec-article h2,.tec-sp .tec-article h3{font-weight:700!important}
.tec-article code{font-size:.88em;background:var(--soft);border:1px solid var(--line);border-radius:4px;padding:1px 6px;overflow-wrap:anywhere}
.tec-article ul,.tec-article ol{margin:0 0 20px;padding-left:24px}
.tec-article li{margin:0 0 8px}
.tec-article li::marker{color:var(--red)}
.tec-article a{color:var(--red);text-decoration:underline;text-underline-offset:3px}
.tec-article strong{color:var(--navy-900)}
.tec-article img{max-width:100%;height:auto;border-radius:var(--r-sm)}
.tec-article figure{margin:24px 0}
.tec-article figcaption{font-size:14px;color:var(--muted);margin-top:8px}
.tec-article blockquote{margin:24px 0;padding:16px 20px;border-left:4px solid var(--red);background:var(--soft);border-radius:0 var(--r-sm) var(--r-sm) 0;font-style:normal}
.tec-article table{width:100%;border-collapse:collapse;margin:8px 0 24px;font-size:15.5px;line-height:1.5;display:block;overflow-x:auto}
.tec-article th,.tec-article td{border:1px solid var(--line);padding:10px 12px;text-align:left;vertical-align:top;font-family:var(--font)!important}
.tec-article th{background:var(--navy-100);color:var(--navy-900);font-weight:600;font-size:15.5px}
.tec-article tr:nth-child(even) td{background:var(--soft)}
.tec-article .tec-note{margin:24px 0;padding:18px 20px;background:var(--red-50);border-radius:var(--r-sm);border-left:4px solid var(--red)}
.tec-article .tec-note p:last-child{margin:0}
.tec-article .tec-src{font-size:14px;color:var(--muted)}
.tec-article figure.tec-bfig{margin:30px 0}
.tec-bfig img{display:block;width:100%;height:auto;border-radius:var(--r-sm);box-shadow:var(--shadow-sm)}
.tec-bfig figcaption{font-size:14.5px;line-height:1.5;color:var(--muted);margin-top:10px}
.tec-article details.tec-btable{margin:-14px 0 26px}
.tec-article details.tec-btable summary{cursor:pointer;font-size:14.5px;font-weight:600;color:var(--red);list-style:none;display:inline-flex;align-items:center;gap:6px;min-height:24px}
.tec-article details.tec-btable summary::-webkit-details-marker{display:none}
.tec-article details.tec-btable summary:after{content:"+";font-size:18px;line-height:1}
.tec-article details.tec-btable[open] summary:after{content:"\2212"}
.tec-article details.tec-btable table{margin-top:12px}
.tec-bcover{margin:0 0 28px}
.tec-bcover img{display:block;width:100%;height:auto;border-radius:var(--r)}

.tec-bsvc{margin:44px 0 24px;padding:28px;border-radius:var(--r);background:var(--navy-900);color:#fff}
.tec-sp .tec-bsvc .eyebrow{background:rgba(200,38,47,.22);color:#ffb3b7}
.tec-bsvc .tec-bsvc-t{color:#fff!important;font-size:24px!important;margin:14px 0 8px!important}
.tec-bsvc p{color:rgba(255,255,255,.8);font-size:16px;margin:0 0 18px}
.tec-bsvc .ctas{display:flex;flex-wrap:wrap;gap:12px}
.tec-bby{margin:0;padding-top:18px;border-top:1px solid var(--line);font-size:14.5px;color:var(--muted)}

.tec-bcards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:8px}
.tec-bcard{background:#fff;border-radius:var(--r);box-shadow:var(--shadow-sm);overflow:hidden;transition:transform .2s,box-shadow .2s}
.tec-bcard:hover{transform:translateY(-3px);box-shadow:var(--shadow)}
.tec-bcard[hidden]{display:none}
.tec-bcard a{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.tec-bcard-img{aspect-ratio:1200/630;background:var(--soft);overflow:hidden}
.tec-bcard-img img{width:100%;height:100%;object-fit:cover;display:block}
.tec-bcard-body{padding:20px 22px 22px;display:flex;flex-direction:column;gap:8px;flex:1}
.tec-bcard-cat{font-size:12px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--red)}
.tec-sp .tec-bcard h3{font-size:19px;line-height:1.3;color:var(--navy-900)}
.tec-bcard p{margin:0;font-size:15px;line-height:1.55;color:var(--muted);flex:1}
.tec-bcard-meta{font-size:13px;color:var(--muted)}
.tec-bchips{display:flex;flex-wrap:wrap;gap:10px;margin:0 0 26px}
.tec-bchips button{border:1px solid var(--line);background:#fff;color:var(--ink);border-radius:999px;padding:9px 16px;font:500 14.5px var(--font);cursor:pointer;min-height:40px}
.tec-bchips button.on{background:var(--navy-900);border-color:var(--navy-900);color:#fff}
.tec-bempty{font-size:18px;color:var(--muted);text-align:center;margin:0}

@media (max-width:980px){
  .tec-bgrid{grid-template-columns:minmax(0,1fr);gap:24px}
  .tec-btoc{position:static}
  .tec-bcards{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tec-btopic-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .tec-bcards:not(.is-filtered) .tec-bcard--feat a{flex-direction:column}
  .tec-bcards:not(.is-filtered) .tec-bcard--feat .tec-bcard-img{flex:none;aspect-ratio:1200/630;min-height:0}
  .tec-bcards:not(.is-filtered) .tec-bcard--feat .tec-bcard-body{padding:22px 24px 24px}
}
@media (max-width:640px){
  .tec-sp.tec-bwrap{padding:32px 0 48px}
  .tec-article table.tec-stack{display:block;border:0;overflow:visible}
  .tec-article table.tec-stack thead{display:none}
  .tec-article table.tec-stack tbody,.tec-article table.tec-stack tr,.tec-article table.tec-stack td{display:block;width:100%}
  .tec-article table.tec-stack tr{border:1px solid var(--line);border-radius:var(--r-sm);margin:0 0 12px;overflow:hidden}
  .tec-article table.tec-stack td,.tec-article table.tec-stack tr:nth-child(even) td{border:0;border-top:1px solid var(--line);padding:10px 14px;background:#fff}
  .tec-article table.tec-stack td:first-child{border-top:0;background:var(--navy-100);color:var(--navy-900);font-weight:600}
  .tec-article table.tec-stack td+td:before{content:attr(data-label);display:block;font-size:12px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:2px}
  .tec-bmeta{gap:4px 16px}
  .tec-bmeta span + span:before{display:none}
  .tec-article{font-size:16.5px;line-height:1.7}
  .tec-bcards{grid-template-columns:minmax(0,1fr)}
  .tec-bcards:not(.is-filtered) .tec-bcard--feat{grid-column:auto}
  .tec-sp .tec-bcards:not(.is-filtered) .tec-bcard--feat h3{font-size:20px}
  .tec-bcards:not(.is-filtered) .tec-bcard--feat .tec-bcard-body{padding:20px 22px 22px}
  .tec-btopic-grid{grid-template-columns:minmax(0,1fr)}
  .tec-sp.tec-bhead{padding:26px 0 24px}
  .tec-bhead-facts{white-space:normal}
  .tec-btools .tec-bchips{gap:8px}
  .tec-btools .tec-bchips button{padding:8px 13px;font-size:14px;min-height:40px}
  .tec-bsearch{max-width:none}
  .tec-bsvc{padding:22px}
}
