@font-face{
  font-family:"Kievit Serif";
  src:url("assets/fonts/KievitSerif-Extrabold.ttf") format("truetype");
  font-style:normal;
  font-weight:800;
  font-display:swap;
}


/*
Theme Name: NotedBuzz Dense Mosaic
Theme URI: https://notedbuzz.com/
Author: NotedBuzz
Description: Dense editorial mosaic layout with equal-width cards, alternating tall/short cards, no intentional blank gaps, and a white/black/gray/red visual theme.
Version: 6.6.8
License: GPL-2.0-or-later
Text Domain: notedbuzz
*/

:root{
  --nb-red:#ed1c24;
  --nb-black:#0b0b0b;
  --nb-dark:#171717;
  --nb-gray:#66717a;
  --nb-light:#f3f4f5;
  --nb-white:#fff;
  --nb-border:#d7d9dc;
  --nb-gap:10px;
}

*{box-sizing:border-box}
html,body{margin:0;padding:0}
body{
  font-family:"Vend Sans","VEND Sans","Inter",Arial,Helvetica,sans-serif;
  font-size:18px;
  line-height:1.6;
  color:var(--nb-dark);
  background:#eef0f2;
  min-width:320px;
  position:relative;
}

/* Attractive CSS-only blurred backdrop inspired by modern content-feed sites.
   No image file is required: soft blocks/auras sit behind the white cards. */
body:before{
  content:"";
  position:fixed;
  inset:-120px;
  z-index:0;
  pointer-events:none;
  background:
    radial-gradient(560px 360px at 7% 18%,rgba(188,205,220,.62),transparent 72%),
    radial-gradient(620px 400px at 94% 18%,rgba(238,198,202,.58),transparent 72%),
    radial-gradient(560px 360px at 72% 58%,rgba(201,216,228,.55),transparent 72%),
    radial-gradient(520px 350px at 17% 78%,rgba(229,214,202,.52),transparent 72%),
    radial-gradient(480px 320px at 48% 36%,rgba(220,225,229,.46),transparent 72%),
    linear-gradient(135deg,#eef1f3 0%,#f8f8f7 48%,#eceff1 100%);
  /* Stronger, more noticeable homepage backdrop blur. */
  filter:blur(68px);
  transform:scale(1.10);
}
body:after{
  content:"";
  position:fixed;
  inset:0;
  z-index:0;
  pointer-events:none;
  background:
    linear-gradient(90deg,rgba(255,255,255,.26),transparent 22%,transparent 78%,rgba(255,255,255,.24)),
    linear-gradient(180deg,rgba(255,255,255,.18),transparent 34%,rgba(255,255,255,.12));
}

.nb-top,.nb-shell,.nb-footer{position:relative;z-index:1}

a{color:inherit;text-decoration:none}
img{display:block;max-width:100%;height:auto}



/* ==================================================
   NOTEDBUZZ — KIEVIT SERIF WEBSITE HEADING FONT
   Applies Kievit Serif to all H1–H6 headings and theme
   article/card/page titles. Body text remains Vend Sans.
   ================================================== */
@font-face{
  font-family:"Kievit Serif";
  src:url("assets/fonts/kievit-serif.otf") format("opentype");
  font-style:normal;
  font-weight:400;
  font-display:swap;
}

h1,h2,h3,h4,h5,h6,
.nb-section-title h1,
.nb-card h2,
.nb-contact-box h2,
.nb-drawer h3{
  font-family:"Kievit Serif",Georgia,serif !important;
}

/* Global NotedBuzz typography */
h1,h2,h3,h4,h5,h6{
  font-family:"Kievit Serif",Georgia,serif;
}
/* Vend Sans is used when available; Inter/system sans are safe fallbacks. */
p,li,blockquote,input,textarea,select,button{
  font-family:"Vend Sans","VEND Sans","Inter",Arial,Helvetica,sans-serif;
}


.nb-top{
  height:72px;
  background:var(--nb-white);
  border-bottom:3px solid var(--nb-red);
  display:flex;
  align-items:center;
  padding:0 18px;
  position:sticky;
  top:0;
  z-index:50;
  box-shadow:0 1px 7px rgba(0,0,0,.12);
}
.nb-brand{
  display:flex;align-items:center;gap:0;
  min-width:0;
  flex:0 0 auto;
}
.nb-menu{
  width:38px;height:38px;border:0;background:none;cursor:pointer;
  display:flex;flex-direction:column;justify-content:center;gap:6px;padding:5px;
}
.nb-menu span{height:3px;background:var(--nb-black);width:100%;display:block}
.nb-logo{
  display:flex;
  align-items:center;
  width:320px;
  height:62px;
  flex:0 0 320px;
  overflow:visible;
}
.nb-logo img{
  display:block;
  width:320px;
  height:auto;
  max-width:none;
  object-fit:contain;
}
.nb-nav{display:flex;align-items:stretch;height:100%;margin-left:12px;min-width:0}
.nb-nav a{
  display:flex;align-items:center;padding:0 20px;
  font-weight:700;font-size:16px;color:#3f4a52;white-space:nowrap;
  border-top:3px solid transparent;
}
.nb-nav a:hover,.nb-nav a.current{color:var(--nb-black);border-top-color:var(--nb-red);background:#fafafa}
.nb-actions{margin-left:auto;display:flex;gap:9px;align-items:center}
.nb-btn{
  border:0;border-radius:5px;padding:11px 17px;font-weight:800;
  font-size:14px;cursor:pointer
}
.nb-learn{background:transparent;color:var(--nb-black);border:1px solid #cfd3d6}
.nb-login{background:transparent;color:#4f5960;border:1px solid #cfd3d6}
.nb-learn:hover,.nb-login:hover{background:#f5f6f7;color:var(--nb-black)}

.nb-shell{max-width:1780px;margin:0 auto;padding:12px 10px 45px}
.nb-section-title{
  display:flex;align-items:end;justify-content:space-between;
  margin:6px 0 12px;padding:0 2px;
}
.nb-section-title h1{margin:0;font-family:"Kievit Serif",Georgia,serif;font-weight:500;font-size:36px;line-height:1.02;letter-spacing:-.8px;color:#202326}
.nb-section-title p{margin:0;color:#5d676e;font-size:13px}

/*
  IMPORTANT:
  Every article has exactly one column width.
  No card spans multiple columns, so there are no "wide" cards.
  JS packs cards into the shortest column to remove the large holes
  caused by normal CSS grid rows.
*/
.nb-masonry{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:var(--nb-gap);
  align-items:start;
  position:relative;
}
.nb-masonry:before{
  content:"";
  position:absolute;
  inset:10px;
  z-index:-1;
  pointer-events:none;
  border-radius:28px;
  background:
    radial-gradient(360px 240px at 8% 16%,rgba(178,198,216,.38),transparent 72%),
    radial-gradient(390px 260px at 92% 24%,rgba(235,188,194,.34),transparent 72%),
    radial-gradient(420px 260px at 74% 82%,rgba(188,210,226,.32),transparent 72%),
    radial-gradient(330px 230px at 25% 76%,rgba(228,204,184,.30),transparent 72%);
  /* Stronger blur around the homepage mosaic itself. */
  filter:blur(56px);
  transform:scale(1.04);
}
.nb-col{display:flex;flex-direction:column;gap:var(--nb-gap);min-width:0}
.nb-card{
  background:var(--nb-white);
  border:1px solid var(--nb-border);
  overflow:hidden;
  box-shadow:0 1px 2px rgba(0,0,0,.10);
  position:relative;
}
.nb-card:hover{box-shadow:0 4px 15px rgba(0,0,0,.16)}
.nb-card-media{
  position:relative;
  background:#dfe2e4;
  overflow:hidden;
  width:100%;
  aspect-ratio:5 / 4; /* 1350 × 1080 poster ratio */
}
.nb-card-media img{
  width:100%;height:100%;object-fit:cover;
  transition:transform .25s ease;
}
.nb-card:hover .nb-card-media img{transform:scale(1.025)}
/* All homepage/archive card images use one consistent 1350 × 1080 (5:4) poster ratio. */
.nb-card.short .nb-card-media,.nb-card.tall .nb-card-media{height:auto}
.nb-card .nb-body{padding:13px 15px 15px}
.nb-card .nb-cat{
  font-size:11px;font-weight:900;letter-spacing:1.1px;
  color:var(--nb-red);margin-bottom:7px;text-transform:uppercase;
}
.nb-card h2{
  font-family:"Kievit Serif",Georgia,serif;
  font-size:22px;line-height:1.13;margin:0 0 9px;
  color:#26343d;font-weight:500;
  letter-spacing:-.25px;
}
.nb-card.tall h2{font-size:25px}
.nb-card p{
  color:#46535c;font-size:18px;line-height:1.6;margin:0 0 14px;
}
.nb-story-btn{
  display:inline-block;background:var(--nb-red);color:#fff;
  font-size:12px;font-weight:900;padding:9px 13px;text-transform:uppercase;
}
.nb-card.compact .nb-body{padding:10px 12px 12px}
.nb-card.compact h2{font-size:20px}
.nb-card.compact p{font-size:18px;line-height:1.6;margin-bottom:12px}

/* Ads never become accidental blank grid cards */
.nb-article-content,.nb-article-content p,.nb-article-content li{
  font-family:"Vend Sans","VEND Sans","Inter",Arial,Helvetica,sans-serif;
  font-size:18px !important;
  line-height:1.7;
}

.nb-ad{
  min-height:90px;background:rgba(255,255,255,.72);
  border:1px dashed #cfd3d6;display:flex;align-items:center;justify-content:center;
  color:#9aa1a6;font-size:10px;letter-spacing:1.3px;text-transform:uppercase;
  margin:4px 0;
}
.nb-footer{background:var(--nb-black);color:#fff;margin-top:20px;padding:42px 20px}
.nb-footer-inner{max-width:1780px;margin:auto;display:grid;grid-template-columns:minmax(220px,1.3fr) minmax(220px,1fr) minmax(260px,1.2fr) minmax(200px,.9fr);gap:34px;align-items:start}
.nb-footer-brand strong{display:block;font-size:24px;margin-bottom:10px}.nb-footer-brand p{margin:0;color:#aeb5ba;line-height:1.6;font-size:18px}
.nb-footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.nb-footer-heading{color:#fff;font-weight:800;text-transform:uppercase;letter-spacing:.08em;font-size:12px;margin-bottom:3px}
.nb-footer a{color:#d7d7d7;font-size:18px;text-decoration:none}.nb-footer a:hover{color:#fff;text-decoration:underline}
.nb-contact-box{margin-top:28px;padding:22px;border:1px solid #d7d9dc;background:#f7f8f9}.nb-contact-box h2{margin:0 0 10px;color:#171717}.nb-contact-box p{margin:8px 0;font-size:18px;line-height:1.6}.nb-contact-box a{color:#b3131b;font-weight:800}
@media(max-width:900px){.nb-footer-inner{grid-template-columns:1fr 1fr}}
@media(max-width:560px){.nb-footer-inner{grid-template-columns:1fr}}

.nb-overlay{
  display:none;position:fixed;inset:0;background:rgba(0,0,0,.72);z-index:100;
}
.nb-overlay.open{display:block}
.nb-drawer{
  width:min(340px,88vw);
  height:100%;
  background:#fff;
  color:#171717;
  padding:24px;
  box-shadow:4px 0 20px rgba(0,0,0,.22)
}
.nb-drawer h3{margin:0 0 18px;font-size:22px}
.nb-drawer-brand{padding:8px 0 22px;border-bottom:1px solid #d7d9dc;margin-bottom:4px}
.nb-drawer-brand img{width:185px;height:auto;max-width:100%}
.nb-drawer a{display:block;padding:13px 0;border-bottom:1px solid #d7d9dc;font-weight:700;color:#171717}
.nb-drawer a:hover{color:var(--nb-red)}
.nb-close{float:right;background:none;color:#171717;border:0;font-size:28px;cursor:pointer;line-height:1}

@media(max-width:1250px){
  .nb-masonry{grid-template-columns:repeat(4,minmax(0,1fr))}
  .nb-nav a{padding:0 13px;font-size:15px}
  .nb-brand{min-width:0}
}
@media(max-width:930px){
  .nb-masonry{grid-template-columns:repeat(3,minmax(0,1fr))}
  .nb-nav{display:none}
  .nb-brand{min-width:auto}
}
@media(max-width:650px){
  .nb-top{height:62px;padding:0 10px}
  .nb-logo{width:235px;height:52px;flex-basis:235px}
  .nb-logo img{width:235px}
  .nb-actions .nb-learn{display:none}
  .nb-masonry{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px}
  .nb-col{gap:7px}
  .nb-card.short .nb-card-media,.nb-card.tall .nb-card-media{height:auto}
  .nb-card .nb-body{padding:9px 10px 10px}
  .nb-section-title h1{font-size:30px}
  .nb-card h2,.nb-card.tall h2{font-size:18px}
  .nb-card p{font-size:12px}
  .nb-story-btn{font-size:10px;padding:7px 9px}
}
@media(max-width:760px){
  .nb-logo{width:215px;height:48px;flex-basis:215px}
  .nb-logo img{width:215px}
  .nb-actions{gap:6px}
  .nb-login{padding:9px 12px;font-size:13px}
}
@media(max-width:420px){
  .nb-logo{width:190px;height:44px;flex-basis:190px}
  .nb-logo img{width:190px}
  .nb-masonry{grid-template-columns:1fr}
  .nb-card.short .nb-card-media,.nb-card.tall .nb-card-media{height:auto}
}

/* ==================================================
   FINAL RESPONSIVE LOGO FIT — DESKTOP + MOBILE
   The logo always stays inside the header and preserves its original ratio.
   ================================================== */
.nb-brand{
  gap:0 !important;
  min-width:0 !important;
}
.nb-logo{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:250px !important;
  height:52px !important;
  flex:0 1 250px !important;
  min-width:0 !important;
  overflow:hidden !important;
}
.nb-logo img{
  display:block !important;
  width:auto !important;
  height:52px !important;
  max-width:100% !important;
  max-height:100% !important;
  object-fit:contain !important;
}
@media (max-width:760px){
  .nb-top{height:62px !important;}
  .nb-logo{
    width:215px !important;
    height:44px !important;
    flex:0 1 215px !important;
  }
  .nb-logo img{
    width:auto !important;
    height:44px !important;
    max-width:100% !important;
  }
}
@media (max-width:650px){
  .nb-logo{
    width:210px !important;
    height:44px !important;
    flex:0 1 210px !important;
  }
  .nb-logo img{height:44px !important;width:auto !important;}
}
@media (max-width:420px){
  .nb-top{padding:0 8px !important;}
  .nb-menu{width:36px !important;height:36px !important;}
  .nb-logo{
    width:170px !important;
    height:40px !important;
    flex:0 1 170px !important;
  }
  .nb-logo img{height:40px !important;width:auto !important;}
  .nb-login{padding:8px 10px !important;font-size:12px !important;}
}

/* ==================================================
   NOTEDBUZZ — FORCE ALL BLOG CARD IMAGES TO 1350×1080 (5:4)
   Homepage, category, archive and search listings
   ================================================== */
.nb-masonry .nb-card .nb-card-media{
  display:block !important;
  position:relative !important;
  width:100% !important;
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:5 / 4 !important;
  overflow:hidden !important;
}
.nb-masonry .nb-card .nb-card-media > img,
.nb-masonry .nb-card .nb-card-media img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-width:100% !important;
  max-width:none !important;
  aspect-ratio:auto !important;
  object-fit:cover !important;
  object-position:center center !important;
}
/* Remove any legacy tall/short image sizing from the mosaic cards. */
.nb-masonry .nb-card.short .nb-card-media,
.nb-masonry .nb-card.tall .nb-card-media{
  height:auto !important;
  min-height:0 !important;
  max-height:none !important;
  aspect-ratio:5 / 4 !important;
}

/* ==================================================
   FINAL LOGO FIX — SHOW THE COMPLETE NOTEDBUZZ LOGO
   The source logo is very wide (1482 × 277). Previous fixed heights
   made its calculated width larger than the logo container, causing
   the right side of “BUZZ” to be clipped.
   ================================================== */
.nb-top .nb-brand{
  flex:0 1 310px !important;
  min-width:0 !important;
  max-width:310px !important;
}
.nb-top .nb-logo{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  width:100% !important;
  height:auto !important;
  flex:1 1 auto !important;
  min-width:0 !important;
  overflow:visible !important;
}
.nb-top .nb-logo img{
  display:block !important;
  width:100% !important;
  max-width:300px !important;
  height:auto !important;
  max-height:none !important;
  object-fit:contain !important;
}

/* Mobile: let the logo use only the space left between menu and Login,
   while always shrinking proportionally instead of cutting the image. */
@media (max-width:930px){
  .nb-top .nb-brand{
    flex:1 1 auto !important;
    max-width:none !important;
  }
  .nb-top .nb-logo{
    min-width:0 !important;
  }
  .nb-top .nb-logo img{
    width:100% !important;
    max-width:300px !important;
    height:auto !important;
  }
}
@media (max-width:760px){
  .nb-top{gap:0 !important;}
  .nb-top .nb-brand{min-width:0 !important;}
  .nb-top .nb-menu{flex:0 0 38px !important;}
  .nb-top .nb-logo{padding-left:4px !important;}
  .nb-top .nb-logo img{max-width:280px !important;}
}
@media (max-width:420px){
  .nb-top .nb-menu{flex-basis:36px !important;}
  .nb-top .nb-logo{padding-left:2px !important;}
  .nb-top .nb-logo img{max-width:100% !important;}
  .nb-top .nb-actions{flex:0 0 auto !important;}
}


/* ==================================================
   NOTEDBUZZ FINAL CONSISTENCY PATCH
   Desktop and mobile sizing, typography and 5:4 media.
   ================================================== */

/* Never allow the site shell to be visually scaled down. */
html{
  width:100%;
  -webkit-text-size-adjust:100%;
  text-size-adjust:100%;
}
body{
  width:100%;
  min-width:320px;
  overflow-x:hidden;
  zoom:1;
}

/* Use the full editorial width on desktop while keeping safe side spacing. */
.nb-shell{
  width:100%;
  max-width:1780px;
  margin-left:auto;
  margin-right:auto;
}

/* The homepage card image is always a 1350:1080 (5:4) display box. */
.nb-card-media{
  aspect-ratio:1350 / 1080 !important;
}
.nb-card-media img,
.nb-card-media > img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
  object-position:center center;
}

/* Single posts and pages keep their featured image at the same poster ratio. */
.nb-shell > article .nb-card-media{
  aspect-ratio:1350 / 1080 !important;
  overflow:hidden !important;
}
.nb-shell > article .nb-card-media img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

/* Heading system: one serif family across all editorial headings. */
h1,h2,h3,h4,h5,h6,
.nb-card h2,
.nb-section-title h1,
.entry-title,
.page-title,
.archive-title,
.search-title,
.widget-title{
  font-family:"Kievit Serif",Georgia,serif !important;
}

/* Keep normal reading text visually consistent. */
body,p,li,input,textarea,select,button{
  font-family:"Vend Sans","VEND Sans","Inter",Arial,Helvetica,sans-serif;
}

/* Desktop cards remain readable and aligned. */
@media (min-width:931px){
  .nb-card .nb-body{padding:13px 15px 15px;}
  .nb-card h2{font-size:22px;line-height:1.13;}
  .nb-card.tall h2{font-size:25px;}
}

/* Mobile: one clean full-width story column, matching the approved screenshot. */
@media (max-width:420px){
  .nb-shell{padding:12px 10px 30px;}
  .nb-section-title{align-items:flex-end;gap:16px;}
  .nb-section-title h1{font-size:30px;line-height:1.02;}
  .nb-section-title p{font-size:14px;line-height:1.4;max-width:58%;}
  .nb-card .nb-body{padding:14px 18px 18px;}
  .nb-card h2,.nb-card.tall h2{font-size:24px;line-height:1.12;}
  .nb-card p{font-size:18px;line-height:1.6;}
  .nb-story-btn{font-size:12px;padding:10px 15px;}
}

/* ==================================================
   FINAL TYPOGRAPHY LOCK
   Article and post headings: Kievit Serif ExtraBold
   Article and post body content: Vend Sans
   ================================================== */

/* Keep the local Kievit Serif file as the source and allow the browser
   to render the requested heavy ExtraBold appearance where an 800-weight
   font file is not separately supplied. */
h1,h2,h3,h4,h5,h6,
.entry-title,
.page-title,
.archive-title,
.search-title,
.widget-title,
.nb-section-title h1,
.nb-card h2,
.nb-contact-box h2,
.nb-drawer h3,
.nb-article-content h1,
.nb-article-content h2,
.nb-article-content h3,
.nb-article-content h4,
.nb-article-content h5,
.nb-article-content h6{
  font-family:"Kievit Serif",Georgia,serif !important;
  font-weight:800 !important;
  font-synthesis:none;
}

/* Every article/post title is permanently locked to Kievit Serif ExtraBold. */
.nb-card h2,
.nb-card h2 a,
.single-post .nb-card h1,
.single .nb-card h1,
.entry-title{
  font-family:"Kievit Serif",Georgia,serif !important;
  font-weight:800 !important;
  font-synthesis:none;
}

/* All reading/body content is permanently locked to Vend Sans. */
body,
p,
li,
blockquote,
figcaption,
input,
textarea,
select,
button,
.nb-card p,
.nb-section-title p,
.nb-article-content,
.nb-article-content p,
.nb-article-content li,
.nb-article-content blockquote,
.nb-article-content figcaption,
.nb-article-content table,
.nb-article-content td,
.nb-article-content th{
  font-family:"Vend Sans","VEND Sans",Inter,Arial,Helvetica,sans-serif !important;
}

/* Preserve the requested Vend Sans body typography inside all article content. */
.nb-article-content,
.nb-article-content p,
.nb-article-content li{
  font-weight:400 !important;
}

/* Article titles and article content cannot be overridden by WordPress/editor styles. */
.nb-card .nb-body > h1,
.nb-card .nb-body > h2,
.nb-card .nb-body > h3,
.nb-card .nb-body > h4,
.nb-card .nb-body > h5,
.nb-card .nb-body > h6{
  font-family:"Kievit Serif",Georgia,serif !important;
  font-weight:800 !important;
  font-synthesis:none;
}

/* ==================================================
   NOTEDBUZZ 2026 EDITORIAL VISUAL UPDATE
   - Self-contained paper/concrete texture background
   - Shorter, padded logo with clear breathing room
   - Christopher-Nolan-style editorial article layout
   - Black + NotedBuzz red typography accents
   ================================================== */

/* Load the requested Vend Sans family from Google Fonts via functions.php. */
:root{
  --nb-paper:#f5f2ec;
  --nb-editorial-black:#101010;
  --nb-editorial-red:#ed1c24;
  --nb-editorial-muted:#4e4e4e;
}

/* Whole-site texture: the supplied concrete/paper texture is copied into assets. */
body{
  background:#f5f2ec url("assets/notedbuzz-paper-texture.jpg") center center / cover fixed no-repeat !important;
  color:var(--nb-editorial-black);
}
body:before{
  background:rgba(248,246,241,.78) !important;
  filter:none !important;
  transform:none !important;
}
body:after{
  background:linear-gradient(90deg,rgba(255,255,255,.12),transparent 22%,transparent 78%,rgba(255,255,255,.12)) !important;
  opacity:.65 !important;
}

/* Header: more breathing room around the logo and a shorter logo footprint. */
.nb-top{
  height:72px !important;
  padding:0 28px !important;
  gap:18px !important;
  background:rgba(255,255,255,.96) !important;
}
.nb-top .nb-brand{
  flex:0 0 auto !important;
  max-width:none !important;
  min-width:0 !important;
  gap:14px !important;
}
.nb-top .nb-menu{
  flex:0 0 38px !important;
}
.nb-top .nb-logo{
  width:218px !important;
  height:42px !important;
  flex:0 0 218px !important;
  padding:0 8px !important;
  overflow:visible !important;
}
.nb-top .nb-logo img{
  width:202px !important;
  height:auto !important;
  max-width:202px !important;
  max-height:42px !important;
  object-fit:contain !important;
}
.nb-nav{
  margin-left:12px !important;
}
.nb-nav a{
  padding-left:24px !important;
  padding-right:24px !important;
}

/* Article pages use the texture as the actual canvas, not a white card. */
.nb-article-shell{
  width:100%;
  max-width:1480px;
  margin:0 auto;
  padding:36px 46px 90px;
  position:relative;
  z-index:1;
}
.nb-editorial-article{
  color:var(--nb-editorial-black);
}
.nb-editorial-masthead{
  display:grid;
  grid-template-columns:1fr 220px 1fr;
  align-items:center;
  gap:36px;
  margin-bottom:42px;
}
.nb-editorial-intro{
  max-width:330px;
  font-family:"Vend Sans",Arial,sans-serif !important;
  font-size:15px;
  line-height:1.38;
  color:#171717;
}
.nb-editorial-logo{
  display:flex;
  align-items:center;
  justify-content:center;
  padding:0 12px;
}
.nb-editorial-logo img{
  width:170px;
  height:auto;
}
.nb-editorial-meta{
  justify-self:end;
  text-align:right;
  font-family:"Vend Sans",Arial,sans-serif !important;
  font-size:14px;
  line-height:1.5;
  color:#171717;
}

.nb-editorial-hero{
  display:grid;
  grid-template-columns:minmax(0,1.02fr) minmax(420px,.98fr);
  gap:54px;
  align-items:start;
}
.nb-editorial-copy{
  padding-top:2px;
}
.nb-editorial-copy .nb-cat{
  font-family:"Vend Sans",Arial,sans-serif !important;
  color:var(--nb-editorial-red);
  font-size:11px;
  font-weight:700;
  letter-spacing:.12em;
  text-transform:uppercase;
  margin-bottom:16px;
}
.nb-editorial-title{
  margin:0 0 22px !important;
  font-family:"Kievit Serif",Georgia,serif !important;
  font-weight:800 !important;
  font-size:clamp(48px,5.1vw,84px) !important;
  line-height:.96 !important;
  letter-spacing:-.035em !important;
  color:#0b0b0b !important;
}
.nb-red-text{
  color:var(--nb-editorial-red) !important;
}
.nb-editorial-dek,
.nb-editorial-dek p{
  font-family:"Vend Sans",Arial,sans-serif !important;
  font-size:20px !important;
  line-height:1.42 !important;
  color:#181818 !important;
  max-width:650px;
}
.nb-editorial-dek p{margin:0 0 12px !important}
.nb-editorial-image{
  margin:0;
  position:relative;
  min-height:620px;
  overflow:hidden;
  background:#222;
}
.nb-editorial-image img{
  width:100% !important;
  height:100% !important;
  min-height:620px;
  object-fit:cover !important;
  object-position:center center;
}

.nb-editorial-content{
  max-width:1360px;
  margin:62px auto 0;
  padding:0;
  column-count:2;
  column-gap:58px;
  font-family:"Vend Sans",Arial,sans-serif !important;
  font-size:19px;
  line-height:1.68;
  color:#111;
}
.nb-editorial-content > *{
  break-inside:avoid;
}
.nb-editorial-content p,
.nb-editorial-content li,
.nb-editorial-content blockquote,
.nb-editorial-content figcaption,
.nb-editorial-content table{
  font-family:"Vend Sans",Arial,sans-serif !important;
  color:#111;
}
.nb-editorial-content p{margin:0 0 20px}
.nb-editorial-content strong,
.nb-editorial-content b{font-weight:700}
.nb-editorial-content em{font-style:italic}
.nb-editorial-content mark,
.nb-editorial-content .nb-red,
.nb-editorial-content span.nb-red-text{
  color:var(--nb-editorial-red) !important;
  background:transparent !important;
  font-weight:700;
}
.nb-editorial-content h2,
.nb-editorial-content h3,
.nb-editorial-content h4{
  font-family:"Kievit Serif",Georgia,serif !important;
  font-weight:800 !important;
  color:#080808 !important;
  letter-spacing:-.025em;
  break-after:avoid;
}
.nb-editorial-content h2{font-size:54px;line-height:.94;margin:30px 0 18px}
.nb-editorial-content h3{font-size:38px;line-height:1;margin:28px 0 14px}
.nb-editorial-content h4{font-size:28px;line-height:1.05;margin:22px 0 12px}
.nb-editorial-content blockquote{
  margin:26px 0;
  padding:12px 0 12px 22px;
  border-left:5px solid var(--nb-editorial-red);
  font-family:"Kievit Serif",Georgia,serif !important;
  font-size:30px;
  line-height:1.05;
}

@media(max-width:1000px){
  .nb-top{padding:0 20px !important}
  .nb-top .nb-logo{width:190px !important;flex-basis:190px !important}
  .nb-top .nb-logo img{width:176px !important;max-width:176px !important}
  .nb-article-shell{padding:28px 28px 70px}
  .nb-editorial-masthead{grid-template-columns:1fr 170px 1fr;gap:18px}
  .nb-editorial-hero{grid-template-columns:1fr 1fr;gap:32px}
  .nb-editorial-image,.nb-editorial-image img{min-height:520px}
  .nb-editorial-content{column-gap:36px}
}
@media(max-width:760px){
  .nb-top{height:62px !important;padding:0 12px !important;gap:8px !important}
  .nb-top .nb-brand{gap:7px !important}
  .nb-top .nb-logo{width:165px !important;height:38px !important;flex-basis:165px !important;padding:0 5px !important}
  .nb-top .nb-logo img{width:155px !important;max-width:155px !important;max-height:38px !important}
  .nb-article-shell{padding:22px 18px 60px}
  .nb-editorial-masthead{grid-template-columns:1fr;justify-items:center;text-align:center;gap:14px;margin-bottom:30px}
  .nb-editorial-intro{max-width:500px}
  .nb-editorial-meta{justify-self:center;text-align:center}
  .nb-editorial-hero{grid-template-columns:1fr;gap:28px}
  .nb-editorial-title{font-size:54px !important}
  .nb-editorial-dek,.nb-editorial-dek p{font-size:18px !important}
  .nb-editorial-image,.nb-editorial-image img{min-height:520px}
  .nb-editorial-content{column-count:1;margin-top:40px;font-size:18px}
  .nb-editorial-content h2{font-size:44px}
}
@media(max-width:420px){
  .nb-top .nb-logo{width:145px !important;flex-basis:145px !important}
  .nb-top .nb-logo img{width:136px !important;max-width:136px !important}
  .nb-editorial-title{font-size:45px !important}
  .nb-editorial-image,.nb-editorial-image img{min-height:430px}
}

/* ==================================================
   NOTEDBUZZ 6.0 — POLISHED SITE SYSTEM
   Full-width editorial pages, subtle controls, accessible states,
   and a restrained corporate/editorial look.
   ================================================== */
:root{
  --nb-red:#e51d25;
  --nb-ink:#101214;
  --nb-muted:#667078;
  --nb-line:#e4e7e9;
  --nb-page:#fff;
  --nb-soft:#f5f6f7;
}

.nb-skip-link{
  position:fixed;left:16px;top:-60px;z-index:1000;
  padding:10px 14px;background:#111;color:#fff;border-radius:4px;
  font-size:14px;font-weight:700;transition:top .15s ease;
}
.nb-skip-link:focus{top:12px}

/* The supplied logo is a compact mark; do not squeeze it into a tiny crop. */
.nb-top .nb-logo{width:230px !important;height:50px !important;flex:0 0 230px !important;padding:0 !important;overflow:visible !important}
.nb-top .nb-logo img{width:220px !important;height:auto !important;max-width:220px !important;max-height:50px !important;object-fit:contain !important}
.nb-drawer-brand img{width:205px;max-width:100%;height:auto}
.nb-editorial-logo img{width:180px;height:auto}

/* Normal, familiar links instead of oversized app-like buttons. */
.nb-btn{
  background:transparent !important;color:#1a1c1f !important;
  border:0 !important;border-radius:0 !important;
  padding:8px 2px !important;font-size:14px !important;font-weight:700 !important;
  position:relative;
}
.nb-btn:after{content:"";position:absolute;left:0;right:0;bottom:3px;height:1px;background:currentColor;transform:scaleX(0);transform-origin:left;transition:transform .18s ease}
.nb-btn:hover:after,.nb-btn:focus-visible:after{transform:scaleX(1)}
.nb-login{color:#5b646b !important}
.nb-learn{color:#111 !important}
.nb-story-btn{
  background:transparent !important;color:#151719 !important;
  padding:0 0 3px !important;border:0 !important;
  text-transform:none !important;font-size:14px !important;font-weight:700 !important;
  border-bottom:1px solid #9aa1a6 !important;
  letter-spacing:0 !important;
  transition:border-color .18s ease,color .18s ease;
}
.nb-story-btn:hover,.nb-story-btn:focus-visible{color:var(--nb-red) !important;border-color:var(--nb-red) !important}
.nb-story-btn span{display:inline-block;transition:transform .18s ease}
.nb-story-btn:hover span,.nb-story-btn:focus-visible span{transform:translateX(3px)}

.nb-card{border-color:#e0e3e5;box-shadow:0 1px 3px rgba(0,0,0,.06)}
.nb-card:hover{box-shadow:0 8px 24px rgba(0,0,0,.09)}
.nb-card-placeholder{height:100%;min-height:180px;background:#eceff1}

/* Full-width About / Privacy / information pages. */
.nb-page-shell{
  position:relative;z-index:1;width:100%;max-width:none;margin:0;
  background:#fff;
}
.nb-page{
  width:min(1440px,calc(100% - 96px));margin:0 auto;padding:58px 0 100px;
  color:var(--nb-ink);
}
.nb-page-hero{border-bottom:1px solid var(--nb-line);padding-bottom:28px;margin-bottom:48px}
.nb-page-kicker{
  color:var(--nb-red);font-size:12px;font-weight:800;letter-spacing:.13em;
  text-transform:uppercase;margin-bottom:12px
}
.nb-page-hero h1{
  margin:0;font-family:"Kievit Serif",Georgia,serif !important;
  font-size:clamp(48px,7vw,92px);line-height:.94;letter-spacing:-.045em;color:#0c0d0e
}
.nb-page-date{margin:16px 0 0;color:var(--nb-muted);font-size:14px}
.nb-commitment-intro{text-align:center;max-width:820px;margin:0 auto 46px}
.nb-commitment-intro h2{
  margin:0 0 16px;font-family:"Kievit Serif",Georgia,serif !important;
  font-size:clamp(34px,4vw,56px);line-height:1;letter-spacing:-.035em
}
.nb-commitment-intro p{margin:0;color:#4d555b;font-size:20px;line-height:1.55}
.nb-mvv{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin:0 0 58px}
.nb-mvv-card{background:#fff;border:1px solid var(--nb-line);padding:34px 32px 38px;min-height:300px;box-shadow:0 7px 22px rgba(0,0,0,.045)}
.nb-mvv-label{display:block;font-family:"Kievit Serif",Georgia,serif;font-size:31px;line-height:1.05;padding-bottom:16px;border-bottom:1px solid var(--nb-line);margin-bottom:30px}
.nb-mvv-card p{margin:0;color:#353b40;font-size:18px;line-height:1.65}
.nb-mvv-values dl{margin:0}
.nb-mvv-values dl div{margin:0 0 22px}
.nb-mvv-values dl div:last-child{margin-bottom:0}
.nb-mvv-values dt{font-size:18px;font-weight:800;margin-bottom:3px}
.nb-mvv-values dd{margin:0;color:#59636a;font-size:16px;line-height:1.45;font-style:italic}
.nb-page-content{
  max-width:900px;margin:0 auto;font-size:18px;line-height:1.8;color:#30363a
}
.nb-page-content > *:first-child{margin-top:0}
.nb-page-content h2,.nb-page-content h3,.nb-page-content h4{font-family:"Kievit Serif",Georgia,serif !important;color:#111}
.nb-page-content h2{font-size:42px;line-height:1.05;margin:48px 0 18px}
.nb-page-content h3{font-size:31px;line-height:1.1;margin:38px 0 14px}
.nb-page-content a{color:#b9161d;text-decoration:underline;text-underline-offset:3px}
.nb-page-content ul,.nb-page-content ol{padding-left:24px}
.nb-page-content blockquote{margin:28px 0;padding:18px 22px;border-left:3px solid var(--nb-red);background:#f7f8f8}
.nb-page-legal .nb-page-content{max-width:920px}
.nb-page-legal .nb-page-content h2{font-size:38px}
.nb-page-privacy .nb-page-content p:first-child{font-size:20px;color:#4c555b}
.nb-contact-box{max-width:900px;margin:52px auto 0 !important;border:1px solid var(--nb-line);background:#f7f8f8 !important;padding:28px !important}

.nb-footer-bottom{max-width:1780px;margin:34px auto 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.16);color:#9fa7ac;font-size:13px}

@media(max-width:900px){
  .nb-page{width:min(100% - 48px,720px);padding:44px 0 76px}
  .nb-mvv{grid-template-columns:1fr}
  .nb-mvv-card{min-height:0}
}
@media(max-width:650px){
  .nb-top .nb-logo{width:180px !important;flex-basis:180px !important;height:42px !important}
  .nb-top .nb-logo img{width:172px !important;max-width:172px !important;max-height:42px !important}
  .nb-page{width:calc(100% - 32px);padding:34px 0 60px}
  .nb-page-hero{margin-bottom:36px;padding-bottom:22px}
  .nb-page-hero h1{font-size:52px}
  .nb-commitment-intro{margin-bottom:34px}
  .nb-commitment-intro p{font-size:17px}
  .nb-mvv{gap:14px;margin-bottom:42px}
  .nb-mvv-card{padding:26px 22px 28px}
  .nb-mvv-label{font-size:27px}
  .nb-page-content{font-size:17px;line-height:1.72}
}


/* ==================================================
   NOTEDBUZZ 6.1 — RED / BLACK EDITORIAL ACCENT
   ================================================== */
:root{
  --nb-brand-red:#ed1c24;
  --nb-brand-black:#0b0b0b;
}
.nb-red-text{color:var(--nb-brand-red) !important;font-weight:800}
.nb-page-about .nb-commitment-intro h2 span:first-child,
.nb-page-about .nb-mvv-label span:first-child,
.nb-page-about .nb-about-story-heading span:first-child{color:var(--nb-brand-black)}
.nb-page-about .nb-commitment-intro h2 .nb-red-text,
.nb-page-about .nb-mvv-label .nb-red-text,
.nb-page-about .nb-about-story-heading .nb-red-text{color:var(--nb-brand-red) !important}
.nb-page-about .nb-commitment-intro{position:relative}
.nb-page-about .nb-commitment-intro:before{content:"";display:block;width:54px;height:4px;background:var(--nb-brand-red);margin:0 auto 22px}
.nb-page-about .nb-mvv-card{border-top:3px solid var(--nb-brand-black);transition:border-color .18s ease,transform .18s ease}
.nb-page-about .nb-mvv-card:hover{border-top-color:var(--nb-brand-red);transform:translateY(-2px)}
.nb-page-about .nb-mvv-card dt:after{content:"";display:inline-block;width:7px;height:7px;margin:0 0 2px 7px;background:var(--nb-brand-red);border-radius:50%}
.nb-about-story{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:70px;align-items:start;border-top:1px solid var(--nb-line);padding-top:58px;margin-top:4px}
.nb-about-story-heading{font-family:"Kievit Serif",Georgia,serif;font-size:clamp(38px,4.5vw,64px);font-weight:800;line-height:.96;letter-spacing:-.04em}
.nb-about-story-copy{max-width:760px;font-size:18px;line-height:1.8;color:#30363a}
.nb-about-story-copy p{margin:0 0 22px}
.nb-page-legal .nb-page-hero h1:after{content:"";display:block;width:64px;height:4px;background:var(--nb-brand-red);margin-top:24px}
.nb-page-legal .nb-page-content h2{position:relative}
.nb-page-legal .nb-page-content h2:before{content:"";display:inline-block;width:8px;height:8px;background:var(--nb-brand-red);border-radius:50%;margin:0 10px 7px 0}

@media(max-width:900px){
  .nb-about-story{grid-template-columns:1fr;gap:24px}
}

/* ==================================================
   NOTEDBUZZ 6.2 — PREMIUM EDITORIAL MOTION
   Lightweight entrance/reveal effects. Nothing blocks
   rendering, and reduced-motion users receive a static layout.
   ================================================== */
html.nb-motion-ready .nb-reveal{
  opacity:0;
  transform:translate3d(0,24px,0);
  transition:opacity .72s cubic-bezier(.22,1,.36,1),
             transform .72s cubic-bezier(.22,1,.36,1);
  transition-delay:var(--nb-motion-delay,0ms);
}
html.nb-motion-ready .nb-reveal.nb-is-visible{
  opacity:1;
  transform:none;
}
html.nb-motion-ready .nb-hero-enter{
  animation:nbHeroEnter .9s cubic-bezier(.22,1,.36,1) both;
}

@keyframes nbHeroEnter{
  0%{opacity:0;transform:translate3d(0,34px,0)}
  100%{opacity:1;transform:none}
}

/* The red editorial line draws in when the About hero becomes visible. */
.nb-page-about .nb-commitment-intro:before{
  transform-origin:center;
  transform:scaleX(.08);
  transition:transform .8s cubic-bezier(.22,1,.36,1);
}
html.nb-motion-ready .nb-page-about .nb-commitment-intro.nb-is-visible:before{
  transform:scaleX(1);
}

/* Slightly more tactile cards without exaggerated movement. */
.nb-card,
.nb-mvv-card,
.nb-footer-links a,
.nb-nav a{
  transition:transform .28s cubic-bezier(.22,1,.36,1),
             box-shadow .28s ease,
             color .2s ease,
             border-color .2s ease,
             background-color .2s ease;
}
.nb-card:hover{transform:translateY(-3px)}
.nb-story-btn{
  position:relative;
  overflow:hidden;
  background:transparent;
  color:var(--nb-black);
  padding:5px 0;
  text-transform:none;
  letter-spacing:.01em;
  border-bottom:1px solid rgba(237,28,36,.38);
  transition:color .2s ease,border-color .2s ease;
}
.nb-story-btn:after{
  content:'→';
  display:inline-block;
  margin-left:7px;
  color:var(--nb-red);
  transform:translateX(0);
  transition:transform .25s cubic-bezier(.22,1,.36,1);
}
.nb-story-btn:hover{color:var(--nb-red);border-bottom-color:var(--nb-red)}
.nb-story-btn:hover:after{transform:translateX(4px)}

/* Subtle image motion on cards, kept small so content remains readable. */
.nb-card-media img{transition:transform .7s cubic-bezier(.22,1,.36,1),filter .7s ease}
.nb-card:hover .nb-card-media img{transform:scale(1.035)}

.nb-reading-progress{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  height:3px;
  background:var(--nb-red);
  transform:scaleX(0);
  transform-origin:left center;
  z-index:9999;
  pointer-events:none;
}

@media (prefers-reduced-motion:reduce){
  html.nb-motion-ready .nb-reveal,
  html.nb-motion-ready .nb-reveal.nb-is-visible,
  html.nb-motion-ready .nb-hero-enter{
    opacity:1;
    transform:none;
    animation:none;
    transition:none;
  }
  .nb-page-about .nb-commitment-intro:before,
  html.nb-motion-ready .nb-page-about .nb-commitment-intro.nb-is-visible:before{
    transform:none;
    transition:none;
  }
  .nb-card,.nb-mvv-card,.nb-card-media img{transition:none}
}


/* ==================================================
   NOTEDBUZZ 6.4 — CINEMATIC / LUXURY / MAGAZINE MOTION
   Stronger black-red editorial identity with restrained motion.
   ================================================== */
:root{
  --nb-red:#ed1c24;
  --nb-red-dark:#b70f15;
  --nb-black:#08090a;
  --nb-charcoal:#151719;
  --nb-paper:#f7f7f5;
}

/* More confident red presence, without turning the page into a red block. */
.nb-top{border-bottom:2px solid var(--nb-red) !important}
.nb-nav a.current{color:var(--nb-red) !important}
.nb-nav a:hover{color:var(--nb-red) !important}
.nb-page-kicker,.nb-cat{color:var(--nb-red) !important}
.nb-section-title h1:after{
  content:"";display:block;width:76px;height:3px;background:var(--nb-red);margin-top:13px;
  transform-origin:left;transition:transform .8s cubic-bezier(.22,1,.36,1);
}
.nb-page-hero{border-bottom:2px solid #111 !important;position:relative}
.nb-page-hero:after{content:"";position:absolute;left:0;bottom:-2px;width:30%;height:2px;background:var(--nb-red)}
.nb-page-hero h1{font-weight:800 !important}
.nb-page-about .nb-page-hero h1,
.nb-page-about .nb-commitment-intro h2,
.nb-page-about .nb-about-story-heading{font-size:clamp(54px,7.5vw,112px) !important;letter-spacing:-.055em !important}
.nb-page-about .nb-editorial-eyebrow{
  margin:0 0 10px;text-transform:uppercase;letter-spacing:.14em;font-size:11px;font-weight:800;color:#5e666c
}
.nb-page-about .nb-about-story-lead{border-top:1px solid #111;border-bottom:1px solid #ddd;padding:42px 0 48px;margin-bottom:56px}
.nb-about-story-heading{font-family:"Kievit Serif",Georgia,serif;font-weight:800;line-height:.94}
.nb-about-story-copy p:first-child:first-letter{font-family:"Kievit Serif",Georgia,serif;font-size:4.4em;line-height:.72;float:left;padding:8px 9px 0 0;color:var(--nb-red);font-weight:800}
.nb-mvv-card{border-top:4px solid #08090a !important;position:relative;overflow:hidden}
.nb-mvv-card:before{content:"";position:absolute;left:0;top:0;width:42%;height:4px;background:var(--nb-red);transform:scaleX(.25);transform-origin:left;transition:transform .7s cubic-bezier(.22,1,.36,1)}
.nb-mvv-card:hover:before{transform:scaleX(1)}
.nb-mvv-label{font-weight:800}
.nb-mvv-label .nb-red-text{font-size:1.05em}


/* People and project links on the About page: editorial, human and easy to explore. */
.nb-about-people{display:grid;grid-template-columns:minmax(240px,.7fr) minmax(0,1.3fr);gap:70px;align-items:start;border-top:1px solid var(--nb-line);padding-top:58px;margin:4px 0 58px}
.nb-about-people-copy{max-width:780px;font-size:18px;line-height:1.8;color:#30363a}
.nb-about-people-copy p{margin:0 0 28px}
.nb-about-people-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.nb-about-people-links a{display:flex;flex-direction:column;justify-content:space-between;min-height:110px;padding:20px 18px;border:1px solid #d9dcde;border-top:3px solid #111;background:#fff;color:#111;text-decoration:none;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease}
.nb-about-people-links a:hover,.nb-about-people-links a:focus-visible{transform:translateY(-3px);border-top-color:var(--nb-red);box-shadow:0 10px 24px rgba(0,0,0,.08);outline:none}
.nb-about-people-links span{font-family:"Kievit Serif",Georgia,serif;font-size:23px;font-weight:800;line-height:1.05}
.nb-about-people-links small{margin-top:18px;color:#687078;font-size:12px;text-transform:uppercase;letter-spacing:.1em;font-weight:800}
@media(max-width:760px){
  .nb-about-people{grid-template-columns:1fr;gap:24px}
  .nb-about-people-links{grid-template-columns:1fr}
}

/* Legal pages get the same editorial hierarchy instead of looking like a default policy page. */
.nb-legal-intro{
  max-width:920px;margin:-8px auto 48px;display:grid;grid-template-columns:18px 1fr;gap:22px;align-items:start;
  padding:4px 0 4px;border-bottom:1px solid #ddd;
}
.nb-legal-intro-mark{display:block;width:6px;min-height:74px;background:linear-gradient(to bottom,var(--nb-red) 0 62%,#111 62% 100%)}
.nb-legal-intro p{margin:0;font-family:"Kievit Serif",Georgia,serif;font-size:24px;line-height:1.42;color:#25282b}
.nb-page-legal .nb-page-content h2{position:relative;padding-left:18px}
.nb-page-legal .nb-page-content h2:before{content:"";position:absolute;left:0;top:.12em;width:4px;height:.78em;background:var(--nb-red)}
.nb-page-legal .nb-page-content strong{color:#111}

/* Article pages: cinematic reveal, image depth and magazine-scale typography. */
.nb-article-motion .nb-editorial-masthead{border-bottom:1px solid #cfd2d4;padding-bottom:20px}
.nb-article-motion .nb-editorial-intro:before{content:"";display:block;width:42px;height:3px;background:var(--nb-red);margin-bottom:13px}
.nb-article-motion .nb-editorial-meta strong{color:var(--nb-red)}
.nb-article-hero-motion .nb-editorial-copy{position:relative}
.nb-article-hero-motion .nb-editorial-copy:after{content:"";display:block;width:90px;height:2px;background:var(--nb-red);margin-top:28px;transform-origin:left;animation:nb-line-in .9s .35s both cubic-bezier(.22,1,.36,1)}
.nb-editorial-image{box-shadow:0 24px 60px rgba(0,0,0,.14)}
.nb-editorial-image:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,0) 45%,rgba(0,0,0,.18));pointer-events:none}
.nb-editorial-image img{transition:transform 1.2s cubic-bezier(.22,1,.36,1),filter 1.2s ease !important;filter:saturate(.95) contrast(1.03)}
.nb-article-motion:hover .nb-editorial-image img{transform:scale(1.025)}
.nb-editorial-content{position:relative}
.nb-editorial-content p:first-child:first-letter{font-family:"Kievit Serif",Georgia,serif;font-size:4.8em;line-height:.72;float:left;padding:9px 10px 0 0;color:var(--nb-red);font-weight:800}
.nb-editorial-content h2{margin-top:54px !important}
.nb-editorial-content blockquote{position:relative;padding-left:28px !important;border-left-width:6px !important}
.nb-editorial-content blockquote:before{content:"“";position:absolute;left:-8px;top:-30px;font-size:76px;color:var(--nb-red);font-family:Georgia,serif;opacity:.18}

@keyframes nb-line-in{from{transform:scaleX(0);opacity:0}to{transform:scaleX(1);opacity:1}}
@keyframes nb-cinematic-up{from{opacity:0;transform:translateY(28px)}to{opacity:1;transform:none}}
@keyframes nb-cinematic-image{from{opacity:0;transform:scale(1.045)}to{opacity:1;transform:scale(1)}}

html.nb-motion-ready .nb-article-motion .nb-editorial-masthead{animation:nb-cinematic-up .75s .05s both cubic-bezier(.22,1,.36,1)}
html.nb-motion-ready .nb-article-motion .nb-editorial-copy{animation:nb-cinematic-up .9s .18s both cubic-bezier(.22,1,.36,1)}
html.nb-motion-ready .nb-article-motion .nb-editorial-image{animation:nb-cinematic-image 1.15s .22s both cubic-bezier(.22,1,.36,1)}
html.nb-motion-ready .nb-article-motion .nb-editorial-content{animation:nb-cinematic-up .9s .4s both cubic-bezier(.22,1,.36,1)}

/* Magazine-like hover states remain understated and usable by keyboard. */
.nb-card:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(0,0,0,.12)}
.nb-card .nb-cat:before{content:"";display:inline-block;width:18px;height:2px;background:var(--nb-red);vertical-align:middle;margin-right:7px;transition:width .3s ease}
.nb-card:hover .nb-cat:before{width:28px}
.nb-footer{border-top:4px solid var(--nb-red) !important}
.nb-footer-heading{color:var(--nb-red) !important}

@media(max-width:760px){
  .nb-page-about .nb-page-hero h1,.nb-page-about .nb-commitment-intro h2,.nb-page-about .nb-about-story-heading{font-size:52px !important}
  .nb-legal-intro{grid-template-columns:12px 1fr;gap:15px;margin-bottom:36px}
  .nb-legal-intro p{font-size:20px}
}
@media(prefers-reduced-motion:reduce){
  html.nb-motion-ready .nb-article-motion .nb-editorial-masthead,
  html.nb-motion-ready .nb-article-motion .nb-editorial-copy,
  html.nb-motion-ready .nb-article-motion .nb-editorial-image,
  html.nb-motion-ready .nb-article-motion .nb-editorial-content{animation:none;opacity:1;transform:none}
  .nb-editorial-image img{transition:none !important}
  .nb-article-hero-motion .nb-editorial-copy:after{animation:none;transform:none}
}

/* ==================================================
   NOTEDBUZZ 6.6.6 — CLEAN ABOUT HERO + INLINE PEOPLE LINKS
   ================================================== */
.nb-page-about .nb-page-hero{text-align:center;padding-bottom:34px;margin-bottom:56px}
.nb-page-about .nb-page-kicker{display:inline-block;margin-bottom:16px}
.nb-page-about .nb-page-hero h1{font-size:clamp(50px,7vw,96px) !important}
.nb-page-about .nb-page-hero:after{left:50%;width:120px;transform:translateX(-50%)}
.nb-page-about .nb-about-people-copy a{color:var(--nb-red);font-weight:800;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;transition:color .2s ease}
.nb-page-about .nb-about-people-copy a:hover,.nb-page-about .nb-about-people-copy a:focus-visible{color:#111}
.nb-about-people-links{display:none !important}
@media(max-width:650px){
  .nb-page-about .nb-page-hero{margin-bottom:40px}
  .nb-page-about .nb-page-hero h1{font-size:48px !important}
}

/* Contact directory: clear ownership/contact signals without copying another publisher's layout. */
.nb-contact-directory{display:block}
.nb-contact-intro{max-width:780px}
.nb-contact-intro h2{margin:6px 0 8px}
.nb-contact-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px}
.nb-contact-grid>div{padding:18px;border-top:2px solid var(--nb-red);background:#fff}
.nb-contact-grid strong{display:block;margin-bottom:7px;color:#171717}
.nb-contact-grid a{display:inline-block;color:#a70f16;font-weight:700;text-decoration:underline;text-underline-offset:3px}.nb-contact-note{display:block;margin-top:6px;color:#5f666c;font-size:14px;line-height:1.45}
@media(max-width:700px){.nb-contact-grid{grid-template-columns:1fr}}
.nb-about-editorial-standards{border-top:1px solid var(--nb-line)}


/* ==================================================
   NOTEDBUZZ 6.6.2 — ORDERED CINEMATIC ABOUT LAYOUT
   Keep the editorial atmosphere, remove oversized/scattered typography.
   ================================================== */
.nb-page-about .nb-page-hero h1{
  font-size:clamp(44px,5.2vw,72px) !important;
  letter-spacing:-.035em !important;
  line-height:1 !important;
}
.nb-page-about .nb-commitment-intro{
  max-width:760px;
  margin:0 auto 52px;
}
.nb-page-about .nb-commitment-intro h2{
  font-size:clamp(38px,4.2vw,58px) !important;
  letter-spacing:-.035em !important;
  line-height:1.02 !important;
  margin:0 0 14px;
}
.nb-page-about .nb-commitment-intro p:not(.nb-editorial-eyebrow){
  max-width:680px;
  margin:0 auto;
  font-size:18px !important;
  line-height:1.7 !important;
}
.nb-page-about .nb-about-story,
.nb-page-about .nb-about-people{
  grid-template-columns:minmax(210px,.62fr) minmax(0,1.38fr);
  gap:56px;
  padding-top:44px;
  margin-top:0;
  margin-bottom:48px;
}
.nb-page-about .nb-about-story-heading{
  font-size:clamp(32px,3.5vw,50px) !important;
  letter-spacing:-.025em !important;
  line-height:1.02 !important;
  max-width:310px;
}
.nb-page-about .nb-about-story-copy,
.nb-page-about .nb-about-people-copy{
  max-width:720px;
  font-size:17px !important;
  line-height:1.78 !important;
}
.nb-page-about .nb-about-story-copy p,
.nb-page-about .nb-about-people-copy p{margin:0 0 18px}
.nb-page-about .nb-about-story-copy p:last-child,
.nb-page-about .nb-about-people-copy p:last-child{margin-bottom:0}
.nb-page-about .nb-about-story-copy p:first-child:first-letter{font-size:3.4em}
.nb-page-about .nb-about-story-lead{
  padding:42px 0;
  margin-bottom:48px;
}
.nb-page-about .nb-mvv{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:18px;
  margin:0 0 48px;
}
.nb-page-about .nb-mvv-card{
  padding:24px 22px !important;
  border-top-width:3px !important;
  min-height:100%;
}
.nb-page-about .nb-mvv-label{
  display:block;
  font-family:"Kievit Serif",Georgia,serif;
  font-size:30px !important;
  line-height:1.05;
  letter-spacing:-.02em;
  margin-bottom:13px;
}
.nb-page-about .nb-mvv-card p,
.nb-page-about .nb-mvv-card dd{
  font-size:16px !important;
  line-height:1.68 !important;
  color:#30363a;
}
.nb-page-about .nb-mvv-card dl{margin:0}
.nb-page-about .nb-mvv-card dt{font-size:15px !important;line-height:1.3;margin-top:13px}
.nb-page-about .nb-mvv-card dd{margin:5px 0 0}
.nb-page-about .nb-about-creative-work,
.nb-page-about .nb-about-editorial-standards{
  border-top:1px solid var(--nb-line);
}
.nb-page-about .nb-about-creative-work .nb-about-story-copy,
.nb-page-about .nb-about-editorial-standards .nb-about-story-copy{max-width:720px}
@media(max-width:820px){
  .nb-page-about .nb-mvv{grid-template-columns:1fr}
  .nb-page-about .nb-about-story,
  .nb-page-about .nb-about-people{grid-template-columns:1fr;gap:20px}
  .nb-page-about .nb-about-story-heading{max-width:none}
}
@media(max-width:650px){
  .nb-page-about .nb-page-hero h1{font-size:42px !important}
  .nb-page-about .nb-commitment-intro h2{font-size:38px !important}
  .nb-page-about .nb-about-story-heading{font-size:34px !important}
  .nb-page-about .nb-about-story-copy,
  .nb-page-about .nb-about-people-copy{font-size:16.6.6px !important}
}

/* 6.6.6 — organized founder/team presentation */
.nb-team-links{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:28px}
.nb-team-links a{display:flex;align-items:baseline;justify-content:space-between;gap:16px;padding:16px 18px;border-top:2px solid #111;border-bottom:1px solid #d9dcde;background:#fff;color:#111;text-decoration:none;transition:border-color .2s ease,transform .2s ease}
.nb-team-links a:hover,.nb-team-links a:focus-visible{border-top-color:var(--nb-red);transform:translateY(-2px);outline:none}
.nb-team-links span{font-family:"Kievit Serif",Georgia,serif;font-size:21px;font-weight:800;line-height:1.1}
.nb-team-links small{font-size:10px;line-height:1;text-transform:uppercase;letter-spacing:.1em;font-weight:800;color:#687078}
.nb-about-subveins .nb-about-story-copy a{color:var(--nb-red);font-weight:800;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}
.nb-about-subveins .nb-about-story-copy a:hover,.nb-about-subveins .nb-about-story-copy a:focus-visible{color:#111}
.nb-about-subveins .nb-about-story-copy strong{font-weight:800;color:#111}
@media (max-width:900px){.nb-team-links{grid-template-columns:1fr}}

/* ===== NotedBuzz 6.6.7: contact form ===== */
.nb-contact-form-wrap{max-width:760px;margin:26px 0 8px}
.nb-contact-form{display:grid;gap:18px}
.nb-field{display:grid;gap:7px}
.nb-field label{font-size:14px;font-weight:800;letter-spacing:.02em;color:#171717}
.nb-field input,.nb-field select,.nb-field textarea{
  width:100%;box-sizing:border-box;padding:13px 14px;font:inherit;font-size:17px;line-height:1.4;
  color:#171717;background:#fff;border:1px solid #c9ced2;border-radius:0;
}
.nb-field textarea{min-height:170px;resize:vertical}
.nb-field input:focus,.nb-field select:focus,.nb-field textarea:focus{outline:2px solid var(--nb-red);outline-offset:1px;border-color:var(--nb-red)}
.nb-hp{position:absolute !important;left:-9999px !important;width:1px;height:1px;overflow:hidden}
.nb-form-privacy{margin:0 !important;font-size:14px !important;line-height:1.55 !important;color:#5f666c}
.nb-form-privacy a{color:#a70f16;text-decoration:underline;text-underline-offset:3px}
.nb-form-submit{
  justify-self:start;padding:14px 30px;font:inherit;font-size:16px;font-weight:800;letter-spacing:.03em;
  color:#fff;background:#171717;border:0;border-top:3px solid var(--nb-red);cursor:pointer;
}
.nb-form-submit:hover,.nb-form-submit:focus{background:var(--nb-red);border-top-color:#171717}
.nb-form-notice{margin:0 0 20px;padding:14px 18px;font-size:16px;line-height:1.5;border-left:4px solid}
.nb-form-notice-ok{background:#eef8f0;border-color:#1f7a3a;color:#14532d}
.nb-form-notice-err{background:#fdeeee;border-color:var(--nb-red);color:#7a1015}
.nb-contact-directory .nb-contact-grid{margin-top:34px}
/* NotedBuzz 6.6.8 — reveal safety net (paste at the very end of style.css, or into Appearance > Customize > Additional CSS) */
html.nb-motion-ready .nb-reveal{
  transform:translate3d(0,14px,0);
  transition-duration:.45s;
  /* If scripting is blocked or delayed, everything appears by itself after 6 seconds. */
  animation:nbRevealFailsafe .01s 6s forwards;
}
html.nb-motion-ready .nb-reveal.nb-is-visible{animation:none}
@keyframes nbRevealFailsafe{to{opacity:1;transform:none}}
@media print{html.nb-motion-ready .nb-reveal{opacity:1 !important;transform:none !important;animation:none !important}}
