.blog-page{background:#f7fbfa;}
.blog-site-header .logo{padding:0; border-radius:0; background:transparent;}
.blog-site-header .logo-img{display:block; opacity:1; visibility:visible;}
.blog-hero{position:relative; overflow:hidden; padding:170px 0 82px; color:#fff; background:radial-gradient(circle at 82% 16%,rgba(0,217,166,.22),transparent 28%),linear-gradient(125deg,#061a2e 0%,#0a2945 66%,#074b50 100%);}
.blog-hero::before{content:""; position:absolute; inset:0; opacity:.15; background-image:linear-gradient(rgba(255,255,255,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.08) 1px,transparent 1px); background-size:42px 42px; mask-image:linear-gradient(to bottom,#000,transparent 85%);}
.blog-hero-grid{position:relative; z-index:1; display:grid; grid-template-columns:minmax(0,1.35fr) minmax(300px,.65fr); align-items:end; gap:64px;}
.blog-hero h1{max-width:760px; margin:19px 0 20px; font-size:clamp(46px,6vw,78px); line-height:.98; letter-spacing:-.055em;}
.blog-hero h1 em{color:var(--teal); font-style:normal;}
.blog-hero p{max-width:690px; color:rgba(255,255,255,.66); font-size:18px; line-height:1.72;}
.blog-hero-panel{display:grid; grid-template-columns:1fr 1fr; gap:9px; padding:13px; border:1px solid rgba(255,255,255,.14); border-radius:22px; background:rgba(255,255,255,.07); box-shadow:0 20px 60px rgba(0,0,0,.2); backdrop-filter:blur(14px);}
.blog-hero-panel span{min-height:78px; display:flex; align-items:flex-end; padding:14px; border:1px solid rgba(255,255,255,.09); border-radius:13px; color:rgba(255,255,255,.76); background:rgba(6,26,46,.45); font-family:var(--display); font-size:13px; font-weight:600;}
.blog-directory{padding:70px 0 92px;}
.blog-toolbar{display:grid; grid-template-columns:minmax(0,620px) auto; justify-content:space-between; align-items:end; gap:30px; margin-bottom:28px;}
.blog-search{position:relative;}
.blog-search label{display:block; margin-bottom:9px; color:var(--navy); font-family:var(--display); font-size:14px; font-weight:600;}
.blog-search-control{display:flex; gap:9px; padding:6px; border:1px solid rgba(10,37,64,.12); border-radius:16px; background:#fff; box-shadow:0 10px 28px rgba(10,37,64,.06);}
.blog-search-control input{width:100%; min-width:0; padding:11px 13px; border:0; outline:0; color:var(--navy); background:transparent; font:inherit;}
.blog-search-control button{padding:11px 19px; border:0; border-radius:11px; color:var(--navy-deep); background:var(--teal); font:600 14px var(--body); cursor:pointer;}
.blog-search-suggestions{position:absolute; top:100%; left:0; right:0; z-index:25; display:none; overflow:hidden; margin-top:8px; border:1px solid rgba(10,37,64,.1); border-radius:15px; background:#fff; box-shadow:0 18px 42px rgba(6,26,46,.14);}
.blog-search-suggestions.is-open{display:block;}
.blog-search-suggestions a,.blog-search-suggestions button{display:flex; align-items:center; gap:10px; width:100%; padding:12px 14px; border:0; border-bottom:1px solid rgba(10,37,64,.07); color:var(--navy); background:#fff; font:600 13px var(--body); text-align:left; cursor:pointer;}
.blog-search-suggestions a:last-child,.blog-search-suggestions button:last-child{border-bottom:0;}
.blog-search-suggestions a:hover,.blog-search-suggestions button:hover{background:#eefaf6; color:var(--teal-deep);}
.blog-search-suggestions span{flex:0 0 auto; min-width:52px; color:#7a8590; font:600 10px var(--mono); letter-spacing:.06em; text-transform:uppercase;}
.blog-count{display:flex; align-items:baseline; gap:8px; color:var(--slate-soft);}
.blog-count strong{color:var(--navy); font:700 29px var(--display);}
.blog-count span{font-size:13px;}
.category-filter{display:flex; gap:8px; margin-bottom:34px; padding-bottom:5px; overflow-x:auto; scrollbar-width:thin;}
.category-filter a{display:inline-flex; align-items:center; gap:7px; flex:0 0 auto; padding:9px 13px; border:1px solid rgba(10,37,64,.1); border-radius:999px; color:var(--slate-soft); background:#fff; font-size:12.5px; font-weight:600; transition:.2s ease;}
.category-filter a:hover,.category-filter a.active{color:#fff; border-color:var(--navy); background:var(--navy);}
.category-filter a span{min-width:20px; padding:2px 6px; border-radius:999px; color:inherit; background:rgba(0,217,166,.15); text-align:center; font-size:10px;}
.blog-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px;}
.blog-card{min-width:0; overflow:hidden; border:1px solid rgba(10,37,64,.09); border-radius:21px; background:#fff; box-shadow:0 12px 32px rgba(10,37,64,.07); transition:transform .24s ease,box-shadow .24s ease,border-color .24s ease;}
.blog-card[hidden]{display:none;}
.blog-card:hover{transform:translateY(-5px); border-color:rgba(0,181,138,.26); box-shadow:0 20px 44px rgba(10,37,64,.12);}
.blog-card-image{display:block; height:218px; overflow:hidden; background:linear-gradient(135deg,#e7f7f2,#dceaf2);}
.blog-card-image>img{width:100%; height:100%; object-fit:cover; transition:transform .5s ease;}
.blog-card:hover .blog-card-image>img{transform:scale(1.035);}
.blog-image-placeholder{display:grid; place-items:center; width:100%; height:100%; background:radial-gradient(circle at 75% 20%,rgba(0,217,166,.24),transparent 34%),linear-gradient(135deg,#eaf7f3,#dce9f2);}
.blog-image-placeholder img{width:132px; max-height:88px; padding:10px; border-radius:12px; background:rgba(255,255,255,.75);}
.blog-card-body{padding:22px 22px 24px;}
.blog-card-meta{display:flex; justify-content:space-between; gap:12px; color:#76818c; font:500 10.5px var(--mono); text-transform:uppercase; letter-spacing:.04em;}
.blog-card-category{display:inline-block; margin:16px 0 9px; color:var(--teal-deep); font-size:11px; font-weight:700; text-transform:uppercase; letter-spacing:.08em;}
.blog-card h2{font-size:22px; line-height:1.2; letter-spacing:-.025em; color:var(--navy);}
.blog-card h2 a:hover{color:var(--teal-deep);}
.blog-card p{display:-webkit-box; -webkit-line-clamp:3; -webkit-box-orient:vertical; overflow:hidden; min-height:68px; margin:13px 0 19px; color:var(--slate-soft); font-size:13.5px; line-height:1.67;}
.blog-read-link{display:inline-flex; gap:7px; align-items:center; color:var(--navy); font-size:13px; font-weight:700;}
.blog-read-link span{color:var(--teal-dark); transition:transform .2s ease;}
.blog-read-link:hover span{transform:translateX(4px);}
.blog-empty{max-width:720px; margin:30px auto 0; padding:66px 36px; border:1px dashed rgba(10,37,64,.18); border-radius:24px; background:#fff; text-align:center;}
.blog-empty[hidden]{display:none;}
.blog-empty-mark{display:grid; place-items:center; width:66px; height:66px; margin:0 auto 20px; border-radius:18px; color:var(--navy); background:linear-gradient(135deg,var(--teal),#94ead8); font:700 17px var(--display);}
.blog-empty h2{margin-bottom:10px; color:var(--navy); font-size:29px;}
.blog-empty p{max-width:490px; margin:0 auto 23px; color:var(--slate-soft);}
.blog-pagination{display:flex; align-items:center; justify-content:center; gap:18px; margin-top:42px;}
.blog-pagination a,.blog-pagination span{padding:10px 14px; border-radius:10px; font-size:13px;}
.blog-pagination a{color:var(--navy); border:1px solid rgba(10,37,64,.1); background:#fff; font-weight:600;}
.blog-pagination span{color:var(--slate-soft);}
.blog-cta{padding:0 0 82px;}
.blog-cta-inner{display:flex; align-items:center; justify-content:space-between; gap:30px; padding:38px 42px; border:1px solid rgba(10,37,64,.09); border-radius:24px; background:linear-gradient(125deg,#fff,#eaf8f4); box-shadow:0 18px 42px rgba(10,37,64,.08);}
.blog-cta h2{max-width:650px; margin-top:9px; color:var(--navy); font-size:clamp(26px,3vw,39px); line-height:1.1;}

@media (max-width:1050px){
  .blog-hero-grid{grid-template-columns:1fr; gap:35px;}
  .blog-hero-panel{max-width:650px;}
  .blog-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media (max-width:700px){
  .blog-hero{padding:135px 0 60px;}
  .blog-hero h1{font-size:clamp(42px,13vw,62px);}
  .blog-hero p{font-size:16px;}
  .blog-toolbar{grid-template-columns:1fr; align-items:start; gap:15px;}
  .blog-count{order:-1;}
  .blog-grid{grid-template-columns:1fr;}
  .blog-card-image{height:230px;}
  .blog-cta-inner{align-items:flex-start; flex-direction:column; padding:30px 25px;}
  .blog-cta-inner .btn{width:100%; justify-content:center;}
}
@media (max-width:460px){
  .blog-hero-panel{grid-template-columns:1fr;}
  .blog-hero-panel span{min-height:56px;}
  .blog-search-control{align-items:stretch; flex-direction:column;}
  .blog-search-control button{width:100%;}
  .blog-card-image{height:200px;}
}

.article-missing{min-height:70vh; padding:175px 0 90px; background:linear-gradient(180deg,#eef8f5,#fff);}
.article-page #siteHeader{display:block;}
.article-hero{position:static !important; inset:auto !important; z-index:auto !important; display:block; width:100vw; max-width:none !important; min-height:0 !important; margin:0 calc(50% - 50vw) !important; padding:118px 0 36px; border:0 !important; border-radius:0 !important; color:#fff; background:radial-gradient(circle at 82% 15%,rgba(0,217,166,.2),transparent 30%),linear-gradient(130deg,#061a2e,#0b304f 72%,#075154); box-shadow:none !important; backdrop-filter:none !important; transform:none !important;}
.article-hero-inner{max-width:1000px;}
.article-breadcrumb{display:flex; align-items:center; justify-content:flex-start; gap:9px; min-height:0; overflow:hidden; margin-bottom:20px; color:rgba(255,255,255,.55); font-size:11px; white-space:nowrap;}
.article-breadcrumb a:hover{color:var(--teal);}
.article-breadcrumb span:last-child{overflow:hidden; text-overflow:ellipsis;}
.article-category{display:inline-block; margin-bottom:10px; color:var(--teal); font:600 11px var(--mono); letter-spacing:.1em; text-transform:uppercase;}
.article-hero h1{max-width:900px; font-size:clamp(36px,3.8vw,50px); line-height:1.03; letter-spacing:-.04em; text-wrap:balance;}
.article-deck{max-width:760px; margin-top:13px; color:rgba(255,255,255,.72); font-size:15px; line-height:1.5;}
.article-meta{display:flex; flex-wrap:wrap; gap:10px 22px; margin-top:16px; color:rgba(255,255,255,.5); font:500 10.5px var(--mono); letter-spacing:.05em; text-transform:uppercase;}
.article-meta>*+*{position:relative;}
.article-meta>*+*::before{content:""; position:absolute; top:50%; left:-12px; width:3px; height:3px; border-radius:50%; background:var(--teal); transform:translateY(-50%);}
.article-featured-wrap{position:relative; z-index:2; max-width:1100px; margin-top:-35px;}
.article-featured{width:100%; max-height:600px; object-fit:cover; border:8px solid #fff; border-radius:24px; box-shadow:0 24px 65px rgba(10,37,64,.17);}
.article-layout{display:grid; grid-template-columns:145px minmax(0,760px); justify-content:center; gap:55px; padding-top:76px; padding-bottom:85px;}
.article-side{position:sticky; top:130px; align-self:start; display:flex; flex-direction:column; gap:10px; padding-top:8px;}
.article-side span{margin-bottom:5px; color:#8a949e; font:500 10px var(--mono); text-transform:uppercase; letter-spacing:.08em;}
.article-side a{padding:9px 11px; border:1px solid rgba(10,37,64,.09); border-radius:9px; color:var(--slate-soft); background:#fff; font-size:12px; transition:.2s ease;}
.article-side a:hover{color:var(--navy); border-color:rgba(0,181,138,.24); transform:translateX(3px);}
.article-content{min-width:0; color:#283744; font-size:17px; line-height:1.82;}
.article-content>*:first-child{margin-top:0;}
.article-content p,.article-content ul,.article-content ol,.article-content blockquote,.article-content table,.article-content figure{margin:0 0 25px;}
.article-content>p:first-child{font-size:18px; color:#203547;}
.article-content h2,.article-content h3,.article-content h4{scroll-margin-top:130px; color:var(--navy); line-height:1.18; letter-spacing:-.025em;}
.article-content h2{margin:48px 0 18px; font-size:34px;}
.article-content h3{margin:37px 0 15px; font-size:25px;}
.article-content h4{margin:30px 0 12px; font-size:19px;}
.article-content h2 strong,.article-content h3 strong{font:inherit; color:inherit;}
.article-content ul,.article-content ol{padding-left:24px;}
.article-content li{margin-bottom:9px; padding-left:5px;}
.article-content a{color:var(--teal-deep); text-decoration:underline; text-decoration-color:rgba(0,181,138,.3); text-underline-offset:3px;}
.article-content img{height:auto; margin:34px auto; border-radius:16px; box-shadow:0 14px 36px rgba(10,37,64,.12);}
.article-content blockquote{padding:24px 26px; border-left:4px solid var(--teal); border-radius:0 15px 15px 0; color:var(--navy); background:#eef9f6; font:600 19px/1.6 var(--display);}
.article-content hr{height:1px; margin:40px 0; border:0; background:linear-gradient(90deg,rgba(10,37,64,.16),rgba(0,181,138,.24),transparent);}
.article-takeaways{margin:38px 0 46px; padding:27px 29px; border:1px solid rgba(0,181,138,.18); border-radius:18px; background:linear-gradient(135deg,#eefaf6,#f8fcfb); box-shadow:0 12px 30px rgba(10,37,64,.06);}
.article-content .article-takeaways h2{margin:0 0 17px; font-size:24px;}
.article-content .article-takeaways ul{display:grid; grid-template-columns:1fr 1fr; gap:10px 24px; margin:0; padding:0; list-style:none;}
.article-content .article-takeaways li{position:relative; margin:0; padding:0 0 0 20px; color:#314656; font-size:14px; line-height:1.55;}
.article-content .article-takeaways li::before{content:""; position:absolute; top:.58em; left:0; width:8px; height:8px; border-radius:50%; background:var(--teal); box-shadow:0 0 0 4px rgba(0,217,166,.12);}
.article-content table{display:block; width:100%; overflow-x:auto; border-collapse:collapse; font-size:14px;}
.article-content th,.article-content td{padding:12px 14px; border:1px solid rgba(10,37,64,.1); text-align:left;}
.article-content th{color:var(--navy); background:#eef6f4;}
.related-section{padding:75px 0; background:#eef7f4;}
.section-heading{display:flex; align-items:end; justify-content:space-between; gap:24px; margin-bottom:28px;}
.section-heading h2{margin-top:7px; color:var(--navy); font-size:39px;}
.section-heading>a{color:var(--teal-deep); font-size:13px; font-weight:700;}
.related-grid{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px;}
.related-card{padding:25px; border:1px solid rgba(10,37,64,.08); border-radius:18px; background:#fff; box-shadow:0 10px 28px rgba(10,37,64,.05);}
.related-card h3{margin:17px 0 11px; color:var(--navy); font-size:21px; line-height:1.22;}
.related-card p{margin-bottom:18px; color:var(--slate-soft); font-size:13px; line-height:1.65;}
.article-cta{padding-top:78px;}

@media (max-width:850px){
  .article-layout{grid-template-columns:1fr; gap:28px;}
  .article-side{position:static; flex-direction:row; flex-wrap:wrap; align-items:center;}
  .article-side span{width:100%;}
  .related-grid{grid-template-columns:1fr 1fr;}
}
@media (max-width:600px){
  .article-hero{padding:94px 0 30px;}
  .article-breadcrumb{margin-bottom:17px;}
  .article-hero h1{font-size:clamp(31px,9.5vw,43px);}
  .article-deck{font-size:15px; line-height:1.55;}
  .article-meta{margin-top:17px;}
  .article-featured{border-width:5px; border-radius:17px;}
  .article-layout{padding-top:52px; padding-bottom:65px;}
  .article-content{font-size:16px; line-height:1.78;}
  .article-content h2{font-size:29px;}
  .article-content h3{font-size:23px;}
  .article-content .article-takeaways ul{grid-template-columns:1fr;}
  .article-takeaways{padding:23px 21px;}
  .related-grid{grid-template-columns:1fr;}
  .section-heading{align-items:flex-start; flex-direction:column;}
}
