html, body { overflow-x:hidden; }
html { background:#0a0a0a; }
body {
  color:var(--z-text-1);
  background:transparent;
}


body::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  background:
    var(--z-surface-0) var(--z-rotating-bg, url("../img/background-skull-square-center.webp")) center center / cover no-repeat;
  transition: opacity .8s ease, filter .8s ease, background-image .8s ease;
  opacity:.78;
  pointer-events:none;
  filter:grayscale(1) contrast(1.02) brightness(.92);
}

body::after{
  content:"";
  position:fixed;
  inset:0;
  z-index:1;
  background:
    linear-gradient(180deg, rgba(10,10,10,.18) 0%, rgba(12,12,12,.10) 18%, rgba(10,10,10,.24) 100%),
    radial-gradient(circle at center, rgba(255,255,255,.03), rgba(0,0,0,.08) 62%, rgba(0,0,0,.16) 100%);
  pointer-events:none;
}

.wp-site-blocks{
  position:relative;
  z-index:2;
  min-height:100vh;
  padding:
    calc(16px + env(safe-area-inset-top))
    max(18px, calc(18px + env(safe-area-inset-right)))
    calc(18px + env(safe-area-inset-bottom))
    max(18px, calc(18px + env(safe-area-inset-left)));
  box-sizing:border-box;
}

.wp-site-blocks > header,
.wp-site-blocks > main,
.wp-site-blocks > footer,
.wp-site-blocks > .wp-block-template-part,
.wp-site-blocks > .wp-block-group{
  width:min(100%, 92rem);
  margin-inline:auto;
}

header.wp-block-template-part{
  position:sticky;
  top:calc(6px + env(safe-area-inset-top));
  z-index:20;
  backdrop-filter:blur(18px);
  background:rgba(10,10,10,.32);
  border:1px solid rgba(255,255,255,.08);
  border-radius:22px;
  box-shadow:0 12px 30px rgba(0,0,0,.28);
}

.z1n3-header-row{
  min-height:0;
  padding:2px 4px;
}

.z1n3-home-shell{
  padding-top:10px;
}

.z1n3-site-brand{
  display:flex;
  align-items:center;
  gap:8px;
  text-decoration:none;
}
.z1n3-site-brand img{
  width:84px;
  height:84px;
  object-fit:contain;
  filter:brightness(0) invert(1) drop-shadow(0 8px 18px rgba(0,0,0,.35));
}
.z1n3-site-brand__text{
  font-size:1.28rem;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.z1n3-menu-toggle{
  position:fixed;
  right:max(18px, calc(18px + env(safe-area-inset-right)));
  bottom:max(18px, calc(18px + env(safe-area-inset-bottom)));
  z-index:55;
  width:max(56px, var(--z-hit));
  height:max(56px, var(--z-hit));
  border-radius:999px;
  border:1px solid var(--z-border);
  background:linear-gradient(180deg,#262626,#121212);
  color:var(--z-text-1);
  box-shadow:var(--z-shadow);
}
.z1n3-overlay-menu{
  width:min(calc(100vw - 36px - env(safe-area-inset-left) - env(safe-area-inset-right)), 42rem);
  border:1px solid var(--z-border);
  border-radius:24px;
  padding:0;
  background:rgba(13,13,13,.97);
  color:var(--z-text-1);
}
.z1n3-overlay-menu::backdrop{ background:rgba(0,0,0,.68); backdrop-filter:blur(8px); }
.z1n3-overlay-menu__inner{ padding:20px; }
.z1n3-overlay-menu__header{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin-bottom:20px;
}
.z1n3-menu-close{
  width:max(48px, var(--z-hit));
  height:max(48px, var(--z-hit));
  border-radius:999px;
  border:1px solid var(--z-border);
  background:#181818;
  color:var(--z-text-1);
  font-size:1.8rem;
}
.z1n3-overlay-menu__content h2{ margin:0 0 16px; font-size:1.1rem; letter-spacing:.04em; text-transform:uppercase; }
.z1n3-overlay-menu__footer{ margin-top:18px; color:var(--z-text-3); font-size:.9rem; }

.z1n3-search-form{ display:flex; gap:10px; margin-top:16px; }
.z1n3-search-field{
  width:100%;
  min-height:48px;
  border-radius:14px;
  border:1px solid var(--z-border);
  background:var(--z-surface-2);
  color:var(--z-text-1);
  padding:0 14px;
}
.z1n3-search-form button{
  min-width:96px;
  min-height:48px;
  border-radius:14px;
  border:1px solid var(--z-border);
  background:var(--z-surface-3);
  color:var(--z-text-1);
}

.z1n3-category-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:14px;
}
@media (min-width: 44rem){
  .z1n3-category-grid{ grid-template-columns:1fr 1fr; }
}
.z1n3-category-card{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-height:132px;
  padding:18px;
  border-radius:18px;
  border:1px solid var(--z-border);
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), transparent 45%),
    linear-gradient(180deg, var(--z-surface-2), #101010);
  box-shadow:var(--z-shadow);
  text-decoration:none;
}
.z1n3-category-card__meta{
  font-family:ui-monospace, SFMono-Regular, Menlo, Consolas, monospace;
  font-size:.76rem;
  color:var(--z-text-2);
  letter-spacing:.08em;
  text-transform:uppercase;
}
.z1n3-category-card__title{
  font-size:1.12rem;
  line-height:1.15;
}
.z1n3-category-card__count{
  color:var(--z-text-2);
  font-size:.94rem;
}

.z1n3-post-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:16px;
}
@media (min-width: 36rem){
  .z1n3-post-grid{ grid-template-columns:repeat(2,minmax(0,1fr)); }
}
@media (min-width: 64rem){
  .z1n3-post-grid{ grid-template-columns:repeat(3,minmax(0,1fr)); }
}
.z1n3-post-tile{
  overflow:hidden;
  border:1px solid var(--z-border);
  border-radius:18px;
  background:var(--z-surface-2);
  box-shadow:var(--z-shadow);
}
.z1n3-post-tile__image{ display:block; aspect-ratio:3/4; background:#090a0c; }
.z1n3-post-tile__image img{ width:100%; height:100%; object-fit:cover; display:block; }
.z1n3-post-tile__body{ padding:14px 14px 16px; }
.z1n3-post-tile__date{ display:block; color:var(--z-text-3); font-size:.84rem; margin-bottom:8px; }

.z1n3-reader{
  max-width:min(100%, 72rem);
  margin-inline:auto;
  padding-inline:clamp(.15rem, 1vw, .5rem);
}
.z1n3-reader .wp-block-post-featured-image{
  margin:0 0 1.25rem;
}
.z1n3-reader .wp-block-post-featured-image img{
  width:100%;
  height:auto;
  border-radius:22px;
  display:block;
  box-shadow:var(--z-shadow);
}
.z1n3-reader .wp-block-post-content > p > img,
.z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img,
.z1n3-reader .wp-block-post-content > img{
  width:100%;
  height:auto;
  border-radius:18px;
  display:block;
  margin-block:12px 18px;
  scroll-snap-align:start;
}
.z1n3-reader .wp-block-gallery{
  display:flex;
  flex-wrap:nowrap !important;
  gap:14px;
  overflow-x:auto;
  overflow-y:hidden;
  padding:6px 2px 12px;
  margin:0 0 12px;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:thin;
}
.z1n3-reader .wp-block-gallery::-webkit-scrollbar{
  height:8px;
}
.z1n3-reader .wp-block-gallery::-webkit-scrollbar-thumb{
  background:#4a4a4a;
  border-radius:999px;
}
.z1n3-reader .wp-block-gallery .blocks-gallery-grid{
  display:flex;
  flex-wrap:nowrap !important;
  gap:14px;
}
.z1n3-reader .wp-block-gallery .wp-block-image,
.z1n3-reader .wp-block-gallery .blocks-gallery-item,
.z1n3-reader .wp-block-gallery .blocks-gallery-grid .blocks-gallery-item{
  flex:0 0 clamp(11rem, 46vw, 18rem);
  width:clamp(11rem, 46vw, 18rem);
  margin:0 !important;
  scroll-snap-align:start;
}
.z1n3-reader .wp-block-gallery .wp-block-image img,
.z1n3-reader .wp-block-gallery .blocks-gallery-item img{
  width:100%;
  aspect-ratio:4 / 5;
  object-fit:cover;
  border-radius:18px;
  display:block;
  background:#0c0c0c;
  box-shadow:var(--z-shadow);
  cursor:zoom-in;
}
.z1n3-lightbox-toggle{
  display:block;
  background:none;
  border:0;
  padding:0;
  width:100%;
  cursor:zoom-in;
}
.z1n3-lightbox{
  width:min(calc(100vw - 24px), 96rem);
  max-width:96rem;
  border:1px solid var(--z-border);
  background:rgba(8,8,8,.96);
  border-radius:22px;
  padding:0;
  color:var(--z-text-1);
}
.z1n3-lightbox::backdrop{
  background:rgba(0,0,0,.86);
  backdrop-filter:blur(6px);
}
.z1n3-lightbox__inner{
  display:grid;
  gap:12px;
  padding:14px;
}
.z1n3-lightbox__frame{
  display:flex;
  justify-content:center;
  align-items:center;
  min-height:min(72svh, 72dvh);
  background:#050505;
  border-radius:18px;
  overflow:hidden;
}
.z1n3-lightbox__frame img{
  width:auto;
  max-width:100%;
  max-height:min(72svh, 72dvh);
  height:auto;
  display:block;
}
.z1n3-lightbox__meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  color:var(--z-text-2);
  font-size:.92rem;
}
.z1n3-lightbox__controls{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
}
.z1n3-lightbox__nav,
.z1n3-lightbox__close{
  min-width:var(--z-hit);
  min-height:var(--z-hit);
  border-radius:999px;
  border:1px solid var(--z-border);
  background:#141414;
  color:var(--z-text-1);
}
.z1n3-lightbox__index{
  font-size:.86rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  color:var(--z-text-3);
}

.z1n3-reader-nav{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin:24px 0 12px;
}
@media (min-width: 48rem){
  .z1n3-reader-nav{
    grid-template-columns:160px 1fr 1fr;
    align-items:center;
  }
}
.z1n3-reader-nav__label{
  color:var(--z-text-3);
  font-size:.85rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.z1n3-reader-nav__button{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  text-align:center;
  padding:12px 14px;
  border:1px solid var(--z-border);
  border-radius:14px;
  background:var(--z-surface-2);
  color:var(--z-text-1);
  text-decoration:none;
}
.z1n3-reader-nav__button.is-disabled{
  opacity:.55;
}
.z1n3-read-more{
  display:inline-flex;
  gap:6px;
  align-items:center;
}
.z1n3-read-more img{ border-radius:99px; }

.wp-block-query-pagination a,
.wp-block-query-pagination span,
.wp-block-post-navigation-link a{
  min-height:var(--z-hit);
  display:inline-flex;
  align-items:center;
  justify-content:center;
}

footer.wp-block-template-part{
  border:1px solid var(--z-border);
  border-radius:24px;
  background:rgba(13,13,13,.82);
  box-shadow:var(--z-shadow);
}
.z1n3-footer{
  color:var(--z-text-3);
  font-size:1.02rem;
}

.z1n3-site-brand .custom-logo,
.z1n3-site-brand img,
.wp-block-site-logo img{
  filter:brightness(0) invert(1) drop-shadow(0 8px 18px rgba(0,0,0,.45));
}
.wp-block-site-logo{
  margin-right:10px;
}

@media (max-width: 782px){
  .wp-site-blocks{
    padding-left:max(16px, calc(16px + env(safe-area-inset-left)));
    padding-right:max(16px, calc(16px + env(safe-area-inset-right)));
  }
  .z1n3-site-brand__text{
    font-size:.82rem;
    letter-spacing:.1em;
  }
}


.z1n3-footer{
  padding:24px 26px;
}
.z1n3-footer-intro{
  display:grid;
  gap:10px;
  padding:0 0 18px;
}
.z1n3-footer-intro__eyebrow{
  margin:0;
  color:var(--wp--preset--color--accent);
  font-family:var(--wp--preset--font-family--ui-mono);
  font-size:.8rem;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.z1n3-footer-intro__title{
  margin:0;
  font-size:clamp(2rem, 4vw, 3rem);
  line-height:1;
}
.z1n3-footer-intro__text{
  margin:0;
  color:var(--z-text-2);
  max-width:52rem;
}
.z1n3-footer-meta{
  display:grid;
  grid-template-columns:auto 1fr;
  gap:20px 30px;
  align-items:start;
}
.z1n3-footer-meta__mark img{
  width:148px;
  height:148px;
  object-fit:contain;
  filter:drop-shadow(0 8px 18px rgba(0,0,0,.4));
}
.z1n3-footer-meta__group{
  display:grid;
  gap:8px;
}
.z1n3-footer-meta__label{
  display:block;
  color:var(--z-text-3);
  font-size:.92rem;
  font-weight:800;
  letter-spacing:.14em;
  text-transform:uppercase;
}
.z1n3-footer-meta__links,
.z1n3-footer-meta__text{
  display:flex;
  flex-wrap:wrap;
  gap:10px 14px;
}
.z1n3-footer-meta__links a,
.z1n3-footer-meta__text span{
  color:var(--z-text-1);
  text-decoration:none;
  font-size:1.08rem;
  font-weight:700;
  line-height:1.4;
}
.z1n3-footer-meta__links a:hover{
  color:var(--z-text-1);
}
@media (max-width: 700px){
  .z1n3-footer-meta{
    grid-template-columns:1fr;
  }
  .z1n3-footer-meta__mark{
    display:flex;
    justify-content:center;
  }
}


.z1n3-site-brand{
  display:flex;
  align-items:center;
  gap:16px;
  text-decoration:none;
  background:none;
  border:0;
  padding:0;
  cursor:pointer;
  color:var(--z-text-1);
}
.z1n3-site-brand:focus-visible,
.z1n3-site-brand:hover{
  opacity:1;
}
.z1n3-site-brand img{
  width:176px;
  height:176px;
  object-fit:contain;
  filter:none;
}
.z1n3-site-brand__stack{
  display:grid;
  gap:4px;
  text-align:left;
}
.z1n3-site-brand__text{
  font-size:1.28rem;
  font-weight:900;
  letter-spacing:.15em;
  text-transform:uppercase;
}
.z1n3-site-brand__hint{
  color:var(--z-text-3);
  font-size:.88rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.z1n3-header-actions{
  display:flex;
  align-items:center;
  gap:4px;
}
.z1n3-header-home{
  min-height:36px;
  padding:0 8px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:999px;
  border:1px solid var(--z-border);
  text-decoration:none;
  color:var(--z-text-2);
  background:rgba(255,255,255,.03);
}
.z1n3-header-home:hover,
.z1n3-header-home:focus-visible{
  color:var(--z-text-1);
  background:rgba(255,255,255,.08);
}
.z1n3-menu-toggle{
  background:linear-gradient(180deg,#1b1b1b,#0f0f0f);
}

.z1n3-overlay-menu{
  background:rgba(10,10,10,.94);
}
.z1n3-overlay-menu__header{
  align-items:flex-start;
}
.z1n3-overlay-menu__brand .z1n3-site-brand img{
  width:120px;
  height:120px;
}
.z1n3-overlay-menu__brand .z1n3-site-brand__text{
  font-size:1.34rem;
}
.z1n3-overlay-menu__brand .z1n3-site-brand__hint{
  display:block;
}

.z1n3-category-card{
  position:relative;
  overflow:hidden;
  min-height:156px;
  justify-content:flex-end;
  background:
    linear-gradient(180deg, rgba(0,0,0,.06), rgba(0,0,0,.32) 44%, rgba(0,0,0,.82) 100%),
    linear-gradient(180deg, rgba(255,255,255,.04), transparent 44%),
    linear-gradient(180deg, var(--z-surface-2), #0e0e0e);
  isolation:isolate;
  transition:transform .24s ease, border-color .24s ease, box-shadow .24s ease, background-color .24s ease;
}
.z1n3-category-card::before{
  content:"";
  position:absolute;
  inset:0;
  z-index:-2;
  background-image:var(--z-card-bg);
  background-position:center;
  background-size:cover;
  background-repeat:no-repeat;
  opacity:.38;
  transition:opacity .24s ease, transform .24s ease, filter .24s ease;
  filter:grayscale(1) contrast(1.05);
}
.z1n3-category-card::after{
  content:"";
  position:absolute;
  inset:0;
  z-index:-1;
  background:
    linear-gradient(180deg, rgba(255,255,255,.04) 0%, rgba(255,255,255,0) 28%),
    linear-gradient(180deg, rgba(0,0,0,.12) 0%, rgba(0,0,0,.28) 36%, rgba(0,0,0,.86) 100%);
}
.z1n3-category-card:hover,
.z1n3-category-card:focus-visible,
.z1n3-category-card:active{
  transform:translateY(-2px);
  border-color:rgba(255,255,255,.18);
  box-shadow:0 18px 36px rgba(0,0,0,.38);
}
.z1n3-category-card:hover::before,
.z1n3-category-card:focus-visible::before,
.z1n3-category-card:active::before{
  opacity:.56;
  transform:scale(1.03);
  filter:grayscale(.75) contrast(1.08) brightness(1.08);
}
.z1n3-category-card__meta,
.z1n3-category-card__title,
.z1n3-category-card__count{
  position:relative;
  z-index:1;
}
.z1n3-category-card__meta{
  color:#d4d4d4;
}
.z1n3-category-card__title{
  font-size:1.2rem;
}
.z1n3-category-card__count{
  color:#e3e3e3;
}

footer.wp-block-template-part{
  background:rgba(10,10,10,.6);
}

@media (hover:none){
  .z1n3-category-card::before{
    opacity:.44;
  }
  .z1n3-category-card:active::before{
    opacity:.62;
  }
}

@media (max-width: 782px){
  .z1n3-header-row{
    min-height:0;
    padding:1px 3px;
  }
  .z1n3-site-brand img{
    width:116px;
    height:116px;
  }
  .z1n3-site-brand__text{
    font-size:1.1rem;
  }
  .z1n3-site-brand__hint{
    display:block;
    font-size:.78rem;
  }
}



/* Large trademark background + shared translucent panel treatment */
header.wp-block-template-part,
footer.wp-block-template-part,
.z1n3-post-tile,
.z1n3-reader .wp-block-post-featured-image img,
.z1n3-reader .wp-block-post-content > p > img,
.z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img,
.z1n3-reader .wp-block-post-content > img,
.z1n3-reader .wp-block-gallery .wp-block-image img,
.z1n3-reader .wp-block-gallery .blocks-gallery-item img,
.z1n3-reader-nav__button,
.z1n3-category-card,
.z1n3-header-home{
  transition:
    opacity .24s ease,
    background-color .24s ease,
    border-color .24s ease,
    box-shadow .24s ease,
    filter .24s ease,
    transform .24s ease;
}

.z1n3-post-tile,
.z1n3-reader .wp-block-post-featured-image img,
.z1n3-reader .wp-block-post-content > p > img,
.z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img,
.z1n3-reader .wp-block-post-content > img,
.z1n3-reader .wp-block-gallery .wp-block-image img,
.z1n3-reader .wp-block-gallery .blocks-gallery-item img{
  opacity:.62;
  filter:grayscale(1) brightness(.84) contrast(1.02);
  box-shadow:0 14px 28px rgba(0,0,0,.26);
}

.z1n3-post-tile:hover,
.z1n3-post-tile:focus-within,
.z1n3-post-tile:active,
.z1n3-reader .wp-block-post-featured-image img:hover,
.z1n3-reader .wp-block-post-content > p > img:hover,
.z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img:hover,
.z1n3-reader .wp-block-post-content > img:hover,
.z1n3-reader .wp-block-gallery .wp-block-image img:hover,
.z1n3-reader .wp-block-gallery .blocks-gallery-item img:hover{
  opacity:1;
  filter:grayscale(.2) brightness(1) contrast(1.06);
  box-shadow:0 18px 36px rgba(0,0,0,.38);
}

.z1n3-post-tile:hover .z1n3-post-tile__image img,
.z1n3-post-tile:focus-within .z1n3-post-tile__image img,
.z1n3-post-tile:active .z1n3-post-tile__image img{
  opacity:1;
  filter:grayscale(.2) brightness(1) contrast(1.06);
}

.z1n3-post-tile__image img{
  opacity:.62;
  filter:grayscale(1) brightness(.84) contrast(1.02);
  transition:opacity .24s ease, filter .24s ease, transform .24s ease;
}

header.wp-block-template-part{
  background:
    linear-gradient(180deg, rgba(255,255,255,.03), rgba(255,255,255,0) 36%),
    linear-gradient(180deg, rgba(22,22,22,.56), rgba(12,12,12,.5));
}

footer.wp-block-template-part{
  background:
    linear-gradient(180deg, rgba(255,255,255,.02), rgba(255,255,255,0) 38%),
    linear-gradient(180deg, rgba(18,18,18,.46), rgba(10,10,10,.42));
}

.z1n3-reader-nav__button,
.z1n3-header-home{
  background:
    linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,0) 40%),
    linear-gradient(180deg, rgba(34,34,34,.46), rgba(14,14,14,.5));
}

.z1n3-reader-nav__button:hover,
.z1n3-reader-nav__button:focus-visible,
.z1n3-header-home:hover,
.z1n3-header-home:focus-visible{
  background:
    linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.01) 42%),
    linear-gradient(180deg, rgba(42,42,42,.72), rgba(18,18,18,.72));
  border-color:rgba(255,255,255,.18);
}

@media (hover:none){
  .z1n3-post-tile:active,
  .z1n3-reader .wp-block-post-featured-image img:active,
  .z1n3-reader .wp-block-post-content > p > img:active,
  .z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img:active,
  .z1n3-reader .wp-block-post-content > img:active,
  .z1n3-reader .wp-block-gallery .wp-block-image img:active,
  .z1n3-reader .wp-block-gallery .blocks-gallery-item img:active{
    opacity:1;
    filter:grayscale(.2) brightness(1) contrast(1.06);
  }
}



.z1n3-slider{ display:grid; gap:14px; }
.z1n3-slider__head,.z1n3-slider__footer{ display:flex; align-items:center; justify-content:space-between; gap:12px; }
.z1n3-slider__eyebrow{ margin:0; color:var(--z-text-3); text-transform:uppercase; letter-spacing:.12em; font-size:.78rem; }
.z1n3-slider__controls{ display:flex; gap:8px; }
.z1n3-slider__viewport{ overflow-x:auto; overflow-y:hidden; scrollbar-width:none; scroll-behavior:smooth; -webkit-overflow-scrolling:touch; }
.z1n3-slider__viewport::-webkit-scrollbar{ display:none; }
.z1n3-slider__track{ display:flex; gap:14px; }
.z1n3-slider__slide{ flex:0 0 auto; }
.z1n3-slider__button{ width:max(44px,var(--z-hit)); height:max(44px,var(--z-hit)); border-radius:999px; border:1px solid var(--z-border); background:rgba(24,24,24,.92); color:var(--z-text-1); }
.z1n3-slider__button.is-wide{ min-width:72px; }
.z1n3-slider__status{ min-width:4rem; text-align:center; color:var(--z-text-2); font-size:.92rem; }
.z1n3-category-slider .z1n3-slider__track{ padding:2px 0 8px; }
.z1n3-category-slider .z1n3-slider__slide{ width:min(18rem, 74vw); }
@media (min-width: 56rem){ .z1n3-category-slider .z1n3-slider__slide{ width:min(16rem, 28vw); } }

.z1n3-category-grid{ display:block; }

.z1n3-post-grid{ display:block; }
.z1n3-post-slider .z1n3-slider__track{ padding:2px 0 4px; }
.z1n3-post-slider .z1n3-slider__slide{ width:calc(50vw - 22px); min-width:14rem; max-width:18rem; }
@media (min-width: 48rem){ .z1n3-post-slider .z1n3-slider__slide{ width:calc(33.333vw - 24px); min-width:13rem; max-width:17rem; } }
@media (min-width: 78rem){ .z1n3-post-slider .z1n3-slider__slide{ width:calc(25vw - 28px); min-width:12rem; max-width:16rem; } }
.z1n3-post-tile{ min-height:100%; }
.z1n3-post-tile__image{ aspect-ratio:3/3.65; }
.z1n3-post-tile__body{ padding:12px 12px 14px; }
.z1n3-post-tile__body h3{ font-size:1rem; line-height:1.15; margin:0; }

.z1n3-home-section-title{ margin:0; }
.z1n3-footer{ margin-top:22px; }
.z1n3-footer-meta{ display:grid; grid-template-columns:1fr; gap:16px; align-items:start; }
@media (min-width: 64rem){ .z1n3-footer-meta{ grid-template-columns: minmax(7rem, 9rem) repeat(4, minmax(0,1fr)); } }
.z1n3-footer-meta__mark img{ width:76px; height:76px; object-fit:contain; filter:brightness(0) invert(1); }
.z1n3-footer-meta__group{ padding:14px; border:1px solid var(--z-border); border-radius:18px; background:rgba(18,18,18,.72); }
.z1n3-footer-meta__label{ display:block; margin-bottom:10px; color:var(--z-text-2); text-transform:uppercase; letter-spacing:.1em; font-size:.78rem; }
.z1n3-footer-meta__links, .z1n3-footer-meta__text{ display:grid; gap:8px; }


/* final compact pass */
html, body{ min-height:100%; }
body.home .wp-site-blocks{
  display:flex;
  flex-direction:column;
  gap:8px;
  min-height:100svh;
  padding-top:calc(8px + env(safe-area-inset-top));
  padding-bottom:calc(8px + env(safe-area-inset-bottom));
}
body.home .z1n3-home-shell{
  padding-top:2px;
}
header.wp-block-template-part{
  top:calc(2px + env(safe-area-inset-top));
  border-radius:16px;
  backdrop-filter:blur(10px);
  background:rgba(10,10,10,.18);
  box-shadow:0 6px 18px rgba(0,0,0,.18);
}
.z1n3-header-row{
  min-height:0;
  padding:2px 6px;
  justify-content:flex-start !important;
}
.z1n3-site-brand--compact{
  width:48px;
  height:48px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.z1n3-site-brand--compact img,
.z1n3-site-brand img{
  width:42px;
  height:42px;
}
.z1n3-site-brand--compact .z1n3-site-brand__stack,
.z1n3-site-brand--compact .z1n3-site-brand__text,
.z1n3-site-brand--compact .z1n3-site-brand__hint{
  display:none !important;
}
.z1n3-slider{ gap:10px; }
.z1n3-slider__head,.z1n3-slider__footer{ gap:8px; }
.z1n3-slider__eyebrow{ font-size:.68rem; letter-spacing:.16em; }
.z1n3-slider__button{ width:38px; height:38px; }
.z1n3-category-slider .z1n3-slider__track{ padding:0 0 4px; gap:10px; }
.z1n3-category-slider .z1n3-slider__slide{ width:min(13rem, 62vw); }
@media (min-width: 56rem){ .z1n3-category-slider .z1n3-slider__slide{ width:min(12rem, 20vw); } }
.z1n3-category-card{
  min-height:92px;
  padding:12px;
  border-radius:14px;
}
.z1n3-category-card__meta{ font-size:.64rem; }
.z1n3-category-card__title{ font-size:.95rem; }
.z1n3-category-card__count{ font-size:.82rem; }
.z1n3-post-slider .z1n3-slider__track{ gap:10px; padding:0 0 2px; }
.z1n3-post-slider .z1n3-slider__slide{ width:calc(50vw - 20px); min-width:10rem; max-width:12.5rem; }
@media (min-width: 48rem){ .z1n3-post-slider .z1n3-slider__slide{ width:calc(33.333vw - 20px); min-width:9.5rem; max-width:11rem; } }
@media (min-width: 78rem){ .z1n3-post-slider .z1n3-slider__slide{ width:calc(25vw - 18px); min-width:9rem; max-width:10rem; } }
.z1n3-post-tile{
  border-radius:14px;
}
.z1n3-post-tile__image{ aspect-ratio:1 / 1.12; }
.z1n3-post-tile__body{ padding:8px 9px 10px; }
.z1n3-post-tile__date{ font-size:.72rem; margin-bottom:5px; }
.z1n3-post-tile__body h3{ font-size:.82rem; line-height:1.08; }
footer.wp-block-template-part{
  margin-top:auto;
  border-radius:14px;
  background:rgba(10,10,10,.14);
  box-shadow:none;
}
.z1n3-footer{
  padding:6px 10px;
  margin-top:0;
  font-size:.78rem;
}
.z1n3-footer-thin{
  display:flex;
  align-items:center;
  gap:10px;
  min-height:26px;
}
.z1n3-footer-thin__mark{
  width:22px;
  height:22px;
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  justify-content:center;
}
.z1n3-footer-thin__mark img{
  width:18px;
  height:18px;
  object-fit:contain;
  filter:brightness(0) invert(1);
}
.z1n3-footer-thin__line{
  min-width:0;
  display:flex;
  align-items:center;
  gap:10px;
  flex-wrap:wrap;
  color:var(--z-text-3);
  line-height:1.2;
}
.z1n3-footer-thin__line span,
.z1n3-footer-thin__line a{
  font-size:.72rem;
  color:var(--z-text-3);
  text-decoration:none;
  white-space:nowrap;
}
.z1n3-footer-intro,
.z1n3-footer-meta,
.z1n3-home-section-title,
.z1n3-header-home,
.z1n3-header-actions{
  display:none !important;
}
@media (max-width: 782px){
  .z1n3-site-brand--compact,
  .z1n3-site-brand--compact img,
  .z1n3-site-brand img{ width:36px; height:36px; }
  .z1n3-category-slider .z1n3-slider__slide{ width:min(11rem, 60vw); }
  .z1n3-post-slider .z1n3-slider__slide{ width:calc(50vw - 18px); min-width:8.75rem; max-width:10rem; }
  .z1n3-footer-thin__line{ gap:8px; }
  .z1n3-footer-thin__line span:nth-child(n+3),
  .z1n3-footer-thin__line a{ display:none; }
}

.z1n3-comments-shell{
  display:grid;
  gap:18px;
  margin:28px 0 10px;
}
.z1n3-comments-card,
.z1n3-comments-latest{
  border:1px solid var(--z-border);
  border-radius:22px;
  background:rgba(13,13,13,.82);
  box-shadow:var(--z-shadow);
  padding:18px;
  backdrop-filter:blur(16px);
}
.z1n3-comments-card__header,
.z1n3-comments-latest__header{
  display:grid;
  gap:6px;
  margin-bottom:14px;
}
.z1n3-comments__eyebrow{
  margin:0;
  color:var(--z-text-3);
  font-size:.8rem;
  letter-spacing:.12em;
  text-transform:uppercase;
}
.z1n3-comments__title{
  margin:0;
  font-size:clamp(1.35rem, 2.8vw, 2rem);
  line-height:1.05;
}
.z1n3-comments__note,
.z1n3-comments__empty{
  color:var(--z-text-2);
}
.z1n3-comment-list,
.z1n3-comment-list .children,
.z1n3-comments-latest__list{
  list-style:none;
  margin:0;
  padding:0;
}
.z1n3-comment-list{
  display:grid;
  gap:14px;
}
.z1n3-comment-list .children{
  margin-top:12px;
  padding-left:14px;
  border-left:1px solid rgba(255,255,255,.08);
}
.z1n3-comment-card__inner,
.z1n3-comments-latest__link{
  display:block;
  border:1px solid rgba(255,255,255,.08);
  border-radius:18px;
  background:linear-gradient(180deg, rgba(255,255,255,.04), rgba(255,255,255,.015));
  padding:14px;
  text-decoration:none;
  color:var(--z-text-1);
}
.z1n3-comment-card__header{
  display:flex;
  justify-content:space-between;
  gap:12px;
  margin-bottom:10px;
}
.z1n3-comment-card__author{
  margin:0 0 4px;
  font-size:1rem;
}
.z1n3-comment-card__author a,
.z1n3-comment-card__meta a,
.z1n3-comment-card__reply a,
.z1n3-comment-card__edit a,
.z1n3-comments-latest__link{
  color:var(--z-text-1);
}
.z1n3-comment-card__meta{
  margin:0;
  color:var(--z-text-3);
  font-size:.86rem;
}
.z1n3-comment-card__content > :first-child{ margin-top:0; }
.z1n3-comment-card__content > :last-child{ margin-bottom:0; }
.z1n3-comment-card__reply{
  margin-top:12px;
  font-size:.92rem;
}
.z1n3-comments-form-wrap{
  margin-top:18px;
  padding-top:16px;
  border-top:1px solid rgba(255,255,255,.08);
}
.z1n3-comment-form{
  display:grid;
  gap:12px;
}
.z1n3-comment-form label{
  display:block;
  margin-bottom:6px;
  color:var(--z-text-2);
  font-size:.9rem;
}
.z1n3-comment-form input,
.z1n3-comment-form textarea{
  width:100%;
  border-radius:14px;
  border:1px solid var(--z-border);
  background:rgba(255,255,255,.03);
  color:var(--z-text-1);
  padding:12px 14px;
  box-sizing:border-box;
}
.z1n3-comment-form textarea{
  min-height:150px;
  resize:vertical;
}
.z1n3-comment-submit,
#cancel-comment-reply-link,
.wp-block-comments-pagination a,
.wp-block-comments-pagination span,
.comment-navigation .nav-links a,
.comment-navigation .nav-links span{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:46px;
  padding:10px 14px;
  border-radius:14px;
  border:1px solid var(--z-border);
  background:var(--z-surface-2);
  color:var(--z-text-1);
  text-decoration:none;
}
.z1n3-comments-latest__list{
  display:grid;
  gap:12px;
}
.z1n3-comments-latest__author,
.z1n3-comments-latest__post,
.z1n3-comments-latest__excerpt{
  display:block;
}
.z1n3-comments-latest__author{
  font-weight:800;
  margin-bottom:4px;
}
.z1n3-comments-latest__post{
  color:var(--z-text-3);
  font-size:.84rem;
  text-transform:uppercase;
  letter-spacing:.08em;
  margin-bottom:8px;
}
.z1n3-comments-latest__excerpt{
  color:var(--z-text-2);
}
@media (min-width: 64rem){
  .z1n3-comments-shell{
    grid-template-columns:minmax(0, 1.8fr) minmax(18rem, .9fr);
    align-items:start;
  }
}

/* ======================================================================
   Z1N3 viewport-responsive comic slider repair — 2026-05-07
   Goal: keep the current black/glass look, but stop the portrait iPad/iOS
   layout from leaving a dead sea of empty space under the article row.
   The article/comic cards now scale from the real viewport instead of being
   capped at tiny fixed max-widths.
   ====================================================================== */

:root{
  --z1n3-home-gap:clamp(10px, 1.2vmin, 18px);
  --z1n3-card-radius:clamp(15px, 1.6vmin, 22px);
}

html{
  min-height:100%;
  min-height:100dvh;
}

body.home .wp-site-blocks{
  min-height:100vh;
  min-height:100dvh;
  gap:var(--z1n3-home-gap);
}

body.home .z1n3-home-shell{
  flex:1 1 auto;
  width:min(100%, 96rem);
  max-width:none;
  display:grid;
  grid-template-rows:auto minmax(0, 1fr);
  align-content:start;
  gap:var(--z1n3-home-gap);
  padding-top:0;
}

body.home .z1n3-slider{
  min-width:0;
}

body.home .z1n3-slider__viewport{
  overscroll-behavior-x:contain;
  scroll-snap-type:x proximity;
}

body.home .z1n3-slider__slide{
  scroll-snap-align:start;
}

/* Categories stay compact, but no longer steal vertical space on portrait. */
body.home .z1n3-category-slider{
  gap:clamp(7px, .9vmin, 12px);
}
body.home .z1n3-category-slider .z1n3-slider__track{
  gap:clamp(10px, 1.2vw, 16px);
}
body.home .z1n3-category-card{
  min-height:clamp(92px, 10svh, 136px);
  border-radius:var(--z1n3-card-radius);
}

/* The important repair: remove the tiny 10–12.5rem ceiling. */
body.home .z1n3-post-slider{
  align-self:stretch;
  display:grid;
  grid-template-rows:minmax(0, 1fr) auto;
  gap:clamp(10px, 1.2vmin, 16px);
  min-height:0;
}
body.home .z1n3-post-slider .z1n3-slider__track{
  gap:clamp(12px, 1.4vw, 22px);
  align-items:stretch;
}
body.home .z1n3-post-slider .z1n3-slider__slide{
  width:clamp(15rem, 26vw, 24rem);
  min-width:0;
  max-width:none;
  display:flex;
}
body.home .z1n3-post-tile{
  width:100%;
  display:flex;
  flex-direction:column;
  border-radius:var(--z1n3-card-radius);
  overflow:hidden;
}
body.home .z1n3-post-tile__image{
  aspect-ratio:1 / 1.22;
  flex:0 0 auto;
}
body.home .z1n3-post-tile__body{
  flex:1 1 auto;
  display:flex;
  flex-direction:column;
  justify-content:flex-end;
  min-height:clamp(86px, 9svh, 136px);
  padding:clamp(12px, 1.4vmin, 18px);
}
body.home .z1n3-post-tile__date{
  font-size:clamp(.82rem, 1.25vmin, 1rem);
  margin-bottom:clamp(7px, .8vmin, 12px);
}
body.home .z1n3-post-tile__body h3{
  font-size:clamp(1rem, 1.55vmin, 1.32rem);
  line-height:1.12;
}
body.home .z1n3-slider__footer{
  padding-top:2px;
}
body.home .z1n3-slider__button.is-wide{
  min-width:clamp(70px, 9vw, 116px);
}

/* iPhone / narrow portrait: one large readable comic card, not two postage stamps. */
@media (max-width: 599px){
  body.home .wp-site-blocks{
    padding-left:max(12px, calc(12px + env(safe-area-inset-left)));
    padding-right:max(12px, calc(12px + env(safe-area-inset-right)));
  }
  body.home .z1n3-category-slider .z1n3-slider__slide{
    width:min(78vw, 18rem);
  }
  body.home .z1n3-post-slider .z1n3-slider__slide{
    width:min(86vw, 26rem);
  }
  body.home .z1n3-post-tile__image{
    aspect-ratio:1 / 1.18;
  }
}

/* iPad portrait / tablet portrait: bigger article view using the available height. */
@media (min-width: 600px) and (orientation: portrait){
  body.home .wp-site-blocks{
    padding-left:max(22px, calc(22px + env(safe-area-inset-left)));
    padding-right:max(22px, calc(22px + env(safe-area-inset-right)));
  }
  body.home .z1n3-category-slider .z1n3-slider__slide{
    width:clamp(15rem, 30vw, 22rem);
  }
  body.home .z1n3-post-slider .z1n3-slider__slide{
    width:clamp(18rem, 31.5vw, 27rem);
  }
  body.home .z1n3-post-tile__image{
    aspect-ratio:1 / 1.34;
  }
  body.home .z1n3-post-tile__body{
    min-height:clamp(108px, 10svh, 160px);
  }
}

/* iPad/laptop landscape: keep the strong multi-card strip, just let cards breathe. */
@media (min-width: 900px) and (orientation: landscape){
  body.home .z1n3-category-slider .z1n3-slider__slide{
    width:clamp(14rem, 18vw, 20rem);
  }
  body.home .z1n3-post-slider .z1n3-slider__slide{
    width:clamp(13.5rem, 15.6vw, 20rem);
  }
  body.home .z1n3-post-tile__image{
    aspect-ratio:1 / 1.05;
  }
}

/* Desktop / widescreen: cards scale with the viewport instead of staying phone-sized. */
@media (min-width: 1280px){
  body.home .wp-site-blocks > header,
  body.home .wp-site-blocks > main,
  body.home .wp-site-blocks > footer,
  body.home .wp-site-blocks > .wp-block-template-part,
  body.home .wp-site-blocks > .wp-block-group{
    width:min(100%, 98rem);
  }
  body.home .z1n3-post-slider .z1n3-slider__slide{
    width:clamp(15rem, 16vw, 22rem);
  }
}

/* Very short landscape browser chrome: reduce chrome, not the content. */
@media (orientation: landscape) and (max-height: 760px){
  body.home .wp-site-blocks{
    padding-top:calc(6px + env(safe-area-inset-top));
    padding-bottom:calc(6px + env(safe-area-inset-bottom));
  }
  body.home .z1n3-category-card{
    min-height:clamp(78px, 12svh, 104px);
  }
  body.home .z1n3-post-tile__body{
    min-height:clamp(72px, 10svh, 112px);
  }
}

/* Keep non-home archive grids readable too. */
body:not(.home) .z1n3-post-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit, minmax(min(100%, 18rem), 1fr));
  gap:clamp(16px, 2vw, 28px);
}
body:not(.home) .z1n3-post-tile__body h3{
  font-size:clamp(1.05rem, 1.4vw, 1.32rem);
}

/* Ink-monkey typography modernization: three Google Font voices.
   1) Anton: loud poster headlines
   2) Space Grotesk: clean interface/body copy
   3) Bricolage Grotesque: expressive editorial labels/cards */
:root{
  --z-font-body:'Space Grotesk', -apple-system, BlinkMacSystemFont, 'Segoe UI', system-ui, sans-serif;
  --z-font-display:'Anton', Impact, Haettenschweiler, 'Arial Narrow Bold', sans-serif;
  --z-font-editorial:'Bricolage Grotesque', 'Space Grotesk', system-ui, sans-serif;
  --z-type-tight:-0.015em;
  --z-type-wide:.08em;
}
body,
button,
input,
textarea,
select{
  font-family:var(--z-font-body);
  font-optical-sizing:auto;
}
h1,h2,h3,
.wp-block-post-title,
.z1n3-footer-intro__title,
.z1n3-overlay-menu__content h2,
.z1n3-site-brand__text{
  font-family:var(--z-font-display);
  font-weight:400;
  letter-spacing:.018em;
  text-transform:uppercase;
}
h4,h5,h6,
.z1n3-slider__eyebrow,
.z1n3-footer-intro__eyebrow,
.z1n3-comments__eyebrow,
.z1n3-category-card,
.z1n3-read-more,
.z1n3-search-form,
.wp-block-navigation,
.wp-block-button__link{
  font-family:var(--z-font-editorial);
  font-weight:700;
}
p,li,.wp-block-post-excerpt,.z1n3-footer-intro__text{
  letter-spacing:var(--z-type-tight);
}
.z1n3-site-brand img,
.z1n3-footer-meta__mark img,
.z1n3-read-more img{
  mix-blend-mode:screen;
}
body::before{
  background:var(--z-surface-0) var(--z-rotating-bg, url("../img/background-skull-square-center.webp")) center center / cover no-repeat;
  opacity:.82;
  filter:grayscale(1) contrast(1.12) brightness(.86);
}
body::after{
  background:
    radial-gradient(circle at center, rgba(0,0,0,.02), rgba(0,0,0,.14) 58%, rgba(0,0,0,.28) 100%),
    linear-gradient(180deg, rgba(5,5,5,.14) 0%, rgba(5,5,5,.10) 32%, rgba(5,5,5,.34) 100%);
}
@media (max-width: 782px){
  h1,.wp-block-post-title{ letter-spacing:.01em; }
}

/* Studio-level lightbox refinement: automated comic gallery with close, play/pause, and paired navigation. */
.z1n3-lightbox{
  width:min(calc(100vw - 18px), 92rem);
  max-height:calc(100dvh - 18px);
  border-color:rgba(255,255,255,.18);
  background:rgba(3,3,3,.98);
  box-shadow:0 24px 80px rgba(0,0,0,.74);
}
.z1n3-lightbox__inner{
  min-height:min(88dvh, 62rem);
  padding:clamp(10px, 1.5vw, 18px);
  gap:10px;
}
.z1n3-lightbox__topbar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-height:var(--z-hit);
}
.z1n3-lightbox__actions{
  display:flex;
  align-items:center;
  gap:8px;
}
.z1n3-lightbox__frame{
  position:relative;
  min-height:min(72dvh, 48rem);
  border:1px solid rgba(255,255,255,.1);
  background:#000;
}
.z1n3-lightbox__frame img{
  max-height:min(72dvh, 48rem);
  object-fit:contain;
}
.z1n3-lightbox__nav{
  position:absolute;
  top:50%;
  z-index:3;
  transform:translateY(-50%);
  width:clamp(48px, 6vw, 68px);
  height:clamp(48px, 6vw, 68px);
  font-size:clamp(1.2rem, 3vw, 2rem);
  background:rgba(0,0,0,.78);
  border-color:rgba(255,255,255,.28);
  box-shadow:0 10px 30px rgba(0,0,0,.45);
}
.z1n3-lightbox__nav.is-prev{ left:clamp(8px, 1.4vw, 18px); }
.z1n3-lightbox__nav.is-next{ right:clamp(8px, 1.4vw, 18px); }
.z1n3-lightbox__nav:hover,
.z1n3-lightbox__nav:focus-visible,
.z1n3-lightbox__close:hover,
.z1n3-lightbox__close:focus-visible,
.z1n3-lightbox__play:hover,
.z1n3-lightbox__play:focus-visible{
  background:#fff;
  color:#000;
  border-color:#fff;
}
.z1n3-lightbox__nav:disabled{
  opacity:.35;
  pointer-events:none;
}
.z1n3-lightbox__close,
.z1n3-lightbox__play{
  min-width:var(--z-hit);
  min-height:var(--z-hit);
  border-radius:999px;
  border:1px solid rgba(255,255,255,.22);
  background:#111;
  color:#fff;
  font-family:var(--wp--preset--font-family--bricolage-grotesque, inherit);
  font-weight:800;
  letter-spacing:.06em;
  text-transform:uppercase;
}
.z1n3-lightbox__play{
  padding-inline:14px;
  font-size:.78rem;
}
.z1n3-lightbox__close{
  font-size:1.45rem;
  line-height:1;
}
.z1n3-lightbox__index{
  display:inline-flex;
  align-items:center;
  min-height:var(--z-hit);
  padding:0 14px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(255,255,255,.04);
  color:#fff;
  font-family:var(--wp--preset--font-family--bricolage-grotesque, inherit);
  font-weight:800;
}
.z1n3-lightbox__meta{
  display:grid;
  grid-template-columns:1fr auto;
  align-items:center;
  gap:10px;
  min-height:var(--z-hit);
  color:#f1f1f1;
}
.z1n3-lightbox__hint{
  color:#aaa;
  font-size:.78rem;
  letter-spacing:.08em;
  text-transform:uppercase;
  white-space:nowrap;
}
.z1n3-lightbox__progress{
  height:3px;
  overflow:hidden;
  border-radius:999px;
  background:rgba(255,255,255,.12);
}
.z1n3-lightbox__progress span{
  display:block;
  width:0;
  height:100%;
  background:#fff;
}
@keyframes z1n3LightboxProgress{
  from{ width:0; }
  to{ width:100%; }
}

/* Minor reader navigation polish: keep prev/next together and visually balanced. */
.z1n3-reader-nav{
  position:relative;
  padding:12px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:20px;
  background:rgba(0,0,0,.42);
}
.z1n3-reader-nav__button{
  border-radius:999px;
  font-family:var(--wp--preset--font-family--bricolage-grotesque, inherit);
  font-weight:800;
  letter-spacing:.01em;
}
.z1n3-reader-nav__button:not(.is-disabled):hover,
.z1n3-reader-nav__button:not(.is-disabled):focus-visible{
  background:#fff;
  color:#000;
  border-color:#fff;
}
@media (max-width: 48rem){
  .z1n3-lightbox__inner{ min-height:calc(100dvh - 18px); }
  .z1n3-lightbox__topbar{ align-items:flex-start; }
  .z1n3-lightbox__play{ padding-inline:10px; }
  .z1n3-lightbox__frame{ min-height:64dvh; }
  .z1n3-lightbox__frame img{ max-height:64dvh; }
  .z1n3-lightbox__meta{ grid-template-columns:1fr; }
  .z1n3-lightbox__hint{ white-space:normal; }
  .z1n3-reader-nav{ grid-template-columns:1fr 1fr; }
  .z1n3-reader-nav__label{ grid-column:1 / -1; text-align:center; }
}
@media (prefers-reduced-motion: reduce){
  .z1n3-lightbox__progress span{ animation:none !important; }
}

/* v2.3: logo fold-out WordPress menu + clearer header identity */
.z1n3-header-row{
  position:relative;
  display:flex;
  align-items:center;
  justify-content:flex-start !important;
  gap:12px;
}
.z1n3-site-brand--compact{
  width:auto;
  height:auto;
  min-height:52px;
  padding:4px 10px 4px 5px;
  border-radius:999px;
  border:1px solid rgba(255,255,255,.10);
  background:rgba(0,0,0,.30);
  box-shadow:0 10px 24px rgba(0,0,0,.18);
}
.z1n3-site-brand--compact img{
  width:48px !important;
  height:48px !important;
  flex:0 0 auto;
}
.z1n3-site-brand--compact .z1n3-site-brand__stack,
.z1n3-site-brand--compact .z1n3-site-brand__text,
.z1n3-site-brand--compact .z1n3-site-brand__hint{
  display:grid !important;
}
.z1n3-site-brand--compact .z1n3-site-brand__stack{
  gap:0;
  min-width:0;
}
.z1n3-site-brand--compact .z1n3-site-brand__text{
  display:block !important;
  font-size:clamp(1rem, 2vw, 1.24rem);
  line-height:1;
  letter-spacing:.045em;
  white-space:nowrap;
}
.z1n3-site-brand--compact .z1n3-site-brand__hint{
  display:block !important;
  max-width:min(48vw, 34rem);
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
  font-size:.72rem;
  line-height:1.25;
  letter-spacing:.08em;
  color:rgba(255,255,255,.66);
}
.z1n3-site-brand__menu-word{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:30px;
  padding:0 10px;
  border-left:1px solid rgba(255,255,255,.12);
  color:rgba(255,255,255,.72);
  font-family:var(--z-font-editorial);
  font-size:.72rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.z1n3-site-brand--compact:hover,
.z1n3-site-brand--compact:focus-visible,
.z1n3-site-brand--compact[aria-expanded="true"]{
  background:rgba(255,255,255,.08);
  border-color:rgba(255,255,255,.22);
  transform:translateY(-1px);
}
.z1n3-foldout-menu[hidden]{ display:none !important; }
.z1n3-foldout-menu{
  position:fixed;
  z-index:80;
  top:calc(74px + env(safe-area-inset-top));
  left:max(16px, calc(16px + env(safe-area-inset-left)));
  width:min(calc(100vw - 32px - env(safe-area-inset-left) - env(safe-area-inset-right)), 34rem);
  color:var(--z-text-1);
}
.z1n3-foldout-menu::before{
  content:"";
  position:fixed;
  inset:0;
  z-index:-1;
  background:rgba(0,0,0,.36);
  backdrop-filter:blur(3px);
}
.z1n3-foldout-menu__inner{
  padding:14px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:22px;
  background:rgba(6,6,6,.96);
  box-shadow:0 22px 60px rgba(0,0,0,.52);
  transform-origin:top left;
  animation:z1n3FoldoutIn .16s ease-out both;
}
@keyframes z1n3FoldoutIn{
  from{ opacity:0; transform:translateY(-8px) scale(.985); }
  to{ opacity:1; transform:translateY(0) scale(1); }
}
.z1n3-foldout-menu__header{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
  padding-bottom:12px;
  margin-bottom:12px;
  border-bottom:1px solid rgba(255,255,255,.10);
}
.z1n3-foldout-menu__eyebrow{
  margin:0 0 4px;
  color:rgba(255,255,255,.58);
  font-family:var(--z-font-editorial);
  font-size:.68rem;
  font-weight:800;
  letter-spacing:.16em;
  text-transform:uppercase;
}
.z1n3-foldout-menu h2{
  margin:0;
  font-family:var(--z-font-display);
  font-size:clamp(1.8rem, 6vw, 3.2rem);
  line-height:.92;
  text-transform:uppercase;
}
.z1n3-foldout-menu__header p:not(.z1n3-foldout-menu__eyebrow){
  margin:6px 0 0;
  color:rgba(255,255,255,.70);
  font-size:.92rem;
}
.z1n3-wp-menu__list,
.z1n3-wp-menu__list ul{
  list-style:none;
  margin:0;
  padding:0;
}
.z1n3-wp-menu__list{
  display:grid;
  grid-template-columns:repeat(2, minmax(0, 1fr));
  gap:8px;
}
.z1n3-wp-menu__list li{
  margin:0;
}
.z1n3-wp-menu__list a{
  min-height:48px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:11px 12px;
  border:1px solid rgba(255,255,255,.10);
  border-radius:14px;
  background:rgba(255,255,255,.045);
  color:var(--z-text-1);
  text-decoration:none;
  font-family:var(--z-font-editorial);
  font-weight:800;
  line-height:1.1;
}
.z1n3-wp-menu__list a::after{
  content:"→";
  margin-left:10px;
  opacity:.55;
}
.z1n3-wp-menu__list a:hover,
.z1n3-wp-menu__list a:focus-visible,
.z1n3-wp-menu__list .current-menu-item > a,
.z1n3-wp-menu__list .current_page_item > a{
  background:#fff;
  color:#000;
  border-color:#fff;
}
.z1n3-wp-menu__list ul{
  grid-column:1 / -1;
  display:grid;
  gap:6px;
  margin:7px 0 2px 10px;
}
.z1n3-wp-menu__list ul a{
  min-height:40px;
  background:rgba(255,255,255,.025);
  color:rgba(255,255,255,.82);
  font-size:.9rem;
}
.z1n3-foldout-menu__search .z1n3-search-form{
  margin-top:12px;
}
.z1n3-menu-toggle{ display:none !important; }
.z1n3-overlay-menu{ display:none !important; }
@media (max-width: 640px){
  .z1n3-site-brand--compact{
    width:100%;
    justify-content:flex-start;
    border-radius:18px;
  }
  .z1n3-site-brand__menu-word{
    margin-left:auto;
    padding-inline:8px;
  }
  .z1n3-foldout-menu{
    top:calc(82px + env(safe-area-inset-top));
  }
  .z1n3-wp-menu__list{
    grid-template-columns:1fr;
  }
}
@media (max-width: 420px){
  .z1n3-site-brand--compact .z1n3-site-brand__hint{ display:none !important; }
  .z1n3-site-brand--compact .z1n3-site-brand__text{ font-size:.94rem; }
  .z1n3-site-brand__menu-word{ font-size:.66rem; letter-spacing:.11em; }
}


/* v2.4: transparent header/menu polish + touch glow refinement */
header.wp-block-template-part{
  border-color:transparent !important;
  background:rgba(6,6,6,.08) !important;
  box-shadow:none !important;
  backdrop-filter:blur(8px) !important;
}
.z1n3-header-row{
  padding:0 4px !important;
}
.z1n3-site-brand--compact{
  min-height:auto !important;
  padding:0 !important;
  gap:10px !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.z1n3-site-brand--compact .z1n3-site-brand__stack{
  gap:2px !important;
}
.z1n3-site-brand--compact .z1n3-site-brand__hint{
  color:rgba(255,255,255,.60) !important;
}
.z1n3-site-brand__menu-word{
  min-height:auto !important;
  padding:0 !important;
  margin-left:8px !important;
  border-left:0 !important;
  color:rgba(255,255,255,.76) !important;
}
.z1n3-site-brand--compact:hover,
.z1n3-site-brand--compact:focus-visible,
.z1n3-site-brand--compact[aria-expanded="true"],
.z1n3-site-brand--compact.is-pressed{
  background:transparent !important;
  border-color:transparent !important;
  transform:none !important;
  box-shadow:none !important;
}
.z1n3-site-brand--compact:hover img,
.z1n3-site-brand--compact:focus-visible img,
.z1n3-site-brand--compact[aria-expanded="true"] img,
.z1n3-site-brand--compact.is-pressed img{
  filter:brightness(0) invert(1) drop-shadow(0 0 14px rgba(255,255,255,.18));
}
.z1n3-site-brand--compact:hover .z1n3-site-brand__text,
.z1n3-site-brand--compact:focus-visible .z1n3-site-brand__text,
.z1n3-site-brand--compact[aria-expanded="true"] .z1n3-site-brand__text,
.z1n3-site-brand--compact.is-pressed .z1n3-site-brand__text,
.z1n3-site-brand--compact:hover .z1n3-site-brand__menu-word,
.z1n3-site-brand--compact:focus-visible .z1n3-site-brand__menu-word,
.z1n3-site-brand--compact[aria-expanded="true"] .z1n3-site-brand__menu-word,
.z1n3-site-brand--compact.is-pressed .z1n3-site-brand__menu-word{
  color:#fff !important;
}

.z1n3-post-tile,
.z1n3-reader .wp-block-post-featured-image img,
.z1n3-reader .wp-block-post-content > p > img,
.z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img,
.z1n3-reader .wp-block-post-content > img,
.z1n3-reader .wp-block-gallery .wp-block-image img,
.z1n3-reader .wp-block-gallery .blocks-gallery-item img{
  opacity:.54 !important;
  filter:grayscale(1) brightness(.80) contrast(1.04) !important;
  box-shadow:0 12px 24px rgba(0,0,0,.22) !important;
}
.z1n3-post-tile:hover,
.z1n3-post-tile:focus-within,
.z1n3-post-tile:active,
.z1n3-post-tile.is-pressed,
.z1n3-reader .wp-block-post-featured-image img:hover,
.z1n3-reader .wp-block-post-content > p > img:hover,
.z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img:hover,
.z1n3-reader .wp-block-post-content > img:hover,
.z1n3-reader .wp-block-gallery .wp-block-image img:hover,
.z1n3-reader .wp-block-gallery .blocks-gallery-item img:hover,
.z1n3-reader .wp-block-post-featured-image img.is-pressed,
.z1n3-reader .wp-block-post-content > p > img.is-pressed,
.z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img.is-pressed,
.z1n3-reader .wp-block-post-content > img.is-pressed,
.z1n3-reader .wp-block-gallery .wp-block-image img.is-pressed,
.z1n3-reader .wp-block-gallery .blocks-gallery-item img.is-pressed{
  opacity:.96 !important;
  filter:grayscale(1) brightness(1.02) contrast(1.10) !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.08), 0 0 20px rgba(255,255,255,.08), 0 18px 36px rgba(0,0,0,.32) !important;
}
.z1n3-post-tile:hover .z1n3-post-tile__image img,
.z1n3-post-tile:focus-within .z1n3-post-tile__image img,
.z1n3-post-tile:active .z1n3-post-tile__image img,
.z1n3-post-tile.is-pressed .z1n3-post-tile__image img{
  opacity:.96 !important;
  filter:grayscale(1) brightness(1.02) contrast(1.10) !important;
}
.z1n3-post-tile__image img{
  opacity:.54 !important;
  filter:grayscale(1) brightness(.80) contrast(1.04) !important;
}
.z1n3-category-card,
.z1n3-slider__button,
.z1n3-reader-nav__button,
.z1n3-header-home{
  transition:opacity .22s ease, color .22s ease, background-color .22s ease, border-color .22s ease, box-shadow .22s ease, transform .22s ease, filter .22s ease;
}
.z1n3-category-card.is-pressed,
.z1n3-category-card:hover,
.z1n3-category-card:focus-visible,
.z1n3-category-card:active{
  border-color:rgba(255,255,255,.22) !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.05), 0 0 18px rgba(255,255,255,.07), 0 18px 36px rgba(0,0,0,.34) !important;
}
.z1n3-category-card.is-pressed::before,
.z1n3-category-card:hover::before,
.z1n3-category-card:focus-visible::before,
.z1n3-category-card:active::before{
  opacity:.60 !important;
  transform:scale(1.03) !important;
  filter:grayscale(1) contrast(1.08) brightness(1.08) !important;
}
.z1n3-slider__button:hover,
.z1n3-slider__button:focus-visible,
.z1n3-slider__button.is-pressed,
.z1n3-reader-nav__button:hover,
.z1n3-reader-nav__button:focus-visible,
.z1n3-reader-nav__button.is-pressed,
.z1n3-header-home:hover,
.z1n3-header-home:focus-visible,
.z1n3-header-home.is-pressed{
  border-color:rgba(255,255,255,.24) !important;
  color:#fff !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.05), 0 0 14px rgba(255,255,255,.08), 0 12px 24px rgba(0,0,0,.26) !important;
}
@media (hover:none){
  .z1n3-post-tile,
  .z1n3-reader .wp-block-post-featured-image img,
  .z1n3-reader .wp-block-post-content > p > img,
  .z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img,
  .z1n3-reader .wp-block-post-content > img,
  .z1n3-reader .wp-block-gallery .wp-block-image img,
  .z1n3-reader .wp-block-gallery .blocks-gallery-item img{
    opacity:.50 !important;
  }
}

/* ======================================================================
   v2.5 — iOS-first navigation + supplied monkey-logo bullets
   ====================================================================== */
:root{
  --z1n3-monkey-bullet:url("../img/logo-monkey-bullet.webp");
}
.z1n3-slider__footer--center{
  display:grid !important;
  grid-template-columns:auto minmax(0, 1fr) auto;
  align-items:center !important;
  justify-items:center !important;
  gap:clamp(8px, 1.2vw, 14px) !important;
  width:100%;
  padding-top:clamp(8px, 1.2vmin, 14px) !important;
}
.z1n3-slider__pager{
  min-width:0;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:5px;
}
.z1n3-slider__dots{
  display:flex;
  align-items:center;
  justify-content:center;
  flex-wrap:wrap;
  gap:clamp(4px, .7vw, 8px);
  max-width:min(68vw, 34rem);
}
.z1n3-slider__dot{
  width:clamp(16px, 2.8vw, 24px);
  height:clamp(16px, 2.8vw, 24px);
  padding:0;
  border:0;
  border-radius:999px;
  background:transparent var(--z1n3-monkey-bullet) center / contain no-repeat;
  opacity:.42;
  filter:drop-shadow(0 1px 0 rgba(255,255,255,.2));
  transform:scale(.82);
}
.z1n3-slider__dot.is-active,
.z1n3-slider__dot:hover,
.z1n3-slider__dot:focus-visible{
  opacity:1;
  transform:scale(1.08) rotate(-4deg);
  outline:0;
}
.z1n3-slider__status{
  font-family:var(--z-font-editorial);
  font-weight:900;
  font-size:clamp(.78rem, 1.6vw, .95rem);
  letter-spacing:.08em;
  text-align:center;
}
.z1n3-read-more-articles,
.z1n3-post-tile__readmore{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:8px;
  min-height:42px;
  padding:9px 13px;
  border:1px solid rgba(255,255,255,.16);
  border-radius:999px;
  background:rgba(0,0,0,.62);
  color:#fff !important;
  font-family:var(--z-font-editorial);
  font-weight:900;
  text-transform:uppercase;
  text-decoration:none !important;
  letter-spacing:.08em;
  line-height:1;
}
.z1n3-post-tile__readmore::before,
.z1n3-read-more-articles::before{
  content:"";
  width:18px;
  height:18px;
  flex:0 0 auto;
  background:var(--z1n3-monkey-bullet) center / contain no-repeat;
}
.z1n3-post-tile__readmore{ margin-top:10px; align-self:flex-start; font-size:.72rem; }
.z1n3-read-more-articles{
  grid-column:1 / -1;
  margin-top:2px;
  font-size:clamp(.78rem, 1.5vw, .95rem);
}
.z1n3-post-tile__readmore:hover,
.z1n3-post-tile__readmore:focus-visible,
.z1n3-read-more-articles:hover,
.z1n3-read-more-articles:focus-visible{
  background:#fff;
  color:#000 !important;
}
.z1n3-post-tile__readmore:hover::before,
.z1n3-post-tile__readmore:focus-visible::before,
.z1n3-read-more-articles:hover::before,
.z1n3-read-more-articles:focus-visible::before{
  filter:brightness(0);
}

/* Category/archive page: full-screen-ish, viewport-adapted article slider. */
.z1n3-archive-shell{
  width:min(100%, 98rem) !important;
  max-width:none !important;
  padding-top:0 !important;
}
.z1n3-archive-stage{
  min-height:calc(100dvh - 150px);
  display:grid;
  grid-template-rows:auto minmax(0, 1fr);
  gap:clamp(10px, 1.4vmin, 18px);
}
.z1n3-archive-stage__header{
  text-align:center;
  display:grid;
  gap:6px;
  justify-items:center;
}
.z1n3-archive-stage__header h1{
  margin:0;
  font-size:clamp(2.2rem, 8vw, 6rem);
  line-height:.9;
}
.z1n3-archive-stage__description{
  max-width:60rem;
  color:rgba(255,255,255,.72);
  font-size:clamp(.95rem, 1.8vw, 1.12rem);
}
.z1n3-archive-slider{
  min-height:0;
  display:grid;
  grid-template-rows:minmax(0, 1fr) auto;
  gap:clamp(10px, 1.2vmin, 16px);
}
.z1n3-archive-slider .z1n3-slider__viewport{
  min-height:0;
  scroll-snap-type:x mandatory;
}
.z1n3-archive-slider .z1n3-slider__track{
  align-items:stretch;
  gap:clamp(14px, 2vw, 28px);
  padding-bottom:4px;
}
.z1n3-archive-card{
  width:min(88vw, 42rem) !important;
  min-width:min(88vw, 42rem) !important;
  max-width:none !important;
  min-height:min(68dvh, 48rem);
  display:grid;
  grid-template-rows:minmax(0, 1.15fr) auto;
  overflow:hidden;
  border-radius:clamp(18px, 2vw, 30px);
  border:1px solid rgba(255,255,255,.14);
  background:rgba(8,8,8,.88);
  box-shadow:0 24px 70px rgba(0,0,0,.54);
  scroll-snap-align:center;
}
.z1n3-archive-card__image{
  min-height:0;
  display:block;
  background:#000;
}
.z1n3-archive-card__image img{
  width:100%;
  height:100%;
  object-fit:cover;
  filter:grayscale(1) contrast(1.06) brightness(.9);
}
.z1n3-archive-card__body{
  display:grid;
  align-content:end;
  gap:clamp(8px, 1vmin, 12px);
  padding:clamp(14px, 2vw, 24px);
}
.z1n3-archive-card__body h2{
  margin:0;
  font-size:clamp(1.55rem, 4.6vw, 3.3rem);
  line-height:.94;
}
.z1n3-archive-card__body h2 a{ color:#fff; text-decoration:none; }
.z1n3-archive-card__excerpt{
  color:rgba(255,255,255,.74);
  font-size:clamp(.95rem, 1.8vw, 1.1rem);
  line-height:1.35;
}
.z1n3-archive-card__excerpt p{ margin:0; }
@media (orientation:portrait){
  .z1n3-archive-stage{ min-height:calc(100dvh - 120px); }
  .z1n3-archive-card{
    width:min(90vw, 36rem) !important;
    min-width:min(90vw, 36rem) !important;
    min-height:calc(100dvh - 260px);
  }
  .z1n3-archive-card__image img{ object-position:center top; }
}
@media (orientation:landscape) and (max-height:760px){
  .z1n3-archive-stage__header h1{ font-size:clamp(1.8rem, 5vw, 3.2rem); }
  .z1n3-archive-card{
    width:min(76vw, 36rem) !important;
    min-width:min(76vw, 36rem) !important;
    min-height:calc(100dvh - 170px);
    grid-template-columns:minmax(0, 1.1fr) minmax(18rem, .9fr);
    grid-template-rows:1fr;
  }
}

/* Popup menu: big responsive text in a viewport-fitted scroll menu. */
.z1n3-foldout-menu{
  top:calc(64px + env(safe-area-inset-top)) !important;
  left:50% !important;
  right:auto !important;
  width:min(calc(100vw - 24px - env(safe-area-inset-left) - env(safe-area-inset-right)), 58rem) !important;
  max-height:calc(100dvh - 82px - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
  transform:translateX(-50%);
}
.z1n3-foldout-menu__inner{
  max-height:inherit;
  display:grid;
  grid-template-rows:auto minmax(0, 1fr) auto;
  gap:clamp(10px, 1.2vmin, 16px);
  overflow:hidden;
  padding:clamp(12px, 2vw, 22px) !important;
}
.z1n3-foldout-menu__header{ margin:0 !important; padding-bottom:8px !important; }
.z1n3-wp-menu{
  min-height:0;
  overflow:auto;
  -webkit-overflow-scrolling:touch;
  padding-right:3px;
}
.z1n3-wp-menu__list{
  grid-template-columns:1fr !important;
  gap:clamp(8px, 1vmin, 12px) !important;
}
.z1n3-wp-menu__list a{
  min-height:clamp(56px, 10svh, 88px) !important;
  padding:clamp(13px, 2vw, 22px) !important;
  border-radius:clamp(16px, 2vw, 24px) !important;
  font-size:clamp(1.25rem, 5.2vw, 2.9rem) !important;
  line-height:.96 !important;
}
.z1n3-foldout-menu__search{ margin-top:0 !important; }
.z1n3-foldout-menu__search .z1n3-search-form{
  margin-top:0 !important;
}
@media (max-width:640px){
  .z1n3-foldout-menu{
    top:calc(56px + env(safe-area-inset-top)) !important;
    max-height:calc(100dvh - 70px - env(safe-area-inset-top) - env(safe-area-inset-bottom)) !important;
  }
  .z1n3-foldout-menu h2{ font-size:clamp(1.5rem, 8vw, 2.4rem); }
  .z1n3-foldout-menu__header p:not(.z1n3-foldout-menu__eyebrow){ display:none; }
}

/* Lightbox reading-speed controls. */
.z1n3-lightbox__actions{
  flex-wrap:wrap;
  justify-content:flex-end;
}
.z1n3-lightbox__speed{
  display:flex;
  flex-wrap:wrap;
  justify-content:flex-end;
  gap:6px;
}
.z1n3-lightbox__speed button,
[data-lightbox-speed]{
  min-height:40px;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(255,255,255,.06);
  color:#fff;
  font-family:var(--z-font-editorial);
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.06em;
}
.z1n3-lightbox__speed button[aria-pressed="true"]{
  background:#fff;
  color:#000;
}
@media (max-width:640px){
  .z1n3-lightbox__topbar{ align-items:flex-start; }
  .z1n3-lightbox__actions{ max-width:min(72vw, 25rem); }
  .z1n3-lightbox__speed button{ font-size:.68rem; min-height:34px; padding:7px 8px; }
}


/* ==========================================================
   INK MONKEY THEME Z1N3 PRESS v1337-01
   production-ready black/white viewport system
   ========================================================== */
:root{--ink-black:#000;--ink-void:#050505;--ink-white:#fff;--ink-line:rgba(255,255,255,.22);--ink-line-strong:rgba(255,255,255,.42);--ink-muted:rgba(255,255,255,.62);--ink-soft:rgba(255,255,255,.1);--ink-radius:clamp(18px,2.6vw,30px);--ink-display:"Anton","Arial Narrow",Impact,sans-serif;--ink-body:"Bricolage Grotesque","Space Grotesk",system-ui,sans-serif;--ink-tight:.13em;--ink-shadow:0 1.2rem 5rem rgba(0,0,0,.72)}
html{background:#000;color:#fff}body{background:#000!important;color:#fff!important;font-family:var(--ink-body);overscroll-behavior-y:none}body::before{filter:grayscale(1) contrast(1.25) brightness(.46)!important;opacity:.26!important}.wp-site-blocks{min-height:100svh;background:radial-gradient(circle at 50% 0,rgba(255,255,255,.055),transparent 38%),#000}.z1n3-header-row{display:none!important}.z1n3-footer{display:none!important}.z1n3-ink-template-shell{margin:0 auto!important;padding:0 clamp(14px,3vw,32px)!important;max-width:1180px}.z1n3-ink-header-shell{height:clamp(82px,12svh,124px);padding:clamp(12px,2.2vw,26px) clamp(14px,3vw,34px)!important;margin:0 auto!important;display:flex!important;align-items:center;justify-content:space-between;gap:1rem;max-width:1180px}.z1n3-site-brand{display:flex!important;align-items:center!important;gap:clamp(10px,2.3vw,22px)!important;text-decoration:none!important;color:#fff!important;padding:0!important;border:0!important;background:transparent!important;min-width:0}.z1n3-site-brand img{width:clamp(54px,8.5svh,94px)!important;height:clamp(54px,8.5svh,94px)!important;object-fit:contain!important;filter:grayscale(1) contrast(1.35)}.z1n3-site-brand__stack{display:grid!important;grid-template-columns:auto auto;align-items:center;gap:clamp(8px,1.8vw,22px)}.z1n3-site-brand__text{font-family:var(--ink-display)!important;font-size:clamp(2.15rem,7.7vw,5.5rem)!important;line-height:.82!important;letter-spacing:.035em!important;color:#fff!important;text-transform:uppercase;white-space:nowrap;text-shadow:0 0 24px rgba(255,255,255,.14)}.z1n3-site-brand__hint,.z1n3-site-brand__menu-word{display:none!important}.z1n3-site-brand__version{border-left:1px solid var(--ink-line-strong);padding-left:clamp(9px,1.7vw,22px);font-family:var(--ink-display);font-size:clamp(.72rem,2.05vw,1.15rem);letter-spacing:.16em;line-height:1.15;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap}.z1n3-ink-menu-trigger{margin-left:auto;flex:0 0 auto;width:clamp(56px,8.2svh,92px);height:clamp(56px,8.2svh,92px);border:2px solid rgba(255,255,255,.88);border-radius:999px;background:rgba(0,0,0,.54);display:grid;place-content:center;gap:7px;box-shadow:0 0 0 1px rgba(255,255,255,.08),0 0 28px rgba(255,255,255,.08);cursor:pointer}.z1n3-ink-menu-trigger span{display:block;width:clamp(22px,4.4vw,38px);height:2px;background:#fff;border-radius:2px}.z1n3-ink-viewport{min-height:calc(100svh - clamp(82px,12svh,124px) - clamp(78px,10svh,108px));display:flex;flex-direction:column;gap:clamp(8px,1.2svh,16px);overflow:visible}.z1n3-ink-home{justify-content:flex-start}.z1n3-ink-hero{position:relative;height:clamp(245px,39svh,420px);border:1px solid var(--ink-line-strong);border-radius:var(--ink-radius);overflow:hidden;background:#050505;box-shadow:var(--ink-shadow)}.z1n3-ink-hero__link,.z1n3-ink-card__link{position:relative;display:block;width:100%;height:100%;color:#fff!important;text-decoration:none!important;background-image:var(--ink-img);background-size:cover;background-position:center;filter:grayscale(1) contrast(1.18)}.z1n3-ink-hero__shade,.z1n3-ink-card__shade{position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.96) 0%,rgba(0,0,0,.78) 34%,rgba(0,0,0,.34) 70%,rgba(0,0,0,.76) 100%),linear-gradient(0deg,rgba(0,0,0,.92) 0%,transparent 55%,rgba(0,0,0,.35) 100%)}.z1n3-ink-hero__copy{position:absolute;left:clamp(20px,4vw,52px);bottom:clamp(16px,4vw,44px);width:min(62ch,72%);display:flex;flex-direction:column;align-items:flex-start;gap:clamp(6px,1.2svh,14px)}.z1n3-ink-kicker{display:inline-flex;flex-direction:column;gap:.38em;font-family:var(--ink-display);font-size:clamp(.76rem,1.8vw,1.05rem);line-height:1;letter-spacing:.22em;text-transform:uppercase;color:#fff}.z1n3-ink-kicker::after{content:"";width:2.4em;height:2px;background:#fff}.z1n3-ink-hero strong{font-family:var(--ink-display);font-size:clamp(3.2rem,10vw,7.6rem);line-height:.86;letter-spacing:.035em;text-transform:uppercase;color:#fff}.z1n3-ink-hero em{font-style:normal;font-size:clamp(.98rem,2vw,1.35rem);line-height:1.22;max-width:36em;color:#fff}.z1n3-ink-button{display:inline-flex;align-items:center;gap:1.2em;border-radius:12px;background:#fff;color:#000;padding:.82em 1.28em;font-family:var(--ink-display);font-size:clamp(.85rem,1.8vw,1rem);letter-spacing:.16em;text-transform:uppercase;line-height:1}.z1n3-ink-bullets{display:flex;align-items:center;justify-content:center;gap:clamp(9px,1.6vw,16px);min-height:clamp(28px,4svh,42px)}.z1n3-ink-bullet{width:clamp(21px,3.2vw,34px);height:clamp(21px,3.2vw,34px);opacity:.23;filter:grayscale(1)}.z1n3-ink-bullet.is-active{opacity:1}.z1n3-ink-bullet img{width:100%;height:100%;object-fit:contain}.z1n3-ink-section-head{display:flex;align-items:center;justify-content:space-between}.z1n3-ink-section-head h2,.z1n3-ink-page-title span{margin:0;font-family:var(--ink-display);font-size:clamp(1.2rem,3.4vw,2.15rem);letter-spacing:.16em;text-transform:uppercase;color:#fff}.z1n3-ink-card-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(9px,1.8vw,18px)}.z1n3-ink-card{height:clamp(230px,34svh,390px);border:1px solid var(--ink-line-strong);border-radius:clamp(14px,2vw,24px);overflow:hidden;background:#070707;box-shadow:0 10px 40px rgba(0,0,0,.5);scroll-snap-align:center;min-width:0}.z1n3-ink-card.is-compact{height:clamp(205px,29svh,350px)}.z1n3-ink-card__content{position:absolute;inset:auto clamp(14px,2.4vw,26px) clamp(14px,2.4vw,26px);display:flex;flex-direction:column;gap:clamp(5px,.9svh,10px);z-index:2}.z1n3-ink-card__title{font-family:var(--ink-display);font-size:clamp(2.1rem,5.4vw,4.6rem);line-height:.88;letter-spacing:.055em;text-transform:uppercase;color:#fff;text-shadow:0 2px 24px #000}.z1n3-ink-card.is-compact .z1n3-ink-card__title{font-size:clamp(1.85rem,4.2vw,3.4rem)}.z1n3-ink-card__excerpt{font-size:clamp(.9rem,1.7vw,1.08rem);line-height:1.16;color:#fff;max-width:24em}.z1n3-ink-readline,.z1n3-ink-more{font-family:var(--ink-display);letter-spacing:.16em;text-transform:uppercase;color:#fff!important;text-decoration:none!important;font-size:clamp(.8rem,1.8vw,1rem)}.z1n3-ink-under-nav{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:clamp(3px,.7svh,8px);text-align:center}.z1n3-ink-more{display:inline-flex;align-items:center;gap:1.1em;border-bottom:2px solid #fff;padding-bottom:.25em}.z1n3-ink-bottom-nav{height:clamp(66px,9svh,96px);margin:0 auto clamp(10px,1.4svh,20px);border:1px solid var(--ink-line);border-radius:999px;background:rgba(0,0,0,.72);display:grid;grid-template-columns:repeat(5,1fr);align-items:center;box-shadow:0 0 34px rgba(255,255,255,.04);overflow:hidden;backdrop-filter:blur(10px)}.z1n3-ink-bottom-nav a{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;color:rgba(255,255,255,.56)!important;text-decoration:none!important;border-left:1px solid var(--ink-line);font-family:var(--ink-display);font-size:clamp(.64rem,1.5vw,.86rem);letter-spacing:.16em;text-transform:uppercase}.z1n3-ink-bottom-nav a:first-child{border-left:0}.z1n3-ink-bottom-nav img{width:clamp(22px,3vw,32px);height:clamp(22px,3vw,32px);object-fit:contain;opacity:.55}.z1n3-ink-bottom-nav a.is-active{color:#fff!important}.z1n3-ink-bottom-nav a.is-active img{opacity:1}.z1n3-ink-bottom-nav a.is-active span{border-bottom:2px solid #fff}.z1n3-ink-page-title{display:flex;flex-direction:column;gap:clamp(5px,.9svh,10px);padding:0 clamp(8px,2vw,24px)}.z1n3-ink-page-title h1{margin:0;font-family:var(--ink-display);font-size:clamp(4.2rem,14vw,10rem);line-height:.82;letter-spacing:.03em;text-transform:uppercase;color:#fff}.z1n3-ink-page-title p{margin:0;font-size:clamp(1rem,2.1vw,1.25rem);line-height:1.15;color:#fff}.z1n3-ink-feature-slider{min-width:0;display:flex;flex-direction:column;gap:clamp(8px,1.1svh,14px)}.z1n3-ink-feature-slider__viewport{overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:none;margin-inline:calc(clamp(14px,3vw,32px) * -1);padding-inline:clamp(40px,10vw,120px)}.z1n3-ink-feature-slider__viewport::-webkit-scrollbar{display:none}.z1n3-ink-feature-slider__track{display:flex;gap:clamp(16px,3vw,32px)}.z1n3-ink-feature-slider .z1n3-ink-card{flex:0 0 min(80vw,720px);height:clamp(420px,57svh,640px)}.z1n3-ink-page-count{font-family:var(--ink-display);letter-spacing:.14em;color:#fff}.z1n3-ink-single{gap:clamp(8px,1.2svh,14px)}.z1n3-ink-single-card{border:1px solid var(--ink-line);border-radius:var(--ink-radius);padding:clamp(12px,2vw,24px);background:rgba(255,255,255,.025)}.z1n3-ink-single-hero{height:clamp(300px,43svh,520px);border-radius:calc(var(--ink-radius) - 6px);overflow:hidden;position:relative;background-image:var(--ink-img);background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:clamp(18px,3vw,42px);isolation:isolate}.z1n3-ink-single-hero .z1n3-ink-hero__shade{z-index:-1}.z1n3-ink-single h1{margin:.12em 0 0;font-family:var(--ink-display);font-size:clamp(3.1rem,8.6vw,7rem);line-height:.86;letter-spacing:.035em;text-transform:uppercase}.z1n3-ink-meta{margin:.45em 0 0;color:var(--ink-muted);font-family:var(--ink-display);letter-spacing:.12em;text-transform:uppercase;font-size:clamp(.75rem,1.6vw,.98rem)}.z1n3-ink-single-excerpt{font-size:clamp(1rem,2vw,1.3rem);line-height:1.35;max-width:68ch;margin:clamp(12px,2svh,20px) 0;color:#fff}.z1n3-ink-thumb-strip{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;border-top:1px solid var(--ink-line);padding-top:clamp(10px,1.5svh,16px)}.z1n3-ink-thumb-strip img{width:100%;aspect-ratio:1.45/1;object-fit:cover;border:1px solid var(--ink-line);border-radius:10px;filter:grayscale(1) contrast(1.2)}.z1n3-comments{border:1px solid var(--ink-line)!important;border-radius:var(--ink-radius)!important;background:rgba(255,255,255,.03)!important;padding:clamp(12px,2vw,22px)!important;max-height:clamp(160px,24svh,260px);overflow:auto}.z1n3-comments h2,.z1n3-comments__title{font-family:var(--ink-display)!important;letter-spacing:.14em!important;text-transform:uppercase!important}.z1n3-ink-next{min-height:clamp(72px,11svh,120px);border:1px solid var(--ink-line);border-radius:var(--ink-radius);background-image:linear-gradient(90deg,rgba(0,0,0,.96),rgba(0,0,0,.72),rgba(0,0,0,.9)),var(--ink-img);background-size:cover;background-position:center;display:flex;align-items:center;gap:1rem;padding:clamp(14px,2.6vw,26px);color:#fff!important;text-decoration:none!important}.z1n3-ink-next span{font-family:var(--ink-display);letter-spacing:.16em;text-transform:uppercase;color:var(--ink-muted)}.z1n3-ink-next strong{font-family:var(--ink-display);font-size:clamp(1.8rem,4vw,3.4rem);letter-spacing:.06em;text-transform:uppercase;margin-right:auto}.z1n3-ink-next b{font-size:2rem}.z1n3-foldout-menu.z1n3-ink-menu{position:fixed!important;inset:0!important;z-index:9999;background:rgba(0,0,0,.86);backdrop-filter:blur(18px);padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));overflow:hidden}.z1n3-ink-menu__inner{height:100%;max-width:1120px;margin:0 auto;border:1px solid var(--ink-line);border-radius:clamp(24px,4vw,40px);padding:clamp(14px,2.6vw,32px);display:flex;flex-direction:column;gap:clamp(10px,1.6svh,18px);background:#030303;box-shadow:var(--ink-shadow)}.z1n3-ink-menu__header{display:flex;align-items:center;justify-content:space-between;gap:1rem}.z1n3-ink-menu__header a{display:flex;align-items:center;gap:clamp(10px,2vw,20px);color:#fff!important;text-decoration:none!important;min-width:0}.z1n3-ink-menu__header img{width:clamp(58px,9svh,98px);height:clamp(58px,9svh,98px);object-fit:contain}.z1n3-ink-menu__header strong{font-family:var(--ink-display);font-size:clamp(2.4rem,8vw,5.4rem);line-height:.85;letter-spacing:.04em;white-space:nowrap}.z1n3-ink-menu__header span{border-left:1px solid var(--ink-line-strong);padding-left:clamp(10px,2vw,20px);font-family:var(--ink-display);letter-spacing:.16em;line-height:1.15;text-transform:uppercase;color:var(--ink-muted)}.z1n3-menu-close{width:clamp(54px,8svh,84px)!important;height:clamp(54px,8svh,84px)!important;border:2px solid #fff!important;border-radius:999px!important;background:#070707!important;color:#fff!important;font-size:clamp(2rem,5vw,3.4rem)!important;line-height:1!important;display:grid!important;place-content:center!important;flex:0 0 auto}.z1n3-ink-menu__tiles{display:grid;grid-template-rows:repeat(5,1fr);gap:clamp(8px,1.2svh,13px);min-height:0;flex:1}.z1n3-ink-menu-tile{position:relative;overflow:hidden;border:1px solid var(--ink-line);border-radius:clamp(16px,2.3vw,26px);background-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.9) 38%,rgba(0,0,0,.35) 100%),var(--ink-img);background-size:cover;background-position:center;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:clamp(14px,2vw,28px);padding:clamp(10px,1.7svh,22px) clamp(14px,3vw,32px);color:#fff!important;text-decoration:none!important;filter:grayscale(1) contrast(1.15)}.z1n3-ink-menu-tile>img{width:clamp(28px,4.5svh,52px);height:clamp(28px,4.5svh,52px);object-fit:contain}.z1n3-ink-menu-tile span{font-family:var(--ink-display);font-size:clamp(2.4rem,7.6vw,5.7rem);line-height:.85;letter-spacing:.04em;text-transform:uppercase}.z1n3-ink-menu-tile b{width:clamp(44px,7svh,72px);height:clamp(44px,7svh,72px);border:2px solid #fff;border-radius:999px;display:grid;place-content:center;font-size:clamp(1.7rem,4vw,3rem);font-weight:400}.z1n3-ink-menu__footer{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:clamp(8px,2vw,18px);border-top:1px solid var(--ink-line);padding-top:clamp(8px,1.2svh,14px);font-family:var(--ink-display);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-muted)}.z1n3-ink-menu__footer i{font-style:normal;width:clamp(34px,5svh,48px);height:clamp(34px,5svh,48px);display:grid;place-content:center;border:1px solid var(--ink-line);border-radius:999px;color:#fff}.z1n3-ink-menu__footer small{grid-column:1/-1;font-size:clamp(.55rem,1.3vw,.78rem);letter-spacing:.14em;text-align:center;color:rgba(255,255,255,.44)}.z1n3-lightbox__speed button,[data-lightbox-speed]{font-family:var(--ink-display)!important;letter-spacing:.12em!important;text-transform:uppercase!important}.is-pressed{transform:scale(.985);filter:brightness(1.25)}
@media (orientation:landscape) and (max-height:640px){.z1n3-ink-header-shell{height:74px}.z1n3-site-brand img{width:54px!important;height:54px!important}.z1n3-site-brand__text{font-size:2.6rem!important}.z1n3-ink-hero{height:36svh}.z1n3-ink-card-row{grid-template-columns:repeat(3,1fr)}.z1n3-ink-card.is-compact{height:27svh}.z1n3-ink-bottom-nav{height:64px}.z1n3-ink-page-title h1{font-size:4.8rem}.z1n3-ink-feature-slider .z1n3-ink-card{height:50svh}.z1n3-ink-menu-tile span{font-size:3rem}}
@media (max-width:760px){.z1n3-ink-template-shell{padding-inline:clamp(10px,3vw,18px)!important}.z1n3-site-brand__version{font-size:.66rem}.z1n3-ink-hero__copy{width:84%}.z1n3-ink-card-row{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:2px;scrollbar-width:none}.z1n3-ink-card-row::-webkit-scrollbar{display:none}.z1n3-ink-card-row .z1n3-ink-card{flex:0 0 78vw}.z1n3-ink-hero{height:clamp(250px,36svh,380px)}.z1n3-ink-card.is-compact{height:clamp(240px,30svh,330px)}.z1n3-ink-feature-slider .z1n3-ink-card{flex-basis:82vw;height:clamp(430px,56svh,600px)}.z1n3-ink-page-title h1{font-size:clamp(4rem,18vw,6rem)}.z1n3-ink-menu__header strong{font-size:clamp(2.1rem,9vw,3.4rem)}.z1n3-ink-menu__header span{display:none}.z1n3-ink-menu-tile span{font-size:clamp(2.5rem,12vw,4.1rem)}.z1n3-ink-menu__footer{grid-template-columns:1fr auto auto auto}.z1n3-ink-thumb-strip{grid-template-columns:repeat(4,1fr)}.z1n3-ink-thumb-strip a:nth-child(n+5){display:none}}
@media (max-width:520px){.z1n3-site-brand__version{display:none}.z1n3-site-brand__text{font-size:clamp(2rem,10vw,3.3rem)!important}.z1n3-ink-menu-trigger{width:54px;height:54px}.z1n3-ink-bottom-nav a{font-size:.58rem;letter-spacing:.1em}.z1n3-ink-bottom-nav img{width:22px;height:22px}.z1n3-ink-hero strong{font-size:clamp(2.7rem,14vw,4.3rem)}.z1n3-ink-hero em{font-size:.95rem}.z1n3-ink-card-row .z1n3-ink-card{flex-basis:82vw}.z1n3-ink-card__title{font-size:2.7rem}.z1n3-ink-card__excerpt{font-size:.9rem}.z1n3-ink-single-hero{height:36svh}.z1n3-ink-single h1{font-size:3.2rem}.z1n3-ink-single-excerpt{font-size:.98rem}.z1n3-comments{max-height:18svh}.z1n3-ink-menu__inner{border-radius:24px;padding:12px}.z1n3-ink-menu__tiles{gap:8px}.z1n3-ink-menu-tile{padding:10px 14px;gap:12px}.z1n3-ink-menu-tile>img{width:28px;height:28px}.z1n3-ink-menu-tile b{width:42px;height:42px}.z1n3-ink-menu__footer span{font-size:.7rem}.z1n3-ink-menu__footer i{width:34px;height:34px}}


/* ======================================================================
   v1337-01.1 — iOS CUT PATCH
   - no rounded corners
   - thicker segmented borders
   - tighter iOS/tablet responsiveness
   - cleaner viewport fit
   ====================================================================== */
:root{
  --ink-cut-border:3px;
  --ink-cut-rail:rgba(255,255,255,.96);
  --ink-cut-rail-soft:rgba(255,255,255,.66);
  --ink-cut-gap:12px;
  --ink-cut-length:30px;
}

html, body{
  overflow-x:hidden !important;
}

body.admin-bar header.wp-block-template-part{
  top:46px !important;
}
@media (min-width:783px){
  body.admin-bar header.wp-block-template-part{
    top:32px !important;
  }
}

/* Kill curves site-wide on visible UI pieces */
header.wp-block-template-part,
footer.wp-block-template-part,
.z1n3-post-tile,
.z1n3-post-tile__image,
.z1n3-post-tile__image img,
.z1n3-category-card,
.z1n3-reader-nav,
.z1n3-reader-nav__button,
.z1n3-slider__button,
.z1n3-search-field,
.z1n3-search-form button,
.z1n3-read-more-articles,
.z1n3-post-tile__readmore,
.z1n3-foldout-menu__inner,
.z1n3-wp-menu__list a,
.z1n3-menu-close,
.z1n3-ink-menu-trigger,
.z1n3-ink-hero,
.z1n3-ink-card,
.z1n3-ink-card img,
.z1n3-ink-button,
.z1n3-ink-bottom-nav,
.z1n3-ink-single-card,
.z1n3-ink-single-hero,
.z1n3-comments,
.z1n3-ink-next,
.z1n3-ink-menu__inner,
.z1n3-ink-menu-tile,
.z1n3-ink-menu-tile b,
.z1n3-lightbox,
.z1n3-lightbox__frame,
.z1n3-lightbox__close,
.z1n3-lightbox__play,
.z1n3-lightbox__nav,
.z1n3-comments-card,
.z1n3-comments-latest,
.z1n3-comment-card__inner,
.z1n3-comments-latest__link,
.z1n3-comment-form input,
.z1n3-comment-form textarea,
.z1n3-comment-submit,
#cancel-comment-reply-link,
.wp-block-comments-pagination a,
.wp-block-comments-pagination span,
.comment-navigation .nav-links a,
.comment-navigation .nav-links span{
  border-radius:0 !important;
}

/* Thicker borders */
header.wp-block-template-part,
footer.wp-block-template-part,
.z1n3-post-tile,
.z1n3-category-card,
.z1n3-reader-nav,
.z1n3-reader-nav__button,
.z1n3-slider__button,
.z1n3-search-field,
.z1n3-search-form button,
.z1n3-read-more-articles,
.z1n3-post-tile__readmore,
.z1n3-foldout-menu__inner,
.z1n3-wp-menu__list a,
.z1n3-menu-close,
.z1n3-ink-menu-trigger,
.z1n3-ink-hero,
.z1n3-ink-card,
.z1n3-ink-bottom-nav,
.z1n3-ink-single-card,
.z1n3-comments,
.z1n3-ink-next,
.z1n3-ink-menu__inner,
.z1n3-ink-menu-tile,
.z1n3-lightbox,
.z1n3-lightbox__frame,
.z1n3-lightbox__nav,
.z1n3-comments-card,
.z1n3-comments-latest,
.z1n3-comment-card__inner,
.z1n3-comments-latest__link,
.z1n3-comment-form input,
.z1n3-comment-form textarea,
.z1n3-comment-submit,
#cancel-comment-reply-link,
.wp-block-comments-pagination a,
.wp-block-comments-pagination span,
.comment-navigation .nav-links a,
.comment-navigation .nav-links span{
  border-width:var(--ink-cut-border) !important;
  border-color:rgba(255,255,255,.9) !important;
}

/* Segmented borders on the main shells/cards */
header.wp-block-template-part,
footer.wp-block-template-part,
.z1n3-post-tile,
.z1n3-reader-nav,
.z1n3-foldout-menu__inner,
.z1n3-ink-hero,
.z1n3-ink-card,
.z1n3-ink-bottom-nav,
.z1n3-ink-single-card,
.z1n3-comments,
.z1n3-ink-next,
.z1n3-ink-menu__inner,
.z1n3-ink-menu-tile,
.z1n3-lightbox,
.z1n3-lightbox__frame,
.z1n3-comments-card,
.z1n3-comments-latest,
.z1n3-comment-card__inner,
.z1n3-comments-latest__link{
  position:relative;
}

header.wp-block-template-part::after,
footer.wp-block-template-part::after,
.z1n3-post-tile::after,
.z1n3-reader-nav::after,
.z1n3-foldout-menu__inner::after,
.z1n3-ink-hero::after,
.z1n3-ink-card::after,
.z1n3-ink-bottom-nav::after,
.z1n3-ink-single-card::after,
.z1n3-comments::after,
.z1n3-ink-next::after,
.z1n3-ink-menu__inner::after,
.z1n3-ink-menu-tile::after,
.z1n3-lightbox::after,
.z1n3-lightbox__frame::after,
.z1n3-comments-card::after,
.z1n3-comments-latest::after,
.z1n3-comment-card__inner::after,
.z1n3-comments-latest__link::after{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;
  background:
    repeating-linear-gradient(90deg,var(--ink-cut-rail) 0 var(--ink-cut-length),transparent var(--ink-cut-length) calc(var(--ink-cut-length) + var(--ink-cut-gap))) top left / 100% var(--ink-cut-border) no-repeat,
    repeating-linear-gradient(90deg,var(--ink-cut-rail) 0 var(--ink-cut-length),transparent var(--ink-cut-length) calc(var(--ink-cut-length) + var(--ink-cut-gap))) bottom left / 100% var(--ink-cut-border) no-repeat,
    repeating-linear-gradient(180deg,var(--ink-cut-rail) 0 var(--ink-cut-length),transparent var(--ink-cut-length) calc(var(--ink-cut-length) + var(--ink-cut-gap))) top left / var(--ink-cut-border) 100% no-repeat,
    repeating-linear-gradient(180deg,var(--ink-cut-rail) 0 var(--ink-cut-length),transparent var(--ink-cut-length) calc(var(--ink-cut-length) + var(--ink-cut-gap))) top right / var(--ink-cut-border) 100% no-repeat;
  opacity:.92;
}

/* Keep items that already use pseudo backgrounds from breaking */
.z1n3-category-card,
.z1n3-wp-menu__list a,
.z1n3-reader-nav__button,
.z1n3-slider__button,
.z1n3-search-field,
.z1n3-search-form button,
.z1n3-read-more-articles,
.z1n3-post-tile__readmore,
.z1n3-menu-close,
.z1n3-ink-menu-trigger,
.z1n3-lightbox__nav,
.z1n3-lightbox__close,
.z1n3-lightbox__play,
.z1n3-comment-form input,
.z1n3-comment-form textarea,
.z1n3-comment-submit,
#cancel-comment-reply-link,
.wp-block-comments-pagination a,
.wp-block-comments-pagination span,
.comment-navigation .nav-links a,
.comment-navigation .nav-links span{
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.24), inset 0 0 0 var(--ink-cut-border) rgba(255,255,255,.08), 0 10px 26px rgba(0,0,0,.28) !important;
}

/* Tighter, more iOS-friendly header proportions */
.z1n3-ink-header-shell{
  height:clamp(76px, 10svh, 110px) !important;
  padding:clamp(10px, 1.8vw, 20px) clamp(12px, 2.3vw, 24px) !important;
}
.z1n3-site-brand{
  min-width:0 !important;
  gap:clamp(10px, 1.6vw, 18px) !important;
}
.z1n3-site-brand img{
  width:clamp(48px, 7svh, 78px) !important;
  height:clamp(48px, 7svh, 78px) !important;
}
.z1n3-site-brand__text{
  font-size:clamp(1.75rem, 6.2vw, 4.8rem) !important;
  line-height:.84 !important;
}
.z1n3-site-brand__version{
  font-size:clamp(.66rem, 1.55vw, .96rem) !important;
  letter-spacing:.14em !important;
}

/* Hero/cards more likely to fit viewport without ugly dead space */
.z1n3-ink-viewport{
  min-height:auto !important;
  gap:clamp(8px, 1svh, 14px) !important;
}
.z1n3-ink-hero{
  height:clamp(220px, 34svh, 380px) !important;
}
.z1n3-ink-card-row{
  gap:clamp(8px, 1.1vw, 14px) !important;
}
.z1n3-ink-card{
  height:clamp(200px, 28svh, 300px) !important;
}
.z1n3-ink-bottom-nav{
  min-height:clamp(56px, 8svh, 86px) !important;
  padding:clamp(8px, 1.4vw, 14px) !important;
}
.z1n3-ink-bottom-nav a span{
  font-size:clamp(.68rem, 1.45vw, .86rem) !important;
}

/* Tablet portrait: fit the header and avoid clipping, use two strong article columns */
@media (min-width:600px) and (max-width:1100px) and (orientation:portrait){
  .z1n3-ink-header-shell{
    height:clamp(72px, 9svh, 98px) !important;
  }
  .z1n3-site-brand__text{
    font-size:clamp(1.6rem, 5.6vw, 3.6rem) !important;
  }
  .z1n3-site-brand__version{
    font-size:clamp(.62rem, 1.3vw, .82rem) !important;
    padding-left:12px !important;
  }
  .z1n3-ink-hero{
    height:clamp(240px, 31svh, 340px) !important;
  }
  .z1n3-ink-card-row{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
  .z1n3-ink-card{
    height:clamp(210px, 25svh, 270px) !important;
  }
  .z1n3-ink-menu__tiles{
    grid-template-rows:repeat(6,minmax(0,1fr)) !important;
  }
  .z1n3-ink-menu-tile span{
    font-size:clamp(1.9rem, 5.4vw, 3.4rem) !important;
  }
}

/* Narrow phones: one card per row, reduced chrome, readable menu */
@media (max-width:599px){
  .z1n3-ink-template-shell{
    padding-inline:12px !important;
  }
  .z1n3-ink-header-shell{
    padding-inline:12px !important;
    gap:10px !important;
  }
  .z1n3-site-brand__text{
    font-size:clamp(1.5rem, 9vw, 2.4rem) !important;
  }
  .z1n3-site-brand__version{
    font-size:.6rem !important;
    padding-left:10px !important;
  }
  .z1n3-ink-hero{
    height:clamp(210px, 31svh, 300px) !important;
  }
  .z1n3-ink-hero__copy{
    width:min(90%, 30rem) !important;
    left:14px !important;
    bottom:14px !important;
  }
  .z1n3-ink-hero strong{
    font-size:clamp(2.1rem, 13vw, 3.9rem) !important;
  }
  .z1n3-ink-card-row{
    grid-template-columns:1fr !important;
  }
  .z1n3-ink-card{
    height:clamp(220px, 33svh, 300px) !important;
  }
  .z1n3-ink-menu__inner,
  .z1n3-foldout-menu__inner{
    padding:12px !important;
  }
  .z1n3-ink-menu-tile span{
    font-size:clamp(1.4rem, 8vw, 2.2rem) !important;
  }
  .z1n3-ink-menu-tile b{
    width:42px !important;
    height:42px !important;
    font-size:1.5rem !important;
  }
  .z1n3-ink-menu__footer{
    grid-template-columns:1fr auto auto !important;
  }
}

/* Menu tiles and article tiles: harder square-cut look */
.z1n3-wp-menu__list a,
.z1n3-ink-menu-tile,
.z1n3-post-tile__readmore,
.z1n3-read-more-articles,
.z1n3-ink-button,
.z1n3-ink-next{
  letter-spacing:.12em !important;
  text-transform:uppercase !important;
}

/* Image panels should remain square and snappy */
.z1n3-post-tile__image img,
.z1n3-ink-hero__link,
.z1n3-ink-card__link,
.z1n3-ink-single-hero,
.z1n3-ink-thumb-strip img{
  border-radius:0 !important;
}

/* Slider/status UI should sit cleanly under content */
.z1n3-slider__footer--center,
.z1n3-ink-bullets{
  padding-top:clamp(6px, .9svh, 10px) !important;
  padding-bottom:clamp(2px, .4svh, 6px) !important;
}

/* Cleaner foldout menu geometry on iOS */
.z1n3-foldout-menu,
.z1n3-ink-menu{
  padding:max(8px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)) !important;
}
.z1n3-foldout-menu__inner,
.z1n3-ink-menu__inner{
  max-height:calc(100dvh - 20px) !important;
  overflow:auto !important;
  scrollbar-width:thin;
}

/* Don't let default round touch targets sneak back in */
button,
input,
textarea,
select{
  border-radius:0 !important;
}


/* ======================================================================
   v1337-01.2 — SLIDER FIX
   The previous iOS-cut made the layout beautiful but the INK homepage cards
   were still a static CSS grid. This turns those rows into real swipeable,
   automated iOS sliders and keeps the square/segmented border language.
   ====================================================================== */

.z1n3-ink-latest{
  min-width:0 !important;
  overflow:hidden !important;
}

.z1n3-ink-card-row{
  display:flex !important;
  grid-template-columns:none !important;
  flex-wrap:nowrap !important;
  gap:clamp(10px, 2vw, 20px) !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x mandatory !important;
  scroll-behavior:smooth !important;
  -webkit-overflow-scrolling:touch !important;
  scrollbar-width:none !important;
  padding:2px 2px clamp(8px, 1svh, 12px) !important;
  touch-action:pan-x pan-y !important;
}
.z1n3-ink-card-row::-webkit-scrollbar{
  display:none !important;
}

.z1n3-ink-card-row .z1n3-ink-card{
  flex:0 0 clamp(260px, 31vw, 390px) !important;
  width:clamp(260px, 31vw, 390px) !important;
  max-width:none !important;
  scroll-snap-align:start !important;
}

@media (max-width:599px){
  .z1n3-ink-card-row .z1n3-ink-card{
    flex-basis:min(86vw, 420px) !important;
    width:min(86vw, 420px) !important;
  }
}

@media (min-width:600px) and (max-width:1100px) and (orientation:portrait){
  .z1n3-ink-card-row .z1n3-ink-card{
    flex-basis:calc((100vw - 88px) / 2) !important;
    width:calc((100vw - 88px) / 2) !important;
  }
}

/* Archive/category slider: make sure the viewport is genuinely swipeable. */
.z1n3-ink-feature-slider__viewport{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x mandatory !important;
  scroll-behavior:smooth !important;
  -webkit-overflow-scrolling:touch !important;
  touch-action:pan-x pan-y !important;
}
.z1n3-ink-feature-slider__track{
  display:flex !important;
  flex-wrap:nowrap !important;
}
.z1n3-ink-feature-slider .z1n3-ink-card{
  flex:0 0 min(80vw, 720px) !important;
  scroll-snap-align:center !important;
}

/* A visible active state for monkey bullets driven by JS. */
.z1n3-ink-bullet{
  transition:opacity .18s ease, transform .18s ease, filter .18s ease !important;
}
.z1n3-ink-bullet.is-active{
  opacity:1 !important;
  transform:scale(1.12) rotate(-4deg) !important;
  filter:grayscale(1) contrast(1.35) brightness(1.18) drop-shadow(0 0 8px rgba(255,255,255,.20)) !important;
}
.z1n3-ink-bullet:not(.is-active){
  opacity:.24 !important;
}

/* Make the existing under-navigation behave like slider controls without side arrows. */
.z1n3-ink-under-nav{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  gap:clamp(6px, .8svh, 10px) !important;
}
.z1n3-ink-page-count{
  min-height:1.2em;
}

/* Optional hidden prev/next buttons created by JS remain accessible but not visually noisy. */
.z1n3-ink-js-controls{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
}
.z1n3-ink-js-controls button{
  min-width:44px;
  min-height:36px;
  border:2px solid rgba(255,255,255,.8);
  background:#000;
  color:#fff;
  font-family:var(--ink-display);
  letter-spacing:.08em;
  cursor:pointer;
}


/* ======================================================================
   v1337-01.3 — GLOW GALLERY PATCH
   - remove segmented borders
   - borderless header shell
   - soft glow panel treatment
   - gallery-first cards (no intro text)
   ====================================================================== */

/* cancel the segmented-border patch */
header.wp-block-template-part::after,
footer.wp-block-template-part::after,
.z1n3-post-tile::after,
.z1n3-reader-nav::after,
.z1n3-foldout-menu__inner::after,
.z1n3-ink-hero::after,
.z1n3-ink-card::after,
.z1n3-ink-bottom-nav::after,
.z1n3-ink-single-card::after,
.z1n3-comments::after,
.z1n3-ink-next::after,
.z1n3-ink-menu__inner::after,
.z1n3-ink-menu-tile::after,
.z1n3-lightbox::after,
.z1n3-lightbox__frame::after,
.z1n3-comments-card::after,
.z1n3-comments-latest::after,
.z1n3-comment-card__inner::after,
.z1n3-comments-latest__link::after{
  content:none !important;
  display:none !important;
}

:root{
  --ink-glow-line:rgba(255,255,255,.13);
  --ink-glow-edge:rgba(255,255,255,.06);
  --ink-glow:0 0 0 1px var(--ink-glow-line), 0 0 18px rgba(255,255,255,.06), 0 22px 48px rgba(0,0,0,.44);
  --ink-glow-soft:0 0 0 1px rgba(255,255,255,.08), 0 0 12px rgba(255,255,255,.04), 0 16px 34px rgba(0,0,0,.36);
  --ink-glow-button:0 0 0 1px rgba(255,255,255,.16), 0 0 12px rgba(255,255,255,.05), 0 10px 22px rgba(0,0,0,.3);
}

/* borderless header shell */
header.wp-block-template-part,
.z1n3-ink-header-shell{
  border:0 !important;
  box-shadow:none !important;
  background:transparent !important;
}

/* restore the softer, earlier curves */
.z1n3-ink-hero,
.z1n3-ink-card,
.z1n3-ink-single-card,
.z1n3-ink-next,
.z1n3-comments,
.z1n3-ink-menu__inner,
.z1n3-ink-menu-tile,
.z1n3-ink-bottom-nav,
.z1n3-post-tile,
.z1n3-category-card,
.z1n3-reader-nav,
.z1n3-lightbox,
.z1n3-lightbox__frame{
  border-radius:clamp(18px,2.2vw,28px) !important;
}

.z1n3-ink-hero,
.z1n3-ink-card,
.z1n3-ink-single-card,
.z1n3-comments,
.z1n3-ink-next,
.z1n3-ink-menu__inner,
.z1n3-ink-menu-tile,
.z1n3-ink-bottom-nav,
.z1n3-category-card,
.z1n3-post-tile,
.z1n3-reader-nav,
.z1n3-lightbox,
.z1n3-lightbox__frame{
  border:0 !important;
  box-shadow:var(--ink-glow) !important;
}

.z1n3-ink-hero,
.z1n3-ink-card,
.z1n3-ink-single-card,
.z1n3-ink-menu__inner,
.z1n3-ink-menu-tile,
.z1n3-comments,
.z1n3-ink-next,
.z1n3-bottom-nav{
  background-color:rgba(255,255,255,.02) !important;
}

/* buttons and rings */
.z1n3-ink-button,
.z1n3-ink-more,
.z1n3-post-tile__readmore,
.z1n3-read-more-articles,
.z1n3-slider__button,
.z1n3-reader-nav__button,
.z1n3-search-field,
.z1n3-search-form button,
.z1n3-lightbox__nav,
.z1n3-lightbox__close,
.z1n3-lightbox__play,
.z1n3-comment-submit,
#cancel-comment-reply-link,
.wp-block-comments-pagination a,
.wp-block-comments-pagination span,
.comment-navigation .nav-links a,
.comment-navigation .nav-links span{
  box-shadow:var(--ink-glow-button) !important;
  border-width:0 !important;
}

.z1n3-ink-menu-trigger,
.z1n3-menu-close,
.z1n3-ink-menu-tile b{
  box-shadow:0 0 0 1px rgba(255,255,255,.22), 0 0 16px rgba(255,255,255,.08), 0 10px 20px rgba(0,0,0,.32) !important;
  border-color:rgba(255,255,255,.72) !important;
}

.z1n3-site-brand__version,
.z1n3-ink-menu__header span{
  border-left-color:rgba(255,255,255,.18) !important;
}

/* hero without intro copy; use thumbs instead */
.z1n3-ink-hero__copy{
  gap:clamp(8px,1.2svh,14px) !important;
}
.z1n3-ink-hero em,
.z1n3-ink-card__excerpt,
.z1n3-archive-card__excerpt,
.z1n3-ink-page-title p,
.z1n3-ink-single-excerpt{
  display:none !important;
}
.z1n3-ink-hero strong{
  max-width:10ch;
}
.z1n3-ink-hero__thumbs,
.z1n3-ink-card__thumbs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  width:min(100%, 28rem);
}
.z1n3-ink-card.is-compact .z1n3-ink-card__thumbs{
  grid-template-columns:repeat(3,minmax(0,1fr));
  width:min(100%, 18rem);
}
.z1n3-ink-hero__thumbs img,
.z1n3-ink-card__thumbs img{
  width:100%;
  aspect-ratio:1.38/1;
  object-fit:cover;
  border-radius:10px;
  box-shadow:0 0 0 1px rgba(255,255,255,.12), 0 8px 18px rgba(0,0,0,.26);
  filter:grayscale(1) contrast(1.12);
  background:#080808;
}
.z1n3-ink-card__content{
  gap:clamp(7px,1svh,12px) !important;
}
.z1n3-ink-readline,
.z1n3-ink-more{
  text-shadow:0 0 14px rgba(255,255,255,.08);
}

/* the hero and cards should breathe more visually */
.z1n3-ink-hero__shade,
.z1n3-ink-card__shade{
  background:linear-gradient(90deg,rgba(0,0,0,.95) 0%,rgba(0,0,0,.8) 32%,rgba(0,0,0,.28) 70%,rgba(0,0,0,.78) 100%),linear-gradient(0deg,rgba(0,0,0,.92) 0%,transparent 58%,rgba(0,0,0,.18) 100%) !important;
}

/* single page: gallery-first, no summary paragraph */
.z1n3-ink-thumb-strip{
  border-top:0 !important;
  padding-top:clamp(12px,1.6svh,18px) !important;
  gap:10px !important;
}
.z1n3-ink-thumb-strip img{
  border:0 !important;
  border-radius:12px !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.1), 0 10px 18px rgba(0,0,0,.28) !important;
}

/* more refined overlay menu */
.z1n3-ink-menu__inner{
  background:rgba(3,3,3,.92) !important;
  border:0 !important;
}
.z1n3-ink-menu-tile{
  border:0 !important;
  background-image:linear-gradient(90deg,#000 0%,rgba(0,0,0,.92) 38%,rgba(0,0,0,.3) 100%),var(--ink-img) !important;
}
.z1n3-ink-menu__footer{
  border-top:0 !important;
  padding-top:clamp(8px,1.2svh,14px) !important;
}
.z1n3-ink-menu__footer i{
  border:0 !important;
  box-shadow:var(--ink-glow-soft) !important;
  border-radius:999px !important;
}

/* Keep the menu button circular */
.z1n3-ink-menu-trigger,
.z1n3-menu-close,
.z1n3-ink-menu-tile b,
.z1n3-lightbox__nav,
.z1n3-lightbox__close,
.z1n3-lightbox__play{
  border-radius:999px !important;
}

/* stronger mobile fit for the new thumbs */
@media (max-width:760px){
  .z1n3-ink-hero__copy{
    width:min(86%, 30rem) !important;
  }
  .z1n3-ink-hero__thumbs,
  .z1n3-ink-card__thumbs{
    gap:6px;
  }
  .z1n3-ink-hero__thumbs img,
  .z1n3-ink-card__thumbs img{
    border-radius:8px !important;
  }
}

@media (max-width:520px){
  .z1n3-ink-hero strong{
    font-size:clamp(2.55rem,13.2vw,4.1rem) !important;
  }
  .z1n3-ink-card__title{
    font-size:clamp(2.15rem,9.5vw,3rem) !important;
  }
  .z1n3-ink-hero__thumbs,
  .z1n3-ink-card__thumbs{
    grid-template-columns:repeat(3,minmax(0,1fr));
  }
  .z1n3-ink-hero__thumbs img:nth-child(n+4),
  .z1n3-ink-card__thumbs img:nth-child(n+4){
    display:none;
  }
}


/* ======================================================================
   v1337-01.4 — HERO SLIDER + LOGO BULLET REPAIR
   Restores the preferred glow look, removes square-block dots, and makes
   the main hero artwork swipe/autoplay like the article strip.
   ====================================================================== */
:root{
  --ink-glow-line:rgba(255,255,255,.13);
  --ink-glow:0 0 0 1px var(--ink-glow-line), 0 0 18px rgba(255,255,255,.055), 0 22px 48px rgba(0,0,0,.44);
  --ink-glow-soft:0 0 0 1px rgba(255,255,255,.08), 0 0 12px rgba(255,255,255,.04), 0 16px 34px rgba(0,0,0,.36);
  --ink-monkey-bullet:url("../img/logo-monkey-bullet.webp");
}

/* Keep the header naked: logo/wordmark/menu only, no frame. */
header.wp-block-template-part,
.z1n3-ink-header-shell{
  border:0 !important;
  background:transparent !important;
  box-shadow:none !important;
}
.z1n3-site-brand img{
  content:url("../img/logo-user-supplied.webp");
  filter:grayscale(1) contrast(1.28) brightness(1.08) drop-shadow(0 0 10px rgba(255,255,255,.10)) !important;
}

/* Undo the hard segmented border look everywhere that matters. */
header.wp-block-template-part::after,
footer.wp-block-template-part::after,
.z1n3-post-tile::after,
.z1n3-reader-nav::after,
.z1n3-foldout-menu__inner::after,
.z1n3-ink-hero::after,
.z1n3-ink-card::after,
.z1n3-ink-bottom-nav::after,
.z1n3-ink-single-card::after,
.z1n3-comments::after,
.z1n3-ink-next::after,
.z1n3-ink-menu__inner::after,
.z1n3-ink-menu-tile::after,
.z1n3-lightbox::after,
.z1n3-lightbox__frame::after{
  content:none !important;
  display:none !important;
}
.z1n3-ink-hero,
.z1n3-ink-card,
.z1n3-ink-single-card,
.z1n3-comments,
.z1n3-ink-next,
.z1n3-ink-menu__inner,
.z1n3-ink-menu-tile,
.z1n3-ink-bottom-nav{
  border:0 !important;
  border-radius:clamp(18px,2.2vw,28px) !important;
  box-shadow:var(--ink-glow) !important;
}
.z1n3-ink-menu-trigger,
.z1n3-menu-close,
.z1n3-ink-menu-tile b{
  border-radius:999px !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.22),0 0 16px rgba(255,255,255,.08),0 10px 20px rgba(0,0,0,.32) !important;
}

/* Hero is now a real horizontal viewport. */
.z1n3-ink-hero-slider{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:clamp(8px,1svh,14px);
}
.z1n3-ink-hero-slider__viewport{
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  -webkit-overflow-scrolling:touch;
  scrollbar-width:none;
  min-width:0;
}
.z1n3-ink-hero-slider__viewport::-webkit-scrollbar{ display:none; }
.z1n3-ink-hero-slider__track{
  display:flex;
  gap:clamp(12px,2vw,22px);
}
.z1n3-ink-hero-slide{
  flex:0 0 100%;
  scroll-snap-align:start;
  margin:0 !important;
}
.z1n3-ink-hero-nav .z1n3-ink-page-count{
  display:none;
}

/* No intro paragraph on cards/hero: it is a gallery-first site. */
.z1n3-ink-hero em,
.z1n3-ink-card__excerpt,
.z1n3-archive-card__excerpt,
.z1n3-ink-page-title p,
.z1n3-ink-single-excerpt{
  display:none !important;
}
.z1n3-ink-hero__thumbs,
.z1n3-ink-card__thumbs{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:8px;
  width:min(100%, 28rem);
}
.z1n3-ink-card.is-compact .z1n3-ink-card__thumbs{
  grid-template-columns:repeat(3,minmax(0,1fr));
  width:min(100%, 18rem);
}
.z1n3-ink-hero__thumbs img,
.z1n3-ink-card__thumbs img{
  width:100%;
  aspect-ratio:1.38/1;
  object-fit:cover;
  border-radius:10px;
  box-shadow:0 0 0 1px rgba(255,255,255,.12),0 8px 18px rgba(0,0,0,.26);
  filter:grayscale(1) contrast(1.12);
  background:#080808;
}
.z1n3-ink-card__content,
.z1n3-ink-hero__copy{
  gap:clamp(8px,1.1svh,13px) !important;
}

/* Repair bullet icons: never browser-default square buttons. */
.z1n3-ink-bullets{
  gap:clamp(8px,1.5vw,14px) !important;
}
.z1n3-ink-bullet,
button.z1n3-ink-bullet{
  appearance:none !important;
  -webkit-appearance:none !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:clamp(21px,3.2vw,34px) !important;
  height:clamp(21px,3.2vw,34px) !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent var(--ink-monkey-bullet) center / contain no-repeat !important;
  box-shadow:none !important;
  opacity:.24;
  filter:grayscale(1) contrast(1.2);
  transform:scale(.92);
}
.z1n3-ink-bullet img,
button.z1n3-ink-bullet img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  object-fit:contain !important;
  opacity:1 !important;
}
.z1n3-ink-bullet.is-active,
button.z1n3-ink-bullet.is-active{
  opacity:1 !important;
  transform:scale(1.08) rotate(-4deg);
  filter:grayscale(1) contrast(1.25) brightness(1.15) drop-shadow(0 0 9px rgba(255,255,255,.22));
}

/* Previous softer button/card mood, not square boxes. */
.z1n3-ink-button,
.z1n3-ink-more,
.z1n3-ink-readline{
  text-shadow:0 0 14px rgba(255,255,255,.08);
}
.z1n3-ink-button{
  border-radius:12px !important;
  box-shadow:var(--ink-glow-soft) !important;
}
.z1n3-ink-bottom-nav{
  border-radius:999px !important;
}

.z1n3-ink-thumb-strip{
  border-top:0 !important;
  padding-top:clamp(12px,1.6svh,18px) !important;
}
.z1n3-ink-thumb-strip img{
  border:0 !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.1),0 10px 18px rgba(0,0,0,.28) !important;
}

@media (max-width:760px){
  .z1n3-ink-hero__thumbs,
  .z1n3-ink-card__thumbs{ gap:6px; }
  .z1n3-ink-hero__thumbs img,
  .z1n3-ink-card__thumbs img{ border-radius:8px !important; }
}
@media (max-width:520px){
  .z1n3-ink-hero__thumbs,
  .z1n3-ink-card__thumbs{ grid-template-columns:repeat(3,minmax(0,1fr)); }
  .z1n3-ink-hero__thumbs img:nth-child(n+4),
  .z1n3-ink-card__thumbs img:nth-child(n+4){ display:none; }
}


/* ======================================================================
   v1337-01.5 — MENU CENTER FIX
   - center the overlay menu structure
   - center header menu trigger alignment
   - keep menu tiles visually balanced in viewport
   ====================================================================== */

/* header alignment */
.z1n3-ink-header-shell{
  align-items:center !important;
}
.z1n3-site-brand,
.z1n3-ink-menu-trigger{
  align-self:center !important;
}

/* overlay menu should sit centered in the viewport */
.z1n3-foldout-menu.z1n3-ink-menu{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}
.z1n3-ink-menu__inner{
  width:min(100%,1120px) !important;
  max-height:min(100dvh - 24px, 980px) !important;
  margin:auto !important;
  display:grid !important;
  grid-template-rows:auto 1fr auto !important;
  align-content:center !important;
  justify-content:center !important;
}
.z1n3-ink-menu__header,
.z1n3-ink-menu__footer{
  width:100% !important;
}

/* center the menu stack itself */
.z1n3-ink-menu__tiles{
  width:100% !important;
  align-content:center !important;
  justify-content:center !important;
}
.z1n3-ink-menu-tile{
  width:100% !important;
  margin-inline:auto !important;
}

/* menu tile content vertical centering */
.z1n3-ink-menu-tile,
.z1n3-ink-menu__header{
  align-items:center !important;
}
.z1n3-ink-menu__header a{
  align-items:center !important;
}

/* compact screens: keep the menu visually centered without crowding */
@media (max-width: 760px){
  .z1n3-foldout-menu.z1n3-ink-menu{
    padding:max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right)) max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left)) !important;
  }
  .z1n3-ink-menu__inner{
    max-height:calc(100dvh - 20px) !important;
    min-height:min(86dvh, 820px) !important;
  }
  .z1n3-ink-menu__tiles{
    flex:1 1 auto !important;
  }
}

@media (max-width: 520px){
  .z1n3-ink-menu__inner{
    padding:12px !important;
    min-height:min(88dvh, 780px) !important;
  }
  .z1n3-ink-menu__header{
    min-height:56px !important;
  }
}


/* ======================================================================
   v1337-01.7 — HARDEN CLOSED MENU STATE
   Prevent iOS/Safari or cached state from showing the overlay on load.
   ====================================================================== */
#z1n3-foldout-menu.z1n3-foldout-menu,
#z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
#z1n3-foldout-menu.z1n3-foldout-menu[hidden],
#z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu[hidden]{
  display:none !important;
  visibility:hidden !important;
  opacity:0 !important;
  pointer-events:none !important;
}
#z1n3-foldout-menu.z1n3-foldout-menu[data-open="true"],
#z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu[data-open="true"]{
  display:flex !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}


/* ======================================================================
   v1337-01.8 — HEADER / MENU / LOGO / TITLE / SUBTITLE CLEANUP
   Compact the header, keep the size impact, and make the fit much cleaner.
   ====================================================================== */
.z1n3-ink-header-shell{
  max-width:1180px !important;
  min-height:clamp(84px,10svh,104px) !important;
  height:auto !important;
  padding:clamp(10px,1.6vw,18px) clamp(14px,2.2vw,24px) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:clamp(10px,1.6vw,18px) !important;
}
.z1n3-site-brand{
  width:100% !important;
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  align-items:center !important;
  gap:clamp(10px,1.5vw,18px) !important;
}
.z1n3-site-brand img{
  width:clamp(54px,6.4svh,76px) !important;
  height:clamp(54px,6.4svh,76px) !important;
}
.z1n3-site-brand__stack{
  min-width:0 !important;
  display:flex !important;
  align-items:flex-end !important;
  justify-content:flex-start !important;
  gap:clamp(10px,1.7vw,18px) !important;
}
.z1n3-site-brand__text{
  flex:0 1 auto !important;
  min-width:0 !important;
  margin:0 !important;
  font-size:clamp(2.5rem,6.2vw,4.5rem) !important;
  line-height:.84 !important;
  letter-spacing:.028em !important;
  text-shadow:0 0 18px rgba(255,255,255,.12) !important;
}
.z1n3-site-brand__version{
  flex:0 0 auto !important;
  align-self:flex-end !important;
  margin:0 0 .12em 0 !important;
  padding-left:clamp(9px,1.2vw,14px) !important;
  border-left:1px solid rgba(255,255,255,.24) !important;
  font-size:clamp(.7rem,1.25vw,.9rem) !important;
  line-height:1.02 !important;
  letter-spacing:.14em !important;
  color:rgba(255,255,255,.68) !important;
}
.z1n3-ink-menu-trigger{
  width:clamp(54px,6.4svh,74px) !important;
  height:clamp(54px,6.4svh,74px) !important;
  margin-left:0 !important;
  justify-self:end !important;
  gap:6px !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.08),0 0 18px rgba(255,255,255,.11) !important;
}
.z1n3-ink-menu-trigger span{
  width:clamp(21px,3vw,30px) !important;
}
.z1n3-ink-viewport{
  min-height:calc(100svh - clamp(84px,10svh,104px) - clamp(74px,9svh,98px)) !important;
}
/* Overlay menu header: same visual language, cleaner fit */
.z1n3-ink-menu__inner{
  padding:clamp(12px,2.1vw,24px) !important;
}
.z1n3-ink-menu__header{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:clamp(10px,1.8vw,18px) !important;
}
.z1n3-ink-menu__header a{
  display:grid !important;
  grid-template-columns:auto minmax(0,1fr) !important;
  align-items:center !important;
  gap:clamp(12px,2vw,18px) !important;
}
.z1n3-ink-menu__header img{
  width:clamp(52px,6.5svh,72px) !important;
  height:clamp(52px,6.5svh,72px) !important;
}
.z1n3-ink-menu__header strong{
  font-size:clamp(2.2rem,6.2vw,4rem) !important;
  line-height:.84 !important;
  letter-spacing:.03em !important;
}
.z1n3-ink-menu__header span{
  font-size:clamp(.68rem,1.2vw,.9rem) !important;
  line-height:1.04 !important;
  padding-left:clamp(8px,1.1vw,12px) !important;
}
.z1n3-menu-close{
  width:clamp(52px,6.3svh,72px) !important;
  height:clamp(52px,6.3svh,72px) !important;
  font-size:clamp(1.85rem,4vw,2.8rem) !important;
}
@media (max-width:1024px){
  .z1n3-site-brand__text{font-size:clamp(2.3rem,5.8vw,4rem) !important;}
  .z1n3-site-brand__version{font-size:clamp(.68rem,1.4vw,.84rem) !important;}
}
@media (max-width:820px){
  .z1n3-ink-header-shell{padding-inline:12px !important; min-height:88px !important;}
  .z1n3-site-brand img{width:58px !important; height:58px !important;}
  .z1n3-site-brand__text{font-size:clamp(2.1rem,6.5vw,3.55rem) !important;}
  .z1n3-site-brand__version{font-size:.7rem !important; letter-spacing:.12em !important;}
  .z1n3-ink-menu-trigger{width:60px !important; height:60px !important;}
}
@media (max-width:640px){
  .z1n3-ink-header-shell{grid-template-columns:minmax(0,1fr) auto !important; gap:10px !important; min-height:82px !important;}
  .z1n3-site-brand{gap:10px !important;}
  .z1n3-site-brand img{width:50px !important; height:50px !important;}
  .z1n3-site-brand__stack{gap:10px !important;}
  .z1n3-site-brand__text{font-size:clamp(2rem,8vw,3rem) !important;}
  .z1n3-site-brand__version{display:none !important;}
  .z1n3-ink-menu-trigger{width:54px !important; height:54px !important;}
  .z1n3-ink-menu__header span{display:none !important;}
}


/* ======================================================================
   v1337-01.9 — POPUP MENU TRUE VIEWPORT CENTER FIX
   Force the overlay to occupy the full viewport and center the popup card.
   ====================================================================== */
#z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100dvh !important;
  min-width:100vw !important;
  min-height:100dvh !important;
  padding:max(10px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left)) !important;
  overflow:hidden !important;
  box-sizing:border-box !important;
}
#z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu[data-open="true"]{
  display:grid !important;
  place-items:center !important;
  align-content:center !important;
  justify-content:center !important;
}
#z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu .z1n3-ink-menu__inner{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;
  place-self:center !important;
  width:min(calc(100vw - 24px), 1120px) !important;
  max-width:min(calc(100vw - 24px), 1120px) !important;
  min-width:min(calc(100vw - 24px), 320px) !important;
  height:auto !important;
  min-height:min(78dvh, 760px) !important;
  max-height:calc(100dvh - 24px) !important;
  margin:0 !important;
  overflow:auto !important;
}
#z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu .z1n3-ink-menu__tiles{
  width:100% !important;
}
#z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu .z1n3-ink-menu-tile{
  width:100% !important;
  margin-inline:auto !important;
}
@media (max-width:760px){
  #z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu .z1n3-ink-menu__inner{
    width:calc(100vw - 20px) !important;
    max-width:calc(100vw - 20px) !important;
    min-height:min(86dvh, 820px) !important;
    max-height:calc(100dvh - 20px) !important;
  }
}
@media (max-width:520px){
  #z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu{
    padding:max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(8px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left)) !important;
  }
  #z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu .z1n3-ink-menu__inner{
    width:calc(100vw - 16px) !important;
    max-width:calc(100vw - 16px) !important;
    min-height:min(88dvh, 780px) !important;
    max-height:calc(100dvh - 16px) !important;
  }
}


/* ======================================================================
   v1337-01.10 — BRAND ROW LOCK
   Fix logo/title/version/header/menu layout. The logo now stays locked next
   to the Z1N3.PRESS masthead instead of floating above it.
   ====================================================================== */
header.wp-block-template-part,
.z1n3-ink-header-shell{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.z1n3-ink-header-shell{
  width:min(1180px, calc(100vw - clamp(24px,4vw,48px))) !important;
  max-width:none !important;
  height:clamp(88px, 10.5svh, 118px) !important;
  min-height:0 !important;
  margin:0 auto !important;
  padding:clamp(10px,1.5vw,18px) 0 !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:clamp(14px,2vw,24px) !important;
}
.z1n3-ink-header-shell .z1n3-site-brand,
.z1n3-site-brand.z1n3-site-brand--home{
  flex:1 1 auto !important;
  width:auto !important;
  min-width:0 !important;
  max-width:calc(100% - clamp(64px,8svh,86px) - 14px) !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:clamp(12px,1.8vw,22px) !important;
  padding:0 !important;
  margin:0 !important;
  background:transparent !important;
  border:0 !important;
}
.z1n3-site-brand.z1n3-site-brand--home > img,
.z1n3-ink-header-shell .z1n3-site-brand > img{
  order:0 !important;
  flex:0 0 auto !important;
  display:block !important;
  width:clamp(58px, 7.1svh, 86px) !important;
  height:clamp(58px, 7.1svh, 86px) !important;
  max-width:none !important;
  object-fit:contain !important;
  margin:0 !important;
  transform:none !important;
}
.z1n3-site-brand.z1n3-site-brand--home .z1n3-site-brand__stack,
.z1n3-ink-header-shell .z1n3-site-brand__stack{
  order:1 !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  max-width:100% !important;
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:flex-end !important;
  justify-content:flex-start !important;
  gap:clamp(10px,1.6vw,20px) !important;
  white-space:nowrap !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__text{
  flex:0 1 auto !important;
  min-width:0 !important;
  max-width:100% !important;
  display:block !important;
  margin:0 !important;
  font-size:clamp(2.8rem, 6.2vw, 5rem) !important;
  line-height:.82 !important;
  letter-spacing:.03em !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:clip !important;
  text-align:left !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__version{
  flex:0 0 auto !important;
  display:block !important;
  align-self:flex-end !important;
  margin:0 0 .12em 0 !important;
  padding-left:clamp(9px,1.2vw,16px) !important;
  border-left:1px solid rgba(255,255,255,.26) !important;
  font-size:clamp(.7rem, 1.22vw, .92rem) !important;
  line-height:1.04 !important;
  letter-spacing:.14em !important;
  color:rgba(255,255,255,.66) !important;
  white-space:nowrap !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__hint,
.z1n3-ink-header-shell .z1n3-site-brand__menu-word{
  display:none !important;
}
.z1n3-ink-menu-trigger{
  flex:0 0 auto !important;
  align-self:center !important;
  justify-self:auto !important;
  margin:0 !important;
  width:clamp(58px, 7.1svh, 82px) !important;
  height:clamp(58px, 7.1svh, 82px) !important;
  display:grid !important;
  place-content:center !important;
  gap:6px !important;
}
.z1n3-ink-menu-trigger span{
  width:clamp(22px,3vw,32px) !important;
  height:2px !important;
}
/* Keep the overlay menu header using the same locked brand behavior. */
.z1n3-ink-menu__header{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:clamp(12px,2vw,22px) !important;
}
.z1n3-ink-menu__header a{
  min-width:0 !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:clamp(12px,1.8vw,20px) !important;
}
.z1n3-ink-menu__header img{
  flex:0 0 auto !important;
  width:clamp(56px,7svh,80px) !important;
  height:clamp(56px,7svh,80px) !important;
}
.z1n3-ink-menu__header strong{
  flex:0 1 auto !important;
  min-width:0 !important;
  font-size:clamp(2.5rem,6vw,4.5rem) !important;
  line-height:.82 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
}
.z1n3-ink-menu__header span{
  flex:0 0 auto !important;
  font-size:clamp(.68rem,1.2vw,.9rem) !important;
  line-height:1.05 !important;
  padding-left:clamp(8px,1.2vw,14px) !important;
  border-left:1px solid rgba(255,255,255,.26) !important;
}
@media (max-width:900px){
  .z1n3-ink-header-shell{
    width:calc(100vw - 28px) !important;
    height:clamp(82px, 9svh, 102px) !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand > img{
    width:clamp(52px,6.2svh,68px) !important;
    height:clamp(52px,6.2svh,68px) !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand__text{
    font-size:clamp(2.25rem, 5.4vw, 3.9rem) !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand__version{
    font-size:clamp(.62rem,1.2vw,.78rem) !important;
  }
  .z1n3-ink-menu-trigger{
    width:clamp(54px,6.2svh,68px) !important;
    height:clamp(54px,6.2svh,68px) !important;
  }
}
@media (max-width:680px){
  .z1n3-ink-header-shell{
    width:calc(100vw - 22px) !important;
    height:76px !important;
    gap:10px !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand{
    gap:9px !important;
    max-width:calc(100% - 58px) !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand > img{
    width:46px !important;
    height:46px !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand__text{
    font-size:clamp(1.85rem, 8.2vw, 2.75rem) !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand__version{
    display:none !important;
  }
  .z1n3-ink-menu-trigger{
    width:50px !important;
    height:50px !important;
  }
  .z1n3-ink-menu__header span{
    display:none !important;
  }
}


/* ======================================================================
   v1337-01.11 — VIEWPORT HERO PUSH
   Make the category slider nearly fill the first viewport and let the
   latest-articles section pop up from the lower edge.
   ====================================================================== */
.z1n3-ink-home{
  position:relative !important;
  min-height:calc(100svh - clamp(76px, 10svh, 118px)) !important;
  gap:0 !important;
  padding-bottom:clamp(10px, 1.4svh, 18px) !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider{
  position:relative !important;
  z-index:1 !important;
  display:flex !important;
  flex-direction:column !important;
  justify-content:flex-start !important;
  gap:clamp(10px, 1.1svh, 16px) !important;
  min-height:calc(100svh - clamp(76px, 10svh, 118px) - clamp(10px, 1.4svh, 18px)) !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero-slider__viewport{
  flex:1 1 auto !important;
  min-height:0 !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero-slider__track{
  min-height:100% !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero-slide{
  min-height:100% !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero{
  height:min(78svh, calc(100svh - clamp(76px, 10svh, 118px) - clamp(118px, 15svh, 170px))) !important;
  min-height:clamp(420px, 68svh, 760px) !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero__copy{
  left:clamp(20px, 3.4vw, 46px) !important;
  bottom:clamp(18px, 3.2svh, 36px) !important;
  width:min(34rem, 52%) !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero strong{
  font-size:clamp(3.5rem, 10.5vw, 7.8rem) !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero__thumbs{
  width:min(100%, 30rem) !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero-nav{
  position:relative !important;
  z-index:2 !important;
}
.z1n3-ink-home > .z1n3-ink-latest{
  position:relative !important;
  z-index:5 !important;
  margin-top:clamp(-92px, -9svh, -58px) !important;
  padding:clamp(18px, 2svh, 24px) 0 0 !important;
  background:linear-gradient(180deg, rgba(0,0,0,0) 0%, rgba(0,0,0,.78) 18%, rgba(0,0,0,.96) 38%, #000 100%) !important;
}
.z1n3-ink-home > .z1n3-ink-latest::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:clamp(56px, 7svh, 88px);
  pointer-events:none;
  background:linear-gradient(180deg, rgba(255,255,255,.055), rgba(255,255,255,0));
  opacity:.65;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-section-head{
  position:relative !important;
  z-index:1 !important;
  margin-bottom:clamp(8px, 1.1svh, 14px) !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card-row{
  position:relative !important;
  z-index:1 !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card{
  box-shadow:0 20px 44px rgba(0,0,0,.48), 0 0 20px rgba(255,255,255,.05) !important;
}
.z1n3-ink-home > .z1n3-ink-under-nav:last-of-type{
  position:relative !important;
  z-index:6 !important;
  margin-top:clamp(8px, 1.1svh, 14px) !important;
}
@media (max-width:960px){
  .z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero{
    height:min(72svh, calc(100svh - clamp(76px, 10svh, 118px) - 140px)) !important;
    min-height:clamp(390px, 60svh, 640px) !important;
  }
  .z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero__copy{
    width:min(30rem, 58%) !important;
  }
  .z1n3-ink-home > .z1n3-ink-latest{
    margin-top:clamp(-76px, -8svh, -50px) !important;
  }
}
@media (max-width:760px){
  .z1n3-ink-home{
    min-height:calc(100svh - 76px) !important;
  }
  .z1n3-ink-home > .z1n3-ink-hero-slider{
    min-height:calc(100svh - 76px - 10px) !important;
  }
  .z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero{
    height:min(66svh, calc(100svh - 76px - 138px)) !important;
    min-height:clamp(340px, 54svh, 540px) !important;
  }
  .z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero__copy{
    width:84% !important;
    left:16px !important;
    bottom:16px !important;
  }
  .z1n3-ink-home > .z1n3-ink-latest{
    margin-top:clamp(-64px, -7svh, -40px) !important;
    padding-top:16px !important;
  }
}
@media (max-width:520px){
  .z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero{
    height:min(62svh, calc(100svh - 76px - 132px)) !important;
    min-height:320px !important;
  }
  .z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero strong{
    font-size:clamp(2.9rem, 13vw, 4.8rem) !important;
  }
  .z1n3-ink-home > .z1n3-ink-latest{
    margin-top:clamp(-54px, -6svh, -34px) !important;
  }
}


/* ======================================================================
   v1337-01.12 — BIGGER ARTICLES
   Enlarge the latest-articles cards so they visually match the more
   dominant category hero and feel more cinematic.
   ====================================================================== */
.z1n3-ink-home > .z1n3-ink-latest{
  margin-top:clamp(-98px, -9.5svh, -62px) !important;
  padding-top:clamp(20px, 2.2svh, 28px) !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card-row{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0,1fr)) !important;
  gap:clamp(14px, 2vw, 22px) !important;
  align-items:stretch !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card{
  height:clamp(320px, 40svh, 520px) !important;
  min-height:0 !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card.is-compact{
  height:clamp(320px, 40svh, 520px) !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card__content{
  inset:auto clamp(16px, 2.4vw, 28px) clamp(16px, 2.6vw, 28px) !important;
  gap:clamp(7px, 1svh, 12px) !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card__title{
  font-size:clamp(2.35rem, 5vw, 4.8rem) !important;
  line-height:.86 !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-readline{
  font-size:clamp(.9rem, 1.9vw, 1.05rem) !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card__thumbs{
  width:min(100%, 22rem) !important;
  gap:10px !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card__thumbs img{
  min-height:56px !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-under-nav{
  margin-top:clamp(10px, 1.2svh, 16px) !important;
}

@media (min-width:1180px){
  .z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card{
    height:clamp(340px, 42svh, 540px) !important;
  }
}

@media (max-width:960px){
  .z1n3-ink-home > .z1n3-ink-latest{
    margin-top:clamp(-82px, -8.5svh, -50px) !important;
  }
  .z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card{
    height:clamp(300px, 35svh, 440px) !important;
  }
  .z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card__title{
    font-size:clamp(2.15rem, 4.8vw, 3.9rem) !important;
  }
}

@media (max-width:760px){
  .z1n3-ink-home > .z1n3-ink-latest{
    margin-top:clamp(-70px, -7svh, -42px) !important;
  }
  .z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card-row{
    display:flex !important;
    overflow-x:auto !important;
    scroll-snap-type:x mandatory !important;
    -webkit-overflow-scrolling:touch !important;
    scrollbar-width:none !important;
    gap:14px !important;
    padding-bottom:2px !important;
  }
  .z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card-row::-webkit-scrollbar{
    display:none !important;
  }
  .z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card-row .z1n3-ink-card{
    flex:0 0 84vw !important;
    height:clamp(320px, 41svh, 470px) !important;
    scroll-snap-align:center !important;
  }
}

@media (max-width:520px){
  .z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card-row .z1n3-ink-card{
    flex-basis:88vw !important;
    height:clamp(300px, 43svh, 430px) !important;
  }
  .z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card__title{
    font-size:clamp(2rem, 9.6vw, 3.4rem) !important;
  }
}


/* ======================================================================
   v1337-01.16 — centered popup + square skull background
   Make the popup truly center in the viewport and use the new square
   center-focused skull image as the default ambient site background.
   ====================================================================== */
body,
body::before{
  --z-rotating-bg:url("../img/background-skull-square-center.webp") !important;
}
body::before{
  background-position:center center !important;
  background-size:cover !important;
}
#z1n3-foldout-menu[hidden]{
  display:none !important;
}
#z1n3-foldout-menu{
  position:fixed !important;
  inset:0 !important;
  z-index:99999 !important;
  width:100vw !important;
  height:100svh !important;
  min-height:100svh !important;
  padding:max(10px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left)) !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  background:rgba(0,0,0,.68) !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
  align-items:center !important;
  justify-content:center !important;
}
#z1n3-foldout-menu[data-open="true"]{
  display:flex !important;
}
#z1n3-foldout-menu > .z1n3-foldout-menu__inner,
#z1n3-foldout-menu > .z1n3-ink-menu__inner,
#z1n3-foldout-menu .z1n3-foldout-menu__inner.z1n3-ink-menu__inner{
  position:relative !important;
  inset:auto !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;
  transform:none !important;
  margin:auto !important;
  width:min(94vw, 1080px) !important;
  max-width:min(94vw, 1080px) !important;
  max-height:min(92svh, 920px) !important;
  overflow:auto !important;
  overflow-x:hidden !important;
  align-self:center !important;
  justify-self:center !important;
  box-sizing:border-box !important;
}
#z1n3-foldout-menu .z1n3-foldout-menu__header,
#z1n3-foldout-menu .z1n3-ink-menu__header{
  position:sticky !important;
  top:0 !important;
  z-index:2 !important;
}
@media (max-width: 782px){
  #z1n3-foldout-menu{
    padding:max(8px, env(safe-area-inset-top)) max(8px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(8px, env(safe-area-inset-left)) !important;
  }
  #z1n3-foldout-menu > .z1n3-foldout-menu__inner,
  #z1n3-foldout-menu > .z1n3-ink-menu__inner,
  #z1n3-foldout-menu .z1n3-foldout-menu__inner.z1n3-ink-menu__inner{
    width:calc(100vw - 16px) !important;
    max-width:calc(100vw - 16px) !important;
    max-height:calc(100svh - 16px) !important;
  }
}

/* ======================================================================
   v1337-01.17 — HEADER LOCK + REAL HOME SLIDERS + BACKGROUND LIFT
   Fixes:
   - lock title/subtitle/logo alignment
   - move hero navigation right under the hero
   - turn latest articles back into a real one-at-a-time slider
   - lift the ambient square background so it is actually visible
   ====================================================================== */

body::before{
  opacity:.40 !important;
  filter:grayscale(1) contrast(1.16) brightness(.62) !important;
  background-position:center center !important;
  background-size:cover !important;
}

.z1n3-ink-header-shell{
  width:min(1180px, calc(100vw - 24px)) !important;
  min-height:78px !important;
  height:auto !important;
  padding:12px 0 !important;
  gap:12px !important;
}
.z1n3-ink-header-shell .z1n3-site-brand,
.z1n3-site-brand.z1n3-site-brand--home{
  max-width:none !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  gap:12px !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__stack{
  display:grid !important;
  grid-template-columns:minmax(0,max-content) auto !important;
  align-items:end !important;
  gap:10px !important;
  min-width:0 !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__text{
  font-size:clamp(2.2rem, 5.6vw, 4.4rem) !important;
  line-height:.84 !important;
  letter-spacing:.028em !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:unset !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__version{
  margin:0 0 .14em 0 !important;
  font-size:clamp(.66rem, 1.08vw, .84rem) !important;
  line-height:1.02 !important;
  letter-spacing:.12em !important;
}
@media (max-width:720px){
  .z1n3-ink-header-shell{
    width:calc(100vw - 18px) !important;
    gap:10px !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand{
    gap:10px !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand > img{
    width:46px !important;
    height:46px !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand__text{
    font-size:clamp(1.9rem, 7.8vw, 2.8rem) !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand__version{
    display:none !important;
  }
  .z1n3-ink-menu-trigger{
    width:50px !important;
    height:50px !important;
  }
}

.z1n3-ink-home{
  gap:clamp(8px,1svh,14px) !important;
  padding-bottom:clamp(10px,1.4svh,20px) !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider{
  min-height:auto !important;
  gap:8px !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero-slider__viewport{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x mandatory !important;
  scrollbar-width:none !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero-slider__viewport::-webkit-scrollbar{
  display:none !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero-slider__track{
  display:flex !important;
  gap:14px !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero-slide{
  flex:0 0 100% !important;
  scroll-snap-align:start !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero{
  height:clamp(340px, 56svh, 620px) !important;
  min-height:0 !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero__copy{
  width:min(34rem, 56%) !important;
  left:clamp(18px, 3vw, 42px) !important;
  bottom:clamp(16px, 2.8svh, 30px) !important;
}
.z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero-nav{
  position:relative !important;
  z-index:10 !important;
  margin-top:2px !important;
}
.z1n3-ink-home > .z1n3-ink-latest{
  margin-top:0 !important;
  padding-top:0 !important;
  background:none !important;
}
.z1n3-ink-home > .z1n3-ink-latest::before{
  display:none !important;
}

.z1n3-ink-latest-slider{
  display:flex !important;
  flex-direction:column !important;
  gap:clamp(8px,1svh,14px) !important;
}
.z1n3-ink-latest-slider__viewport{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x mandatory !important;
  scrollbar-width:none !important;
}
.z1n3-ink-latest-slider__viewport::-webkit-scrollbar{
  display:none !important;
}
.z1n3-ink-latest-slider__track,
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-latest-slider__track{
  display:flex !important;
  gap:14px !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-latest-slider__track .z1n3-ink-card{
  flex:0 0 100% !important;
  width:100% !important;
  height:clamp(270px, 42svh, 460px) !important;
  scroll-snap-align:start !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-card__title{
  font-size:clamp(2.15rem, 5.8vw, 4.9rem) !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-under-nav{
  margin-top:4px !important;
  gap:8px !important;
}
.z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-section-head{
  margin-bottom:0 !important;
}
.z1n3-ink-page-count{
  font-family:var(--ink-display) !important;
  font-size:clamp(.72rem,1.7vw,.92rem) !important;
  letter-spacing:.14em !important;
  text-transform:uppercase !important;
}

@media (max-width:760px){
  .z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero{
    height:clamp(300px, 49svh, 470px) !important;
  }
  .z1n3-ink-home > .z1n3-ink-hero-slider .z1n3-ink-hero__copy{
    width:82% !important;
    left:16px !important;
    bottom:16px !important;
  }
  .z1n3-ink-home > .z1n3-ink-latest .z1n3-ink-latest-slider__track .z1n3-ink-card{
    height:clamp(250px, 38svh, 390px) !important;
  }
}

/* ======================================================================
   v1337-01.19 — HEADER + CENTERED POPUP + GALLERY LIGHTBOX RESTORE
   ====================================================================== */

/* locked, calmer header: no jumping, no clipping */
.z1n3-ink-header-shell{
  width:min(1180px, calc(100vw - 28px)) !important;
  margin:0 auto !important;
  padding:clamp(10px,1.5vw,16px) 0 !important;
  height:clamp(86px,10svh,116px) !important;
  min-height:0 !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  gap:clamp(12px,2vw,24px) !important;
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.z1n3-ink-header-shell .z1n3-site-brand,
.z1n3-site-brand.z1n3-site-brand--home{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:center !important;
  gap:clamp(12px,1.8vw,22px) !important;
  min-width:0 !important;
  width:100% !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
  background:transparent !important;
  border:0 !important;
}
.z1n3-ink-header-shell .z1n3-site-brand > img{
  flex:0 0 auto !important;
  width:clamp(54px,6.2svh,76px) !important;
  height:clamp(54px,6.2svh,76px) !important;
  object-fit:contain !important;
  margin:0 !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__stack{
  display:flex !important;
  flex-direction:row !important;
  align-items:flex-end !important;
  justify-content:flex-start !important;
  gap:clamp(10px,1.55vw,18px) !important;
  min-width:0 !important;
  max-width:100% !important;
  overflow:visible !important;
  white-space:nowrap !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__text{
  font-family:var(--ink-display) !important;
  font-size:clamp(2.55rem,5.35vw,4.6rem) !important;
  line-height:.82 !important;
  letter-spacing:.03em !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-overflow:unset !important;
  max-width:none !important;
  color:#fff !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__version{
  display:block !important;
  flex:0 0 auto !important;
  align-self:flex-end !important;
  margin:0 0 .08em 0 !important;
  padding-left:clamp(9px,1.2vw,14px) !important;
  border-left:1px solid rgba(255,255,255,.28) !important;
  font-size:clamp(.68rem,1.05vw,.84rem) !important;
  line-height:1.04 !important;
  letter-spacing:.12em !important;
  color:rgba(255,255,255,.68) !important;
  white-space:nowrap !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__hint,
.z1n3-ink-header-shell .z1n3-site-brand__menu-word{display:none !important;}
.z1n3-ink-menu-trigger{
  justify-self:end !important;
  align-self:center !important;
  width:clamp(58px,6.8svh,78px) !important;
  height:clamp(58px,6.8svh,78px) !important;
  flex:0 0 auto !important;
  margin:0 !important;
}
@media (max-width:760px){
  .z1n3-ink-header-shell{width:calc(100vw - 22px) !important; height:80px !important; gap:10px !important;}
  .z1n3-ink-header-shell .z1n3-site-brand{justify-content:flex-start !important; gap:10px !important;}
  .z1n3-ink-header-shell .z1n3-site-brand > img{width:48px !important;height:48px !important;}
  .z1n3-ink-header-shell .z1n3-site-brand__text{font-size:clamp(2rem,8vw,3.15rem) !important;}
  .z1n3-ink-header-shell .z1n3-site-brand__version{display:none !important;}
  .z1n3-ink-menu-trigger{width:52px !important;height:52px !important;}
}

/* popup menu: true viewport-centered card, not left-docked */
#z1n3-foldout-menu[hidden]{display:none !important;}
#z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu,
#z1n3-foldout-menu{
  position:fixed !important;
  inset:0 !important;
  width:100vw !important;
  height:100dvh !important;
  min-height:100dvh !important;
  z-index:999999 !important;
  padding:max(10px, env(safe-area-inset-top)) max(12px, env(safe-area-inset-right)) max(12px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left)) !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  background:rgba(0,0,0,.72) !important;
  backdrop-filter:blur(12px) !important;
  -webkit-backdrop-filter:blur(12px) !important;
}
#z1n3-foldout-menu[data-open="true"]{
  display:grid !important;
  place-items:center !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
#z1n3-foldout-menu .z1n3-ink-menu__inner{
  position:relative !important;
  inset:auto !important;
  transform:none !important;
  margin:0 auto !important;
  width:min(94vw,1080px) !important;
  max-width:min(94vw,1080px) !important;
  height:auto !important;
  max-height:calc(100dvh - 24px) !important;
  min-height:min(78dvh,780px) !important;
  overflow:auto !important;
  overflow-x:hidden !important;
  place-self:center !important;
  display:grid !important;
  grid-template-rows:auto 1fr auto !important;
}
#z1n3-foldout-menu .z1n3-ink-menu__header{
  position:sticky !important;
  top:0 !important;
  z-index:5 !important;
  background:linear-gradient(180deg,rgba(3,3,3,.98),rgba(3,3,3,.82)) !important;
}
#z1n3-foldout-menu .z1n3-ink-menu__header a{
  display:flex !important;
  align-items:center !important;
  min-width:0 !important;
}
#z1n3-foldout-menu .z1n3-ink-menu__header strong{
  overflow:visible !important;
  white-space:nowrap !important;
  font-size:clamp(2.3rem,5.5vw,4.4rem) !important;
}
@media (max-width:760px){
  #z1n3-foldout-menu .z1n3-ink-menu__inner{
    width:calc(100vw - 16px) !important;
    max-width:calc(100vw - 16px) !important;
    min-height:min(86dvh,820px) !important;
    max-height:calc(100dvh - 16px) !important;
  }
  #z1n3-foldout-menu .z1n3-ink-menu__header span{display:none !important;}
}

/* Lightbox polish for restored gallery system */
.z1n3-lightbox::backdrop{background:rgba(0,0,0,.9) !important;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);}
.z1n3-lightbox{
  width:min(96vw,1280px) !important;
  max-width:min(96vw,1280px) !important;
  height:min(94dvh,920px) !important;
  max-height:94dvh !important;
  margin:auto !important;
  padding:0 !important;
  border:0 !important;
  background:#020202 !important;
  color:#fff !important;
  box-shadow:0 0 0 1px rgba(255,255,255,.14),0 0 40px rgba(255,255,255,.08),0 28px 80px rgba(0,0,0,.72) !important;
}
.z1n3-lightbox__inner{height:100%;display:grid;grid-template-rows:auto 1fr auto auto;gap:10px;padding:clamp(10px,1.8vw,22px);box-sizing:border-box;}
.z1n3-lightbox__topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.z1n3-lightbox__actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.z1n3-lightbox__speed{display:flex;gap:6px;flex-wrap:wrap;}
.z1n3-lightbox__speed button,.z1n3-lightbox__play,.z1n3-lightbox__close{
  background:#080808 !important;color:#fff !important;border:1px solid rgba(255,255,255,.22) !important;border-radius:999px !important;padding:.55em .8em !important;font-family:var(--ink-display) !important;letter-spacing:.1em !important;text-transform:uppercase !important;
}
.z1n3-lightbox__speed button[aria-pressed="true"],.z1n3-lightbox__play[aria-pressed="true"]{background:#fff !important;color:#000 !important;}
.z1n3-lightbox__frame{position:relative;display:grid;place-items:center;overflow:hidden;border-radius:clamp(14px,2vw,24px);background:#000;}
.z1n3-lightbox__frame img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;filter:grayscale(1) contrast(1.08);}
.z1n3-lightbox__nav{position:absolute;top:50%;transform:translateY(-50%);width:clamp(44px,6svh,68px);height:clamp(44px,6svh,68px);border-radius:999px !important;border:1px solid rgba(255,255,255,.3) !important;background:rgba(0,0,0,.62) !important;color:#fff !important;font-size:2rem !important;}
.z1n3-lightbox__nav.is-prev{left:10px}.z1n3-lightbox__nav.is-next{right:10px}
.z1n3-lightbox__progress{height:3px;background:rgba(255,255,255,.12);overflow:hidden;border-radius:999px}.z1n3-lightbox__progress span{display:block;height:100%;width:0;background:#fff;}
.z1n3-lightbox__meta{font-size:.9rem;color:rgba(255,255,255,.72);display:flex;justify-content:space-between;gap:12px;}
.z1n3-lightbox-toggle{cursor:zoom-in;}

/* ======================================================================
   v1337-01.21 — BACKGROUND VISIBILITY FIX
   The square skull background was present, but later homepage CSS painted
   a solid black layer over it. This makes the ambient background visible.
   ====================================================================== */
html{
  background:#000 !important;
}
body{
  background:#000 !important;
  isolation:isolate !important;
}
body::before{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  z-index:0 !important;
  display:block !important;
  pointer-events:none !important;
  background-image:
    radial-gradient(circle at center, rgba(0,0,0,.08) 0%, rgba(0,0,0,.32) 62%, rgba(0,0,0,.72) 100%),
    var(--z-rotating-bg, url("../img/background-skull-square-center.webp")) !important;
  background-size:cover, cover !important;
  background-position:center center, center center !important;
  background-repeat:no-repeat, no-repeat !important;
  opacity:.54 !important;
  filter:grayscale(1) contrast(1.18) brightness(.78) !important;
  mix-blend-mode:normal !important;
}
body::after{
  content:"" !important;
  position:fixed !important;
  inset:0 !important;
  z-index:1 !important;
  pointer-events:none !important;
  background:
    linear-gradient(180deg, rgba(0,0,0,.38) 0%, rgba(0,0,0,.18) 20%, rgba(0,0,0,.42) 100%),
    radial-gradient(circle at center, rgba(255,255,255,.03), rgba(0,0,0,.10) 52%, rgba(0,0,0,.42) 100%) !important;
}
.wp-site-blocks{
  position:relative !important;
  z-index:2 !important;
  background:transparent !important;
}
body.home .wp-site-blocks,
body.blog .wp-site-blocks,
body.archive .wp-site-blocks,
body.single .wp-site-blocks,
.wp-site-blocks > main,
.wp-site-blocks > .wp-block-group,
.z1n3-ink-template-shell,
.z1n3-ink-footer-shell{
  background:transparent !important;
}
/* Keep panels dark, but not so opaque that the whole page kills the ambient art. */
.z1n3-ink-hero,
.z1n3-ink-card,
.z1n3-ink-single-card,
.z1n3-comments,
.z1n3-ink-next,
.z1n3-ink-bottom-nav{
  background-color:rgba(0,0,0,.46) !important;
}
@media (max-width:782px){
  body::before{
    opacity:.48 !important;
    background-size:cover, auto 100svh !important;
  }
}


/* ======================================================================
   v1337-01.22 — LEFT-LOCK HEADER + BODY-CENTER POPUP
   Final override: brand row starts left, menu stays right, popup centers
   against the actual viewport instead of any left-side wrapper.
   ====================================================================== */
.z1n3-ink-header-shell{
  width:calc(100vw - clamp(26px,4vw,56px)) !important;
  max-width:1180px !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  justify-content:stretch !important;
  padding:clamp(10px,1.4vw,16px) 0 !important;
}
.z1n3-ink-header-shell .z1n3-site-brand,
.z1n3-site-brand.z1n3-site-brand--home{
  justify-content:flex-start !important;
  justify-self:start !important;
  text-align:left !important;
  width:auto !important;
  max-width:100% !important;
  margin:0 !important;
  padding:0 !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__stack{
  justify-content:flex-start !important;
  align-items:flex-end !important;
  text-align:left !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__text{
  font-size:clamp(2.45rem,5.05vw,4.35rem) !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-align:left !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__version{
  font-size:clamp(.64rem,1vw,.8rem) !important;
}
.z1n3-ink-menu-trigger{
  justify-self:end !important;
  margin-left:clamp(12px,2vw,24px) !important;
}
@media (max-width:760px){
  .z1n3-ink-header-shell{
    width:calc(100vw - 18px) !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand__text{
    font-size:clamp(1.95rem,7.5vw,2.9rem) !important;
  }
}

html.z1n3-menu-open,
html.z1n3-menu-open body{
  overflow:hidden !important;
}
body > #z1n3-foldout-menu.z1n3-foldout-menu.z1n3-ink-menu,
body > #z1n3-foldout-menu{
  position:fixed !important;
  inset:0 !important;
  left:0 !important;
  right:0 !important;
  top:0 !important;
  bottom:0 !important;
  width:100vw !important;
  height:100vh !important;
  height:100dvh !important;
  min-width:100vw !important;
  max-width:none !important;
  margin:0 !important;
  transform:none !important;
  z-index:2147483647 !important;
  padding:max(10px,env(safe-area-inset-top)) max(12px,env(safe-area-inset-right)) max(12px,env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left)) !important;
  box-sizing:border-box !important;
  background:rgba(0,0,0,.78) !important;
  backdrop-filter:blur(14px) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  overflow:hidden !important;
}
body > #z1n3-foldout-menu[data-open="true"]{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  visibility:visible !important;
  opacity:1 !important;
  pointer-events:auto !important;
}
body > #z1n3-foldout-menu[hidden]{
  display:none !important;
}
body > #z1n3-foldout-menu .z1n3-ink-menu__inner{
  position:relative !important;
  left:auto !important;
  right:auto !important;
  top:auto !important;
  bottom:auto !important;
  transform:none !important;
  margin:auto !important;
  width:min(94vw,1080px) !important;
  max-width:min(94vw,1080px) !important;
  height:auto !important;
  min-height:min(76dvh,760px) !important;
  max-height:calc(100dvh - 24px) !important;
  overflow:auto !important;
}
@media (max-width:760px){
  body > #z1n3-foldout-menu .z1n3-ink-menu__inner{
    width:calc(100vw - 16px) !important;
    max-width:calc(100vw - 16px) !important;
    max-height:calc(100dvh - 16px) !important;
  }
}


/* ======================================================================
   v1337-01.23 — HEADER LEFT EDGE + FULL CATEGORY MENU
   Fix the empty left gap in the header and let the popup menu show all
   categories/menu items instead of the old five-item slice.
   ====================================================================== */
header.wp-block-template-part,
header.wp-block-template-part > *,
.z1n3-ink-header-shell,
.z1n3-ink-header-shell > *{
  max-width:none !important;
  margin-left:0 !important;
  margin-right:0 !important;
  box-sizing:border-box !important;
}
.z1n3-ink-header-shell{
  width:100% !important;
  max-width:none !important;
  padding-left:clamp(28px,5vw,58px) !important;
  padding-right:clamp(18px,3vw,34px) !important;
  display:grid !important;
  grid-template-columns:minmax(0,1fr) auto !important;
  align-items:center !important;
  justify-items:stretch !important;
  column-gap:clamp(14px,2vw,28px) !important;
}
.z1n3-ink-header-shell .z1n3-site-brand,
.z1n3-site-brand.z1n3-site-brand--home{
  grid-column:1 !important;
  justify-self:start !important;
  align-self:center !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:clamp(12px,1.6vw,18px) !important;
  width:auto !important;
  max-width:100% !important;
  min-width:0 !important;
  transform:none !important;
}
.z1n3-ink-header-shell .z1n3-site-brand > img{
  flex:0 0 auto !important;
  margin:0 !important;
  width:clamp(54px,6.5vw,72px) !important;
  height:clamp(54px,6.5vw,72px) !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__stack{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:flex-end !important;
  justify-content:flex-start !important;
  gap:clamp(10px,1.4vw,16px) !important;
  min-width:0 !important;
  width:auto !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__text{
  flex:0 1 auto !important;
  font-size:clamp(2.35rem,4.9vw,4.2rem) !important;
  line-height:.84 !important;
  white-space:nowrap !important;
  overflow:visible !important;
  text-align:left !important;
}
.z1n3-ink-header-shell .z1n3-site-brand__version{
  flex:0 0 auto !important;
  display:block !important;
  font-size:clamp(.62rem,1vw,.78rem) !important;
  line-height:1.05 !important;
  margin:0 0 .12em !important;
}
.z1n3-ink-menu-trigger{
  grid-column:2 !important;
  justify-self:end !important;
  align-self:center !important;
  margin:0 !important;
  position:relative !important;
  top:auto !important;
  right:auto !important;
}
@media (max-width:760px){
  .z1n3-ink-header-shell{
    padding-left:18px !important;
    padding-right:12px !important;
    column-gap:10px !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand > img{
    width:46px !important;
    height:46px !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand__text{
    font-size:clamp(1.85rem,7.4vw,2.75rem) !important;
  }
  .z1n3-ink-header-shell .z1n3-site-brand__version{
    display:none !important;
  }
}

/* Popup menu: all categories, scrollable, still centered. */
#z1n3-foldout-menu .z1n3-ink-menu__inner{
  min-height:min(78dvh,820px) !important;
  display:grid !important;
  grid-template-rows:auto minmax(0,1fr) auto !important;
}
#z1n3-foldout-menu .z1n3-ink-menu__tiles{
  display:flex !important;
  flex-direction:column !important;
  gap:clamp(8px,1svh,12px) !important;
  overflow:auto !important;
  min-height:0 !important;
  padding-right:2px !important;
}
#z1n3-foldout-menu .z1n3-ink-menu-tile{
  flex:0 0 auto !important;
  min-height:clamp(82px,10svh,124px) !important;
}
#z1n3-foldout-menu .z1n3-ink-menu-tile span{
  font-size:clamp(2rem,5.2vw,4.3rem) !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
@media (max-width:760px){
  #z1n3-foldout-menu .z1n3-ink-menu-tile{
    min-height:clamp(72px,9svh,104px) !important;
  }
  #z1n3-foldout-menu .z1n3-ink-menu-tile span{
    font-size:clamp(1.75rem,8vw,3rem) !important;
  }
}


/* ======================================================================
   v1337-01.24 — MENU FIT + COLOR LIGHTBOX
   Menu tiles are slightly smaller and contained so the popup no longer
   creates accidental sideways scroll. Lightbox shows source images in their
   original color; site thumbnails/cards remain black-and-white.
   ====================================================================== */
body > #z1n3-foldout-menu,
#z1n3-foldout-menu{
  overflow:hidden !important;
  overflow-x:hidden !important;
}
body > #z1n3-foldout-menu .z1n3-ink-menu__inner,
#z1n3-foldout-menu .z1n3-ink-menu__inner{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  box-sizing:border-box !important;
}
#z1n3-foldout-menu .z1n3-ink-menu__tiles{
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding-right:4px !important;
  padding-left:0 !important;
  box-sizing:border-box !important;
}
#z1n3-foldout-menu .z1n3-ink-menu-tile{
  box-sizing:border-box !important;
  width:100% !important;
  max-width:100% !important;
  min-width:0 !important;
  display:grid !important;
  grid-template-columns:clamp(26px,3.6svh,42px) minmax(0,1fr) clamp(44px,6svh,64px) !important;
  gap:clamp(10px,1.6vw,18px) !important;
  padding:clamp(9px,1.35svh,16px) clamp(10px,1.8vw,20px) !important;
  min-height:clamp(72px,8.8svh,108px) !important;
  overflow:hidden !important;
}
#z1n3-foldout-menu .z1n3-ink-menu-tile > img{
  width:clamp(24px,3.4svh,40px) !important;
  height:clamp(24px,3.4svh,40px) !important;
}
#z1n3-foldout-menu .z1n3-ink-menu-tile span{
  min-width:0 !important;
  max-width:100% !important;
  font-size:clamp(1.65rem,4.6vw,3.7rem) !important;
  line-height:.88 !important;
  white-space:nowrap !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
}
#z1n3-foldout-menu .z1n3-ink-menu-tile b{
  width:clamp(40px,5.4svh,58px) !important;
  height:clamp(40px,5.4svh,58px) !important;
  font-size:clamp(1.35rem,3.2vw,2.35rem) !important;
  justify-self:end !important;
}
@media (max-width:760px){
  #z1n3-foldout-menu .z1n3-ink-menu-tile{
    grid-template-columns:34px minmax(0,1fr) 52px !important;
    gap:10px !important;
    padding:10px 12px !important;
    min-height:76px !important;
  }
  #z1n3-foldout-menu .z1n3-ink-menu-tile > img{
    width:30px !important;
    height:30px !important;
  }
  #z1n3-foldout-menu .z1n3-ink-menu-tile span{
    font-size:clamp(1.55rem,6.8vw,2.7rem) !important;
    letter-spacing:.035em !important;
  }
  #z1n3-foldout-menu .z1n3-ink-menu-tile b{
    width:48px !important;
    height:48px !important;
  }
}

/* Lightbox is the one place images stay original/full color. */
.z1n3-lightbox__frame,
.z1n3-lightbox__frame *{
  filter:none !important;
}
.z1n3-lightbox__frame img,
.z1n3-lightbox img[data-lightbox-image],
dialog.z1n3-lightbox img[data-lightbox-image]{
  filter:none !important;
  -webkit-filter:none !important;
  mix-blend-mode:normal !important;
  opacity:1 !important;
}


/* ======================================================================
   v1337-01.25 — CATEGORY ARTICLE VIEWPORT SCALE
   Category/archive article cards now scale larger and respond to the
   viewport like proper feature slides instead of small tiles.
   ====================================================================== */
.z1n3-ink-archive{
  gap:clamp(12px, 1.6svh, 22px) !important;
}
.z1n3-ink-archive .z1n3-ink-page-title{
  padding-inline:clamp(4px, 1vw, 12px) !important;
  gap:clamp(4px, .8svh, 8px) !important;
}
.z1n3-ink-archive .z1n3-ink-page-title h1{
  font-size:clamp(4.8rem, 13vw, 11.5rem) !important;
  line-height:.78 !important;
  max-width:10ch !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider{
  display:flex !important;
  flex-direction:column !important;
  gap:clamp(10px, 1.3svh, 18px) !important;
  min-height:0 !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider__viewport{
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x mandatory !important;
  -webkit-overflow-scrolling:touch !important;
  scrollbar-width:none !important;
  margin-inline:calc(clamp(14px,3vw,32px) * -1) !important;
  padding-inline:clamp(18px, 5vw, 84px) !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider__viewport::-webkit-scrollbar{
  display:none !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider__track{
  display:flex !important;
  gap:clamp(16px, 2.4vw, 32px) !important;
  align-items:stretch !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card{
  flex:0 0 min(88vw, 980px) !important;
  width:min(88vw, 980px) !important;
  height:clamp(520px, 68svh, 820px) !important;
  min-height:0 !important;
  scroll-snap-align:center !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card__content{
  inset:auto clamp(22px, 3vw, 44px) clamp(22px, 3vw, 42px) !important;
  gap:clamp(8px, 1.2svh, 16px) !important;
  width:min(72%, 44rem) !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card__title{
  font-size:clamp(4rem, 9.6vw, 8.8rem) !important;
  line-height:.82 !important;
  max-width:10ch !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-kicker{
  font-size:clamp(.9rem, 1.8vw, 1.15rem) !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card__thumbs{
  width:min(100%, 34rem) !important;
  gap:clamp(8px, 1vw, 12px) !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card__thumbs img{
  min-height:clamp(58px, 8svh, 92px) !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-readline,
.z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-more{
  font-size:clamp(.9rem, 1.8vw, 1.08rem) !important;
}
.z1n3-ink-archive .z1n3-ink-feature-slider > .z1n3-ink-under-nav{
  margin-top:0 !important;
  position:relative !important;
  z-index:5 !important;
}

@media (min-width:1200px){
  .z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card{
    flex-basis:min(82vw, 1040px) !important;
    width:min(82vw, 1040px) !important;
    height:clamp(580px, 70svh, 860px) !important;
  }
}

@media (max-width:900px){
  .z1n3-ink-archive .z1n3-ink-page-title h1{
    font-size:clamp(4.2rem, 16vw, 8rem) !important;
  }
  .z1n3-ink-archive .z1n3-ink-feature-slider__viewport{
    padding-inline:clamp(16px, 4vw, 44px) !important;
  }
  .z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card{
    flex-basis:86vw !important;
    width:86vw !important;
    height:clamp(480px, 62svh, 720px) !important;
  }
  .z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card__title{
    font-size:clamp(3.4rem, 10.5vw, 6.7rem) !important;
  }
  .z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card__content{
    width:min(82%, 38rem) !important;
  }
}

@media (max-width:640px){
  .z1n3-ink-archive .z1n3-ink-feature-slider__viewport{
    margin-inline:-10px !important;
    padding-inline:12px !important;
  }
  .z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card{
    flex-basis:88vw !important;
    width:88vw !important;
    height:clamp(430px, 60svh, 640px) !important;
  }
  .z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card__content{
    width:86% !important;
    inset:auto 18px 18px !important;
  }
  .z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card__title{
    font-size:clamp(3rem, 13vw, 5rem) !important;
  }
  .z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card__thumbs{
    grid-template-columns:repeat(3, minmax(0,1fr)) !important;
  }
  .z1n3-ink-archive .z1n3-ink-feature-slider .z1n3-ink-card__thumbs img:nth-child(n+4){
    display:none !important;
  }
}


/* v1337-01.26 — real paged read-more article links */
.z1n3-ink-archive-links{display:flex;align-items:center;justify-content:center;gap:clamp(10px,2vw,18px);flex-wrap:wrap}
.z1n3-ink-archive-nav .z1n3-ink-more{margin:.2em .35em}


/* ======================================================================
   v1337-01.27 — DESKTOP/LAPTOP SCROLL RESTORE
   Some earlier viewport experiments over-locked the page height/overflow.
   Restore normal document scrolling everywhere except inside active modal
   components, while keeping horizontal sliders intact.
   ====================================================================== */
html,
body{
  height:auto !important;
  min-height:100% !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  overscroll-behavior-y:auto !important;
  touch-action:auto !important;
}
.wp-site-blocks,
.z1n3-ink-template-shell,
.z1n3-ink-viewport,
.z1n3-ink-home,
.z1n3-ink-archive,
.z1n3-ink-single{
  height:auto !important;
  max-height:none !important;
  overflow:visible !important;
}
/* Do not let a stale menu-open class kill laptop scrolling.
   The popup overlay itself remains fixed/scrollable when opened. */
html.z1n3-menu-open:not(:has(#z1n3-foldout-menu[data-open="true"])),
html.z1n3-menu-open:not(:has(#z1n3-foldout-menu[data-open="true"])) body{
  overflow-y:auto !important;
}
/* Fallback for browsers without :has(): keep body scroll available. */
html.z1n3-menu-open,
html.z1n3-menu-open body{
  overflow-y:auto !important;
}
#z1n3-foldout-menu[data-open="true"],
.z1n3-lightbox[open]{
  touch-action:auto !important;
}
.z1n3-ink-hero-slider__viewport,
.z1n3-ink-latest-slider__viewport,
.z1n3-ink-feature-slider__viewport,
.z1n3-slider__viewport{
  overflow-x:auto !important;
  overflow-y:hidden !important;
}
@media (pointer:fine){
  body{
    overflow-y:scroll !important;
  }
}

/* NYA patch: original upload restored + color-on-hover/touch only.
   No glow, no press scaling. Images stay black-and-white until hovered with a mouse
   or lightly touched on iPad/iPhone, then they return to full source color. */
.is-pressed{
  transform:none !important;
  box-shadow:inherit !important;
}

.z1n3-post-tile,
.z1n3-category-card,
.z1n3-ink-hero__link,
.z1n3-ink-card__link,
.z1n3-ink-menu-tile,
.z1n3-ink-next,
.z1n3-ink-single-hero,
.z1n3-ink-thumb-strip img,
.z1n3-lightbox__frame img,
.z1n3-reader .wp-block-post-featured-image img,
.z1n3-reader .wp-block-post-content img,
.z1n3-reader .wp-block-gallery img,
.z1n3-post-tile__image img{
  transition:filter .22s ease, -webkit-filter .22s ease, opacity .22s ease !important;
  transform:none !important;
}

.z1n3-post-tile:hover,
.z1n3-post-tile:focus-within,
.z1n3-post-tile.is-touch-color,
.z1n3-post-tile.is-pointer-color,
.z1n3-post-tile:hover .z1n3-post-tile__image img,
.z1n3-post-tile:focus-within .z1n3-post-tile__image img,
.z1n3-post-tile.is-touch-color .z1n3-post-tile__image img,
.z1n3-post-tile.is-pointer-color .z1n3-post-tile__image img,
.z1n3-category-card:hover,
.z1n3-category-card:focus-visible,
.z1n3-category-card.is-touch-color,
.z1n3-category-card.is-pointer-color,
.z1n3-ink-hero__link:hover,
.z1n3-ink-hero__link:focus-visible,
.z1n3-ink-hero__link.is-touch-color,
.z1n3-ink-hero__link.is-pointer-color,
.z1n3-ink-card__link:hover,
.z1n3-ink-card__link:focus-visible,
.z1n3-ink-card__link.is-touch-color,
.z1n3-ink-card__link.is-pointer-color,
.z1n3-ink-menu-tile:hover,
.z1n3-ink-menu-tile:focus-visible,
.z1n3-ink-menu-tile.is-touch-color,
.z1n3-ink-menu-tile.is-pointer-color,
.z1n3-ink-next:hover,
.z1n3-ink-next:focus-visible,
.z1n3-ink-next.is-touch-color,
.z1n3-ink-next.is-pointer-color,
.z1n3-ink-single-hero:hover,
.z1n3-ink-single-hero.is-touch-color,
.z1n3-ink-single-hero.is-pointer-color,
.z1n3-ink-thumb-strip img:hover,
.z1n3-ink-thumb-strip img:focus-visible,
.z1n3-ink-thumb-strip img.is-touch-color,
.z1n3-ink-thumb-strip img.is-pointer-color,
.z1n3-lightbox__frame img:hover,
.z1n3-lightbox__frame img.is-touch-color,
.z1n3-lightbox__frame img.is-pointer-color,
.z1n3-reader .wp-block-post-featured-image img:hover,
.z1n3-reader .wp-block-post-featured-image img:focus-visible,
.z1n3-reader .wp-block-post-featured-image img.is-touch-color,
.z1n3-reader .wp-block-post-featured-image img.is-pointer-color,
.z1n3-reader .wp-block-post-content img:hover,
.z1n3-reader .wp-block-post-content img:focus-visible,
.z1n3-reader .wp-block-post-content img.is-touch-color,
.z1n3-reader .wp-block-post-content img.is-pointer-color,
.z1n3-reader .wp-block-gallery img:hover,
.z1n3-reader .wp-block-gallery img:focus-visible,
.z1n3-reader .wp-block-gallery img.is-touch-color,
.z1n3-reader .wp-block-gallery img.is-pointer-color{
  filter:none !important;
  -webkit-filter:none !important;
  opacity:1 !important;
  transform:none !important;
  box-shadow:inherit !important;
}

@media (hover:hover){
  .z1n3-post-tile:hover,
  .z1n3-category-card:hover,
  .z1n3-ink-hero__link:hover,
  .z1n3-ink-card__link:hover,
  .z1n3-ink-menu-tile:hover,
  .z1n3-ink-next:hover,
  .z1n3-ink-single-hero:hover,
  .z1n3-ink-thumb-strip img:hover,
  .z1n3-lightbox__frame img:hover,
  .z1n3-reader .wp-block-post-content img:hover,
  .z1n3-reader .wp-block-gallery img:hover{
    filter:none !important;
    -webkit-filter:none !important;
    opacity:1 !important;
  }
}

/* ======================================================================
   v1337-01.21 — article gallery slider repair + true colour-on-hover/touch
   ====================================================================== */
.z1n3-reader .wp-block-gallery,
.z1n3-reader .wp-block-gallery .blocks-gallery-grid{
  display:flex !important;
  flex-wrap:nowrap !important;
  gap:14px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scroll-snap-type:x mandatory !important;
  -webkit-overflow-scrolling:touch !important;
  overscroll-behavior-x:contain !important;
  touch-action:pan-x pan-y !important;
  scrollbar-width:thin;
}
.z1n3-reader .wp-block-gallery .wp-block-image,
.z1n3-reader .wp-block-gallery figure,
.z1n3-reader .wp-block-gallery .blocks-gallery-item{
  flex:0 0 clamp(13rem, 72vw, 24rem) !important;
  width:clamp(13rem, 72vw, 24rem) !important;
  max-width:none !important;
  scroll-snap-align:center !important;
  scroll-snap-stop:always !important;
}
@media (min-width: 48rem){
  .z1n3-reader .wp-block-gallery .wp-block-image,
  .z1n3-reader .wp-block-gallery figure,
  .z1n3-reader .wp-block-gallery .blocks-gallery-item{
    flex-basis:clamp(15rem, 34vw, 28rem) !important;
    width:clamp(15rem, 34vw, 28rem) !important;
  }
}
.z1n3-gallery-slider{
  position:relative;
  margin:0 0 1rem;
}
.z1n3-gallery-slider__nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:8px;
}
.z1n3-gallery-slider__button{
  min-width:44px;
  min-height:44px;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(0,0,0,.72);
  color:#fff;
  font:900 1.1rem/1 var(--z-font-display, inherit);
  cursor:pointer;
}
.z1n3-gallery-slider__button:disabled{
  opacity:.38;
  cursor:default;
}
.z1n3-gallery-slider__status{
  min-width:4.5rem;
  text-align:center;
  color:rgba(255,255,255,.82);
  font-weight:800;
  letter-spacing:.08em;
}
.z1n3-gallery-slider .wp-block-gallery{
  margin-bottom:0 !important;
}

/* The requested behaviour: black-and-white when idle, real colour on hover/focus/touch. */
.z1n3-post-tile:hover,
.z1n3-post-tile:focus-within,
.z1n3-post-tile.is-touch-color,
.z1n3-post-tile.is-pointer-color,
.z1n3-reader .wp-block-post-featured-image img:hover,
.z1n3-reader .wp-block-post-featured-image img.is-touch-color,
.z1n3-reader .wp-block-post-featured-image img.is-pointer-color,
.z1n3-reader .wp-block-post-content > p > img:hover,
.z1n3-reader .wp-block-post-content > p > img.is-touch-color,
.z1n3-reader .wp-block-post-content > p > img.is-pointer-color,
.z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img:hover,
.z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img.is-touch-color,
.z1n3-reader .wp-block-post-content > figure:not(.wp-block-gallery) img.is-pointer-color,
.z1n3-reader .wp-block-post-content > img:hover,
.z1n3-reader .wp-block-post-content > img.is-touch-color,
.z1n3-reader .wp-block-post-content > img.is-pointer-color,
.z1n3-reader .wp-block-gallery img:hover,
.z1n3-reader .wp-block-gallery img.is-touch-color,
.z1n3-reader .wp-block-gallery img.is-pointer-color,
.z1n3-reader .wp-block-gallery .wp-block-image:hover img,
.z1n3-reader .wp-block-gallery .wp-block-image:focus-within img,
.z1n3-reader .wp-block-gallery figure:hover img,
.z1n3-reader .wp-block-gallery figure:focus-within img{
  opacity:1 !important;
  filter:grayscale(0) brightness(1) contrast(1) !important;
  box-shadow:0 12px 24px rgba(0,0,0,.24) !important;
}
.z1n3-post-tile:hover .z1n3-post-tile__image img,
.z1n3-post-tile:focus-within .z1n3-post-tile__image img,
.z1n3-post-tile.is-touch-color .z1n3-post-tile__image img,
.z1n3-post-tile.is-pointer-color .z1n3-post-tile__image img{
  opacity:1 !important;
  filter:grayscale(0) brightness(1) contrast(1) !important;
}

/* ======================================================================
   v1337-01.22 — single article gallery must actually scroll
   The INK single template uses .z1n3-ink-thumb-strip, not the WP gallery
   block. It was a fixed grid, so iPad/desktop had no horizontal overflow.
   ====================================================================== */
.z1n3-ink-single .z1n3-ink-thumb-strip{
  display:flex !important;
  grid-template-columns:none !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  gap:clamp(10px, 1.8vw, 18px) !important;
  width:100% !important;
  min-width:0 !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  -webkit-overflow-scrolling:touch !important;
  overscroll-behavior-x:contain !important;
  scroll-snap-type:x mandatory !important;
  scroll-behavior:smooth !important;
  touch-action:pan-x pan-y !important;
  scrollbar-width:thin !important;
  padding:clamp(12px, 1.6svh, 18px) 0 clamp(10px, 1.4svh, 16px) !important;
  cursor:grab;
}
.z1n3-ink-single .z1n3-ink-thumb-strip:active{
  cursor:grabbing;
}
.z1n3-ink-single .z1n3-ink-thumb-strip::-webkit-scrollbar{
  height:8px !important;
}
.z1n3-ink-single .z1n3-ink-thumb-strip::-webkit-scrollbar-thumb{
  background:rgba(255,255,255,.35) !important;
  border-radius:999px !important;
}
.z1n3-ink-single .z1n3-ink-thumb-strip a{
  flex:0 0 min(78vw, 560px) !important;
  width:min(78vw, 560px) !important;
  max-width:none !important;
  display:block !important;
  scroll-snap-align:center !important;
  scroll-snap-stop:always !important;
  color:inherit !important;
  text-decoration:none !important;
  -webkit-user-drag:none;
}
.z1n3-ink-single .z1n3-ink-thumb-strip img{
  display:block !important;
  width:100% !important;
  height:clamp(190px, 34svh, 420px) !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  user-select:none !important;
  -webkit-user-select:none !important;
  -webkit-user-drag:none !important;
}
@media (min-width: 760px){
  .z1n3-ink-single .z1n3-ink-thumb-strip a{
    flex-basis:min(46vw, 600px) !important;
    width:min(46vw, 600px) !important;
  }
  .z1n3-ink-single .z1n3-ink-thumb-strip img{
    height:clamp(240px, 34svh, 460px) !important;
  }
}
@media (orientation:landscape) and (max-height:760px){
  .z1n3-ink-single .z1n3-ink-thumb-strip a{
    flex-basis:min(42vw, 520px) !important;
    width:min(42vw, 520px) !important;
  }
  .z1n3-ink-single .z1n3-ink-thumb-strip img{
    height:clamp(150px, 28svh, 260px) !important;
  }
}
/* Undo older mobile rule that hid the fifth gallery item. */
.z1n3-ink-single .z1n3-ink-thumb-strip a:nth-child(n+5){
  display:block !important;
}
.z1n3-single-gallery-nav{
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  margin-top:clamp(4px, .8svh, 8px);
}
.z1n3-single-gallery-nav button{
  width:44px;
  min-width:44px;
  height:44px;
  border:1px solid rgba(255,255,255,.22) !important;
  border-radius:999px !important;
  background:rgba(0,0,0,.72) !important;
  color:#fff !important;
  font:900 1.15rem/1 var(--ink-display, inherit);
  cursor:pointer;
}
.z1n3-single-gallery-nav button:disabled{
  opacity:.38;
  cursor:default;
}
.z1n3-single-gallery-nav span{
  min-width:4.5rem;
  text-align:center;
  font-family:var(--ink-display, inherit);
  letter-spacing:.12em;
  color:#fff;
}


/* ======================================================================
   v1337-01.23 — definitive single article gallery SLIDER
   Real indexed slider: arrows/touch/keyboard move the gallery, not just scroll.
   ====================================================================== */
.z1n3-single-gallery-shell{
  width:100% !important;
  min-width:0 !important;
  margin:clamp(10px, 1.5svh, 18px) 0 !important;
}
.z1n3-single-gallery-viewport{
  width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
  border-top:1px solid var(--ink-line, rgba(255,255,255,.18)) !important;
  padding-top:clamp(10px,1.5svh,16px) !important;
  touch-action:pan-y !important;
  cursor:grab !important;
  user-select:none !important;
  -webkit-user-select:none !important;
}
.z1n3-single-gallery-viewport.is-dragging{
  cursor:grabbing !important;
}
.z1n3-single-gallery-shell .z1n3-ink-thumb-strip,
.z1n3-ink-single .z1n3-single-gallery-track{
  display:flex !important;
  grid-template-columns:none !important;
  flex-wrap:nowrap !important;
  gap:clamp(10px,1.8vw,18px) !important;
  width:100% !important;
  max-width:none !important;
  min-width:0 !important;
  overflow:visible !important;
  scroll-snap-type:none !important;
  scroll-behavior:auto !important;
  scrollbar-width:none !important;
  padding:0 !important;
  border-top:0 !important;
  transform:translate3d(0,0,0);
  transition:transform .34s cubic-bezier(.2,.72,.18,1) !important;
  will-change:transform;
}
.z1n3-single-gallery-shell .z1n3-ink-thumb-strip::-webkit-scrollbar{
  display:none !important;
}
.z1n3-single-gallery-shell .z1n3-ink-thumb-strip > a,
.z1n3-single-gallery-shell .z1n3-ink-thumb-strip > figure,
.z1n3-single-gallery-shell .z1n3-ink-thumb-strip > .wp-block-image{
  flex:0 0 100% !important;
  width:100% !important;
  min-width:100% !important;
  max-width:100% !important;
  display:block !important;
  scroll-snap-align:none !important;
  opacity:.72;
  transition:opacity .24s ease, filter .24s ease !important;
  color:inherit !important;
  text-decoration:none !important;
  -webkit-user-drag:none !important;
}
.z1n3-single-gallery-shell .z1n3-ink-thumb-strip > .is-active{
  opacity:1;
}
.z1n3-single-gallery-shell .z1n3-ink-thumb-strip img{
  display:block !important;
  width:100% !important;
  height:clamp(220px, 39svh, 520px) !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  border:1px solid var(--ink-line, rgba(255,255,255,.18)) !important;
  border-radius:12px !important;
  user-select:none !important;
  -webkit-user-select:none !important;
  -webkit-user-drag:none !important;
}
@media (orientation:landscape) and (max-height:760px){
  .z1n3-single-gallery-shell .z1n3-ink-thumb-strip img{
    height:clamp(160px, 32svh, 300px) !important;
  }
}
.z1n3-single-gallery-shell .z1n3-ink-thumb-strip a:nth-child(n+5){
  display:block !important;
}
.z1n3-single-gallery-shell .z1n3-single-gallery-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  margin-top:clamp(8px, 1.2svh, 14px) !important;
}
.z1n3-single-gallery-shell .z1n3-single-gallery-nav button{
  width:48px !important;
  min-width:48px !important;
  height:48px !important;
  border:1px solid rgba(255,255,255,.3) !important;
  border-radius:999px !important;
  background:#050505 !important;
  color:#fff !important;
  font:900 1.25rem/1 var(--ink-display, inherit) !important;
  cursor:pointer !important;
  display:grid !important;
  place-content:center !important;
}
.z1n3-single-gallery-shell .z1n3-single-gallery-nav button:disabled{
  opacity:.35 !important;
  cursor:default !important;
}
.z1n3-single-gallery-shell .z1n3-single-gallery-nav span{
  min-width:5rem !important;
  text-align:center !important;
  font-family:var(--ink-display, inherit) !important;
  letter-spacing:.12em !important;
  color:#fff !important;
}

/* ======================================================================
   NYA hotfix — single article gallery is a slider from first paint.
   The PHP now outputs the slider shell directly, and these rules override
   every older five-column/grid/mobile-gallery rule in this file.
   ====================================================================== */
.z1n3-ink-single .z1n3-single-gallery-shell{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  margin:clamp(10px,1.5svh,18px) 0 !important;
}
.z1n3-ink-single .z1n3-single-gallery-viewport{
  display:block !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
  border-top:1px solid var(--ink-line, rgba(255,255,255,.18)) !important;
  padding-top:clamp(10px,1.5svh,16px) !important;
  touch-action:pan-y !important;
  cursor:grab !important;
}
.z1n3-ink-single .z1n3-single-gallery-viewport.is-dragging{ cursor:grabbing !important; }
.z1n3-ink-single .z1n3-single-gallery-track,
.z1n3-ink-single .z1n3-single-gallery-shell .z1n3-ink-thumb-strip,
.z1n3-ink-single article .z1n3-single-gallery-shell .z1n3-ink-thumb-strip{
  display:flex !important;
  grid-template-columns:none !important;
  grid-auto-flow:unset !important;
  flex-flow:row nowrap !important;
  align-items:stretch !important;
  gap:0 !important;
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  overflow:visible !important;
  overflow-x:visible !important;
  overflow-y:visible !important;
  border:0 !important;
  padding:0 !important;
  margin:0 !important;
  scroll-snap-type:none !important;
  scrollbar-width:none !important;
  transform:translate3d(0,0,0);
  transition:transform .34s cubic-bezier(.2,.72,.18,1) !important;
  will-change:transform;
}
.z1n3-ink-single .z1n3-single-gallery-track > a,
.z1n3-ink-single .z1n3-single-gallery-shell .z1n3-ink-thumb-strip > a{
  flex:0 0 100% !important;
  width:100% !important;
  min-width:100% !important;
  max-width:100% !important;
  display:block !important;
  padding:0 !important;
  margin:0 !important;
  color:inherit !important;
  text-decoration:none !important;
  scroll-snap-align:none !important;
  opacity:.74;
  transition:opacity .24s ease !important;
  -webkit-user-drag:none !important;
}
.z1n3-ink-single .z1n3-single-gallery-track > a.is-active,
.z1n3-ink-single .z1n3-single-gallery-shell .z1n3-ink-thumb-strip > a.is-active{ opacity:1 !important; }
.z1n3-ink-single .z1n3-single-gallery-track > a:nth-child(n),
.z1n3-ink-single .z1n3-single-gallery-shell .z1n3-ink-thumb-strip > a:nth-child(n){ display:block !important; }
.z1n3-ink-single .z1n3-single-gallery-track img,
.z1n3-ink-single .z1n3-single-gallery-shell .z1n3-ink-thumb-strip img{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:clamp(220px,39svh,520px) !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  border:1px solid var(--ink-line, rgba(255,255,255,.18)) !important;
  border-radius:12px !important;
  user-select:none !important;
  -webkit-user-select:none !important;
  -webkit-user-drag:none !important;
}
.z1n3-ink-single .z1n3-single-gallery-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  margin-top:clamp(8px,1.2svh,14px) !important;
}
.z1n3-ink-single .z1n3-single-gallery-nav button{
  width:48px !important;
  min-width:48px !important;
  height:48px !important;
  border:1px solid rgba(255,255,255,.3) !important;
  border-radius:999px !important;
  background:#050505 !important;
  color:#fff !important;
  font:900 1.25rem/1 var(--ink-display, inherit) !important;
  cursor:pointer !important;
  display:grid !important;
  place-content:center !important;
}
.z1n3-ink-single .z1n3-single-gallery-nav button:disabled{ opacity:.35 !important; cursor:default !important; }
.z1n3-ink-single .z1n3-single-gallery-nav span{
  min-width:5rem !important;
  text-align:center !important;
  font-family:var(--ink-display, inherit) !important;
  letter-spacing:.12em !important;
  color:#fff !important;
}
@media (orientation:landscape) and (max-height:760px){
  .z1n3-ink-single .z1n3-single-gallery-track img,
  .z1n3-ink-single .z1n3-single-gallery-shell .z1n3-ink-thumb-strip img{ height:clamp(160px,32svh,300px) !important; }
}


/* ======================================================================
   Single article gallery: keep the working indexed slider, but display
   each slide as a small thumbnail instead of a full-width feature image.
   ====================================================================== */
.z1n3-ink-single .z1n3-single-gallery-shell{
  margin:clamp(8px,1.2svh,14px) 0 !important;
}
.z1n3-ink-single .z1n3-single-gallery-viewport{
  padding-top:clamp(8px,1.2svh,12px) !important;
  min-height:clamp(118px,18svh,172px) !important;
  display:grid !important;
  align-items:center !important;
}
.z1n3-ink-single .z1n3-single-gallery-track > a,
.z1n3-ink-single .z1n3-single-gallery-shell .z1n3-ink-thumb-strip > a{
  display:grid !important;
  place-items:center !important;
}
.z1n3-ink-single .z1n3-single-gallery-track img,
.z1n3-ink-single .z1n3-single-gallery-shell .z1n3-ink-thumb-strip img{
  width:clamp(92px,14vw,148px) !important;
  max-width:148px !important;
  height:clamp(92px,14vw,148px) !important;
  max-height:148px !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  margin:0 auto !important;
  border-radius:10px !important;
}
.z1n3-ink-single .z1n3-single-gallery-nav{
  margin-top:clamp(6px,1svh,10px) !important;
}
.z1n3-ink-single .z1n3-single-gallery-nav button{
  width:40px !important;
  min-width:40px !important;
  height:40px !important;
  font-size:1rem !important;
}
@media (max-width:640px){
  .z1n3-ink-single .z1n3-single-gallery-track img,
  .z1n3-ink-single .z1n3-single-gallery-shell .z1n3-ink-thumb-strip img{
    width:clamp(84px,28vw,126px) !important;
    height:clamp(84px,28vw,126px) !important;
  }
}
