/* Blog, articles and privacy page. All article content is available in HTML. */
.editorial-hero,.post-hero{position:relative;overflow:hidden;background:linear-gradient(120deg,#07111f,#0d2547 72%,#103664);color:#fff;padding:132px 0 66px}
.editorial-hero::after{content:"";position:absolute;width:380px;height:380px;border:1px solid #da9f1744;transform:rotate(30deg);right:-110px;top:-140px;pointer-events:none}
.editorial-hero .container,.post-heading{position:relative;z-index:1}
.breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:10px;color:inherit;font-size:.8rem;line-height:1.6;margin-bottom:26px;opacity:.8}
.breadcrumb a{text-decoration:none}.breadcrumb a:hover{text-decoration:underline}
.editorial-hero h1{max-width:850px;margin:0;font-size:clamp(2.6rem,4.4vw,3.75rem);line-height:1.06;letter-spacing:-.05em}
.editorial-hero h1 span{color:var(--gold-light);display:block}
.editorial-hero .hero-eyebrow,.post-hero .hero-eyebrow{margin:0 0 18px;color:var(--gold-light);font-size:.76rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase}
.editorial-intro{max-width:670px;margin:24px 0 0;color:#d4dce8;font-size:1.03rem;line-height:1.8}
.blog-listing{padding:68px 0 90px}.blog-list-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:20px;margin-bottom:32px}
.blog-list-heading .eyebrow{margin:0 0 10px}
.blog-count{font-size:.9rem;color:var(--muted);white-space:nowrap;margin:0}
.blog-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px!important}
.blog-card{min-width:0;overflow:hidden;border:1px solid var(--line);border-radius:6px 26px 6px 26px;background:var(--surface);box-shadow:0 12px 30px #07111f08;transition:transform .25s,box-shadow .25s;height:100%}
.blog-card:hover{transform:translateY(-5px);box-shadow:0 18px 42px #07111f15}
.blog-card>a{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}
.blog-media{position:relative;display:block;aspect-ratio:16/9;overflow:hidden;background:var(--surface-2)}
.blog-media img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .5s ease}
.blog-card:hover .blog-media img{transform:scale(1.025)}
.blog-body{display:flex;flex-direction:column;flex:1;gap:0;padding:22px 20px 24px}
.blog-meta{display:flex;flex-wrap:wrap;gap:6px 12px;align-items:center;margin:0 0 14px;color:var(--muted);font-size:.73rem;line-height:1.55;text-transform:none;letter-spacing:0}
.blog-card h3{display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important;margin:0 0 12px;font-size:1.02rem;line-height:1.45;font-weight:700;letter-spacing:-.025em;color:var(--text);min-height:0}
.blog-card p{display:block!important;-webkit-line-clamp:unset!important;overflow:visible!important;margin:0 0 24px;line-height:1.7;font-size:.87rem;color:var(--muted);min-height:0}
.blog-card .text-link{margin-top:auto;font-size:.8rem;font-weight:700;color:var(--blue);display:flex;align-items:center;gap:8px}
.blog-card .text-link svg{width:18px;height:18px}
[data-theme="dark"] .blog-card .text-link{color:var(--gold-light)}
.blog-card a:focus-visible{outline:3px solid var(--gold);outline-offset:-4px}
.active-tag{display:flex;gap:16px;align-items:center;justify-content:space-between;flex-wrap:wrap;padding:18px 22px;background:var(--surface-2);margin-bottom:30px;border-radius:12px;font-size:.9rem}
.active-tag a,.blog-empty a{color:var(--blue);text-decoration:underline}
[data-theme="dark"] .active-tag a,[data-theme="dark"] .blog-empty a{color:var(--gold-light)}
.post-hero{padding-bottom:55px}
.post-heading{max-width:1060px}
.post-hero h1{font-size:clamp(2rem,3.55vw,3.3rem);max-width:1020px;line-height:1.13;letter-spacing:-.045em;margin:0 0 26px;overflow-wrap:break-word}
.post-meta{display:flex;gap:10px 22px;flex-wrap:wrap;font-size:.8rem;color:#c9d6e7;line-height:1.65}
.post-updated{margin:10px 0 0;font-size:.8rem;color:#c9d6e7}
.post-layout{display:grid;grid-template-columns:minmax(0,850px) minmax(0,300px);gap:60px;align-items:start;padding-top:52px;padding-bottom:74px}
.post-main{min-width:0}
.post-cover{margin:0 0 42px;overflow:hidden;border-radius:6px 28px 6px 28px}
.post-cover img{display:block;width:100%;height:auto}
.post-body{font-size:1.03rem;line-height:1.85;overflow-wrap:break-word;color:var(--text)}
.post-body p{margin:0 0 1.25em;max-width:none;font-size:inherit;line-height:inherit;color:inherit}
.post-body h2{font-size:clamp(1.45rem,2vw,1.8rem)!important;line-height:1.3!important;letter-spacing:-.025em!important;margin:2em 0 .8em!important;color:var(--text);font-weight:700!important}
.post-body h3{font-size:1.18rem!important;line-height:1.5!important;letter-spacing:-.015em!important;margin:1.7em 0 .65em!important;color:var(--text)}
.post-body h4,.post-body h5,.post-body h6{font-size:1.05rem;line-height:1.5;margin:1.5em 0 .6em}
.post-body ul,.post-body ol{padding-left:1.4em;margin:0 0 1.5em}
.post-body li{margin-bottom:.45em}
.post-body li p{margin:0}
.post-body a{color:var(--blue);text-decoration:underline;text-underline-offset:3px;word-break:break-word}
[data-theme="dark"] .post-body a{color:#8db7ff}
.post-body figure{margin:32px 0}.post-body figure img{width:100%;height:auto;border-radius:14px}
.post-body figcaption{font-size:.8rem;color:var(--muted);margin-top:10px}
.post-body blockquote{border-left:3px solid var(--gold);margin:28px 0;padding:18px 24px;background:var(--surface-2)}
.post-body blockquote p:last-child{margin:0}
.post-body hr{border:0;border-top:1px solid var(--line);margin:32px 0}
.table-scroll{overflow-x:auto;margin:24px 0;border:1px solid var(--line);border-radius:12px;max-width:100%}
.post-body table{border-collapse:collapse;width:100%;font-size:.92rem;table-layout:fixed}
.post-body td,.post-body th{padding:15px;vertical-align:top;text-align:left;border-bottom:1px solid var(--line);width:50%}
.post-body th{background:var(--surface-2);font-weight:700}
.post-body td p,.post-body th p{margin:0}
.post-sidebar{position:sticky;top:106px;max-height:calc(100dvh - 128px);overflow:auto;scrollbar-width:thin}
.post-toc{padding:24px;border-left:2px solid var(--gold);background:var(--surface)}
.post-toc strong{font-size:.92rem;display:block;margin-bottom:18px}
.post-toc ol{padding:0;list-style:none;margin:0}
.post-toc li{margin:0 0 13px;line-height:1.55;font-size:.8rem}
.post-toc a{color:var(--muted);text-decoration:none}
.post-toc a:hover{color:var(--blue)}
[data-theme="dark"] .post-toc a:hover{color:var(--gold-light)}
.post-tags{display:flex;gap:9px;flex-wrap:wrap;margin-top:40px;padding-top:24px;border-top:1px solid var(--line)}
.post-tags a{font-size:.75rem;padding:8px 12px;border:1px solid var(--line);border-radius:8px;line-height:1.45;color:var(--muted);transition:background .2s;overflow-wrap:anywhere;max-width:100%}
.post-tags a:hover{background:var(--surface-2);color:var(--text)}
.post-back{display:inline-block;margin-top:32px;font-size:.88rem;font-weight:700;color:var(--blue);text-decoration:underline;text-underline-offset:4px}
[data-theme="dark"] .post-back{color:var(--gold-light)}
.blog-related{padding:64px 0 82px;background:var(--surface-2)}
.blog-related h2{max-width:720px;margin:0 0 34px!important}
.blog-related .eyebrow{margin-bottom:16px}
.privacy-layout{max-width:940px;padding-top:54px;padding-bottom:78px}
.privacy-copy{font-size:1rem;line-height:1.9}
.privacy-copy h2{font-size:1.6rem;line-height:1.35;letter-spacing:-.025em;margin:32px 0 18px}
.privacy-copy h2:first-child{margin-top:0}
.privacy-copy p{margin:0 0 24px;color:var(--muted)}
.privacy-copy a{color:var(--blue);text-decoration:underline}
[data-theme="dark"] .privacy-copy a{color:var(--gold-light)}
.page-blog .hero-copy,.page-post .hero-copy,.page-privacy .hero-copy{width:100%}
.page-404 .editorial-hero{min-height:76vh}
.page-404 .hero-actions{margin-top:30px}
@media(max-width:1100px){.post-layout{gap:30px;grid-template-columns:minmax(0,1fr) 250px}.post-toc{padding:18px}}
@media(max-width:1000px){.blog-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}.post-layout{display:block;max-width:870px}.post-sidebar{position:static;max-height:none;display:none}}
@media(max-width:600px){
 .editorial-hero,.post-hero{padding:114px 0 40px}
 .editorial-hero .container,.post-heading{width:calc(100% - 36px)}
 .editorial-hero h1 span{display:inline}
 .editorial-intro{font-size:1rem;line-height:1.75;margin-top:22px}
 .breadcrumb{font-size:.76rem;margin-bottom:22px;gap:8px}
 .blog-listing{padding:42px 0 56px}.blog-list-heading{align-items:flex-start;flex-direction:column;gap:14px}
 .blog-grid{grid-template-columns:minmax(0,1fr)!important;gap:24px!important}
 .blog-body{padding:22px}.blog-card h3{font-size:1.16rem!important;line-height:1.45!important}.blog-card p{font-size:.94rem!important}
 .blog-meta{font-size:.8rem}.blog-card .text-link{font-size:.87rem}
 .post-layout{width:calc(100% - 36px);padding-top:26px;padding-bottom:46px}
 .post-cover{margin-bottom:28px;border-radius:6px 18px 6px 18px}
 .post-meta{font-size:.78rem;display:grid;gap:8px}
 .post-body{font-size:1rem;line-height:1.85}
 .post-body table{font-size:.82rem}.post-body td,.post-body th{padding:10px}
 .post-tags{gap:8px}.post-tags a{font-size:.78rem}
 .blog-related{padding:44px 0 54px}.blog-related h2{font-size:2rem!important;line-height:1.12!important}
 .privacy-layout{width:calc(100% - 36px);padding-top:36px;padding-bottom:48px}
}
