/* TechViyo blog archive: wider, consistent 16:9 cards */
.tv-blog-toolbar+ .tv-blog-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:34px 28px;align-items:start}
.tv-blog-toolbar+ .tv-blog-grid .tv-blog-card{min-width:0;padding:0 0 24px;border:1px solid #dce7f1;border-radius:20px;background:#fff;overflow:hidden;box-shadow:0 16px 45px rgba(4,38,76,.08);transition:transform .28s ease,box-shadow .28s ease}
.tv-blog-toolbar+ .tv-blog-grid .tv-blog-card:hover{transform:translateY(-7px);box-shadow:0 26px 60px rgba(4,38,76,.14)}
.tv-blog-toolbar+ .tv-blog-grid .tv-blog-card>a:first-child{display:block;overflow:hidden;aspect-ratio:16/9;background:#edf4fa}
.tv-blog-toolbar+ .tv-blog-grid .tv-blog-card img{width:100%;height:100%;aspect-ratio:16/9;object-fit:cover;border-radius:0;display:block;transform:none}
.tv-blog-toolbar+ .tv-blog-grid .tv-blog-card:hover img{transform:scale(1.035);box-shadow:none}
.tv-blog-toolbar+ .tv-blog-grid .tv-blog-card h3,.tv-blog-toolbar+ .tv-blog-grid .tv-blog-card .tv-blog-meta,.tv-blog-toolbar+ .tv-blog-grid .tv-blog-card .tv-text-link{margin-left:24px;margin-right:24px}
.tv-blog-toolbar+ .tv-blog-grid .tv-blog-card h3{font-size:22px;line-height:1.25;margin-top:22px}
.tv-blog-toolbar+ .tv-blog-grid .tv-blog-card .tv-text-link{display:inline-flex;margin-top:13px;color:#0867d9;font-weight:850}
.tv-section>.wrap:has(>.tv-blog-toolbar){width:min(1360px,calc(100% - 48px))}

/* Single article: clearer hierarchy and scan-friendly reading width */
.single-post .tv-inner-hero{padding:105px 0 85px}
.single-post .tv-inner-hero .wrap{max-width:1040px}
.single-post .tv-inner-hero h1{max-width:1080px;font-size:clamp(44px,5.2vw,68px);line-height:1.04;overflow-wrap:anywhere}
.single-post .tv-inner-hero p{max-width:820px;font-size:19px;line-height:1.65}
.single-post .tv-single{padding:76px 0 100px;background:linear-gradient(180deg,#f2f7fb,#fff)}
.single-post .tv-single>.wrap{width:min(1120px,calc(100% - 40px))}
.single-post .tv-single-card{overflow:visible;border:1px solid #dce7f1;border-radius:28px;background:#fff;box-shadow:0 28px 75px rgba(4,35,70,.1)}
.single-post .tv-single-image{width:100%;max-height:600px;aspect-ratio:16/9;object-fit:cover;border-radius:28px 28px 0 0}
.single-post .tv-single-content{max-width:900px;margin:auto;padding:64px 68px 78px;color:#243b53;font-size:18px;line-height:1.82}
.single-post .tv-single-content p{margin:0 0 24px}
.single-post .tv-single-content h2{scroll-margin-top:120px;margin:64px 0 20px;color:#07192d;font-size:clamp(34px,4vw,50px);line-height:1.08;letter-spacing:-.035em}
.single-post .tv-single-content h3{scroll-margin-top:120px;margin:42px 0 16px;color:#0b2b4d;font-size:28px;line-height:1.2}
.single-post .tv-single-content h2:first-child{margin-top:0}
.single-post .tv-single-content a{color:#0867d9;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}
.single-post .tv-single-content ul,.single-post .tv-single-content ol{margin:0 0 28px;padding-left:25px}
.single-post .tv-single-content blockquote{margin:38px 0;padding:25px 30px;border-left:5px solid #13c9e8;border-radius:0 16px 16px 0;background:#f1f7fc;color:#123b62;font-size:21px}
.tvbp-toc{margin:0 0 55px;padding:28px 32px;border:1px solid #d6e5f1;border-radius:20px;background:#f6faff}
.tvbp-toc>span,.tvbp-internal>div>span,.tvbp-related>span{display:block;margin-bottom:12px;color:#0870d6;font-size:12px;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.tvbp-toc ol{margin:0!important;padding:0!important;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;list-style:none;counter-reset:toc}
.tvbp-toc li{margin:0;counter-increment:toc;min-width:0;height:100%}
.tvbp-toc li a{position:relative;display:grid;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;column-gap:10px;height:100%;min-height:68px;padding:13px 14px;border:1px solid #d8e6f2;border-radius:14px;background:#fff;color:#163b60!important;text-decoration:none!important;font-weight:780;font-size:14px;line-height:1.32;transition:transform .2s ease,border-color .2s ease,box-shadow .2s ease}
.tvbp-toc li a:hover{transform:translateY(-2px);border-color:#79cce2;box-shadow:0 10px 24px rgba(11,63,105,.08)}
.tvbp-toc li a:before{content:counter(toc,decimal-leading-zero);display:grid;place-items:center;width:34px;height:34px;border-radius:10px;background:#e8f8fc;color:#079fc4;font-size:11px;font-weight:900;line-height:1}
.tvbp-toc li a i{color:#7d9bb5;font-size:13px;font-style:normal;text-align:right}
.tvbp-toc li.level-3{padding-left:0}
.tvbp-internal{margin:72px 0 60px;padding:34px;border-radius:24px;background:linear-gradient(135deg,#031c37,#075294);color:#fff}
.tvbp-internal h2{margin:0!important;color:#fff!important;font-size:34px!important}
.tvbp-link-list{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:28px}
.tvbp-link-list a{position:relative;display:grid;gap:4px;padding:20px;border:1px solid rgba(255,255,255,.14);border-radius:16px;background:rgba(255,255,255,.075);color:#fff!important;text-decoration:none!important;transition:.25s}
.tvbp-link-list a:hover{transform:translateY(-4px);background:rgba(255,255,255,.13)}
.tvbp-link-list small{color:#bcd0e3}.tvbp-link-list b{position:absolute;right:16px;top:15px;color:#55def2}
.tvbp-related{margin-top:70px;padding-top:48px;border-top:1px solid #dbe6ef}
.tvbp-related>h2{margin:0 0 28px!important;font-size:40px!important}
.tvbp-related-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.tvbp-related-grid>a{overflow:hidden;display:block;border:1px solid #dce7f1;border-radius:16px;color:#07192d!important;text-decoration:none!important;background:#fff}
.tvbp-related-grid img{width:100%;height:auto;aspect-ratio:16/9;object-fit:cover;display:block}
.tvbp-related-grid small,.tvbp-related-grid strong,.tvbp-related-grid b{display:block;margin-left:17px;margin-right:17px}
.tvbp-related-grid small{margin-top:16px;color:#60768c}.tvbp-related-grid strong{margin-top:6px;line-height:1.3}.tvbp-related-grid b{margin-top:14px;margin-bottom:18px;color:#0867d9;font-size:13px}

/* Approved transparent white brand asset */
.site-header .logo,.site-footer .logo,.site-header .logo picture,.site-footer .logo picture{background:transparent!important;box-shadow:none!important}
.site-header .logo img,.site-footer .logo img,.custom-logo{background:transparent!important;object-fit:contain!important;height:auto!important;box-shadow:none!important}
.site-header .logo img,.site-header .custom-logo{width:190px!important;max-height:58px!important}
.site-footer .logo img,.site-footer .custom-logo{width:200px!important;max-height:70px!important}

@media(max-width:900px){
 .tv-blog-toolbar+ .tv-blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
 .single-post .tv-single-content{padding:46px 38px 60px}
 .tvbp-link-list,.tvbp-related-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:620px){
 .tv-section>.wrap:has(>.tv-blog-toolbar){width:min(100% - 28px,1360px)}
 .tv-blog-toolbar+ .tv-blog-grid,.tvbp-toc ol,.tvbp-link-list,.tvbp-related-grid{grid-template-columns:1fr}
 .single-post .tv-single>.wrap{width:calc(100% - 24px)}
 .single-post .tv-single-content{padding:36px 22px 50px;font-size:17px}
 .single-post .tv-single-content h2{font-size:34px;margin-top:48px}
 .single-post .tv-single-content h3{font-size:25px}
 .tvbp-toc,.tvbp-internal{padding:24px 20px}
 .site-header .logo img,.site-header .custom-logo{width:165px!important}
}
