/* TechDeployers – single blog post layout (single-post.php). Loaded on single posts only. */
.tdb{--tdb-blue:#2563eb;--tdb-blue-d:#1d4ed8;--tdb-ink:#0f172a;--tdb-body:#334155;--tdb-muted:#64748b;--tdb-line:#e2e8f0;--tdb-soft:#f1f5f9;--tdb-card:#fff;
	background:#f8fafc;color:var(--tdb-body);padding:7rem 0 3.5rem;overflow-x:clip}
body.td-has-notice .tdb{padding-top:9.5rem}
.tdb *,.tdb *::before,.tdb *::after{box-sizing:border-box}
.tdb a{text-decoration:none}
.tdb :focus-visible{outline:2px solid var(--tdb-blue);outline-offset:2px;border-radius:4px}
.tdb .screen-reader-text{position:absolute!important;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.tdb-wrap{width:100%;max-width:1280px;margin:0 auto;padding:0 clamp(16px,3vw,32px)}
:root:has(.tdb){scroll-behavior:smooth}
@media (prefers-reduced-motion:reduce){:root:has(.tdb){scroll-behavior:auto}}

/* breadcrumb (shared template-parts/components/breadcrumb.php) */
.tdb-crumbs{margin:0 0 18px}
.tdb-crumbs ol{margin:0;padding:0;list-style:none}

/* grid: article + right sidebar */
.tdb-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:32px;align-items:start}
@media (min-width:1024px){.tdb-grid{grid-template-columns:minmax(0,1fr) 330px;gap:40px}}
.tdb-main{min-width:0}

/* title + meta */
.tdb-title{margin:0 0 14px;color:var(--tdb-ink);font-size:clamp(1.75rem,1.25rem + 2vw,2.75rem);line-height:1.2;font-weight:800;letter-spacing:-.015em;overflow-wrap:anywhere;text-wrap:balance}
.tdb-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px 22px;font-size:.875rem;color:var(--tdb-muted)}
.tdb-meta-i{display:inline-flex;align-items:center;gap:7px}
.tdb-meta-i svg{color:var(--tdb-blue);flex:none}
.tdb-meta strong{color:var(--tdb-ink);font-weight:600}

/* share */
.tdb-share{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.tdb-share-l{font-size:.8125rem;font-weight:600;color:var(--tdb-muted);margin-right:2px}
.tdb-share-btn{display:inline-flex;align-items:center;gap:7px;padding:8px 14px;border:1px solid var(--tdb-line);border-radius:999px;background:var(--tdb-card);color:var(--tdb-ink)!important;font-size:.8125rem;font-weight:600;line-height:1;transition:background .15s,border-color .15s,color .15s,transform .15s}
.tdb-share-btn svg{flex:none}
.tdb-share-whatsapp svg{color:#128c7e}.tdb-share-linkedin svg{color:#0a66c2}.tdb-share-facebook svg{color:#1877f2}
.tdb-share-whatsapp:hover{background:#25d366;border-color:#25d366}
.tdb-share-linkedin:hover{background:#0a66c2;border-color:#0a66c2}
.tdb-share-facebook:hover{background:#1877f2;border-color:#1877f2}
.tdb-share-btn:hover{color:#fff!important;transform:translateY(-1px)}
.tdb-share-btn:hover svg{color:#fff}
.tdb-share--top{margin-top:14px}
.tdb-share--bottom{margin-top:36px;padding-top:22px;border-top:1px solid var(--tdb-line)}

/* author card */
.tdb-author{display:flex;gap:16px;align-items:flex-start;margin:22px 0;padding:18px 20px;background:var(--tdb-card);border:1px solid var(--tdb-line);border-radius:16px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.tdb-author-pic{flex:none;width:64px;height:64px;border-radius:50%;overflow:hidden;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#3b82f6,#4f46e5);color:#fff;font-weight:700;font-size:1.25rem}
.tdb-author-pic img{width:100%;height:100%;object-fit:cover;display:block}
.tdb-author-body{min-width:0}
.tdb-author-name{margin:0;color:var(--tdb-ink);font-weight:700;font-size:1.0625rem;display:flex;flex-wrap:wrap;align-items:baseline;gap:2px 10px}
.tdb-author-role{color:var(--tdb-muted);font-weight:500;font-size:.875rem}
.tdb-author-links{margin:8px 0 0;display:flex;flex-wrap:wrap;gap:8px}
.tdb-author-links a{display:inline-flex;align-items:center;gap:6px;padding:5px 12px;border-radius:999px;background:var(--tdb-soft);color:var(--tdb-blue-d);font-size:.8125rem;font-weight:600;transition:background .15s,color .15s}
.tdb-author-links a:hover{background:var(--tdb-blue);color:#fff}
.tdb-author-bio{margin:10px 0 0;font-size:.9375rem;line-height:1.65;color:var(--tdb-body)}

/* featured image 1536 x 804 */
.tdb-cover{margin:0 0 24px;border-radius:16px;overflow:hidden;background:var(--tdb-soft);box-shadow:0 8px 28px -12px rgba(15,23,42,.25)}
.tdb-cover-img{display:block;width:100%;height:auto;aspect-ratio:1536/804;object-fit:cover}

/* table of contents */
.tdb-toc{margin:0 0 30px;background:var(--tdb-card);border:1px solid var(--tdb-line);border-radius:14px;overflow:hidden}
.tdb-toc-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 18px}
.tdb-toc-title{margin:0;color:var(--tdb-ink);font-weight:700;font-size:1rem}
.tdb-toc-toggle{flex:none;display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--tdb-line);border-radius:8px;background:var(--tdb-card);color:var(--tdb-muted);cursor:pointer;transition:background .15s,color .15s}
.tdb-toc-toggle:hover{background:var(--tdb-soft);color:var(--tdb-ink)}
.tdb-toc-toggle svg{transition:transform .2s}
.tdb-toc.is-open .tdb-toc-toggle svg{transform:rotate(180deg)}
.tdb-toc-list{list-style:decimal;margin:0;padding:2px 18px 16px 44px;display:grid;gap:2px 28px;color:var(--tdb-muted);font-size:.9375rem}
.tdb-toc-list[hidden]{display:none}
@media (min-width:760px){.tdb-toc-list{grid-template-columns:repeat(2,minmax(0,1fr))}}
.tdb-toc-list li{padding:4px 0;line-height:1.45}
.tdb-toc-list li::marker{color:var(--tdb-blue);font-weight:700}
.tdb-toc-list a{color:var(--tdb-ink);font-weight:500;overflow-wrap:anywhere}
.tdb-toc-list a:hover,.tdb-toc-list a.is-active{color:var(--tdb-blue)}
.tdb-toc-list a.is-active{font-weight:700}

/* article body */
.tdb-content{font-size:1.0625rem;line-height:1.8;color:var(--tdb-body);overflow-wrap:break-word}
@media (min-width:1100px){.tdb-content{font-size:1.125rem}}
.tdb-content>*:first-child{margin-top:0}
.tdb-content p{margin:0 0 1.15em}
.tdb-content h2,.tdb-content h3,.tdb-content h4{color:var(--tdb-ink);font-weight:700;line-height:1.3;scroll-margin-top:112px}
.tdb-content h2{margin:2.1em 0 .6em;font-size:clamp(1.4rem,1.15rem + 1vw,1.85rem);letter-spacing:-.01em}
.tdb-content h3{margin:1.7em 0 .5em;font-size:clamp(1.2rem,1.05rem + .5vw,1.4rem)}
.tdb-content h4{margin:1.5em 0 .4em;font-size:1.1rem}
.tdb-content a{color:var(--tdb-blue-d);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.tdb-content a:hover{color:var(--tdb-blue)}
.tdb-content ul,.tdb-content ol{margin:0 0 1.2em;padding-left:1.5em}
.tdb-content ul{list-style:disc}.tdb-content ol{list-style:decimal}
.tdb-content li{margin:.35em 0;padding-left:.2em}
.tdb-content li::marker{color:var(--tdb-blue)}
.tdb-content strong{color:var(--tdb-ink)}
.tdb-content img,.tdb-content video,.tdb-content iframe,.tdb-content svg{max-width:100%;height:auto}
.tdb-content figure{margin:1.6em 0}
.tdb-content figcaption{margin-top:.6em;font-size:.875rem;color:var(--tdb-muted);text-align:center}
.tdb-content img{border-radius:12px}
.tdb-content iframe{aspect-ratio:16/9;width:100%;border:0;border-radius:12px}
.tdb-content blockquote{margin:1.6em 0;padding:1em 1.3em;border-left:4px solid var(--tdb-blue);background:#eff6ff;border-radius:0 12px 12px 0;color:var(--tdb-ink)}
.tdb-content blockquote p:last-child{margin-bottom:0}
.tdb-content table{display:block;max-width:100%;overflow-x:auto;border-collapse:collapse;margin:1.6em 0;font-size:.95rem}
.tdb-content th,.tdb-content td{padding:.65em .9em;border:1px solid var(--tdb-line);text-align:left;vertical-align:top}
.tdb-content th{background:var(--tdb-soft);color:var(--tdb-ink)}
.tdb-content pre{max-width:100%;overflow-x:auto;padding:1em 1.2em;background:#0f172a;color:#e2e8f0;border-radius:12px;font-size:.9rem;line-height:1.6}
.tdb-content code{font-size:.9em;background:var(--tdb-soft);padding:.15em .4em;border-radius:6px}
.tdb-content pre code{background:none;padding:0}
.tdb-content hr{border:0;border-top:1px solid var(--tdb-line);margin:2.2em 0}
.tdb-content .alignwide,.tdb-content .alignfull{max-width:100%;width:100%}
.tdb-content .alignleft{float:left;margin:.3em 1.2em .8em 0}.tdb-content .alignright{float:right;margin:.3em 0 .8em 1.2em}.tdb-content .aligncenter{margin-left:auto;margin-right:auto;display:block}
.tdb-content::after{content:"";display:table;clear:both}

.tdb-tags{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:32px}
.tdb-tags-l{font-size:.8125rem;font-weight:600;color:var(--tdb-muted);margin-right:4px}
.tdb-tags a{padding:5px 12px;border-radius:10px;background:var(--tdb-soft);color:var(--tdb-body);font-size:.8125rem;font-weight:500;transition:background .15s,color .15s}
.tdb-tags a:hover{background:#dbeafe;color:var(--tdb-blue-d)}
.tdb-comments{margin-top:40px}

/* sidebar */
.tdb-side{display:grid;gap:20px;min-width:0}
@media (min-width:1024px) and (min-height:820px){.tdb-side{position:sticky;top:104px}}
.tdb-box{background:var(--tdb-card);border:1px solid var(--tdb-line);border-radius:16px;padding:20px;box-shadow:0 1px 2px rgba(15,23,42,.04)}
.tdb-box-t{margin:0 0 12px;color:var(--tdb-ink);font-size:1.0625rem;font-weight:700}
.tdb-cats,.tdb-recent{list-style:none;margin:0;padding:0}
.tdb-cats li+li,.tdb-recent li+li{border-top:1px solid var(--tdb-soft)}
.tdb-cats a{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;color:var(--tdb-body);font-size:.9375rem;transition:color .15s}
.tdb-cats a:hover,.tdb-cats .is-current a{color:var(--tdb-blue)}
.tdb-cats .is-current a{font-weight:600}
.tdb-count{flex:none;color:var(--tdb-muted);font-size:.8125rem;font-variant-numeric:tabular-nums}
.tdb-recent li{padding:11px 0}
.tdb-recent a{display:block;color:var(--tdb-ink);font-size:.9375rem;font-weight:500;line-height:1.4;transition:color .15s}
.tdb-recent a:hover{color:var(--tdb-blue)}
.tdb-recent time{display:block;margin-top:3px;color:var(--tdb-muted);font-size:.78rem}
.tdb-cta{padding:22px;border-radius:16px;color:#fff;background:linear-gradient(135deg,#1d4ed8,#2563eb 55%,#4f46e5);box-shadow:0 12px 30px -14px rgba(37,99,235,.7)}
.tdb-cta-t{margin:0 0 8px;font-size:1.25rem;font-weight:800;line-height:1.25;color:#fff}
.tdb-cta p{margin:0 0 16px;font-size:.9rem;line-height:1.55;color:#dbeafe}
.tdb-cta-b{display:inline-flex;align-items:center;gap:8px;padding:11px 18px;border-radius:10px;background:#fff;color:var(--tdb-blue-d)!important;font-weight:700;font-size:.9rem;transition:transform .15s,box-shadow .15s}
.tdb-cta-b:hover{transform:translateY(-1px);box-shadow:0 8px 18px -8px rgba(0,0,0,.45)}

/* "Need help with this?" box (contextual links, SEO-017) */
.tdb-help{margin-top:32px;padding:20px 22px;border:1px solid var(--tdb-line);border-radius:16px;background:var(--tdb-card);box-shadow:0 1px 2px rgba(15,23,42,.04);font-size:.9375rem;line-height:1.7}
.tdb-help p{margin:0}.tdb-help p+p{margin-top:10px}
.tdb-help-t{font-size:.8125rem!important;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--tdb-blue)}
.tdb-help a{color:var(--tdb-blue-d);font-weight:600}.tdb-help a:hover{text-decoration:underline}

/* small screens */
@media (max-width:639px){
	.tdb{padding-top:6rem}
	body.td-has-notice .tdb{padding-top:8.5rem}
	.tdb-author{flex-direction:column;gap:12px;padding:16px}
	.tdb-meta{gap:6px 16px;font-size:.8125rem}
	.tdb-share{gap:6px}
	.tdb-share-btn{padding:9px 8px;gap:5px;flex:1 1 0;min-width:0;justify-content:center;font-size:.78rem}
	.tdb-share-l{width:100%}
	.tdb-toc-list{padding-left:38px}
	.tdb-content .alignleft,.tdb-content .alignright{float:none;margin:1em auto;display:block}
}
@media print{.tdb-side,.tdb-share,.tdb-toc-toggle{display:none}.tdb-grid{display:block}}

/* ---- FAQ accordion (v1.7) ---- */
.tdb-faq{margin:40px 0 8px}
.tdb-faq-title{margin:0 0 16px;font-size:1.5rem;line-height:1.3;font-weight:800;color:var(--tdb-ink)}
@media(min-width:768px){.tdb-faq-title{font-size:1.75rem}}
.tdb-faq-list{display:grid;gap:10px}
.tdb-faq-item{background:var(--tdb-card);border:1px solid var(--tdb-line);border-radius:14px;overflow:hidden;transition:border-color .2s,box-shadow .2s}
.tdb-faq-item.is-open{border-color:var(--tdb-blue);box-shadow:0 8px 24px -16px rgba(37,99,235,.55)}
.tdb-faq-q{margin:0;font-size:1rem;line-height:1.45}
.tdb-faq-btn{display:flex;align-items:center;justify-content:space-between;gap:14px;width:100%;min-height:52px;padding:14px 18px;margin:0;border:0;background:transparent;color:var(--tdb-ink);font:inherit;font-weight:700;text-align:left;cursor:pointer}
.tdb-faq-btn:hover{color:var(--tdb-blue)}
.tdb-faq-btn:focus-visible{outline:3px solid var(--tdb-blue);outline-offset:-3px;border-radius:14px}
.tdb-faq-btn>span{min-width:0;overflow-wrap:anywhere}
.tdb-faq-chev{flex:none;transition:transform .25s ease;color:var(--tdb-muted)}
.tdb-faq-item.is-open .tdb-faq-chev{transform:rotate(180deg);color:var(--tdb-blue)}
.tdb-faq-a-in{padding:0 18px 16px;color:var(--tdb-body);font-size:.97rem;line-height:1.75;overflow-wrap:anywhere}
.tdb-faq-a-in>*{margin:0 0 .8em}.tdb-faq-a-in>*:last-child{margin-bottom:0}
.tdb-faq-a-in a{color:var(--tdb-blue);text-decoration:underline;text-underline-offset:3px}
.tdb-faq-a-in ul,.tdb-faq-a-in ol{padding-left:1.4em}.tdb-faq-a-in ul{list-style:disc}.tdb-faq-a-in ol{list-style:decimal}
/* Collapsing only starts when the script is ready (without it every answer stays readable). */
.tdb-faq.is-ready .tdb-faq-a{display:grid;grid-template-rows:0fr;visibility:hidden;transition:grid-template-rows .28s ease,visibility 0s linear .28s}
.tdb-faq.is-ready .tdb-faq-a-in{min-height:0;overflow:hidden;padding-top:0;padding-bottom:0}
.tdb-faq.is-ready .tdb-faq-item.is-open .tdb-faq-a{grid-template-rows:1fr;visibility:visible;transition:grid-template-rows .28s ease,visibility 0s}
.tdb-faq.is-ready .tdb-faq-item.is-open .tdb-faq-a-in{padding-bottom:16px}
@media(prefers-reduced-motion:reduce){.tdb-faq-item,.tdb-faq-chev,.tdb-faq.is-ready .tdb-faq-a{transition:none!important}}
@media print{.tdb-faq.is-ready .tdb-faq-a{display:block!important;visibility:visible!important}.tdb-faq-chev{display:none}}
