/* viggo-pages.css — Cobalt-Editorial styling for the Nieuws/Columns OVERVIEW pages
 * (and the article/column DETAIL templates). Everything scoped under .viggo-pages.
 * Same design language + unified hover system as the n2 homepage. Code (ships via SFTP);
 * the dynamic loops + bindings live natively in the Oxygen trees. */

.viggo-pages{
  --cream:#ede1c8; --cream-light:#f3ead6; --cream-dark:#e4d4b4; --cream-deep:#d9c89e;
  --cobalt:#1b34d4; --cobalt-deep:#15259e; --cobalt-ink:#0f1a4d;
  --ink:#141019; --ink-muted:#463d4f;
  --rule:rgba(27,52,212,.18); --cobalt-shadow:rgba(21,37,158,.30);
  --serif:'Fraunces',Georgia,serif; --sans:'Hanken Grotesk',system-ui,sans-serif;
  --max:1440px; --pad:1rem;
  --ease-hover:cubic-bezier(.33,1,.68,1);
  --t-color:.3s; --t-move:.45s; --t-img:.7s; --lift:-3px;
  --card-shadow:0 18px 40px -24px var(--cobalt-shadow);
  background:var(--cream); color:var(--ink); font-family:var(--sans);
}
.viggo-pages *,.viggo-pages *::before,.viggo-pages *::after{box-sizing:border-box;}
.viggo-pages img{display:block;max-width:100%;}
.viggo-pages a{color:inherit;text-decoration:none;}

/* clear the fixed navbar (it has a cream→transparent gradient; content must start below it
   so that fade sits over the cream zone, not over a cobalt hero) */
.viggo-pages .vp-section{padding:calc(var(--navigatie-bar-hoogte,100px) + clamp(.6rem,2vw,1.6rem)) 0 clamp(3rem,7vw,6rem);}
.viggo-pages .vp-wrap{width:100%;max-width:var(--max);margin-inline:auto;padding-inline:var(--pad);}

/* ── masthead ── */
.viggo-pages .vp-masthead{display:flex;align-items:baseline;gap:1.2rem;flex-wrap:wrap;
  margin-bottom:clamp(2rem,4vw,3.4rem);}
.viggo-pages .vp-kicker{font-size:.68rem;font-weight:600;letter-spacing:.18em;text-transform:uppercase;color:var(--cobalt);}
.viggo-pages .vp-h1{font-family:var(--serif);font-size:clamp(2.6rem,6vw,5rem);font-weight:600;letter-spacing:-.03em;line-height:.95;color:var(--ink);}
.viggo-pages .vp-rule{flex:1;min-width:40px;height:1px;background:var(--rule);position:relative;top:-.5rem;}
.viggo-pages .vp-count{font-size:.72rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap;}

/* shared read-more */
.viggo-pages .vp-read{display:inline-flex;align-items:center;gap:.45rem;margin-top:1rem;
  font-size:.72rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--cobalt);}
.viggo-pages .vp-read .vp-arr{transition:transform var(--t-move) var(--ease-hover);}

/* outlet / medium tag (e.g. "NRC", "MeerRadio") — hidden when the post has no outlet set */
.viggo-pages .vp-src{display:inline-block;font-size:.6rem;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--cobalt);margin-bottom:.5rem;}
.viggo-pages .vp-src:empty{display:none;}

/* "Lees het origineel op [outlet] →" button — hidden when there is no external link */
.viggo-pages .vp-extern{display:inline-flex;align-items:center;gap:.55rem;margin-top:clamp(1.8rem,3vw,2.6rem);
  padding:.8rem 1.6rem;border:1.5px solid var(--cobalt);border-radius:2px;
  font-size:.72rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--cobalt);
  transition:background var(--t-color) var(--ease-hover),color var(--t-color) var(--ease-hover),gap var(--t-move) var(--ease-hover);}
.viggo-pages .vp-extern:hover{background:var(--cobalt);color:var(--cream-light);gap:.85rem;}
/* hide the button when there is no external link (the ContainerLink renders no href then) */
.viggo-pages .vp-extern:not([href]),
.viggo-pages .vp-extern[href=""],
.viggo-pages .vp-extern[href="#"]{display:none;}

/* ═══════════════ NIEUWS — magazine grid ═══════════════ */
/* the PostsLoop renders: .vp-grid > .bde-loop.ee-posts > article.ee-post > a.vp-card */
.viggo-pages .vp-grid .bde-loop{display:grid;grid-template-columns:repeat(3,1fr);gap:clamp(1.6rem,2.6vw,2.6rem);}
.viggo-pages .vp-grid .ee-post{display:flex;}
.viggo-pages .vp-card{display:flex;flex-direction:column;width:100%;}
.viggo-pages .vp-card-img{position:relative;overflow:hidden;border-radius:3px;aspect-ratio:3/2;
  background:var(--cream-deep);margin-bottom:1rem;
  transition:transform var(--t-move) var(--ease-hover),box-shadow var(--t-move) var(--ease-hover);}
.viggo-pages .vp-card-img img{width:100%;height:100%;object-fit:cover;transition:transform var(--t-img) var(--ease-hover);}
.viggo-pages .vp-card-title{font-family:var(--serif);font-size:clamp(1.25rem,1.7vw,1.55rem);font-weight:600;
  line-height:1.12;letter-spacing:-.01em;color:var(--ink);margin-bottom:.5rem;transition:color var(--t-color) var(--ease-hover);}
.viggo-pages .vp-card-ex{font-size:.9rem;line-height:1.6;color:var(--ink-muted);
  display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden;}
.viggo-pages .vp-card:hover .vp-card-img{transform:translateY(var(--lift));box-shadow:var(--card-shadow);}
.viggo-pages .vp-card:hover .vp-card-img img{transform:scale(1.035);}
.viggo-pages .vp-card:hover .vp-card-title{color:var(--cobalt);}
.viggo-pages .vp-card:hover .vp-read .vp-arr{transform:translateX(4px);}

/* lead = first item spans full width, image beside text */
.viggo-pages .vp-grid .ee-post:first-child{grid-column:1 / -1;
  padding-bottom:clamp(1.8rem,3vw,2.6rem);margin-bottom:.4rem;border-bottom:2px solid var(--ink);}
.viggo-pages .vp-grid .ee-post:first-child .vp-card{display:grid;
  grid-template-columns:1.35fr 1fr;gap:clamp(1.6rem,3vw,3rem);align-items:center;}
.viggo-pages .vp-grid .ee-post:first-child .vp-card-img{aspect-ratio:16/10;margin-bottom:0;}
.viggo-pages .vp-grid .ee-post:first-child .vp-card-title{font-size:clamp(1.8rem,3.2vw,3rem);line-height:1.02;margin-bottom:.8rem;}
.viggo-pages .vp-grid .ee-post:first-child .vp-card-ex{font-size:1.02rem;-webkit-line-clamp:5;max-width:50ch;}

/* ═══════════════ COLUMNS — cobalt feature + numbered index ═══════════════ */
/* loop renders: .vp-collist > .bde-loop > article.ee-post > a.vp-col */
.viggo-pages .vp-collist .bde-loop{display:flex;flex-direction:column;counter-reset:vpc;}
.viggo-pages .vp-collist .ee-post{counter-increment:vpc;display:block;}
.viggo-pages .vp-col{display:block;}

/* feature = first column, large cobalt card */
.viggo-pages .vp-collist .ee-post:first-child{margin-bottom:clamp(2rem,4vw,3.2rem);}
.viggo-pages .vp-collist .ee-post:first-child .vp-col{position:relative;background:var(--cobalt);color:var(--cream-light);
  border-radius:4px;overflow:hidden;padding:clamp(2.2rem,5vw,4rem);
  box-shadow:0 30px 70px -30px var(--cobalt-shadow);transition:transform var(--t-move) var(--ease-hover),box-shadow var(--t-move) var(--ease-hover);}
.viggo-pages .vp-collist .ee-post:first-child .vp-col::before{content:'\201C';position:absolute;top:-2rem;left:1rem;
  font-family:var(--serif);font-size:16rem;line-height:1;color:rgba(243,234,214,.09);pointer-events:none;}
.viggo-pages .vp-collist .ee-post:first-child .vp-col:hover{transform:translateY(var(--lift));box-shadow:0 36px 80px -30px var(--cobalt-shadow);}
.viggo-pages .vp-collist .ee-post:first-child .vp-col-body{position:relative;max-width:60ch;}
.viggo-pages .vp-collist .ee-post:first-child .vp-lbl{color:rgba(243,234,214,.6);}
.viggo-pages .vp-collist .ee-post:first-child .vp-col-title{color:var(--cream-light);font-size:clamp(2.4rem,5.5vw,4.4rem);line-height:.98;margin:.5rem 0 1.2rem;}
.viggo-pages .vp-collist .ee-post:first-child .vp-col-ex{color:rgba(243,234,214,.88);font-size:clamp(1rem,1.5vw,1.3rem);
  border-left:2px solid rgba(243,234,214,.32);padding-left:1.3rem;-webkit-line-clamp:4;}
.viggo-pages .vp-collist .ee-post:first-child .vp-read{color:var(--cream-light);
  border:1.5px solid rgba(243,234,214,.4);padding:.7rem 1.5rem;border-radius:2px;margin-top:1.6rem;
  transition:background var(--t-color) var(--ease-hover),border-color var(--t-color) var(--ease-hover);}
.viggo-pages .vp-collist .ee-post:first-child .vp-col:hover .vp-read{background:rgba(243,234,214,.12);border-color:var(--cream-light);}

/* shared label/title/excerpt */
.viggo-pages .vp-lbl{font-size:.6rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--cobalt);}
.viggo-pages .vp-col-title{font-family:var(--serif);font-style:italic;font-weight:600;letter-spacing:-.02em;line-height:1.04;
  color:var(--ink);transition:color var(--t-color) var(--ease-hover);}
.viggo-pages .vp-col-ex{font-size:.95rem;line-height:1.55;color:var(--ink-muted);margin-top:.3rem;
  display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}

/* index rows = the rest */
.viggo-pages .vp-collist .ee-post:not(:first-child) .vp-col{display:grid;grid-template-columns:auto 1fr auto;gap:1.4rem;
  align-items:baseline;padding:clamp(1.1rem,2vw,1.7rem) 0;border-top:1px solid var(--rule);
  transition:padding-left var(--t-move) var(--ease-hover);}
.viggo-pages .vp-collist .ee-post:last-child .vp-col{border-bottom:1px solid var(--rule);}
.viggo-pages .vp-collist .ee-post:not(:first-child) .vp-col::before{content:counter(vpc,decimal-leading-zero);
  font-family:var(--serif);font-size:clamp(1.3rem,2.4vw,1.9rem);font-weight:600;color:var(--rule);line-height:1;}
.viggo-pages .vp-collist .ee-post:not(:first-child) .vp-col-title{font-size:clamp(1.3rem,2.2vw,1.9rem);}
.viggo-pages .vp-collist .ee-post:not(:first-child) .vp-lbl{display:none;}
.viggo-pages .vp-collist .ee-post:not(:first-child) .vp-read{margin-top:.4rem;font-size:.62rem;}
.viggo-pages .vp-collist .ee-post:not(:first-child) .vp-col:hover{padding-left:.5rem;}
.viggo-pages .vp-collist .ee-post:not(:first-child) .vp-col:hover .vp-col-title{color:var(--cobalt);}
.viggo-pages .vp-collist .ee-post .vp-col:hover .vp-read .vp-arr{transform:translateX(4px);}

/* ═══════════════ DETAIL — niewtjes (split hero: text + image) ═══════════════ */
.viggo-pages .vp-article .vp-wrap{max-width:1180px;}
.viggo-pages .vp-art-hero{display:grid;grid-template-columns:1.05fr .95fr;gap:clamp(2rem,4.5vw,4.5rem);
  align-items:center;padding:clamp(2.4rem,4vw,3.6rem) 0;
  margin-bottom:clamp(2.4rem,4vw,3.6rem);border-bottom:2px solid var(--ink);}
.viggo-pages .vp-art-hat{text-align:left;}
.viggo-pages .vp-crumbs{display:inline-block;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;
  color:var(--cobalt);margin-bottom:1rem;transition:color var(--t-color) var(--ease-hover);}
.viggo-pages .vp-crumbs:hover{color:var(--cobalt-deep);}
.viggo-pages .vp-art-title{font-family:var(--serif);font-size:clamp(2.2rem,4.6vw,4rem);font-weight:600;
  line-height:1.0;letter-spacing:-.025em;color:var(--ink);margin:0 0 1rem;max-width:16ch;}
.viggo-pages .vp-art-stand{font-family:var(--serif);font-style:italic;font-size:clamp(1.12rem,1.7vw,1.45rem);
  line-height:1.42;color:var(--ink-muted);max-width:42ch;margin:0;
  padding-left:1.2rem;border-left:2px solid var(--cobalt);}
.viggo-pages .vp-byline{margin-top:1.4rem;font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-muted);}
.viggo-pages .vp-art-media{aspect-ratio:4/5;overflow:hidden;border-radius:4px;background:var(--cream-deep);
  box-shadow:var(--card-shadow);}
.viggo-pages .vp-art-media img{width:100%;height:100%;object-fit:cover;}
.viggo-pages .vp-art-hero .vp-extern{background:var(--cobalt);color:var(--cream-light);border-color:var(--cobalt);}
.viggo-pages .vp-art-hero .vp-extern:hover{background:var(--cobalt-deep);border-color:var(--cobalt-deep);color:var(--cream-light);}
/* body uses the full width: a slim sticky left rail (author/outlet/back) + a wide reading column */
.viggo-pages .vp-art-main{display:grid;grid-template-columns:minmax(190px,230px) 1fr;
  gap:clamp(2rem,5vw,5rem);align-items:start;}
.viggo-pages .vp-art-aside{position:sticky;top:calc(var(--navigatie-bar-hoogte,100px) + 1.6rem);}
.viggo-pages .vp-blk{margin-bottom:1.3rem;}
.viggo-pages .vp-aside-label{display:block;font-size:.6rem;font-weight:700;letter-spacing:.15em;
  text-transform:uppercase;color:var(--ink-muted);margin-bottom:.25rem;}
.viggo-pages .vp-aside-label:empty{display:none;}
.viggo-pages .vp-aside-val{display:block;font-family:var(--serif);font-size:1.05rem;color:var(--ink);}
.viggo-pages .vp-aside-val:empty{display:none;}
.viggo-pages .vp-aside-back{display:inline-block;font-size:.7rem;font-weight:600;letter-spacing:.1em;
  text-transform:uppercase;color:var(--cobalt);margin-top:.4rem;transition:color var(--t-color) var(--ease-hover);}
.viggo-pages .vp-aside-back:hover{color:var(--cobalt-deep);}
.viggo-pages .vp-art-body{max-width:74ch;margin:0;}
.viggo-pages .vp-art-body p{margin-bottom:1.3rem;font-size:1.08rem;line-height:1.8;color:#241d2c;}
.viggo-pages .vp-art-body h2,.viggo-pages .vp-art-body h3{font-family:var(--serif);font-weight:600;letter-spacing:-.01em;
  line-height:1.15;margin:2rem 0 .9rem;color:var(--ink);}
.viggo-pages .vp-art-body p:first-of-type::first-letter{font-family:var(--serif);float:left;font-size:4.4rem;line-height:.72;
  font-weight:600;color:var(--cobalt);padding:.4rem .55rem 0 0;}
.viggo-pages .vp-art-body img{border-radius:4px;margin:1.6rem 0;}
.viggo-pages .vp-art-body a{color:var(--cobalt);border-bottom:1px solid rgba(27,52,212,.35);}
/* "Verschenen in" media logos (one per publication; logo links out with a ↗ when a link is set) */
.viggo-pages .vp-pubs{display:flex;flex-direction:column;align-items:flex-start;gap:.7rem;}
.viggo-pages .vp-pubs:empty{display:none;}
.viggo-pages .vp-pub{position:relative;display:inline-flex;align-items:center;gap:.45rem;
  padding:.05rem 0;line-height:0;}
.viggo-pages .vp-pub-logo{height:2.1rem;width:auto;max-width:160px;object-fit:contain;object-position:left center;
  display:block;}
.viggo-pages .vp-pub-name{font-family:var(--serif);font-size:1.05rem;line-height:1.2;color:var(--ink);}
.viggo-pages .vp-pub-ext{display:inline-flex;align-items:center;justify-content:center;color:var(--cobalt);
  line-height:0;transform:translateY(-.45em);transition:transform var(--t-move) var(--ease-hover);}
.viggo-pages .vp-ext-ico{width:.82rem;height:.82rem;display:block;}
.viggo-pages a.vp-pub--link{cursor:pointer;transition:opacity var(--t-color) var(--ease-hover),transform var(--t-move) var(--ease-hover);}
.viggo-pages a.vp-pub--link .vp-pub-logo,.viggo-pages a.vp-pub--link .vp-pub-name{transition:opacity var(--t-color) var(--ease-hover);}
.viggo-pages a.vp-pub--link:hover{transform:translateX(2px);}
.viggo-pages a.vp-pub--link:hover .vp-pub-ext{transform:translate(1px,-.55em);}
.viggo-pages a.vp-pub--link:hover .vp-pub-logo,.viggo-pages a.vp-pub--link:hover .vp-pub-name{opacity:.72;}

/* ═══════════════ DETAIL — column (cobalt hero band + typographic body) ═══════════════ */
.viggo-pages .vp-col-article{padding:0;padding-top:var(--navigatie-bar-hoogte,100px);background:var(--cream-light);}
.viggo-pages .vp-col-article .vp-wrap{max-width:920px;}
.viggo-pages .vp-cart-hero{position:relative;overflow:hidden;background:var(--cobalt);color:var(--cream-light);
  padding:clamp(3rem,6vw,5.5rem) 0;}
.viggo-pages .vp-cart-hero::before{content:'\201C';position:absolute;top:-2.5rem;left:.2rem;font-family:var(--serif);
  font-size:clamp(12rem,24vw,24rem);line-height:1;color:rgba(243,234,214,.08);pointer-events:none;}
.viggo-pages .vp-cart-hero .vp-wrap{position:relative;}
.viggo-pages .vp-cart-hero .vp-lbl{color:rgba(243,234,214,.65);}
.viggo-pages .vp-cart-title{font-family:var(--serif);font-style:italic;font-size:clamp(2.6rem,7vw,5.4rem);font-weight:600;
  line-height:.95;letter-spacing:-.02em;color:var(--cream-light);margin:.5rem 0 .7rem;max-width:16ch;}
.viggo-pages .vp-cart-dek{color:rgba(243,234,214,.85);max-width:50ch;font-size:clamp(1rem,1.5vw,1.25rem);}
.viggo-pages .vp-cart-hero .vp-byline{padding-top:1.2rem;margin-top:1.2rem;border-top:1px solid rgba(243,234,214,.25);
  font-size:.76rem;letter-spacing:.1em;text-transform:uppercase;color:rgba(243,234,214,.6);}
.viggo-pages .vp-cart-hero .vp-extern{border-color:rgba(243,234,214,.5);color:var(--cream-light);}
.viggo-pages .vp-cart-hero .vp-extern:hover{background:rgba(243,234,214,.12);border-color:var(--cream-light);color:var(--cream-light);}
/* after-hero: full-width wrap with the same slim sticky rail (date + media logos + back) as nieuws */
.viggo-pages .vp-col-article .vp-cart-after{max-width:1180px;padding-top:clamp(2.4rem,4vw,3.4rem);padding-bottom:clamp(3rem,6vw,5rem);}
.viggo-pages .vp-cart-bodywrap{min-width:0;}
.viggo-pages .vp-cart-body{max-width:68ch;margin:0;}
.viggo-pages .vp-cart-body p{margin-bottom:1.3rem;font-size:1.1rem;line-height:1.82;color:#241d2c;}
.viggo-pages .vp-cart-body p:first-of-type::first-letter{font-family:var(--serif);float:left;font-size:4.4rem;line-height:.72;
  font-weight:600;color:var(--cobalt);padding:.4rem .55rem 0 0;}
.viggo-pages .vp-cart-body blockquote,.viggo-pages .vp-cart-body .pull{font-family:var(--serif);font-style:italic;
  font-size:clamp(1.5rem,3vw,2.2rem);line-height:1.2;color:var(--cobalt);border-left:3px solid var(--cobalt);
  padding-left:1.4rem;margin:2rem 0;max-width:24ch;}
.viggo-pages .vp-cart-body h2,.viggo-pages .vp-cart-body h3{font-family:var(--serif);font-weight:600;line-height:1.15;margin:2rem 0 .9rem;}
.viggo-pages .vp-cart-body a{color:var(--cobalt);border-bottom:1px solid rgba(27,52,212,.35);}
.viggo-pages .vp-sig{display:inline-block;font-family:'Water Brush',cursive;font-size:2.8rem;color:var(--cobalt);
  transform:rotate(-4deg);transform-origin:left center;margin-top:1.6rem;}

/* ═══════════════ CONTACT page (portrait + CV download + form) ═══════════════ */
.viggo-pages .vp-contact-head{max-width:62ch;margin-bottom:clamp(2.4rem,5vw,4rem);}
.viggo-pages .vp-contact-title{font-family:var(--serif);font-size:clamp(2.4rem,5.5vw,4.6rem);font-weight:600;
  line-height:1;letter-spacing:-.03em;color:var(--ink);margin:.4rem 0 1rem;}
.viggo-pages .vp-contact-intro{font-size:clamp(1rem,1.3vw,1.18rem);line-height:1.65;color:var(--ink-muted);max-width:48ch;}
.viggo-pages .vp-contact-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:clamp(2rem,5vw,4.5rem);align-items:start;}
.viggo-pages .vp-contact-aside{display:flex;flex-direction:column;gap:1.5rem;}
/* portrait with a subtle cobalt frame (echoes the homepage over-photo treatment) */
.viggo-pages .vp-portrait{position:relative;border-radius:4px;overflow:hidden;aspect-ratio:4/5;box-shadow:var(--card-shadow);}
.viggo-pages .vp-portrait::before{content:'';position:absolute;inset:0;border:1px solid var(--rule);border-radius:4px;z-index:2;pointer-events:none;}
.viggo-pages .vp-portrait img{width:100%;height:100%;object-fit:cover;}
.viggo-pages .vp-portrait:empty,.viggo-pages .vp-portrait:not(:has(img)){display:none;}
/* CV download button — hidden when no CV is uploaded (ContainerLink renders no href) */
.viggo-pages .vp-cv-btn{display:inline-flex;align-items:center;justify-content:center;gap:.6rem;align-self:flex-start;
  padding:.85rem 1.5rem;border-radius:3px;background:var(--cobalt);color:var(--cream-light);
  font-size:.76rem;font-weight:700;letter-spacing:.09em;text-transform:uppercase;
  transition:background var(--t-color) var(--ease-hover),transform var(--t-move) var(--ease-hover),box-shadow var(--t-color) var(--ease-hover);}
.viggo-pages .vp-cv-btn:hover{background:var(--cobalt-deep);transform:translateY(var(--lift));box-shadow:var(--card-shadow);}
.viggo-pages .vp-cv-btn:not([href]),.viggo-pages .vp-cv-btn[href=""],.viggo-pages .vp-cv-btn[href="#"]{display:none;}
.viggo-pages .vp-cv-ico{display:inline-flex;line-height:0;}
.viggo-pages .vp-dl-ico{width:.95rem;height:.95rem;display:block;}
.viggo-pages .vp-contact-formcol{min-width:0;}
@media (max-width:820px){
  .viggo-pages .vp-contact-grid{grid-template-columns:1fr;}
  .viggo-pages .vp-portrait{max-width:320px;}
}

/* ─── pagination (native Breakdance numbered + prev/next) ─── */
.viggo-pages .bde-posts-pagination{display:flex;flex-flow:row wrap;align-items:center;justify-content:center;gap:.7rem;
  margin-top:clamp(2.6rem,5vw,4.2rem);padding-top:clamp(1.6rem,3vw,2.4rem);border-top:1px solid var(--rule);}
.viggo-pages .bde-posts-navigation-numbers-prev-next{flex-direction:row;} /* plugin stacks these in a column */
.viggo-pages .bde-posts-pagination ul{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;list-style:none;margin:0;padding:0;}
.viggo-pages .bde-posts-pagination li{list-style:none;margin:0;}
.viggo-pages .bde-posts-pagination ul a{display:inline-flex;align-items:center;justify-content:center;
  min-width:2.5rem;height:2.5rem;padding:0 .8rem;border-radius:3px;font-family:var(--sans);font-size:.92rem;
  font-weight:600;line-height:1;color:var(--ink);border:1px solid var(--rule);
  transition:background var(--t-color) var(--ease-hover),color var(--t-color) var(--ease-hover),border-color var(--t-color) var(--ease-hover),transform var(--t-move) var(--ease-hover);}
.viggo-pages .bde-posts-pagination ul a:hover{border-color:var(--cobalt);color:var(--cobalt);transform:translateY(-2px);}
.viggo-pages .bde-posts-pagination li.bde-posts-navigation-numbers--active a,
.viggo-pages .bde-posts-pagination ul a.is-active{background:var(--cobalt);border-color:var(--cobalt);color:var(--cream-light);}
.viggo-pages .bde-posts-pagination li.bde-posts-navigation-numbers--active a:hover,
.viggo-pages .bde-posts-pagination ul a.is-active:hover{background:var(--cobalt-deep);border-color:var(--cobalt-deep);color:var(--cream-light);transform:none;}
.viggo-pages .bde-posts-navigation-numbers--ellipses{display:inline-flex;align-items:center;min-width:1.4rem;justify-content:center;color:var(--ink-muted);}
/* prev / next text links flanking the numbers */
.viggo-pages .bde-posts-prev-next-link:empty{display:none;}
.viggo-pages .bde-posts-prev-next-link a{display:inline-flex;align-items:center;height:2.5rem;padding:0 .6rem;
  font-size:.68rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--cobalt);
  transition:color var(--t-color) var(--ease-hover),transform var(--t-move) var(--ease-hover);}
.viggo-pages .bde-posts-prev-next-link a:hover{color:var(--cobalt-deep);transform:translateX(2px);}

/* ─── scroll reveal (viggo-n2.js adds .in as each element enters the viewport) ─── */
.viggo-pages .vp-reveal,.viggo-pages .ee-post{opacity:0;transform:translateY(26px);
  transition:opacity .7s var(--ease-hover),transform .8s var(--ease-hover);will-change:opacity,transform;}
.viggo-pages .vp-reveal.in,.viggo-pages .ee-post.in{opacity:1;transform:none;}
/* builder / no-JS: html.viggo-js is set on the frontend only (in <head>); without it — i.e. in the
   Oxygen builder canvas or with JS disabled — show everything so the page is editable/readable. */
html:not(.viggo-js) .viggo-pages .vp-reveal,
html:not(.viggo-js) .viggo-pages .ee-post{opacity:1 !important;transform:none !important;}

/* ─── responsive ─── */
@media (max-width:900px){.viggo-pages .vp-grid .bde-loop{grid-template-columns:repeat(2,1fr);}}
@media (max-width:820px){
  .viggo-pages .vp-art-hero{grid-template-columns:1fr;gap:clamp(1.4rem,4vw,2rem);}
  .viggo-pages .vp-art-media{aspect-ratio:16/10;order:-1;}
  .viggo-pages .vp-art-main{grid-template-columns:1fr;gap:1.6rem;}
  /* aside becomes a clean byline bar above the body: blocks aligned at the top (not baseline,
     which made the logos float), with the publication logos laid out in a row */
  .viggo-pages .vp-art-aside{position:static;display:flex;flex-wrap:wrap;gap:1.3rem 2.6rem;align-items:flex-start;
    padding-bottom:1.4rem;border-bottom:1px solid var(--rule);}
  .viggo-pages .vp-blk{margin-bottom:0;}
  .viggo-pages .vp-art-aside .vp-pubs{flex-direction:row;flex-wrap:wrap;align-items:center;gap:.6rem 1.2rem;}
  .viggo-pages .vp-art-aside .vp-aside-back{margin-top:0;align-self:center;}
}
@media (max-width:680px){
  .viggo-pages .vp-grid .bde-loop{grid-template-columns:1fr;}
  .viggo-pages .vp-grid .ee-post:first-child .vp-card{grid-template-columns:1fr;}
  .viggo-pages .vp-collist .ee-post:not(:first-child) .vp-col{grid-template-columns:auto 1fr;}
  .viggo-pages .vp-collist .ee-post:not(:first-child) .vp-read{display:none;}
}
@media (prefers-reduced-motion:reduce){.viggo-pages *{transition-duration:.001ms !important;}
  .viggo-pages .vp-reveal,.viggo-pages .ee-post{opacity:1 !important;transform:none !important;}}
