/* ==========================================================================
   SNATEK site styles - part 9: articles (blog, case studies, press releases)
   and the post lists printed by [snatek_posts]. Same shape language as part 8:
   notched corners, flat fills, hairline rules, no card shadows, no side stripes.
   ========================================================================== */

/* the parent theme caps .site-main; articles run full width and manage their own container */
.sn-post.site-main,.sn-main.sn-post{max-width:none !important;width:100%;margin:0;padding:0}

/* ---------- article hero ---------- */
.sn-post-hero{background:linear-gradient(180deg,#fff 0%,#F1F7FA 100%);border-bottom:1px solid var(--sn-line)}
.sn-post-hero__inner{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);gap:clamp(2rem,5vw,4.5rem);align-items:center;padding-block:clamp(2.75rem,6vw,5rem)}
.sn-post--snatek_press .sn-post-hero__inner{grid-template-columns:minmax(0,1fr)}
.sn-post-hero .sn-crumbs ol{color:var(--sn-muted)}
.sn-post-hero .sn-crumbs a{color:var(--sn-link)}
.sn-post-hero .sn-crumbs [aria-current]{color:var(--sn-ink)}
.sn-post-hero .sn-crumbs li + li::before{border-color:#9DB3C0}
.sn-post__title{margin:1.25rem 0 1rem;max-width:22ch;font:800 clamp(2rem,4.4vw,3.4rem)/1.08 var(--sn-ff-display);letter-spacing:-.03em;color:var(--sn-ink);text-wrap:balance}
.sn-post__lead{max-width:56ch;font-size:clamp(1.05rem,1.5vw,1.2rem);line-height:1.65;color:var(--sn-muted)}
.sn-post__meta{margin-top:1.4rem;font:600 14px/1.4 var(--sn-ff-body);color:var(--sn-muted)}
.sn-post-hero__media{--nt:34px;overflow:hidden;clip-path:polygon(0 0,calc(100% - var(--nt)) 0,100% var(--nt),100% 100%,var(--nt) 100%,0 calc(100% - var(--nt)))}
.sn-post__img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
@media(max-width:900px){.sn-post-hero__inner{grid-template-columns:1fr}.sn-post-hero__media{max-width:560px}}

/* ---------- body: rail + article ---------- */
.sn-post-body{padding-block:clamp(2.5rem,5vw,4.5rem)}
.sn-post-layout{display:grid;grid-template-columns:270px minmax(0,1fr);gap:clamp(2rem,5vw,4.5rem);align-items:start}
.sn-post-rail{position:sticky;top:112px;display:flex;flex-direction:column;gap:1.25rem}
body.admin-bar .sn-post-rail{top:144px}
@media(max-width:1100px){.sn-post-layout{grid-template-columns:1fr}.sn-post-rail{position:static;order:2}.sn-post-rail .sn-va-toc{display:none}}
.sn-post-call{padding:1.5rem;background:var(--sn-panel);color:#C3D4DE;clip-path:polygon(16px 0,100% 0,100% calc(100% - 16px),calc(100% - 16px) 100%,0 100%,0 16px)}
.sn-post-call__title{margin:0;font:700 1.1rem/1.3 var(--sn-ff-display);color:#fff}
.sn-post-call__text{margin:.45rem 0 1rem;font-size:14.5px;line-height:1.55;color:#B9CCD8}
.sn-post-call__line{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem;padding:.7rem .8rem;color:#fff !important;font:700 15px/1.2 var(--sn-ff-display);background:rgba(255,255,255,.06);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px)}
.sn-post-call__line svg{width:18px;height:18px;flex:none;color:var(--sn-electric)}
.sn-post-call__line small{display:block;margin-bottom:.15rem;font:600 11px/1.2 var(--sn-ff-body);letter-spacing:.08em;text-transform:uppercase;color:#8FA9B8}
.sn-post-facts{margin:0;padding:0;border-top:1px solid var(--sn-line)}
.sn-post-facts > div{padding:.8rem 0;border-bottom:1px solid var(--sn-line)}
.sn-post-facts dt{font:600 12px/1.3 var(--sn-ff-body);letter-spacing:.08em;text-transform:uppercase;color:var(--sn-muted)}
.sn-post-facts dd{margin:.25rem 0 0;font:600 15px/1.45 var(--sn-ff-body);color:var(--sn-ink)}
.sn-post .sn-btn--on-dark > a{--btn-bg:var(--sn-electric);--btn-fg:#06212E;--btn-bd:var(--sn-electric)}
.sn-post .sn-btn--on-dark > a:hover{--btn-bg:var(--sn-electric-light);--btn-bd:var(--sn-electric-light);color:var(--btn-fg)}
.sn-post .sn-btn--outline-light > a{--btn-bg:transparent;--btn-fg:#fff;--btn-bd:rgba(255,255,255,.45)}
.sn-post .sn-btn--outline-light > a:hover{--btn-bg:#fff;--btn-fg:var(--sn-ink);--btn-bd:#fff;color:var(--btn-fg)}
.sn-post .sn-btn--block,.sn-post .sn-btn--block > a{display:flex;width:100%}

/* ---------- article typography ---------- */
.sn-prose{max-width:720px;min-width:0}
.sn-prose > :first-child{margin-top:0}
.sn-prose p,.sn-prose li{font-size:17px;line-height:1.78;color:#33444E}
.sn-prose p{margin:0 0 1.25rem}
.sn-prose h2{margin:3rem 0 1rem;scroll-margin-top:110px;font:800 clamp(1.5rem,2.6vw,2.1rem)/1.15 var(--sn-ff-display);letter-spacing:-.025em;color:var(--sn-ink);text-wrap:balance}
.sn-prose h3{margin:2rem 0 .6rem;font:700 1.25rem/1.3 var(--sn-ff-display);letter-spacing:-.01em;color:var(--sn-ink)}
.sn-prose ul,.sn-prose ol{margin:0 0 1.4rem;padding-left:1.4rem}
.sn-prose ul{list-style:none;padding-left:0}
.sn-prose ul li{position:relative;margin-bottom:.55rem;padding-left:1.4rem}
.sn-prose ul li::before{content:"";position:absolute;left:0;top:.72em;width:8px;height:8px;background:var(--sn-electric);clip-path:polygon(2px 0,100% 0,100% calc(100% - 2px),calc(100% - 2px) 100%,0 100%,0 2px)}
.sn-prose ol li{margin-bottom:.55rem;padding-left:.35rem}
.sn-prose a{color:var(--sn-link);text-decoration:underline;text-underline-offset:3px;text-decoration-thickness:1px}
.sn-prose strong{color:var(--sn-ink)}
.sn-prose blockquote{margin:2rem 0;padding:1.4rem 0;border-top:1px solid var(--sn-line);border-bottom:1px solid var(--sn-line)}
.sn-prose blockquote p{margin:0;font:600 1.25rem/1.5 var(--sn-ff-display);letter-spacing:-.01em;color:var(--sn-ink)}
.sn-prose table{width:100%;margin:0 0 1.6rem;border-collapse:collapse;font-size:15.5px;line-height:1.5}
.sn-prose th,.sn-prose td{padding:.85rem 1rem;text-align:left;vertical-align:top;border:0;border-bottom:1px solid var(--sn-line);background:transparent}
.sn-prose thead th{font:700 .95rem/1.3 var(--sn-ff-display);color:var(--sn-ink);border-bottom:2px solid var(--sn-ink)}
@media(max-width:640px){.sn-prose table{font-size:14px;table-layout:fixed}.sn-prose th,.sn-prose td{padding:.7rem .5rem;overflow-wrap:anywhere}}
.sn-prose img{max-width:100%;height:auto}
.sn-post__by{margin-top:3rem;padding-top:1.25rem;border-top:1px solid var(--sn-line);font-size:14.5px;line-height:1.6;color:var(--sn-muted)}

/* ---------- more + call to action ---------- */
.sn-post-more{padding-block:clamp(3rem,6vw,5rem);background:var(--sn-tint)}
.sn-post-more__title{margin:0 0 2rem;font:800 clamp(1.6rem,3vw,2.3rem)/1.12 var(--sn-ff-display);letter-spacing:-.03em;color:var(--sn-ink)}
.sn-post-cta{padding-block:clamp(3rem,6vw,5rem);background:var(--sn-panel)}
.sn-post-cta__inner{display:flex;flex-wrap:wrap;gap:2rem;align-items:center;justify-content:space-between}
.sn-post-cta__title{margin:0;max-width:20ch;font:800 clamp(1.7rem,3.2vw,2.5rem)/1.12 var(--sn-ff-display);letter-spacing:-.03em;color:#fff;text-wrap:balance}
.sn-post-cta__text{max-width:52ch;margin:.8rem 0 0;color:#B9CCD8}
.sn-post-cta__btns{display:flex;flex-wrap:wrap;gap:.9rem}

/* ---------- post lists ([snatek_posts]) ---------- */
.sn-pl__filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2.25rem}
.sn-pl__filters a{padding:.6rem 1rem;font:600 14px/1 var(--sn-ff-body);color:var(--sn-ink) !important;background:var(--sn-tint);clip-path:polygon(8px 0,100% 0,100% calc(100% - 8px),calc(100% - 8px) 100%,0 100%,0 8px);transition:background-color .25s var(--sn-ease),color .25s}
.sn-pl__filters a:hover{background:#E1EDF3}
.sn-pl__filters a.is-on{background:var(--sn-panel);color:#fff !important}
.sn-pl__img{--nt:28px;display:block;overflow:hidden;clip-path:polygon(0 0,calc(100% - var(--nt)) 0,100% var(--nt),100% 100%,var(--nt) 100%,0 calc(100% - var(--nt)))}
.sn-pl__img img{display:block;width:100%;height:100%;aspect-ratio:16/10;object-fit:cover;transition:transform .9s var(--sn-ease-out,cubic-bezier(.16,1,.3,1))}
.sn-pl__img:hover img{transform:scale(1.04)}
.sn-pl__meta{margin:0 0 .6rem;font:600 13.5px/1.4 var(--sn-ff-body);color:var(--sn-muted)}
.sn-pl__title{margin:0;font:700 clamp(1.2rem,2vw,1.5rem)/1.25 var(--sn-ff-display);letter-spacing:-.02em}
.sn-pl__title a{color:var(--sn-ink) !important}
.sn-pl__title a:hover{color:var(--sn-link) !important}
.sn-pl__ex{margin:.7rem 0 0;font-size:15.5px;line-height:1.7;color:var(--sn-muted)}
.sn-pl__more{display:inline-flex;align-items:center;gap:.5rem;margin-top:1rem;font:600 14.5px/1 var(--sn-ff-body);color:var(--sn-link) !important}
.sn-pl__more svg{width:16px;height:16px;transition:transform .3s var(--sn-ease)}
.sn-pl__more:hover svg{transform:translateX(5px)}
.sn-pl-feature{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);gap:clamp(1.5rem,4vw,3.5rem);align-items:center;margin-bottom:clamp(2.5rem,5vw,4rem)}
.sn-pl-feature .sn-pl__title{font-size:clamp(1.6rem,3vw,2.3rem);line-height:1.15}
.sn-pl-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:2.5rem 1.75rem}
.sn-pl-card .sn-pl__img{margin-bottom:1rem}
@media(max-width:1000px){.sn-pl-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:700px){.sn-pl-grid,.sn-pl-feature{grid-template-columns:1fr}}
.sn-pl-case,.sn-pl-press{position:relative;display:grid;gap:clamp(1rem,3vw,2.5rem);padding:1.9rem 0;align-items:start}
.sn-pl-case{grid-template-columns:minmax(120px,.22fr) minmax(0,1fr) minmax(0,.32fr)}
.sn-pl-press{grid-template-columns:minmax(120px,.22fr) minmax(0,1fr)}
.sn-pl-case:last-of-type,.sn-pl-press:last-of-type{border-bottom:1px solid var(--sn-line)}
.sn-pl-case__sector,.sn-pl-press__date{margin:0;font:700 1rem/1.35 var(--sn-ff-display);color:var(--sn-link)}
.sn-pl-case__what{margin:.3rem 0 0;font:600 .95rem/1.4 var(--sn-ff-body);color:var(--sn-muted)}
.sn-pl-case__img img{aspect-ratio:4/3}
@media(max-width:900px){.sn-pl-case{grid-template-columns:1fr;gap:.6rem}.sn-pl-case__img{max-width:420px}.sn-pl-press{grid-template-columns:1fr;gap:.4rem}}
.sn-pl__pager{display:flex;align-items:center;gap:1.5rem;margin-top:2.5rem;font-size:14.5px;color:var(--sn-muted)}
.sn-pl__pager a{font-weight:600}
.sn-pl__empty{padding:2rem 0;color:var(--sn-muted)}
