@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,500;0,600;0,700;1,500&family=Inter:wght@400;500;600;700&family=Cinzel:wght@600;700&display=swap');
/* Adjust big image width | 9422963-hc EH */
@media screen and (min-width: 768px) {
  .wp-caption.caption-big, .image-big {
      width: auto;
  }
}
/* Remove negative left margin from images | 35354425-hc JP */
span.image-big {
  margin-left: unset;
}


/* Hide page title on Home page */
.home .entry-title, .home .page-title, .home h1.entry-title { display: none; }

/* Torr Kitchen nav CTA button */
.nav-cta > a {
  background: #c8a96e !important;
  color: #0f0e0c !important;
  padding: 6px 14px !important;
  border-radius: 4px !important;
  font-weight: 600 !important;
  text-decoration: none !important;
}
.nav-cta > a:hover {
  background: #dfc08a !important;
  color: #0f0e0c !important;
}

/* ===== HOMEPAGE FULL-WIDTH OVERRIDE ===== */
/* Break content out of theme container */
.home .entry-content,
.home .post-content,
.home .page-content,
.home article.page,
.home .hentry {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
}
/* Remove theme's content area side padding/margins */
.home .site-content,
.home #content,
.home #primary,
.home .content-area,
.home main#main,
.home main.site-main {
  max-width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
  width: 100% !important;
  float: none !important;
}
/* Remove container width on home */
.home .container,
.home .site-content .container,
.home #page .container {
  max-width: 100% !important;
  padding: 0 !important;
  width: 100% !important;
}
/* Kill the white background bleed */
.home #page,
.home body {
  background: #0f0e0c !important;
}
/* Hide page title on homepage — belt + suspenders */
.home .entry-title,
.home .page-title,
.home h1.entry-title,
.home .page-header {
  display: none !important;
  height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== MOBILE FIXES ===== */
body.home, .home #page, .home #content,
.home .site-content, .ibc-page {
  overflow-x: hidden !important;
  max-width: 100vw !important;
  box-sizing: border-box !important;
}
/* Fix site title */
.site-title, .site-title a {
  font-size: 13px !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  max-width: 220px !important;
  display: inline-block !important;
}
@media (max-width: 768px) {
  /* Stack hero, fix padding */
  .ibc-hero {
    display: block !important;
    padding: 28px 16px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  .hero-img { margin-top: 20px !important; }
  /* All sections: safe padding */
  .ibc-section, .tk-bridge, .ibc-email,
  .ibc-channels, .ibc-topics {
    padding-left: 16px !important;
    padding-right: 16px !important;
    box-sizing: border-box !important;
    width: 100% !important;
  }
  .ibc-email { display: block !important; }
  .ibc-email > div + div { margin-top: 16px !important; }
  .tk-bridge { display: block !important; }
  .tk-bridge .btn-primary { margin-top: 12px !important; display: inline-block !important; }
  .post-grid { grid-template-columns: 1fr !important; }
  .feat-card { display: block !important; }
}

/* ===== STRONGER PAGE TITLE HIDE ===== */
.home h1.entry-title,
.home .entry-title,
.home .page-title,
.home .page-header,
.home header.entry-header {
  display: none !important;
  visibility: hidden !important;
  height: 0 !important;
  overflow: hidden !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* ===== IMAGE FIT FIXES ===== */
/* Cards: show full image at natural proportions — no cropping */
.pc-img {
  overflow: hidden !important;
  line-height: 0 !important;
  height: auto !important;
}
.pc-img img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: unset !important;
  position: static !important;
  max-width: 100% !important;
  max-height: none !important;
}
/* Featured card: natural proportions */
.feat-img {
  overflow: hidden !important;
  line-height: 0 !important;
  height: auto !important;
  padding-bottom: 0 !important;
}
.feat-img img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
  object-fit: unset !important;
  position: static !important;
  max-width: 100% !important;
  max-height: none !important;
}
/* Hero image only: fixed crop is fine since it's decorative */
.hero-img {
  overflow: hidden !important;
  height: 260px !important;
  position: relative !important;
}
.hero-img img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
  max-width: none !important;
  max-height: none !important;
}


/* ============================================================
   ICHIBANCRAFTER — UNIFIED BRAND STYLESHEET (added 2026-04-29)
   ============================================================ */



:root {
  --ibc-orange:        #E89B22;
  --ibc-gold:          #D4A017;
  --ibc-amber:         #F4A52A;
  --ibc-sunlight:      #FBE9C5;
  --ibc-cream:         #FFF8EC;
  --ibc-cream-2:       #FAF1DC;
  --ibc-ink:           #2A1810;
  --ibc-ink-soft:      #4A3528;
  --ibc-silver:        #B8B8B8;
  --ibc-green:         #5B8C3A;
  --ibc-green-deep:    #3F6B26;
  --ibc-green-soft:    #C8DCB1;
  --ibc-sunburst:      radial-gradient(circle at 50% 30%, #FFD980 0%, #F4A52A 35%, #E89B22 70%, #C77F0E 100%);
  --ibc-warm-band:     linear-gradient(135deg, #F4A52A 0%, #D4A017 100%);
  --ibc-font-display:  'Cinzel', 'Cormorant Garamond', Georgia, serif;
  --ibc-font-heading:  'Cormorant Garamond', Georgia, 'Times New Roman', serif;
  --ibc-font-body:     'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --ibc-radius:        10px;
  --ibc-radius-lg:     18px;
  --ibc-shadow-sm:     0 2px 8px rgba(42,24,16,0.08);
  --ibc-shadow-md:     0 8px 24px rgba(42,24,16,0.12);
  --ibc-shadow-warm:   0 8px 28px rgba(232,155,34,0.25);
}

/* Kill the dark wrapper from Boardwalk/Cubic */
html, body, .site, .hfeed.site, .site-content, #page, #content, main, .site-main, .entry-content {
  background-color: var(--ibc-cream) !important;
  color: var(--ibc-ink) !important;
  font-family: var(--ibc-font-body) !important;
  font-size: 17px;
  line-height: 1.7;
  -webkit-font-smoothing: antialiased;
}

.wp-theme-boardwalk h1, .wp-theme-boardwalk .entry-title { font-size: clamp(2.2rem, 4.5vw, 3.6rem) !important; }
.wp-theme-boardwalk h2 { font-size: clamp(1.8rem, 3vw, 2.6rem) !important; }
.wp-theme-boardwalk h3 { font-size: clamp(1.4rem, 2.2vw, 1.9rem) !important; }
.wp-theme-boardwalk h4 { font-size: 1.25rem !important; }

h1, h2, h3, h4, h5, h6, .entry-title, .site-title, .wp-block-heading {
  font-family: var(--ibc-font-heading) !important;
  color: var(--ibc-ink) !important;
  font-weight: 700;
  letter-spacing: 0.01em;
  line-height: 1.2;
}
h1, .entry-title { font-family: var(--ibc-font-display) !important; letter-spacing: 0.04em; }
h2::after { content: ""; display: block; width: 64px; height: 3px; margin-top: 0.6rem; background: var(--ibc-warm-band); border-radius: 2px; }

.site-header, #masthead, header.site-header, .main-navigation {
  background: var(--ibc-cream) !important;
  border-bottom: 2px solid var(--ibc-amber) !important;
  box-shadow: var(--ibc-shadow-sm);
}
.site-title, .site-title a, .custom-logo-link {
  color: var(--ibc-ink) !important;
  font-family: var(--ibc-font-display) !important;
  letter-spacing: 0.06em;
}
.main-navigation a, #site-navigation a, .menu-item a, nav a {
  color: var(--ibc-ink) !important;
  font-family: var(--ibc-font-body) !important;
  font-weight: 500;
  text-transform: none;
  letter-spacing: 0.02em;
  transition: color 0.2s ease;
}
.main-navigation a:hover, nav a:hover, .current-menu-item > a { color: var(--ibc-orange) !important; }

.hero, .home-hero, .page-hero, .wp-block-cover.is-style-hero, .banner, #banner {
  background: var(--ibc-sunburst) !important;
  color: var(--ibc-ink) !important;
  padding: clamp(3rem, 8vw, 6rem) 1.5rem !important;
  text-align: center;
}
.hero h1, .home-hero h1, .banner h1 { color: var(--ibc-ink) !important; text-shadow: 0 1px 0 rgba(255,255,255,0.4); }
.hero p, .home-hero p, .banner p { color: var(--ibc-ink-soft) !important; font-size: 1.15rem; max-width: 640px; margin-left: auto; margin-right: auto; }

button, .button, input[type="submit"], .wp-block-button__link, a.btn, .btn {
  background: var(--ibc-warm-band) !important;
  color: #fff !important;
  font-family: var(--ibc-font-body) !important;
  font-weight: 600 !important;
  letter-spacing: 0.03em;
  border: none !important;
  border-radius: var(--ibc-radius) !important;
  padding: 14px 28px !important;
  box-shadow: var(--ibc-shadow-warm) !important;
  transition: transform 0.15s ease, box-shadow 0.2s ease, filter 0.2s ease !important;
  text-decoration: none !important;
  cursor: pointer;
}
button:hover, .button:hover, .wp-block-button__link:hover, a.btn:hover, .btn:hover {
  filter: brightness(1.05);
  transform: translateY(-1px);
  box-shadow: 0 12px 32px rgba(232,155,34,0.35) !important;
  color: #fff !important;
}
.wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent !important;
  color: var(--ibc-orange) !important;
  border: 2px solid var(--ibc-orange) !important;
  box-shadow: none !important;
}

a { color: var(--ibc-green-deep); text-decoration: none; transition: color 0.2s ease; }
a:hover { color: var(--ibc-orange); }

input[type="text"], input[type="email"], input[type="search"], textarea, select {
  background: #fff !important;
  border: 1.5px solid rgba(42,24,16,0.18) !important;
  border-radius: var(--ibc-radius) !important;
  padding: 12px 16px !important;
  font-family: var(--ibc-font-body) !important;
  font-size: 16px !important;
  color: var(--ibc-ink) !important;
}
input:focus, textarea:focus, select:focus {
  outline: none !important;
  border-color: var(--ibc-orange) !important;
  box-shadow: 0 0 0 4px rgba(232,155,34,0.18) !important;
}

.signup-section, .email-optin, .newsletter, .jetpack_subscription_widget {
  background: var(--ibc-warm-band) !important;
  color: #fff !important;
  padding: clamp(2rem, 5vw, 4rem) 1.5rem !important;
  border-radius: var(--ibc-radius-lg);
  text-align: center;
}
.signup-section h2, .email-optin h2, .newsletter h2, .jetpack_subscription_widget h2 { color: #fff !important; }

.site-footer, #colophon, footer.site-footer, footer#footer {
  background: var(--ibc-ink) !important;
  color: var(--ibc-cream) !important;
  padding: 3rem 1.5rem 2rem !important;
  border-top: 4px solid var(--ibc-orange) !important;
}
footer a, .site-footer a { color: var(--ibc-amber) !important; }
footer a:hover, .site-footer a:hover { color: #fff !important; }
footer h2, footer h3, footer h4 { color: #fff !important; font-family: var(--ibc-font-heading) !important; }

blockquote, .wp-block-quote {
  border-left: 4px solid var(--ibc-orange) !important;
  background: var(--ibc-sunlight) !important;
  padding: 1.25rem 1.5rem !important;
  border-radius: 0 var(--ibc-radius) var(--ibc-radius) 0;
  font-family: var(--ibc-font-heading) !important;
  font-style: italic;
  color: var(--ibc-ink) !important;
}

@media (max-width: 768px) {
  body { font-size: 16px; }
  .hero, .home-hero, .banner { padding: 2.5rem 1rem !important; }
  button, .button, .wp-block-button__link { width: 100%; max-width: 360px; }
}

:focus-visible { outline: 3px solid var(--ibc-orange) !important; outline-offset: 2px; border-radius: 4px; }
::selection { background: var(--ibc-amber); color: var(--ibc-ink); }
/* ---------- END IBC BRAND ---------- */


/* IBC override boosted specificity */
.home #page, .home body, body.home, body.home .hfeed.site, body .hfeed.site, body .site { background-color: var(--ibc-cream) !important; background: var(--ibc-cream) !important; color: var(--ibc-ink) !important; }
html.home, html, body { background-color: var(--ibc-cream) !important; }
/* End IBC override */














/* Caption recolor only — replace dark band with warm gradient, no layout changes */
.hero-img-label { background: linear-gradient(180deg, transparent 0%, rgba(232,155,34,0.85) 60%, rgba(212,160,23,0.95) 100%) !important; color: #fff !important; font-family: var(--ibc-font-body) !important; font-weight: 600 !important; letter-spacing: 0.02em; text-shadow: 0 1px 2px rgba(42,24,16,0.4); }
/* End caption recolor */


/* Force hero img to show FULL natural content */
html body .hero-img img.resized, .hero-img img.resized, .hero-img > .image-big > img.resized { object-fit: contain !important; object-position: 50% 50% !important; background-color: var(--ibc-cream) !important; }
/* End hero img force-contain */


/* Force hero img to natural aspect, no absolute pos */
.hero-img { display: block !important; height: auto !important; aspect-ratio: 16/9 !important; max-height: none !important; min-height: 0 !important; overflow: hidden !important; position: relative !important; }
.hero-img > .image-big { display: block !important; width: 100% !important; height: 100% !important; }
.hero-img img.resized, .hero-img img { position: relative !important; display: block !important; width: 100% !important; height: 100% !important; max-width: 100% !important; max-height: 100% !important; min-height: 0 !important; object-fit: cover !important; object-position: 50% 50% !important; top: auto !important; left: auto !important; right: auto !important; bottom: auto !important; }
/* End force natural aspect */


/* Fix: site-header was covering hero image — make transparent */
.site-header, #masthead, header.site-header { background: transparent !important; box-shadow: none !important; border-bottom: none !important; }
.site-header.scrolled, body.scrolled .site-header { background: var(--ibc-cream) !important; box-shadow: var(--ibc-shadow-sm) !important; border-bottom: 2px solid var(--ibc-amber) !important; }
/* End header transparent */


/* ==========================================================
   IBC BRAND OVERHAUL — convert dark theme to warm brand palette
   ========================================================== */

/* --- Main page wrapper --- */
.ibc-page { background: var(--ibc-cream) !important; color: var(--ibc-ink) !important; }

/* --- Hero section: warm sunrise gradient --- */
.ibc-hero {
  background: linear-gradient(180deg, var(--ibc-sunlight) 0%, var(--ibc-cream) 65%) !important;
  color: var(--ibc-ink) !important;
}
.ibc-hero .hero-h1, .ibc-hero h1.hero-h1, .ibc-hero h1 {
  color: var(--ibc-ink) !important;
  text-shadow: none !important;
}
.ibc-hero .hero-sub, .ibc-hero p { color: var(--ibc-ink-soft) !important; }
.ibc-hero a, .ibc-hero .nav-cta > a {
  /* keep buttons visible */
}

/* --- Topics nav band (Cannabis | Equipment | Mushrooms | Botanicals) --- */
.ibc-topics {
  background: var(--ibc-cream-2) !important;
  color: var(--ibc-ink) !important;
  border-top: 1px solid rgba(212,160,23,0.25) !important;
  border-bottom: 1px solid rgba(212,160,23,0.25) !important;
}
.ibc-topics a, .ibc-topics span, .ibc-topics li {
  color: var(--ibc-ink) !important;
  font-family: var(--ibc-font-body) !important;
  font-weight: 600 !important;
  letter-spacing: 0.04em;
  text-transform: uppercase;
}
.ibc-topics a:hover { color: var(--ibc-orange) !important; }

/* --- Featured & post cards --- */
a.feat-card, a.pc, .feat-card, .pc {
  background: #fff !important;
  color: var(--ibc-ink) !important;
  border: 1px solid rgba(212,160,23,0.20) !important;
  box-shadow: 0 2px 10px rgba(42,24,16,0.08) !important;
  border-radius: var(--ibc-radius-lg) !important;
  overflow: hidden !important;
  transition: transform 0.2s ease, box-shadow 0.2s ease !important;
}
a.feat-card:hover, a.pc:hover, .feat-card:hover, .pc:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 12px 28px rgba(42,24,16,0.14) !important;
  border-color: rgba(232,155,34,0.4) !important;
}

/* Card text */
.feat-card *, .pc *, a.feat-card *, a.pc * { color: var(--ibc-ink) !important; }
.feat-card h2, .feat-card h3, .pc h2, .pc h3 {
  color: var(--ibc-ink) !important;
  font-family: var(--ibc-font-heading) !important;
  font-weight: 700;
}
.feat-card p, .pc p { color: var(--ibc-ink-soft) !important; }

/* Card image wrappers — let the image's own bg show */
.feat-img, .pc-img {
  background: var(--ibc-sunlight) !important;
}

/* Category labels (FECO · RSO etc.) */
.feat-card .cat, .pc .cat, .post-cat, .cat-label, [class*="card-cat"] {
  color: var(--ibc-orange) !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  font-size: 0.78rem;
}

/* "April 1, 2026 · 12 min read" meta lines */
.feat-card time, .pc time, .post-meta, .read-time {
  color: var(--ibc-ink-soft) !important;
  font-size: 0.85rem;
}

/* --- Section "POPULAR GUIDES" + "All posts" links --- */
.section-title, .ibc-section-title {
  font-family: var(--ibc-font-display) !important;
  color: var(--ibc-ink) !important;
  letter-spacing: 0.06em;
}
.see-all-link, .all-posts-link, a[href*="blog"] {
  color: var(--ibc-green-deep) !important;
  font-weight: 600;
}
.see-all-link:hover, .all-posts-link:hover { color: var(--ibc-orange) !important; }

/* ==========================================================
   ATTRACTIVE HEADER — IBC branded, doesn't cover content
   ========================================================== */

.site-header, header.site-header, #masthead {
  background: linear-gradient(180deg, rgba(255,248,236,0.96) 0%, rgba(255,248,236,0.85) 60%, rgba(255,248,236,0) 100%) !important;
  backdrop-filter: blur(8px) saturate(1.05);
  -webkit-backdrop-filter: blur(8px) saturate(1.05);
  border-bottom: none !important;
  box-shadow: none !important;
  height: auto !important;
  padding: 12px 24px !important;
  transition: background 0.3s ease, box-shadow 0.3s ease;
}

/* Site title / logo */
.site-header .site-title, .site-header .site-title a, header .custom-logo-link {
  color: var(--ibc-ink) !important;
  font-family: var(--ibc-font-display) !important;
  font-weight: 700 !important;
  letter-spacing: 0.06em;
  font-size: 1.15rem;
  text-decoration: none !important;
}

/* Nav links in header */
.site-header nav a, .site-header .menu a, header.site-header a {
  color: var(--ibc-ink) !important;
  font-family: var(--ibc-font-body) !important;
  font-weight: 600 !important;
  letter-spacing: 0.03em;
  text-decoration: none !important;
  transition: color 0.2s ease;
  padding: 8px 14px !important;
  border-radius: 8px;
}
.site-header nav a:hover, .site-header .menu a:hover, header.site-header a:hover {
  color: var(--ibc-orange) !important;
  background: rgba(232,155,34,0.08);
}

/* The site-description tagline (above the H1) */
header h2.site-description, .site-header .site-description {
  font-family: var(--ibc-font-body) !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase;
  color: var(--ibc-orange) !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left;
}

/* Hamburger / menu icon — keep it visible against any bg */
.site-header .menu-toggle, .site-header [class*="menu-button"], .site-header .hamburger {
  background: var(--ibc-warm-band) !important;
  color: #fff !important;
  border-radius: 8px !important;
  padding: 8px 12px !important;
  box-shadow: var(--ibc-shadow-sm);
}

/* End brand overhaul */


/* ==========================================================
   ELEGANCE POLISH PASS — editorial, classy, professional
   ========================================================== */

/* --- 1. Refined typography baseline --- */
body, .ibc-page {
  font-feature-settings: "kern" 1, "liga" 1, "calt" 1;
  letter-spacing: 0.005em;
  color: var(--ibc-ink) !important;
}

/* Headlines — restrain Cinzel to true displays, use Cormorant for body headings */
h1, .entry-title, .ibc-hero h1, .hero-h1 {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-weight: 600 !important;
  letter-spacing: -0.01em !important;
  line-height: 1.08 !important;
  font-style: italic;
}
h1 em, h1 i, .entry-title em { font-style: normal; }

h2, .wp-block-heading, .feat-card h2, .pc h2 {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-weight: 600 !important;
  letter-spacing: -0.005em !important;
  line-height: 1.18 !important;
  font-style: normal;
}

h3, h4 {
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: -0.005em !important;
}

/* Kill the gold underline accent — too decorative */
h2::after { display: none !important; }

/* Body text — warmer, more readable */
p, .feat-card p, .pc p, .ibc-hero .hero-sub {
  font-family: 'Inter', sans-serif !important;
  line-height: 1.65 !important;
  color: var(--ibc-ink-soft) !important;
  font-size: 1rem;
}

/* --- 2. Header — refined, minimal, editorial --- */
.site-header, header.site-header, #masthead {
  background: linear-gradient(180deg, rgba(255,248,236,0.92) 0%, rgba(255,248,236,0.78) 70%, rgba(255,248,236,0) 100%) !important;
  backdrop-filter: blur(10px) saturate(1.08);
  -webkit-backdrop-filter: blur(10px) saturate(1.08);
  padding: 14px 32px !important;
}

.site-title, .site-title a, header .custom-logo-link {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-weight: 700 !important;
  font-size: 1.4rem !important;
  letter-spacing: 0.04em !important;
  color: var(--ibc-ink) !important;
  text-transform: none !important;
}

/* Tagline — refined small caps */
.site-description, header h2.site-description {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--ibc-orange) !important;
  margin: 0 !important;
  padding: 0 !important;
  opacity: 0.95;
}

/* Header navigation links */
.site-header nav a, header.site-header a, .site-header .menu a {
  font-size: 0.92rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  padding: 10px 16px !important;
  color: var(--ibc-ink) !important;
  position: relative;
}
.site-header nav a::after, header.site-header a::after {
  content: "";
  position: absolute;
  left: 16px;
  right: 16px;
  bottom: 4px;
  height: 1px;
  background: var(--ibc-orange);
  transform: scaleX(0);
  transform-origin: left center;
  transition: transform 0.25s ease;
}
.site-header nav a:hover::after, header.site-header a:hover::after { transform: scaleX(1); }
.site-header nav a:hover, header.site-header a:hover {
  background: transparent !important;
  color: var(--ibc-orange) !important;
}

/* --- 3. Hero section — editorial, refined --- */
.ibc-hero {
  background: linear-gradient(180deg, var(--ibc-sunlight) 0%, var(--ibc-cream) 75%) !important;
  padding: clamp(4rem, 10vh, 7rem) clamp(1.5rem, 5vw, 4rem) clamp(3rem, 6vh, 4rem) !important;
}

.ibc-hero h1, .hero-h1 {
  font-size: clamp(2.4rem, 5.5vw, 4.2rem) !important;
  margin-bottom: 1.2rem !important;
  max-width: 18ch;
}

.ibc-hero .hero-sub, .ibc-hero p {
  font-size: clamp(1.05rem, 1.6vw, 1.18rem) !important;
  max-width: 52ch !important;
  line-height: 1.6 !important;
  margin-bottom: 1.8rem !important;
}

/* --- 4. Buttons — classy, refined --- */
.nav-cta > a,
.wp-block-button__link,
button:not(.menu-toggle):not(.hamburger),
.button,
input[type="submit"],
a.btn,
.btn {
  display: inline-flex !important;
  align-items: center;
  justify-content: center;
  gap: 0.5em;
  background: var(--ibc-ink) !important;
  color: var(--ibc-cream) !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  font-size: 0.78rem !important;
  padding: 14px 28px !important;
  border: 1px solid var(--ibc-ink) !important;
  border-radius: 0 !important;
  box-shadow: none !important;
  text-decoration: none !important;
  transition: all 0.25s ease !important;
}
.nav-cta > a:hover,
.wp-block-button__link:hover,
.button:hover,
a.btn:hover,
.btn:hover,
button:not(.menu-toggle):hover {
  background: var(--ibc-orange) !important;
  border-color: var(--ibc-orange) !important;
  color: #fff !important;
  transform: translateY(-1px);
  box-shadow: 0 8px 20px rgba(232,155,34,0.3) !important;
}

/* Outline variant — secondary CTA */
.wp-block-button.is-style-outline .wp-block-button__link,
.btn.outline,
.button.outline,
.btn-secondary {
  background: transparent !important;
  color: var(--ibc-ink) !important;
  border: 1px solid var(--ibc-ink) !important;
}
.wp-block-button.is-style-outline .wp-block-button__link:hover,
.btn.outline:hover, .btn-secondary:hover {
  background: var(--ibc-ink) !important;
  color: var(--ibc-cream) !important;
}

/* --- 5. Topics navigation — slim, editorial --- */
.ibc-topics {
  background: transparent !important;
  border-top: 1px solid rgba(42,24,16,0.1) !important;
  border-bottom: 1px solid rgba(42,24,16,0.1) !important;
  padding: 18px 0 !important;
}
.ibc-topics a, .ibc-topics li, .ibc-topics span {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--ibc-ink-soft) !important;
  padding: 0 18px !important;
  position: relative;
}
.ibc-topics a:hover { color: var(--ibc-orange) !important; }

/* --- 6. Cards — editorial style --- */
a.feat-card, a.pc, .feat-card, .pc {
  background: #fff !important;
  border: 1px solid rgba(42,24,16,0.06) !important;
  border-radius: 4px !important;
  box-shadow: 0 1px 3px rgba(42,24,16,0.04) !important;
  overflow: hidden !important;
  transition: all 0.3s ease !important;
}
a.feat-card:hover, a.pc:hover, .feat-card:hover, .pc:hover {
  transform: translateY(-2px) !important;
  box-shadow: 0 16px 40px rgba(42,24,16,0.10) !important;
  border-color: rgba(232,155,34,0.3) !important;
}

/* Card titles */
.feat-card h2, .feat-card h3, .pc h2, .pc h3 {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-weight: 600 !important;
  font-size: 1.5rem !important;
  letter-spacing: -0.01em !important;
  line-height: 1.2 !important;
  margin-bottom: 0.8rem !important;
}

/* Card body text */
.feat-card p, .pc p {
  font-size: 0.95rem !important;
  line-height: 1.55 !important;
  color: var(--ibc-ink-soft) !important;
}

/* Category pill — refined */
.feat-card .cat, .pc .cat,
.feat-card [class*="cat"], .pc [class*="cat"],
.post-cat, .cat-label, span.cat,
[class*="card-cat"], [class*="post-cat"] {
  display: inline-block !important;
  background: transparent !important;
  color: var(--ibc-orange) !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  font-size: 0.7rem !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  padding: 0 !important;
  border-radius: 0 !important;
  margin-bottom: 0.6rem !important;
}

/* Date / read-time meta */
.feat-card time, .pc time, .post-meta, .read-time, .feat-card .meta, .pc .meta {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.04em !important;
  color: var(--ibc-ink-soft) !important;
  opacity: 0.8;
}

/* --- 7. Section headings (POPULAR GUIDES etc) --- */
.ibc-section h2, h2.section-title, .section-heading {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--ibc-ink) !important;
  margin-bottom: 1.5rem !important;
}

/* "All posts →" / "See all →" links */
a[href*="blog"], .all-posts-link, .see-all-link {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  color: var(--ibc-ink) !important;
  text-decoration: none !important;
  border-bottom: 1px solid var(--ibc-orange) !important;
  padding-bottom: 2px !important;
  transition: all 0.2s ease;
}
a[href*="blog"]:hover, .all-posts-link:hover, .see-all-link:hover {
  color: var(--ibc-orange) !important;
}

/* --- 8. Hero featured image card — refined frame --- */
.hero-img {
  border-radius: 4px !important;
  overflow: hidden !important;
  box-shadow: 0 12px 32px rgba(42,24,16,0.12) !important;
  border: 1px solid rgba(42,24,16,0.06) !important;
}
.hero-img-label {
  background: linear-gradient(180deg, transparent 0%, rgba(42,24,16,0.85) 100%) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.04em !important;
  text-shadow: none !important;
  padding: 16px 18px !important;
  color: #fff !important;
}

/* --- 9. Footer refinement --- */
.site-footer, footer.site-footer, #colophon {
  background: var(--ibc-ink) !important;
  color: rgba(255,248,236,0.75) !important;
  padding: clamp(3rem, 6vh, 5rem) 1.5rem !important;
  border-top: none !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.92rem;
}
.site-footer a, footer a {
  color: var(--ibc-amber) !important;
  text-decoration: none !important;
  border-bottom: 1px solid transparent;
  transition: border-color 0.2s ease;
}
.site-footer a:hover { border-bottom-color: var(--ibc-amber) !important; }
.site-footer h2, .site-footer h3, .site-footer h4 {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.02em !important;
  color: #fff !important;
  margin-bottom: 1rem !important;
}

/* --- 10. Mobile refinement --- */
@media (max-width: 768px) {
  .site-header, header.site-header { padding: 10px 16px !important; }
  .site-title, .site-title a { font-size: 1.1rem !important; }
  .site-description { font-size: 0.65rem !important; letter-spacing: 0.18em !important; }
  .ibc-hero { padding: 2.5rem 1.25rem !important; }
  .ibc-hero h1 { font-size: clamp(1.9rem, 8vw, 2.6rem) !important; }
  .feat-card h2, .pc h2 { font-size: 1.25rem !important; }
  .ibc-topics a { padding: 0 10px !important; font-size: 0.7rem !important; letter-spacing: 0.12em !important; }
}

/* End elegance polish */


/* ==========================================================
   HEADER FIX — clean static layout, no content overlap
   Apr 29, 2026
   ========================================================== */

.site-header,
header.site-header,
#masthead {
  position: static !important;
  background: var(--ibc-cream) !important;
  background-image: none !important;
  backdrop-filter: none !important;
  -webkit-backdrop-filter: none !important;
  border-bottom: 1px solid rgba(212,160,23,0.18) !important;
  box-shadow: none !important;
  padding: 22px 32px 18px !important;
  width: 100% !important;
  z-index: 4 !important;
}

/* Site title */
.site-header .site-title,
.site-header .site-title a,
header .custom-logo-link {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-weight: 700 !important;
  font-size: 1.5rem !important;
  letter-spacing: 0.04em !important;
  color: var(--ibc-ink) !important;
  text-decoration: none !important;
  white-space: nowrap;
  overflow: visible !important;
  text-overflow: clip !important;
}

/* Tagline — quiet support copy under/next to title */
header h2.site-description,
.site-header .site-description {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--ibc-orange) !important;
  margin: 4px 0 0 !important;
  padding: 0 !important;
}/* removed-has-rule */

/* Reset any prior gold-band stylings on hamburger that left visual residue */
.site-header .menu-toggle,
.site-header [class*="menu-button"],
.site-header .hamburger {
  background: transparent !important;
  box-shadow: none !important;
  color: var(--ibc-ink) !important;
  border: none !important;
}

/* Make sure page content (.ibc-page) starts cleanly below the header — no padding hack needed since header is now static */
body.home .ibc-page,
.ibc-page { padding-top: 0 !important; }

/* End header clean fix */


/* ==========================================================
   HEADER FIX REFINEMENTS — Apr 29
   ========================================================== */

/* Force cream bg with hex (in case var doesn't resolve in some context) */
.site-header,
header.site-header,
#masthead,
.site-header > div,
.site-header > .site-branding,
.site-branding,
.site-header .clear {
  background-color: #FFF8EC !important;
  background: #FFF8EC !important;
}

/* Site title — upright, not italic (the polish-pass made all h1/serif italic; revert for the title) */
.site-header .site-title,
.site-header .site-title a,
header.site-header .site-title,
header.site-header .site-title a {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: normal !important;
  font-weight: 700 !important;
  font-size: 1.5rem !important;
  letter-spacing: 0.04em !important;
  color: #2A1810 !important;
  text-decoration: none !important;
}

/* Hide the boardwalk theme's right-side menu container that's empty / orphan */
.site-header .menu-toggle,
header.site-header .menu-toggle,
.site-header [class*="menu-button"],
.site-header [class*="navigation-toggle"],
.site-header .hamburger,
.site-header > .nav-trigger,
header.site-header > div:last-child:not(.site-branding):not(.clear) {
  display: none !important;
}

/* End refinements */


/* HEADER FIX 3 — kill the boardwalk sidebar-toggle button on desktop */
.site-header .sidebar-toggle,
header.site-header .sidebar-toggle,
button.sidebar-toggle {
  display: none !important;
}

/* Tighten header height now that the toggle is gone */
.site-header,
header.site-header,
#masthead {
  padding: 18px 32px !important;
}

/* End */


/* HEADER WHITE — sitewide override (homepage + post pages) */
body .site-header,
body header.site-header,
body #masthead,
body .site-header > div,
body .site-header > .site-branding,
body .site-branding,
body .site-header .clear,
.single .site-header,
.single header.site-header,
.single .site-branding,
.page .site-header,
.page header.site-header,
.archive .site-header,
.archive header.site-header {
  background: #FFFFFF !important;
  background-color: #FFFFFF !important;
  background-image: none !important;
}
.site-header .site-title,
.site-header .site-title a,
.site-header .site-description {
  background: transparent !important;
}
/* End white header */


/* ==========================================================
   POST HEADER FIX — title over featured image must be WHITE
   Apr 29, 2026
   ========================================================== */

/* Single post / page title shown over featured image */
.single .entry-title,
.single article .entry-title,
.single h1.entry-title,
.single .post-header h1,
.single .post-header .entry-title,
.single .post-thumbnail + .entry-header .entry-title,
.single .entry-header .entry-title,
body.single article h1,
body.single .post-header h1,
body.single header.entry-header h1,
.post-header h1,
.post-header .entry-title,
.entry-header h1.entry-title,
.entry-header .entry-title {
  color: #FFFFFF !important;
  text-shadow: 0 2px 14px rgba(0,0,0,0.55), 0 1px 4px rgba(0,0,0,0.6) !important;
}

/* Date / meta on single post header */
.single .entry-meta,
.single .entry-meta a,
.single .entry-meta time,
.single .posted-on,
.single .posted-on a,
.single .post-header time,
.entry-header .entry-meta,
.entry-header time,
.post-header time {
  color: #FFFFFF !important;
  text-shadow: 0 1px 6px rgba(0,0,0,0.55) !important;
}

/* Author / byline on single header */
.single .byline,
.single .byline a,
.entry-header .byline,
.post-header .byline {
  color: rgba(255,255,255,0.92) !important;
  text-shadow: 0 1px 6px rgba(0,0,0,0.5) !important;
}

/* Subtle dark vignette overlay over featured image so white text is always legible */
.single .post-thumbnail,
.single .post-header,
.single .entry-header.has-post-thumbnail {
  position: relative;
}
.single .post-thumbnail::after,
.single .post-header.has-post-thumbnail::after {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, rgba(0,0,0,0.20) 0%, rgba(0,0,0,0.55) 100%);
}

/* Note: leave the article BODY h2/h3 dark (those are inside the post copy) */

/* End post-header fix */


/* ==========================================================
   POST HEADER SIZING — make title an accent, not a takeover
   Apr 29, 2026
   ========================================================== */

/* Drastically reduce the entry-title size on post pages */
.single .entry-title,
.single article .entry-title,
.single h1.entry-title,
.single .post-header h1,
.single .post-header .entry-title,
.single .entry-header .entry-title,
body.single article h1.entry-title,
.post-header h1.entry-title,
.entry-header h1.entry-title,
.page .entry-title,
.page h1.entry-title {
  font-size: clamp(1.4rem, 2.6vw, 2rem) !important;
  line-height: 1.2 !important;
  letter-spacing: 0 !important;
  font-weight: 600 !important;
  font-style: normal !important;
  margin: 0 0 0.4rem 0 !important;
  padding: 0 !important;
  max-width: 80ch;
}

/* Date / meta — small, refined */
.single .entry-meta,
.single .entry-meta a,
.single .entry-meta time,
.single .posted-on,
.single .post-header time,
.entry-header .entry-meta,
.entry-header time,
.post-header time {
  font-size: 0.78rem !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  font-weight: 600 !important;
  line-height: 1.4 !important;
}

/* Constrain the post header so it's an accent strip, not a full hero */
.single .post-thumbnail,
.single .post-header,
.single .entry-header.has-post-thumbnail {
  max-height: 320px !important;
  overflow: hidden !important;
}
.single .post-thumbnail img,
.single .post-header img,
.single .entry-header.has-post-thumbnail img {
  max-height: 320px !important;
  object-fit: cover !important;
  width: 100% !important;
}

/* Trim the page tagline at the top so it doesn't overpower either */
header h2.site-description,
.site-header .site-description {
  font-size: 0.62rem !important;
  letter-spacing: 0.24em !important;
}

/* End sizing fix */


/* ==========================================================
   COORDINATED DESIGN PASS — Apr 29 (afternoon)
   Goals: clean header, no duplicate hero image, classy post page,
          consistent buttons, polished email signup, no dev artifacts.
   ========================================================== */

/* ---------- 1. HEADER — refined wordmark + small tagline kicker ---------- */
.site-header,
header.site-header,
#masthead {
  position: static !important;
  background: #FFFFFF !important;
  background-image: none !important;
  border-bottom: 1px solid rgba(212,160,23,0.22) !important;
  box-shadow: 0 1px 0 rgba(42,24,16,0.03) !important;
  padding: 18px 32px 16px !important;
  text-align: center !important;
}

/* Hide the wide-format inline tagline that was causing overlap */
header h2.site-description,
.site-header .site-description {
  display: block !important;
  position: static !important;
  width: 100% !important;
  text-align: center !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.62rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  color: var(--ibc-orange) !important;
  margin: 0 0 6px 0 !important;
  padding: 0 !important;
  line-height: 1.4 !important;
  /* Truncate the long auto-generated tagline so it fits on one tasteful line */
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

/* Site title — centered, balanced, single elegant line */
.site-header .site-title,
.site-header h1.site-title,
.site-header .site-title a,
header.site-header .site-title,
header.site-header .site-title a {
  display: block !important;
  text-align: center !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: normal !important;
  font-weight: 700 !important;
  font-size: 1.55rem !important;
  letter-spacing: 0.04em !important;
  color: var(--ibc-ink) !important;
  text-decoration: none !important;
  margin: 0 !important;
  padding: 0 !important;
  line-height: 1.2 !important;
}

/* Hide branding wrapper float behavior so flex centers properly */
.site-header .site-branding,
.site-header .clear {
  width: 100% !important;
  text-align: center !important;
  background: transparent !important;
}

/* ---------- 2. HOMEPAGE HERO — kill the duplicate featured tile ---------- */
/* The right-side .hero-img was showing the same RSO/FECO post that's
   also in the FEATURED section below. Removing it keeps the hero as a
   clean text + CTA section and lets the FEATURED section do the work. */
.home .ibc-hero .hero-img,
.home .hero-img {
  display: none !important;
}

/* Re-flow the hero so the text + buttons take full width nicely */
.home .ibc-hero {
  text-align: left !important;
}
.home .ibc-hero .hero-h1,
.home .ibc-hero h1.hero-h1,
.home .ibc-hero h1 {
  max-width: 22ch !important;
}
.home .ibc-hero .hero-sub,
.home .ibc-hero p {
  max-width: 56ch !important;
}

/* Kill the random gold "BETTER" highlight in the H1 — single ink color */
.home .ibc-hero h1 *,
.home .ibc-hero .hero-h1 *,
.home h1 [style*="color"],
.home h1 span,
.home h1 strong,
.home h1 em,
.home h1 b,
.home h1 i {
  color: var(--ibc-ink) !important;
  background: none !important;
  -webkit-text-fill-color: var(--ibc-ink) !important;
  text-shadow: none !important;
  font-style: normal !important;
}

/* ---------- 3. CTA BUTTONS — one consistent treatment in the hero ---------- */
.home .ibc-hero .nav-cta > a,
.home .ibc-hero a.nav-cta,
.home .ibc-hero .button,
.home .ibc-hero .wp-block-button__link {
  background: var(--ibc-ink) !important;
  background-image: none !important;
  color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-ink) !important;
  border-radius: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 500 !important;
  letter-spacing: 0.10em !important;
  text-transform: uppercase !important;
  font-size: 0.78rem !important;
  padding: 14px 26px !important;
  box-shadow: none !important;
}
.home .ibc-hero .nav-cta:nth-of-type(2) > a,
.home .ibc-hero a.btn-secondary,
.home .ibc-hero .wp-block-button.is-style-outline .wp-block-button__link {
  background: transparent !important;
  color: var(--ibc-ink) !important;
}
.home .ibc-hero .nav-cta > a:hover,
.home .ibc-hero .button:hover,
.home .ibc-hero .wp-block-button__link:hover {
  background: var(--ibc-orange) !important;
  border-color: var(--ibc-orange) !important;
  color: #fff !important;
}

/* ---------- 4. POST PAGE HEADER — editorial, classy, NOT amateur ---------- */
/* Move title BELOW the featured image on a clean cream band rather than
   floating it on top. Constrain image height so it's a banner, not a takeover. */

/* The featured image acts as a banner */
.single .post-thumbnail,
.single .entry-header.has-post-thumbnail,
.single .post-header {
  max-height: 360px !important;
  overflow: hidden !important;
  position: relative !important;
}
.single .post-thumbnail img,
.single .post-header img {
  width: 100% !important;
  height: 360px !important;
  object-fit: cover !important;
  display: block !important;
}
/* Remove the dark vignette overlay we added before — title is now below */
.single .post-thumbnail::after,
.single .post-header.has-post-thumbnail::after {
  display: none !important;
}

/* The title block — sits on cream below the banner, editorial layout */
.single .entry-header,
.single .post-header,
.single article > header {
  background: #FFFFFF !important;
  padding: 48px 32px 28px !important;
  border-bottom: 1px solid rgba(212,160,23,0.22) !important;
  text-align: center !important;
}

/* Pull the title block out from over the image (in case theme positions absolute) */
.single .entry-header .entry-title,
.single .post-header h1.entry-title,
.single h1.entry-title,
.single .entry-title {
  position: static !important;
  color: var(--ibc-ink) !important;
  text-shadow: none !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: normal !important;
  font-weight: 600 !important;
  font-size: clamp(1.6rem, 3vw, 2.4rem) !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
  max-width: 32ch !important;
  margin: 0 auto 12px !important;
  padding: 0 !important;
  text-align: center !important;
  background: transparent !important;
}

/* Date / meta on single post header */
.single .entry-meta,
.single .entry-meta time,
.single .entry-meta a,
.single .posted-on,
.single .post-header time,
.single .entry-header time,
.single .byline {
  color: var(--ibc-orange) !important;
  text-shadow: none !important;
  background: transparent !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  margin: 0 !important;
  display: inline-block;
}

/* Article body — generous reading column */
.single .entry-content,
.single article .entry-content {
  max-width: 70ch !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding: 32px 24px !important;
  font-size: 1.06rem !important;
  line-height: 1.75 !important;
}
.single .entry-content p {
  margin-bottom: 1.1em !important;
}

/* ---------- 5. EMAIL SIGNUP SECTION — clean, balanced ---------- */
[class*="signup"], .email-optin, .newsletter,
.jetpack_subscription_widget,
.wp-block-jetpack-subscriptions {
  background: var(--ibc-cream-2) !important;
  background-image: none !important;
  border: 1px solid rgba(212,160,23,0.22) !important;
  border-radius: var(--ibc-radius-lg) !important;
  padding: 40px 32px !important;
  color: var(--ibc-ink) !important;
}
.jetpack_subscription_widget input[type="email"],
.wp-block-jetpack-subscriptions input[type="email"] {
  background: #FFFFFF !important;
  border: 1.5px solid rgba(42,24,16,0.18) !important;
  color: var(--ibc-ink) !important;
}
.jetpack_subscription_widget button,
.wp-block-jetpack-subscriptions button,
.jetpack_subscription_widget input[type="submit"] {
  background: var(--ibc-ink) !important;
  color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-ink) !important;
}

/* ---------- 6. SOCIAL LINKS BAR — kill dark band, keep links elegant ---------- */
.social-links, .social-list, .footer-social,
.ibc-social, [class*="social-row"] {
  background: transparent !important;
  border-top: 1px solid rgba(212,160,23,0.18) !important;
  padding: 24px 0 !important;
}
.social-links a, .footer-social a {
  background: transparent !important;
  border: 1px solid rgba(42,24,16,0.18) !important;
  color: var(--ibc-ink) !important;
  padding: 8px 14px !important;
  border-radius: 999px !important;
  font-weight: 500 !important;
}
.social-links a:hover, .footer-social a:hover {
  border-color: var(--ibc-orange) !important;
  color: var(--ibc-orange) !important;
}

/* ---------- 7. Hide dev artifact "Edit" link that shows on public side ---------- */
a.post-edit-link, .edit-link, .post-edit-link, span.edit-link {
  display: none !important;
}

/* ---------- 8. Topics nav — center align ---------- */
.ibc-topics {
  text-align: center !important;
}

/* ---------- 9. Section labels (FEATURED / POPULAR GUIDES) — refined ---------- */
.ibc-section-title, h2.section-title, .section-heading,
.home .ibc-page h2,
.home [class*="section-label"] {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.78rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--ibc-ink) !important;
}

/* End coordinated design pass */


/* DESIGN REFINEMENT 2 — Apr 29 (afternoon polish v2) */

/* Make the em>better/em> word match weight of the rest of the H1 — bold italic */
.home .ibc-hero h1 em,
.home .ibc-hero .hero-h1 em,
.home h1.hero-h1 em {
  font-style: italic !important;
  font-weight: 700 !important;
  color: var(--ibc-ink) !important;
}



/* ==========================================================
   POST PAGE HEADER — proper class targeting
   The Boardwalk theme uses .entry-thumbnail + .entry-header
   .entry-header is position: absolute by default (overlay).
   Move it to a clean band BELOW the image, editorial layout.
   ========================================================== */

/* Featured image wrapper — banner, not takeover */
.single .entry-thumbnail,
body.single .entry-thumbnail {
  background: #FFF8EC !important;
  max-height: 380px !important;
  height: 380px !important;
  overflow: hidden !important;
  position: relative !important;
}
.single .entry-thumbnail img,
body.single .entry-thumbnail img {
  position: absolute !important;
  top: 0 !important; left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-height: 380px !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
}

/* Pull entry-header out of absolute overlay; place it below the image */
.single article .entry-header,
body.single .entry-header {
  position: static !important;
  width: 100% !important;
  max-width: 100% !important;
  margin: 0 !important;
  padding: 44px 32px 28px !important;
  background: #FFFFFF !important;
  border-bottom: 1px solid rgba(212,160,23,0.22) !important;
  text-align: center !important;
  box-shadow: none !important;
  transform: none !important;
  top: auto !important; left: auto !important; right: auto !important; bottom: auto !important;
}

/* Date / meta — small orange uppercase kicker above the title */
.single .entry-header .entry-meta,
.single .entry-header .posted-on {
  display: block !important;
  margin: 0 0 12px 0 !important;
  text-align: center !important;
  background: transparent !important;
}
.single .entry-header .entry-meta time,
.single .entry-header .posted-on,
.single .entry-header .posted-on a,
.single .entry-header .entry-meta a {
  color: var(--ibc-orange) !important;
  text-shadow: none !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
}

/* Title — clean centered serif */
.single .entry-header .entry-title,
.single .entry-header h1.entry-title {
  position: static !important;
  color: var(--ibc-ink) !important;
  text-shadow: none !important;
  background: transparent !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: normal !important;
  font-weight: 600 !important;
  font-size: clamp(1.7rem, 3.2vw, 2.5rem) !important;
  line-height: 1.18 !important;
  letter-spacing: 0 !important;
  max-width: 32ch !important;
  margin: 0 auto !important;
  padding: 0 !important;
  text-transform: none !important;
  text-align: center !important;
}

/* Author / byline / cat list — small refined */
.single .entry-header .byline,
.single .entry-header .cat-links,
.single .entry-header .entry-categories {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--ibc-ink-soft) !important;
  background: transparent !important;
  text-shadow: none !important;
  margin-top: 10px !important;
}

/* End post header proper-class fix */


/* Featured image: span full viewport width on post pages */
.single .entry-thumbnail,
body.single .entry-thumbnail {
  width: 100vw !important;
  max-width: 100vw !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  position: relative !important;
}
.single .entry-thumbnail img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
}

/* Hide email exposure in byline; keep "By Troy Ivan" only */
.single .entry-header .byline a[href^="mailto:"],
.single .entry-header .author-email,
.single .entry-header .vcard .email,
.single .entry-header .author-link[href^="mailto:"] {
  display: none !important;
}

/* Ensure entry-content also has its own cream cushion below white header */
.single .entry-content { background: #FFF8EC !important; }
.single .entry-content > * { background: transparent !important; }



/* Image height — boost specificity to win against theme's defaults */
body.single .entry-thumbnail img,
body.single .entry-thumbnail img.attachment-boardwalk-hero-image,
body.single article .entry-thumbnail img,
.single article div.entry-thumbnail > img {
  height: 380px !important;
  max-height: 380px !important;
  min-height: 380px !important;
  width: 100% !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
  position: static !important;
}

/* Hide the author/vcard block that exposes email */
.single .vcard,
.single .author.vcard,
.single .byline,
.single article .author,
.single .entry-content > .vcard,
.single .post-author-info,
.single .author-info,
.single .author-bio,
.entry-meta .vcard {
  display: none !important;
}

/* Also remove any visible mailto links in the post header area */
.single article a[href^="mailto:"] { display: none !important; }



/* Editorial post-header — hide the awkward cropped thumbnail.
   Title block alone is cleaner than a half-cropped banner. */
.single .entry-thumbnail,
body.single .entry-thumbnail,
body.single article > .entry-thumbnail {
  display: none !important;
}

/* Make the entry-header land cleanly under the site header */
body.single article .entry-header {
  padding: 64px 32px 32px !important;
  background: #FFFFFF !important;
}

/* Hide the post-content vcard / byline that exposes the email — broader selectors */
body.single .vcard,
body.single span.vcard,
body.single .author.vcard,
body.single article .vcard,
body.single article .author,
body.single article .byline,
body.single article .post-author,
body.single article .author-info,
body.single article .author-bio,
body.single article div.byline,
body.single .entry-meta .vcard,
body.single .entry-meta .author,
body.single .entry-meta .byline {
  display: none !important;
}{
  display: none;
}

/* Hide ALL mailto: links and their immediate parent if very small */
.single article a[href^="mailto:"] { display: none !important; }



/* Collapse the empty space where the thumbnail used to be */
.single .entry-thumbnail,
body.single .entry-thumbnail,
body.single article > .entry-thumbnail {
  display: none !important;
  height: 0 !important;
  max-height: 0 !important;
  min-height: 0 !important;
  padding: 0 !important;
  margin: 0 !important;
  overflow: hidden !important;
  visibility: hidden !important;
}

/* Tighten article top spacing so the title block lands right under the site header */
body.single article,
body.single .single article {
  padding-top: 0 !important;
  margin-top: 0 !important;
}
body.single article > header.entry-header:first-of-type,
body.single article > .entry-header:first-of-type {
  margin-top: 0 !important;
}



/* Kill the boardwalk theme's 155px main margin (was for fixed header — now static) */
body main.site-main,
body .site-content main.site-main,
body.single main.site-main,
.site-main {
  margin-top: 0 !important;
  padding-top: 0 !important;
}



/* ==========================================================
   SITE HEADER REDESIGN — amazing, intentional, every page
   Apr 29 evening
   ========================================================== */

/* The header band */
.site-header,
header.site-header,
#masthead {
  position: static !important;
  background: #FFFFFF !important;
  background-image: none !important;
  border-bottom: none !important;
  box-shadow: none !important;
  padding: 36px 32px 28px !important;
  text-align: center !important;
  position: relative !important;
}

/* Hairline ornaments above and below the wordmark — editorial masthead feel */
.site-header::before,
.site-header::after {
  content: "";
  display: block;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(212,160,23,0.35) 30%, rgba(212,160,23,0.55) 50%, rgba(212,160,23,0.35) 70%, transparent 100%);
  margin: 0 auto;
  width: min(540px, 80%);
}
.site-header::before { margin-bottom: 18px; }
.site-header::after { margin-top: 18px; }

/* Branding container — vertical stack */
.site-header .site-branding,
.site-header .clear,
.site-branding {
  width: 100% !important;
  text-align: center !important;
  background: transparent !important;
  display: block !important;
  padding: 0 !important;
}

/* Pre-title small caps kicker (the tagline as a kicker BEFORE the title) */
header h2.site-description,
.site-header .site-description {
  display: block !important;
  text-align: center !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.66rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.34em !important;
  text-transform: uppercase !important;
  color: var(--ibc-orange) !important;
  margin: 0 auto 14px !important;
  padding: 0 !important;
  line-height: 1.5 !important;
  max-width: 720px;
  white-space: normal !important;
  overflow: visible !important;
  text-overflow: unset !important;
  /* Make sure long tagline still feels intentional */
  word-spacing: 0.05em;
}

/* Site title — big, elegant, refined */
.site-header .site-title,
.site-header h1.site-title,
.site-header .site-title a,
header.site-header .site-title,
header.site-header .site-title a {
  display: block !important;
  text-align: center !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-weight: 600 !important;
  font-size: clamp(1.8rem, 3.5vw, 2.6rem) !important;
  letter-spacing: 0.02em !important;
  color: var(--ibc-ink) !important;
  text-decoration: none !important;
  margin: 0 auto !important;
  padding: 0 !important;
  line-height: 1.1 !important;
}

/* Hide the boardwalk sidebar-toggle */
.site-header .sidebar-toggle,
button.sidebar-toggle { display: none !important; }

/* ==========================================================
   POST PAGE — restore the featured image, clean and neat
   ========================================================== */

/* Show the entry-thumbnail again as a wide banner under the header */
.single .entry-thumbnail,
body.single .entry-thumbnail,
body.single article > .entry-thumbnail {
  display: block !important;
  visibility: visible !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  height: 320px !important;
  max-height: 320px !important;
  min-height: 320px !important;
  overflow: hidden !important;
  background: #FFF8EC !important;
  position: relative !important;
  border-bottom: 1px solid rgba(212,160,23,0.18) !important;
}

/* The image fills the banner */
body.single .entry-thumbnail img,
body.single .entry-thumbnail img.attachment-boardwalk-hero-image,
body.single article .entry-thumbnail img,
.single article div.entry-thumbnail > img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 320px !important;
  max-height: 320px !important;
  min-height: 320px !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
  display: block !important;
}

/* End site header redesign + post image restore */


/* Force header content to stack vertically and center properly */
.site-header,
header.site-header,
#masthead {
  display: block !important;
}
.site-header .site-branding,
.site-header .clear,
.site-branding {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  text-align: center !important;
  width: 100% !important;
  max-width: 100% !important;
  float: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Title — first item in flex */
.site-header .site-title,
.site-header h1.site-title {
  order: 1 !important;
  width: 100% !important;
  display: block !important;
  margin: 0 0 12px 0 !important;
  float: none !important;
}

/* Tagline — comes BELOW title */
header h2.site-description,
.site-header .site-description {
  order: 2 !important;
  width: 100% !important;
  display: block !important;
  float: none !important;
}

/* Reset the float that the boardwalk theme might still apply */
.site-header > *,
.site-header .site-branding > * { float: none !important; }

/* Ornaments — push outside the flex flow so they appear above/below the entire branding block */
.site-header { position: relative !important; }



/* Header — back to plain block layout, text-aligned center */
.site-header,
header.site-header,
#masthead {
  display: block !important;
}
.site-header .site-branding,
.site-header .clear,
.site-branding {
  display: block !important;
  flex-direction: unset !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  margin: 0 !important;
  padding: 0 !important;
  float: none !important;
}

/* Title — block, full width, centered text */
.site-header .site-title,
.site-header h1.site-title,
header.site-header .site-title,
header.site-header h1.site-title {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  margin: 0 0 12px 0 !important;
  padding: 0 !important;
  float: none !important;
  align-self: stretch !important;
}
.site-header .site-title a,
header.site-header .site-title a {
  display: inline-block !important;
}

/* Tagline — block, full width, centered text */
header h2.site-description,
.site-header .site-description {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  margin: 0 auto !important;
  padding: 0 !important;
  float: none !important;
}



/* Override the theme's max-width: 220px on the site-title */
.site-header .site-title,
.site-header h1.site-title,
header.site-header .site-title,
header.site-header h1.site-title,
.site-branding .site-title,
.site-branding h1.site-title {
  max-width: none !important;
  width: 100% !important;
  white-space: normal !important;
}
.site-header .site-title a,
.site-branding .site-title a {
  max-width: none !important;
  display: inline-block !important;
}



/* Boardwalk theme uses transform: translate(-50%,-50%) for image centering.
   That breaks our intended layout. Reset to no transform. */
body.single .entry-thumbnail img,
body.single .entry-thumbnail img.attachment-boardwalk-hero-image,
body.single article .entry-thumbnail img,
.single article div.entry-thumbnail > img {
  transform: none !important;
  -webkit-transform: none !important;
  top: 0 !important;
  left: 0 !important;
  right: auto !important;
  bottom: auto !important;
  margin: 0 !important;
}



/* Featured image banner — use natural aspect ratio so the FULL image shows, not a cropped middle band */
body.single .entry-thumbnail,
.single .entry-thumbnail {
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  max-height: 420px !important;
  min-height: 0 !important;
  background: #FFF8EC !important;
  overflow: hidden !important;
  position: relative !important;
}
body.single .entry-thumbnail img,
body.single .entry-thumbnail img.attachment-boardwalk-hero-image,
.single article div.entry-thumbnail > img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  min-height: 0 !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
  transform: none !important;
  margin: 0 !important;
}



/* Featured image — full natural aspect, no cap so the entire image is visible */
body.single .entry-thumbnail,
.single .entry-thumbnail {
  aspect-ratio: 16 / 9 !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  background: #FFF8EC !important;
  overflow: hidden !important;
  position: relative !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
}



/* Featured image — show the FULL image, never crop. Use contain with cream letterbox. */
html body.single .entry-thumbnail,
html body.single article > .entry-thumbnail,
html .single .entry-thumbnail {
  height: auto !important;
  min-height: 0 !important;
  max-height: 540px !important;
  aspect-ratio: 16 / 9 !important;
  background: #FFF8EC !important;
  overflow: hidden !important;
  position: relative !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
}
html body.single .entry-thumbnail img,
html body.single article .entry-thumbnail img,
html .single article div.entry-thumbnail > img,
html body.single .entry-thumbnail img.attachment-boardwalk-hero-image {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-height: 100% !important;
  min-height: 0 !important;
  object-fit: contain !important;
  object-position: 50% 50% !important;
  transform: none !important;
  margin: 0 !important;
  background: #FFF8EC !important;
}



/* Push the post article below the header (fix the negative overlap) */
body.single article,
body.single main.site-main,
body.single .site-main {
  margin-top: 0 !important;
  padding-top: 32px !important;
  position: relative !important;
  z-index: 1 !important;
}

/* Featured image — FULL natural size, no cropping, no cap */
html body.single .entry-thumbnail,
html .single .entry-thumbnail {
  aspect-ratio: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;
  background: #FFF8EC !important;
  overflow: visible !important;
  position: relative !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  display: block !important;
}
html body.single .entry-thumbnail img,
html body.single article .entry-thumbnail img,
html .single article div.entry-thumbnail > img,
html body.single .entry-thumbnail img.attachment-boardwalk-hero-image {
  position: static !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  min-height: 0 !important;
  object-fit: initial !important;
  object-position: initial !important;
  transform: none !important;
  margin: 0 auto !important;
  background: transparent !important;
}



/* DEFINITIVE FEATURED IMAGE OVERRIDE — appended last, maximum specificity */
html body.single article .entry-thumbnail,
html body.single .entry-thumbnail,
html body .entry-thumbnail {
  aspect-ratio: auto !important;
  height: auto !important;
  min-height: 0 !important;
  max-height: 100vh !important;
  overflow: visible !important;
  background: #FFF8EC !important;
  width: 100% !important;
  max-width: 1200px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  position: relative !important;
}
html body.single article .entry-thumbnail img,
html body.single .entry-thumbnail img,
html body .entry-thumbnail img {
  position: static !important;
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-width: 100% !important;
  max-height: none !important;
  min-height: 0 !important;
  object-fit: initial !important;
  object-position: initial !important;
  transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
  background: transparent !important;
  top: auto !important;
  left: auto !important;
  right: auto !important;
  bottom: auto !important;
}



/* HERO HEADER VERTICAL BALANCE — Apr 29 final
   Equal breathing room above title and below tagline so the writing
   sits dead-center between the two ornament hairlines. */

.site-header,
header.site-header,
#masthead {
  padding: 0 !important;
}

/* Ornament above */
.site-header::before {
  content: "" !important;
  display: block !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent 0%, rgba(212,160,23,0.35) 30%, rgba(212,160,23,0.55) 50%, rgba(212,160,23,0.35) 70%, transparent 100%) !important;
  margin: 32px auto 0 !important;
  width: min(540px, 80%) !important;
}
/* Ornament below */
.site-header::after {
  content: "" !important;
  display: block !important;
  height: 1px !important;
  background: linear-gradient(90deg, transparent 0%, rgba(212,160,23,0.35) 30%, rgba(212,160,23,0.55) 50%, rgba(212,160,23,0.35) 70%, transparent 100%) !important;
  margin: 0 auto 32px !important;
  width: min(540px, 80%) !important;
}

/* Branding block — equal margins above and below to balance the writing */
.site-header .site-branding,
.site-header .clear,
.site-branding {
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  padding: 28px 32px !important;
  margin: 0 !important;
  background: transparent !important;
}

/* Title margin — only enough breathing room for tagline below */
.site-header .site-title,
.site-header h1.site-title {
  margin: 0 0 10px 0 !important;
}

/* Tagline — no margin (balanced by parent padding) */
header h2.site-description,
.site-header .site-description {
  margin: 0 auto !important;
  padding: 0 !important;
  /* New tagline is shorter; nowrap looks cleaner */
  white-space: nowrap !important;
  overflow: visible !important;
  text-overflow: unset !important;
}

/* End hero balance */


/* Make the wordmark ornament hairlines visible (were too faint) */
.site-header::before,
.site-header::after,
header.site-header::before,
header.site-header::after {
  content: "" !important;
  display: block !important;
  height: 2px !important;
  width: min(560px, 80%) !important;
  background: linear-gradient(90deg, transparent 0%, rgba(212,160,23,0.85) 25%, rgba(232,155,34,1) 50%, rgba(212,160,23,0.85) 75%, transparent 100%) !important;
  border: none !important;
  opacity: 1 !important;
}
.site-header::before { margin: 32px auto 0 !important; }
.site-header::after  { margin: 0 auto 32px !important; }



/* Force hero to be a centered block, not a grid (theme default) */
.home .ibc-hero,
body.home .ibc-hero,
section.ibc-hero {
  display: block !important;
  grid-template-columns: none !important;
  grid-template-rows: none !important;
  text-align: center !important;
}
.home .ibc-hero > *,
body.home .ibc-hero > * {
  grid-column: unset !important;
  grid-row: unset !important;
  margin-left: auto !important;
  margin-right: auto !important;
  text-align: center !important;
  max-width: 100% !important;
}
.home .ibc-hero h1,
.home .ibc-hero .hero-h1 {
  max-width: 18ch !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.home .ibc-hero p,
.home .ibc-hero .hero-sub {
  max-width: 56ch !important;
  margin-left: auto !important;
  margin-right: auto !important;
}
.home .ibc-hero .nav-cta {
  display: inline-block !important;
}



/* Center the hero buttons (.hero-btns wraps the two CTAs) */
.home .ibc-hero .hero-btns,
body.home .ibc-hero .hero-btns {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 16px !important;
  width: 100% !important;
  margin: 2rem auto 0 !important;
  text-align: center !important;
}
.home .ibc-hero .hero-btns a,
.home .ibc-hero .hero-btns .btn-primary,
.home .ibc-hero .hero-btns .btn-ghost {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.5em !important;
  background: var(--ibc-ink) !important;
  background-image: none !important;
  color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-ink) !important;
  border-radius: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  font-size: 0.78rem !important;
  padding: 16px 32px !important;
  box-shadow: none !important;
  text-decoration: none !important;
}
.home .ibc-hero .hero-btns .btn-ghost {
  background: transparent !important;
  color: var(--ibc-ink) !important;
}
.home .ibc-hero .hero-btns a:hover {
  background: var(--ibc-orange) !important;
  border-color: var(--ibc-orange) !important;
  color: #fff !important;
}



/* ==========================================================
   HERO REMOVED — Apr 29 night (Troy's call)
   ========================================================== */
.home .ibc-hero,
body.home .ibc-hero,
section.ibc-hero {
  display: none !important;
}



/* Center the topics nav row */
.home .ibc-topics,
.ibc-topics {
  text-align: center !important;
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap !important;
  gap: 8px 24px !important;
}
.home .ibc-topics > a,
.ibc-topics > a {
  margin: 0 !important;
}



/* ==========================================================
   BOTTOM SECTIONS REDESIGN — Apr 29 night
   .tk-bridge  (Equipment promo)
   .ibc-email  (Email signup)
   .ibc-channels  (Social links)
   .site-footer  (Footer)
   ========================================================== */

/* ---------- 1. EQUIPMENT PROMO (.tk-bridge) ---------- */
.tk-bridge,
.home .tk-bridge {
  background: #FFFFFF !important;
  background-image: none !important;
  border-top: 1px solid rgba(212,160,23,0.18) !important;
  border-bottom: 1px solid rgba(212,160,23,0.18) !important;
  padding: 56px clamp(1.5rem, 5vw, 4rem) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 0 !important;
}
.tk-bridge > *,
.home .tk-bridge > * {
  background: transparent !important;
  color: var(--ibc-ink) !important;
  text-align: center !important;
  margin: 0 auto !important;
  width: auto !important;
  max-width: 720px !important;
  float: none !important;
}
.tk-bridge .tk-label,
.tk-bridge p:first-child,
.home .tk-bridge p:first-of-type {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  color: var(--ibc-orange) !important;
  margin: 0 auto 0.8rem !important;
}
.tk-bridge h2,
.tk-bridge h3,
.tk-bridge .tk-title,
.home .tk-bridge h2,
.home .tk-bridge h3 {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-weight: 600 !important;
  font-size: clamp(1.6rem, 2.8vw, 2.2rem) !important;
  line-height: 1.2 !important;
  color: var(--ibc-ink) !important;
  margin: 0 auto 0.8rem !important;
}
.tk-bridge p:not(:first-child),
.tk-bridge .tk-desc,
.home .tk-bridge p:not(:first-of-type) {
  font-family: 'Inter', sans-serif !important;
  font-size: 1rem !important;
  line-height: 1.6 !important;
  color: var(--ibc-ink-soft) !important;
  margin: 0 auto 1.6rem !important;
  max-width: 56ch !important;
}
.tk-bridge a,
.home .tk-bridge a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5em !important;
  background: var(--ibc-ink) !important;
  background-image: none !important;
  color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-ink) !important;
  border-radius: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  font-size: 0.78rem !important;
  padding: 14px 28px !important;
  text-decoration: none !important;
  margin: 0 auto !important;
  box-shadow: none !important;
}
.tk-bridge a:hover {
  background: var(--ibc-orange) !important;
  border-color: var(--ibc-orange) !important;
  color: #fff !important;
}

/* ---------- 2. EMAIL SIGNUP (.ibc-email) ---------- */
.ibc-email,
.home .ibc-email {
  background: linear-gradient(180deg, var(--ibc-cream-2) 0%, var(--ibc-sunlight) 100%) !important;
  background-image: linear-gradient(180deg, var(--ibc-cream-2) 0%, var(--ibc-sunlight) 100%) !important;
  padding: 64px clamp(1.5rem, 5vw, 4rem) !important;
  border-top: 1px solid rgba(212,160,23,0.18) !important;
  border-bottom: 1px solid rgba(212,160,23,0.18) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
  gap: 0 !important;
}
.ibc-email > *,
.home .ibc-email > * {
  background: transparent !important;
  text-align: center !important;
  width: auto !important;
  max-width: 640px !important;
  margin: 0 auto !important;
}
.ibc-email::before {
  content: "FREE GUIDE" !important;
  display: block !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  color: var(--ibc-orange) !important;
  margin: 0 auto 0.8rem !important;
}
.ibc-email h2,
.ibc-email h3,
.home .ibc-email h2 {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-weight: 600 !important;
  font-size: clamp(1.7rem, 3vw, 2.4rem) !important;
  line-height: 1.2 !important;
  color: var(--ibc-ink) !important;
  margin: 0 auto 0.8rem !important;
}
.ibc-email p,
.home .ibc-email p {
  font-family: 'Inter', sans-serif !important;
  font-size: 1.02rem !important;
  line-height: 1.6 !important;
  color: var(--ibc-ink-soft) !important;
  margin: 0 auto 1.6rem !important;
  max-width: 56ch !important;
  text-align: center !important;
}

/* The form itself — clean inline-style */
.ibc-jetpack-form,
.ibc-email .ibc-jetpack-form,
.ibc-email form {
  background: transparent !important;
  background-image: none !important;
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  gap: 0 !important;
  width: 100% !important;
  max-width: 480px !important;
  margin: 0 auto !important;
  padding: 0 !important;
  border: none !important;
  box-shadow: none !important;
}
.ibc-email input[type="email"],
.ibc-jetpack-form input[type="email"] {
  flex: 1 1 auto !important;
  background: #FFFFFF !important;
  border: 1px solid rgba(42,24,16,0.2) !important;
  border-right: none !important;
  border-radius: 0 !important;
  padding: 14px 18px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.95rem !important;
  color: var(--ibc-ink) !important;
  outline: none !important;
  margin: 0 !important;
  box-shadow: none !important;
}
.ibc-email input[type="email"]:focus,
.ibc-jetpack-form input[type="email"]:focus {
  border-color: var(--ibc-orange) !important;
  box-shadow: 0 0 0 3px rgba(232,155,34,0.2) !important;
}
.ibc-email button,
.ibc-email input[type="submit"],
.ibc-jetpack-form button,
.ibc-jetpack-form input[type="submit"] {
  background: var(--ibc-ink) !important;
  background-image: none !important;
  color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-ink) !important;
  border-radius: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  font-size: 0.78rem !important;
  padding: 14px 24px !important;
  cursor: pointer !important;
  margin: 0 !important;
  box-shadow: none !important;
  white-space: nowrap !important;
}
.ibc-email button:hover,
.ibc-email input[type="submit"]:hover,
.ibc-jetpack-form button:hover {
  background: var(--ibc-orange) !important;
  border-color: var(--ibc-orange) !important;
  color: #fff !important;
}

/* Trust line / privacy note below form */
.ibc-email .ibc-trust,
.ibc-email > *:last-child {
  font-size: 0.78rem !important;
  color: var(--ibc-ink-soft) !important;
  margin-top: 1rem !important;
  opacity: 0.8 !important;
}

/* ---------- 3. SOCIAL LINKS (.ibc-channels) ---------- */
.ibc-channels,
.home .ibc-channels {
  background: #FFFFFF !important;
  background-image: none !important;
  padding: 36px clamp(1.5rem, 5vw, 4rem) !important;
  border-top: 1px solid rgba(212,160,23,0.18) !important;
  border-bottom: 1px solid rgba(212,160,23,0.18) !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 12px !important;
  text-align: center !important;
}
.ibc-channels::before {
  content: "FOLLOW ALONG" !important;
  display: block !important;
  width: 100% !important;
  text-align: center !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  color: var(--ibc-orange) !important;
  margin: 0 0 16px !important;
}
.ibc-channels a,
.home .ibc-channels a {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5em !important;
  background: transparent !important;
  border: 1px solid rgba(42,24,16,0.18) !important;
  border-radius: 999px !important;
  padding: 10px 18px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.85rem !important;
  font-weight: 500 !important;
  letter-spacing: 0.02em !important;
  color: var(--ibc-ink) !important;
  text-decoration: none !important;
  transition: all 0.2s ease !important;
  margin: 0 !important;
}
.ibc-channels a:hover {
  background: var(--ibc-orange) !important;
  border-color: var(--ibc-orange) !important;
  color: #fff !important;
}
.ibc-channels a::before {
  display: none !important;
  content: none !important;
}

/* ---------- 4. SITE FOOTER (.site-footer) ---------- */
.site-footer,
footer.site-footer,
#colophon {
  background: var(--ibc-ink) !important;
  color: rgba(255,248,236,0.65) !important;
  padding: 48px 32px 32px !important;
  border-top: 4px solid var(--ibc-orange) !important;
  text-align: center !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.85rem !important;
  letter-spacing: 0.02em !important;
}
.site-footer::before {
  content: "ICHIBANCRAFTER" !important;
  display: block !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-weight: 700 !important;
  font-size: 1.4rem !important;
  letter-spacing: 0.04em !important;
  color: var(--ibc-cream) !important;
  margin: 0 0 6px !important;
}
.site-footer::after {
  content: "© 2026 IchiBanCrafter · Lifting each other with knowledge." !important;
  display: block !important;
  margin-top: 18px !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.06em !important;
  color: rgba(255,248,236,0.5) !important;
}
.site-footer a,
footer.site-footer a {
  color: var(--ibc-amber) !important;
  text-decoration: none !important;
  border-bottom: 1px solid transparent !important;
  transition: border-color 0.2s ease, color 0.2s ease !important;
}
.site-footer a:hover {
  color: #fff !important;
  border-bottom-color: var(--ibc-amber) !important;
}

/* End bottom redesign */


/* Email signup form refinements */
.ibc-email > div:first-child,
.ibc-email > div:first-child * {
  background: transparent !important;
  text-align: center !important;
  color: var(--ibc-ink) !important;
}
.ibc-email > div:first-child h2,
.ibc-email > div:first-child h3 {
  color: var(--ibc-ink) !important;
  opacity: 1 !important;
  text-shadow: none !important;
}

/* Jetpack form box — kill the lighter background, force vertical stack */
.ibc-jetpack-form,
.ibc-email .ibc-jetpack-form {
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 520px !important;
  margin: 0 auto !important;
}

/* Inner Jetpack divs — kill any inherited bg */
.ibc-jetpack-form > *,
.ibc-jetpack-form .wp-block-jetpack-subscriptions__container,
.ibc-jetpack-form .wp-block-jetpack-subscriptions__form,
.ibc-jetpack-form form,
.ibc-jetpack-form .jetpack_subscription_widget {
  background: transparent !important;
  background-image: none !important;
  border: none !important;
  box-shadow: none !important;
  padding: 0 !important;
  margin: 0 auto !important;
  width: 100% !important;
  max-width: 480px !important;
  display: block !important;
}

/* The actual input + button row */
.ibc-jetpack-form form,
.ibc-jetpack-form .wp-block-jetpack-subscriptions__form {
  display: flex !important;
  flex-direction: row !important;
  align-items: stretch !important;
  gap: 0 !important;
}

/* Privacy / trust note — force to its own line BELOW the form, centered */
.ibc-jetpack-form .wp-block-jetpack-subscriptions__subscount,
.ibc-jetpack-form .subscribe-readmore,
.ibc-jetpack-form p,
.ibc-jetpack-form .gdpr-text {
  display: block !important;
  width: 100% !important;
  max-width: 100% !important;
  text-align: center !important;
  margin: 12px auto 0 !important;
  font-size: 0.78rem !important;
  color: var(--ibc-ink-soft) !important;
  font-family: 'Inter', sans-serif !important;
  font-style: normal !important;
  opacity: 0.8 !important;
  background: transparent !important;
}



/* Fix title descender clipping (the g in "guide") + replace subtitle text */

.ibc-email .email-title {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-weight: 600 !important;
  font-size: clamp(1.7rem, 3vw, 2.4rem) !important;
  line-height: 1.4 !important;
  padding-bottom: 0.15em !important;
  overflow: visible !important;
  color: var(--ibc-ink) !important;
  margin: 0 auto 0.8rem !important;
}

/* Replace the email-sub text */
.ibc-email .email-sub {
  font-size: 0 !important;
  line-height: 0 !important;
  height: auto !important;
  margin: 0 !important;
}
.ibc-email .email-sub::after {
  content: "Sign up for the Torr Kitchen email list and we will send you the free Extraction Guide." !important;
  display: block !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 1.02rem !important;
  line-height: 1.6 !important;
  color: var(--ibc-ink-soft) !important;
  font-style: normal !important;
  text-align: center !important;
  max-width: 56ch !important;
  margin: 0 auto 1.6rem !important;
}





/* Inner header should also be full width of card */
body.archive main.site-main > article .entry-header,
body.category main.site-main > article .entry-header {
  width: 100% !important;
  display: block !important;
}



/* Popular Guides cards — uniform image proportions across all cards */
.home .pc .pc-img,
.home a.pc .pc-img,
.pc .pc-img {
  width: 100% !important;
  aspect-ratio: 4 / 3 !important;
  height: auto !important;
  max-height: none !important;
  min-height: 0 !important;
  overflow: hidden !important;
  display: block !important;
  background: var(--ibc-cream) !important;
  position: relative !important;
}
.home .pc .pc-img img,
.home a.pc .pc-img img,
.pc .pc-img img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
  transform: none !important;
  margin: 0 !important;
  display: block !important;
}

body.blog .page-header {
  grid-column: 1 / -1 !important;
  text-align: center !important;
  padding: 12px 0 8px !important;
  border-bottom: 1px solid rgba(212,160,23,0.18) !important;
  margin-bottom: 16px !important;
}























/* Restore homepage main layout — undo any grid leakage */
body.home main.site-main,
body.home.wp-singular main.site-main,
body.home.page-template-default main.site-main {
  display: block !important;
  grid-template-columns: none !important;
  max-width: none !important;
  padding: 0 !important;
  margin: 0 !important;
  background: transparent !important;
}















body.archive .entry-thumbnail img,
body.category .entry-thumbnail img,
body.tag .entry-thumbnail img,
body.blog .entry-thumbnail img,
body.search .entry-thumbnail img {
  object-fit: contain !important;
  background: var(--ibc-cream-2) !important;
}



/* ==========================================================
   ARCHIVE / BLOG / CATEGORY — clean editorial grid (restored)
   ========================================================== */

body.archive main.site-main,
body.category main.site-main,
body.tag main.site-main,
body.search main.site-main,
body.blog main.site-main {
  display: grid !important;
  grid-template-columns: repeat(auto-fill, minmax(300px, 1fr)) !important;
  gap: 28px !important;
  padding: 48px clamp(1.5rem, 5vw, 4rem) !important;
  background: var(--ibc-cream) !important;
  max-width: 1240px !important;
  margin: 0 auto !important;
  align-items: start !important;
}

/* Theme clearfix pseudo-elements take grid cells; kill them */
body.archive main.site-main::before,
body.archive main.site-main::after,
body.category main.site-main::before,
body.category main.site-main::after,
body.tag main.site-main::before,
body.tag main.site-main::after,
body.blog main.site-main::before,
body.blog main.site-main::after,
body.search main.site-main::before,
body.search main.site-main::after {
  display: none !important;
  content: none !important;
}

/* Card */
body.archive main.site-main > article,
body.category main.site-main > article,
body.tag main.site-main > article,
body.blog main.site-main > article,
body.search main.site-main > article {
  width: 100% !important;
  min-width: 0 !important;
  flex: 1 1 100% !important;
  display: block !important;
  background: #FFFFFF !important;
  background-image: none !important;
  border: 1px solid rgba(42,24,16,0.08) !important;
  border-radius: 4px !important;
  box-shadow: 0 2px 10px rgba(42,24,16,0.05) !important;
  overflow: hidden !important;
  height: auto !important;
  min-height: 350px !important;
  max-height: none !important;
  position: relative !important;
  padding: 0 !important;
  align-self: start !important;
  transition: transform 0.25s ease, box-shadow 0.25s ease !important;
}
body.archive main.site-main > article:hover,
body.category main.site-main > article:hover,
body.tag main.site-main > article:hover,
body.blog main.site-main > article:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 12px 32px rgba(42,24,16,0.10) !important;
  border-color: rgba(232,155,34,0.3) !important;
}

/* Image banner — cover crop (original) */
body.archive .entry-thumbnail,
body.category .entry-thumbnail,
body.tag .entry-thumbnail,
body.blog .entry-thumbnail,
body.search .entry-thumbnail {
  position: static !important;
  display: block !important;
  width: 100% !important;
  height: 200px !important;
  max-height: 200px !important;
  min-height: 200px !important;
  overflow: hidden !important;
  background: var(--ibc-cream) !important;
  margin: 0 !important;
  aspect-ratio: auto !important;
}
body.archive .entry-thumbnail img,
body.category .entry-thumbnail img,
body.tag .entry-thumbnail img,
body.blog .entry-thumbnail img,
body.search .entry-thumbnail img {
  position: absolute !important;
  top: 0 !important;
  left: 0 !important;
  width: 100% !important;
  height: 200px !important;
  max-height: 200px !important;
  object-fit: cover !important;
  object-position: 50% 50% !important;
  transform: none !important;
  margin: 0 !important;
}

/* Header on the card — title + meta below image */
body.archive .entry-header,
body.category .entry-header,
body.tag .entry-header,
body.blog .entry-header,
body.search .entry-header {
  position: static !important;
  background: #FFFFFF !important;
  padding: 12px 14px 14px !important;
  min-height: 90px !important;
  border: none !important;
  text-align: left !important;
  width: 100% !important;
  margin: 0 !important;
  display: block !important;
}

/* Date kicker */
body.archive .entry-meta,
body.archive .posted-on,
body.archive .entry-header time,
body.category .entry-meta,
body.category .entry-header time,
body.tag .entry-meta,
body.blog .entry-meta,
body.blog .posted-on,
body.blog .entry-header time,
body.search .entry-meta {
  display: block !important;
  margin: 0 0 4px !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--ibc-orange) !important;
  text-align: left !important;
  background: transparent !important;
  text-shadow: none !important;
}
body.archive .entry-meta a,
body.archive .entry-meta time,
body.category .entry-meta a,
body.category .entry-meta time,
body.tag .entry-meta a,
body.blog .entry-meta a,
body.blog .entry-meta time,
body.search .entry-meta a {
  color: var(--ibc-orange) !important;
  text-shadow: none !important;
  background: transparent !important;
  text-decoration: none !important;
}
/* Hide redundant modified date */
body.archive .entry-meta time.updated,
body.category .entry-meta time.updated,
body.tag .entry-meta time.updated,
body.blog .entry-meta time.updated,
body.search .entry-meta time.updated {
  display: none !important;
}

/* Title — clean Inter sans, sentence case, dark on white */
body.archive .entry-title,
body.archive .entry-header h1,
body.archive .entry-header h2,
body.category .entry-title,
body.category .entry-header h1,
body.category .entry-header h2,
body.tag .entry-title,
body.blog .entry-title,
body.blog .entry-header h1,
body.blog .entry-header h2,
body.search .entry-title {
  position: static !important;
  display: block !important;
  font-family: 'Inter', -apple-system, sans-serif !important;
  font-style: normal !important;
  font-weight: 600 !important;
  font-size: 1.05rem !important;
  line-height: 1.4 !important;
  letter-spacing: -0.005em !important;
  color: var(--ibc-ink) !important;
  text-shadow: none !important;
  text-transform: none !important;
  margin: 0 !important;
  padding: 0 !important;
  text-align: left !important;
  max-width: none !important;
  background: transparent !important;
}
body.archive .entry-title a,
body.category .entry-title a,
body.tag .entry-title a,
body.blog .entry-title a {
  color: var(--ibc-ink) !important;
  text-decoration: none !important;
}
body.archive .entry-title a:hover,
body.category .entry-title a:hover,
body.blog .entry-title a:hover {
  color: var(--ibc-orange) !important;
}

/* Hide bulky entry-link wrapper */
body.archive .entry-link,
body.category .entry-link,
body.tag .entry-link,
body.blog .entry-link,
body.search .entry-link {
  position: absolute !important;
  inset: 0 !important;
  height: auto !important;
  width: 100% !important;
  font-size: 0 !important;
  z-index: 2 !important;
  background: transparent !important;
  color: transparent !important;
}

/* Hide article excerpt + entry-content on archive */
body.archive .entry-summary,
body.category .entry-summary,
body.tag .entry-summary,
body.blog .entry-summary,
body.archive .entry-content,
body.category .entry-content,
body.blog .entry-content {
  display: none !important;
}

/* Pagination nav span full width, place last */
body.blog main.site-main > nav.navigation,
body.archive main.site-main > nav.navigation,
body.category main.site-main > nav.navigation,
body.tag main.site-main > nav.navigation,
body.search main.site-main > nav.navigation {
  grid-column: 1 / -1 !important;
  order: 999 !important;
  margin: 16px 0 0 !important;
  padding: 16px !important;
  background: transparent !important;
  text-align: center !important;
}

/* End restored archive grid */


/* Hide private posts from listings even for admins (visitors already don't see them) */
body.archive main.site-main > article.status-private,
body.category main.site-main > article.status-private,
body.tag main.site-main > article.status-private,
body.blog main.site-main > article.status-private,
body.search main.site-main > article.status-private,
body.home article.status-private,
body.home .feat-card.status-private,
body.home .pc.status-private {
  display: none !important;
}



/* IBC_LEAD_MAGNET_PAGE */
/* Lead-magnet thank-you page (page-id-7213): clean it up */
body.page-id-7213 .entry-title,
body.page-id-7213 .entry-meta,
body.page-id-7213 .entry-footer,
body.page-id-7213 .post-thumbnail,
body.page-id-7213 .sharedaddy,
body.page-id-7213 #jp-post-flair,
body.page-id-7213 .sd-sharing,
body.page-id-7213 .sd-like,
body.page-id-7213 .jp-relatedposts,
body.page-id-7213 .post-navigation,
body.page-id-7213 .nav-links,
body.page-id-7213 .comments-area,
body.page-id-7213 #comments,
body.page-id-7213 .entry-tags { display: none !important; }

body.page-id-7213 article.page,
body.page-id-7213 .entry-content { padding-top: 0 !important; margin-top: 0 !important; }

/* Force the orange download button on the thank-you page to actually render orange */
body.page-id-7213 .wp-block-button .wp-block-button__link[href*="IchiBanCrafter-Extraction-Guide.pdf"] {
  background-color: #E89B22 !important;
  color: #FFF8EC !important;
  border-radius: 4px !important;
  border: none !important;
  font-size: 20px !important;
  font-weight: 700 !important;
  letter-spacing: 1px !important;
  text-transform: uppercase !important;
  padding: 22px 44px !important;
  box-shadow: 0 6px 20px rgba(232,155,34,0.25);
  transition: transform 0.15s ease, box-shadow 0.15s ease;
}
body.page-id-7213 .wp-block-button .wp-block-button__link[href*="IchiBanCrafter-Extraction-Guide.pdf"]:hover {
  background-color: #D4A017 !important;
  transform: translateY(-2px);
  box-shadow: 0 10px 28px rgba(232,155,34,0.35);
}

/* Make the cover block look right with the brand */
body.page-id-7213 .wp-block-cover { border-radius: 6px; }
/* /IBC_LEAD_MAGNET_PAGE */


/* IBC_TOPICS_DARK */
/* Topics nav: dark band for visual rhythm between masthead and featured content */
.ibc-topics {
  background: #2A1810 !important;
  position: relative;
  /* Make the band span the full viewport width while keeping content centered */
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  padding-left: max(20px, calc(50vw - 50%)) !important;
  padding-right: max(20px, calc(50vw - 50%)) !important;
  padding-top: 22px !important;
  padding-bottom: 22px !important;
  border-top: 1px solid rgba(212,160,23,0.30) !important;
  border-bottom: 1px solid rgba(212,160,23,0.30) !important;
}

/* Subtle warm gradient hairline along the top edge */
.ibc-topics::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg,
    rgba(232,155,34,0) 0%,
    rgba(212,160,23,0.45) 25%,
    rgba(232,155,34,0.8) 50%,
    rgba(212,160,23,0.45) 75%,
    rgba(232,155,34,0) 100%);
  pointer-events: none;
}

.ibc-topics a {
  color: #FBE9C5 !important;
  border-bottom-color: transparent !important;
  text-shadow: none !important;
  transition: color 0.18s ease, border-bottom-color 0.18s ease;
}

.ibc-topics a:hover {
  color: #F4A52A !important;
}

.ibc-topics a.active {
  color: #FFF8EC !important;
  border-bottom-color: #E89B22 !important;
}
/* /IBC_TOPICS_DARK */


/* IBC_DARK_GOLD_BANDS */
/* Shift the dark bands (topics nav + footer) from chocolate-brown to a properly dark golden hue.
   Same family as #D4A017 brand gold, just at ~25% luminance for a readable dark band. */
.ibc-topics {
  background: #3D2D0A !important;
  border-top-color: rgba(212,160,23,0.45) !important;
  border-bottom-color: rgba(212,160,23,0.45) !important;
}

.site-footer,
footer.site-footer,
footer#colophon,
#colophon.site-footer,
.site-footer .footer-widgets,
.site-footer .footer-credits {
  background: #3D2D0A !important;
  background-color: #3D2D0A !important;
}
/* Inner credits box: same color (no inset stripe) */
.site-footer .site-info,
#colophon .site-info {
  background: transparent !important;
  background-color: transparent !important;
}
/* /IBC_DARK_GOLD_BANDS */


/* ==========================================================================
   IBC_DESIGN_V2_1
   IchiBanCrafter Design Revision V2.1 — pixel-grounded
   Apr 30, 2026
   ========================================================================== */

/* 1. PRIMARY CTA — orange-on-cream */
.wp-block-jetpack-subscriptions .wp-block-button__link,
.wp-block-jetpack-subscriptions__button,
.ibc-leadmagnet-box .wp-block-button__link,
.wp-block-button.is-style-ibc-orange .wp-block-button__link,
.ibc-cta-primary {
  background-color: var(--ibc-orange) !important;
  color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-orange) !important;
  border-radius: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  padding: 0.95rem 1.85rem !important;
  transition: background-color .25s ease, transform .2s ease, box-shadow .25s ease, border-color .25s ease;
  box-shadow: 0 2px 0 rgba(200, 169, 110, .25);
}
.wp-block-jetpack-subscriptions .wp-block-button__link:hover,
.wp-block-jetpack-subscriptions__button:hover,
.ibc-leadmagnet-box .wp-block-button__link:hover,
.wp-block-button.is-style-ibc-orange .wp-block-button__link:hover,
.ibc-cta-primary:hover {
  background-color: var(--ibc-amber) !important;
  border-color: var(--ibc-amber) !important;
  transform: translateY(-1px);
  box-shadow: 0 8px 22px rgba(232, 155, 34, .32) !important;
}
.wp-block-jetpack-subscriptions input[type="email"] {
  border: 1px solid rgba(74, 53, 40, 0.18) !important;
  border-radius: 0 !important;
  background-color: #FFFDF7 !important;
  font-family: 'Inter', sans-serif !important;
}
.wp-block-jetpack-subscriptions input[type="email"]:focus {
  border-color: var(--ibc-orange) !important;
  outline: none !important;
  box-shadow: 0 0 0 3px rgba(232, 155, 34, .15) !important;
}

/* 2. EYEBROW (hero) */
.ibc-hero-eyebrow {
  display: inline-block !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.82rem !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  color: var(--ibc-gold) !important;
  font-weight: 600 !important;
  margin: 0 0 0.85rem 0 !important;
}
.ibc-hero-eyebrow::before {
  content: "";
  display: inline-block;
  width: 1.75rem;
  height: 1px;
  background: var(--ibc-gold);
  vertical-align: middle;
  margin-right: 0.7rem;
  opacity: 0.6;
}

/* 3. LEAD-MAGNET HERO BOX */
.ibc-leadmagnet-box {
  background: linear-gradient(135deg, var(--ibc-cream-2) 0%, var(--ibc-sunlight) 100%) !important;
  border: 1px solid rgba(200, 169, 110, 0.45) !important;
  padding: 2.5rem 2rem 2rem !important;
  margin: 2.5rem auto !important;
  max-width: 580px !important;
  position: relative !important;
  text-align: left !important;
}
.ibc-leadmagnet-box::before {
  content: "FREE GUIDE";
  position: absolute;
  top: -0.7rem;
  left: 1.5rem;
  background: var(--ibc-orange);
  color: var(--ibc-cream);
  padding: 0.32rem 0.85rem;
  font-size: 0.7rem;
  letter-spacing: 0.2em;
  font-family: 'Inter', sans-serif;
  font-weight: 700;
}
.ibc-leadmagnet-box h2 {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: 1.95rem !important;
  margin: 0 0 0.5rem !important;
  color: var(--ibc-ink) !important;
  line-height: 1.18 !important;
  font-weight: 600 !important;
  font-style: italic !important;
}
.ibc-leadmagnet-box .sub,
.ibc-leadmagnet-box p.sub {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.97rem !important;
  color: var(--ibc-ink-soft) !important;
  margin: 0 0 1.4rem !important;
  line-height: 1.55 !important;
  font-style: italic !important;
}
.ibc-trust-line {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.7rem !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--ibc-ink-soft) !important;
  margin: 0.85rem 0 0 !important;
  opacity: 0.85 !important;
}

/* 4. PULL-QUOTE BAND */
.ibc-pullquote-band {
  background: var(--ibc-ink) !important;
  color: var(--ibc-cream) !important;
  padding: 5rem 1.5rem !important;
  text-align: center !important;
  position: relative !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  overflow: hidden !important;
  border-top: 1px solid rgba(232, 155, 34, 0.28) !important;
  border-bottom: 1px solid rgba(232, 155, 34, 0.28) !important;
}
.ibc-pullquote-band::before {
  content: "\201C";
  position: absolute;
  top: 0.6rem;
  left: 50%;
  transform: translateX(-50%);
  font-family: 'Cormorant Garamond', serif;
  font-size: 6.5rem;
  color: var(--ibc-orange);
  opacity: 0.32;
  line-height: 1;
  font-style: italic;
  pointer-events: none;
}
.ibc-pullquote-band p:not(.cite) {
  font-family: 'Cormorant Garamond', serif !important;
  font-size: clamp(1.55rem, 3.2vw, 2.5rem) !important;
  font-style: italic !important;
  line-height: 1.4 !important;
  max-width: 36ch !important;
  margin: 0 auto 1.4rem !important;
  color: var(--ibc-cream) !important;
  font-weight: 500 !important;
}
.ibc-pullquote-band p.cite,
.ibc-pullquote-band .cite {
  font-family: 'Inter', sans-serif !important;
  font-style: normal !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.24em !important;
  text-transform: uppercase !important;
  color: var(--ibc-amber) !important;
  margin: 0 !important;
  opacity: 0.9 !important;
}

/* 5. FEATURED CARD & POST-CARD HOVER LIFT */
.feat-card,
.pc {
  transition: transform .35s ease, box-shadow .35s ease, border-color .35s ease;
}
.feat-card:hover,
.pc:hover {
  transform: translateY(-3px) !important;
  box-shadow: 0 16px 36px rgba(42, 24, 16, 0.12) !important;
  border-color: rgba(200, 169, 110, 0.6) !important;
}

/* 6. MOBILE TYPOGRAPHY */
@media (max-width: 640px) {
  .ibc-hero h1, .entry-title, .site-title, h1.wp-block-post-title, .wp-block-cover h1, h1 {
    font-size: clamp(1.85rem, 7.5vw, 2.5rem) !important;
    line-height: 1.14 !important;
    letter-spacing: -0.005em !important;
  }
  .ibc-hero { padding-top: 4rem !important; padding-bottom: 2rem !important; }
  .ibc-leadmagnet-box {
    padding: 1.85rem 1.4rem 1.5rem !important;
    margin: 1.5rem auto !important;
    max-width: 92% !important;
  }
  .ibc-leadmagnet-box h2 { font-size: 1.55rem !important; }
  .ibc-pullquote-band { padding: 3.25rem 1.25rem !important; }
  .ibc-pullquote-band p:not(.cite) { font-size: 1.45rem !important; }
}

/* 7. AGEVERIFY MODAL — branded */
#age_check_overlay,
.ageverify-overlay,
.age-check-overlay,
.av-overlay,
[id*="age_check"][class*="overlay"],
[class*="age-verify"][class*="overlay"] {
  background-color: rgba(42, 24, 16, 0.78) !important;
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
}
#age_check,
.ageverify,
.ageverify-modal,
.av-modal,
.age-check-modal,
[id*="age_check"]:not([class*="overlay"]),
[class*="age-verify"]:not([class*="overlay"]) {
  background-color: var(--ibc-cream) !important;
  background-image: linear-gradient(180deg, var(--ibc-sunlight) 0%, var(--ibc-cream) 75%) !important;
  border: 1px solid rgba(200, 169, 110, 0.45) !important;
  border-radius: 0 !important;
  box-shadow: 0 24px 60px rgba(42, 24, 16, 0.35) !important;
  font-family: 'Inter', sans-serif !important;
  color: var(--ibc-ink) !important;
  padding: 2.5rem 2rem !important;
  max-width: 460px !important;
}
#age_check img[src*="ageverify" i],
.ageverify img[src*="ageverify" i],
[class*="ageverify"] img[src*="logo" i],
[class*="age-verify"] img[src*="logo" i] {
  display: none !important;
}
#age_check h1, #age_check h2, #age_check h3,
.ageverify h1, .ageverify h2, .ageverify h3,
.age-check-modal h1, .age-check-modal h2 {
  font-family: 'Cormorant Garamond', serif !important;
  color: var(--ibc-ink) !important;
  font-weight: 600 !important;
  font-style: italic !important;
  letter-spacing: -0.005em !important;
  margin-bottom: 0.6rem !important;
}
#age_check button:first-of-type,
#age_check a.button,
#age_check input[type="submit"],
.ageverify button:first-of-type,
.ageverify .av-yes,
.ageverify .yes-button,
.age-check-modal button:first-of-type,
[class*="age-verify"] button.yes,
[class*="ageverify"] button.yes {
  background: var(--ibc-orange) !important;
  background-image: none !important;
  color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-orange) !important;
  border-radius: 0 !important;
  padding: 0.85rem 1.5rem !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  transition: background-color .2s ease, border-color .2s ease;
}
#age_check button:first-of-type:hover,
.ageverify button:first-of-type:hover,
.ageverify .av-yes:hover {
  background: var(--ibc-amber) !important;
  border-color: var(--ibc-amber) !important;
}
#age_check button:not(:first-of-type),
.ageverify .av-no,
.ageverify .no-button,
[class*="age-verify"] button.no,
[class*="ageverify"] button.no {
  background: transparent !important;
  background-image: none !important;
  color: var(--ibc-ink) !important;
  border: 1px solid var(--ibc-ink) !important;
  border-radius: 0 !important;
  padding: 0.85rem 1.5rem !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
}
#age_check button:not(:first-of-type):hover,
.ageverify .av-no:hover {
  background: var(--ibc-ink) !important;
  color: var(--ibc-cream) !important;
}

/* 8. TOPIC NAV — green cannabis active state */
.ibc-topics a.is-cannabis.is-active,
.ibc-topics a.is-cannabis[aria-current="page"],
.ibc-topics li.current-menu-item a.is-cannabis,
.ibc-topics a[href*="/cannabis"][aria-current="page"],
body.category-cannabis .ibc-topics a[href*="/cannabis"] {
  color: var(--ibc-green) !important;
  border-bottom-color: var(--ibc-green) !important;
}

/* /IBC_DESIGN_V2_1 */


/* IBC_DESIGN_V2_1_PATCH — Apr 30, 2026 */
/* The Jetpack subscribe form is rendered by shortcode and lives inside
   .wp-block-jetpack-subscriptions__container (with __container suffix).
   The brand V1 CSS forces ink-black on .wp-block-button__link with high
   specificity, so we need an even more specific selector to flip it
   orange in the contexts where we want orange. */

body .wp-block-jetpack-subscriptions__container button.wp-block-button__link,
body .ibc-leadmagnet-box .wp-block-jetpack-subscriptions__container button.wp-block-button__link,
body .ibc-leadmagnet-box button.wp-block-button__link,
form#subscribe-blog-3 button.wp-block-button__link,
form[id^="subscribe-blog"] button.wp-block-button__link,
.wp-block-jetpack-subscriptions__container .wp-block-button__link[type="submit"],
.wp-block-jetpack-subscriptions__container input[type="submit"].wp-block-button__link {
  background: var(--ibc-orange) !important;
  background-color: var(--ibc-orange) !important;
  background-image: none !important;
  color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-orange) !important;
  border-radius: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  letter-spacing: 0.05em !important;
  text-transform: uppercase !important;
  padding: 0.95rem 1.85rem !important;
  transition: background-color .25s ease, transform .2s ease, box-shadow .25s ease, border-color .25s ease;
  box-shadow: 0 2px 0 rgba(200, 169, 110, .25) !important;
}

body .wp-block-jetpack-subscriptions__container button.wp-block-button__link:hover,
body .ibc-leadmagnet-box button.wp-block-button__link:hover,
form[id^="subscribe-blog"] button.wp-block-button__link:hover {
  background: var(--ibc-amber) !important;
  background-color: var(--ibc-amber) !important;
  border-color: var(--ibc-amber) !important;
  transform: translateY(-1px) !important;
  box-shadow: 0 8px 22px rgba(232, 155, 34, .32) !important;
}

/* Lead-magnet H2 — beat whatever theme rule is forcing Inter+uppercase */
body .ibc-leadmagnet-box h2,
.home .ibc-leadmagnet-box h2,
.ibc-page .ibc-leadmagnet-box h2,
.entry-content .ibc-leadmagnet-box h2 {
  font-family: 'Cormorant Garamond', 'Cormorant', Georgia, serif !important;
  font-size: 1.95rem !important;
  font-weight: 600 !important;
  font-style: italic !important;
  text-transform: none !important;
  letter-spacing: -0.005em !important;
  line-height: 1.18 !important;
  color: var(--ibc-ink) !important;
  margin: 0 0 0.5rem !important;
  text-align: left !important;
}

/* Sub paragraph — also force Inter italic in case theme overrides */
body .ibc-leadmagnet-box p.sub,
body .ibc-leadmagnet-box .sub {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.97rem !important;
  font-style: italic !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  color: var(--ibc-ink-soft) !important;
  margin: 0 0 1.4rem !important;
  text-align: left !important;
}

/* Trust line — keep tight uppercase, override any theme paragraph centering */
body .ibc-leadmagnet-box .ibc-trust-line,
body .ibc-trust-line {
  text-align: left !important;
  margin: 0.85rem 0 0 !important;
}

/* Email input inside lead-magnet — make sure it's clean */
body .ibc-leadmagnet-box input[type="email"],
body .wp-block-jetpack-subscriptions__container input[type="email"] {
  border: 1px solid rgba(74, 53, 40, 0.18) !important;
  border-radius: 0 !important;
  background-color: #FFFDF7 !important;
  font-family: 'Inter', sans-serif !important;
  padding: 0.85rem 1rem !important;
}
/* /IBC_DESIGN_V2_1_PATCH */


/* IBC_DESIGN_V2_2_SLIM_BANNER — Apr 30, 2026 */
/* Convert .ibc-leadmagnet-box from a card into a slim, edge-to-edge banner */

body .ibc-leadmagnet-box {
  background: linear-gradient(90deg, var(--ibc-cream-2) 0%, var(--ibc-sunlight) 50%, var(--ibc-cream-2) 100%) !important;
  border: none !important;
  border-top: 1px solid rgba(232, 155, 34, 0.32) !important;
  border-bottom: 1px solid rgba(232, 155, 34, 0.32) !important;
  padding: 1.05rem 2rem !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  margin-top: 1.25rem !important;
  margin-bottom: 0 !important;
  max-width: 100vw !important;
  width: 100vw !important;
  display: flex !important;
  flex-wrap: wrap !important;
  align-items: center !important;
  justify-content: center !important;
  column-gap: 1.75rem !important;
  row-gap: 0.4rem !important;
  position: relative !important;
  text-align: left !important;
}

/* Hide the absolute "FREE GUIDE" tab — we'll inline-tag the headline instead */
body .ibc-leadmagnet-box::before {
  display: none !important;
  content: none !important;
}

/* Compact inline headline + sub */
body .ibc-leadmagnet-box h2 {
  font-family: 'Cormorant Garamond', 'Cormorant', Georgia, serif !important;
  font-size: 1.18rem !important;
  font-weight: 600 !important;
  font-style: italic !important;
  text-transform: none !important;
  letter-spacing: -0.005em !important;
  line-height: 1.25 !important;
  color: var(--ibc-ink) !important;
  margin: 0 !important;
  display: inline !important;
}

/* Inline FREE GUIDE pill on the headline */
body .ibc-leadmagnet-box h2::before {
  content: "FREE GUIDE" !important;
  display: inline-block !important;
  background: var(--ibc-orange) !important;
  color: var(--ibc-cream) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.62rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  padding: 0.22rem 0.6rem !important;
  margin-right: 0.7rem !important;
  vertical-align: middle !important;
  font-style: normal !important;
}

body .ibc-leadmagnet-box p.sub,
body .ibc-leadmagnet-box .sub {
  display: inline !important;
  margin: 0 !important;
  padding: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.83rem !important;
  font-style: italic !important;
  text-transform: none !important;
  letter-spacing: 0 !important;
  color: var(--ibc-ink-soft) !important;
}

/* Hide sub on narrow viewports — saves space */
@media (max-width: 900px) {
  body .ibc-leadmagnet-box p.sub,
  body .ibc-leadmagnet-box .sub { display: none !important; }
}

/* Make the form a single horizontal row */
body .ibc-leadmagnet-box .wp-block-jetpack-subscriptions__container,
body .ibc-leadmagnet-box .jetpack_subscription_widget {
  display: inline-flex !important;
  align-items: center !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
}

body .ibc-leadmagnet-box .jetpack_subscription_widget form {
  display: flex !important;
  flex-direction: row !important;
  flex-wrap: nowrap !important;
  align-items: stretch !important;
  gap: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
}

body .ibc-leadmagnet-box .jetpack_subscription_widget form > p,
body .ibc-leadmagnet-box .jetpack_subscription_widget form #subscribe-email,
body .ibc-leadmagnet-box .jetpack_subscription_widget form #subscribe-submit,
body .ibc-leadmagnet-box .jetpack_subscription_widget form .wp-block-jetpack-subscriptions__form-input,
body .ibc-leadmagnet-box .jetpack_subscription_widget form .wp-block-jetpack-subscriptions__button-wrap {
  margin: 0 !important;
  padding: 0 !important;
  width: auto !important;
}

body .ibc-leadmagnet-box input[type="email"] {
  height: 40px !important;
  padding: 0 0.85rem !important;
  width: 220px !important;
  font-size: 0.85rem !important;
  border: 1px solid rgba(74, 53, 40, 0.22) !important;
  border-right: none !important;
}

body .ibc-leadmagnet-box button.wp-block-button__link {
  height: 40px !important;
  padding: 0 1.1rem !important;
  font-size: 0.72rem !important;
  letter-spacing: 0.08em !important;
  white-space: nowrap !important;
  box-shadow: none !important;
}

/* Trust line on its own row, full width, tiny */
body .ibc-leadmagnet-box .ibc-trust-line {
  flex-basis: 100% !important;
  text-align: center !important;
  margin: 0.15rem 0 0 !important;
  padding: 0 !important;
  font-size: 0.62rem !important;
  letter-spacing: 0.18em !important;
  opacity: 0.78 !important;
}

/* Mobile: stack vertically, more breathing room */
@media (max-width: 760px) {
  body .ibc-leadmagnet-box {
    padding: 0.95rem 1.1rem !important;
    flex-direction: column !important;
    align-items: stretch !important;
    text-align: center !important;
    row-gap: 0.6rem !important;
  }
  body .ibc-leadmagnet-box h2 {
    font-size: 1.05rem !important;
    text-align: center !important;
    display: block !important;
  }
  body .ibc-leadmagnet-box h2::before {
    display: block !important;
    margin: 0 0 0.4rem 0 !important;
    width: fit-content !important;
    margin-left: auto !important;
    margin-right: auto !important;
  }
  body .ibc-leadmagnet-box .wp-block-jetpack-subscriptions__container,
  body .ibc-leadmagnet-box .jetpack_subscription_widget,
  body .ibc-leadmagnet-box .jetpack_subscription_widget form {
    width: 100% !important;
    justify-content: center !important;
  }
  body .ibc-leadmagnet-box input[type="email"] {
    width: 60% !important;
    flex: 1 1 auto !important;
  }
}

/* /IBC_DESIGN_V2_2_SLIM_BANNER */


/* IBC_DESIGN_V2_2_DUPE_PILL_FIX */
/* Jetpack subscribe form generates an empty h2.widgettitle that
   was matching .ibc-leadmagnet-box h2::before and rendering a 2nd pill.
   Hide the widget title and scope the pill to only the real headline. */

body .ibc-leadmagnet-box h2.widgettitle,
body .ibc-leadmagnet-box .widgettitle {
  display: none !important;
}

body .ibc-leadmagnet-box h2.widgettitle::before,
body .ibc-leadmagnet-box .widgettitle::before {
  content: none !important;
  display: none !important;
}
/* /IBC_DESIGN_V2_2_DUPE_PILL_FIX */


/* IBC_HERO_LOGO_LINK_HIDE */
/* Hide the empty .site-logo-link in .site-branding. The Boardwalk theme
   renders an empty 20px tall anchor element above the title even when no
   site icon/logo is set. That phantom element pushes the title down,
   making the hero padding read as 76px top vs 56px bottom. */
.site-branding > a.site-logo-link:empty {
  display: none !important;
}
/* /IBC_HERO_LOGO_LINK_HIDE */


/* IBC_HERO_SYMMETRY */
/* The masthead has 64px of cream above it (from html margin-top + page wrapper)
   but only 21px between the masthead bottom and the slim banner. Balance by
   pushing the banner down so the cream zone above the title matches the
   cream zone below the tagline. */
body .ibc-leadmagnet-box {
  margin-top: 4rem !important;
}
/* /IBC_HERO_SYMMETRY */


/* IBC_EQUIPMENT_AND_FOLLOW_REDESIGN — Apr 30, 2026 */

/* === EQUIPMENT BLOCK === */
.ibc-equipment-block {
  display: grid !important;
  grid-template-columns: 1.05fr 0.95fr !important;
  gap: 3rem !important;
  align-items: stretch !important;
  background: linear-gradient(180deg, var(--ibc-cream-2) 0%, var(--ibc-sunlight) 100%) !important;
  border-top: 1px solid rgba(200, 169, 110, 0.32) !important;
  border-bottom: 1px solid rgba(200, 169, 110, 0.32) !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  padding: 4.5rem clamp(1.5rem, 6vw, 6rem) !important;
}

.ibc-equipment-text {
  display: flex !important;
  flex-direction: column !important;
  justify-content: center !important;
  align-items: flex-start !important;
  text-align: left !important;
}

.ibc-equipment-eyebrow {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.74rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--ibc-gold) !important;
  margin-bottom: 0.95rem !important;
  display: inline-block !important;
}
.ibc-equipment-eyebrow::before {
  content: "";
  display: inline-block;
  width: 1.7rem;
  height: 1px;
  background: var(--ibc-gold);
  vertical-align: middle;
  margin-right: 0.65rem;
  opacity: 0.55;
}

.ibc-equipment-headline {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: clamp(1.8rem, 3.4vw, 2.5rem) !important;
  font-style: italic !important;
  font-weight: 600 !important;
  line-height: 1.15 !important;
  color: var(--ibc-ink) !important;
  margin: 0 0 1.4rem 0 !important;
  letter-spacing: -0.005em !important;
  text-transform: none !important;
}

.ibc-equipment-checks {
  list-style: none !important;
  padding-left: 0 !important;
  margin: 0 0 1.85rem 0 !important;
}
.ibc-equipment-checks li {
  position: relative;
  padding-left: 1.85rem;
  margin-bottom: 0.55rem;
  font-family: 'Inter', sans-serif !important;
  font-size: 1rem !important;
  color: var(--ibc-ink-soft) !important;
  line-height: 1.5 !important;
}
.ibc-equipment-checks li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0.05em;
  color: var(--ibc-green-deep);
  font-weight: 800;
  font-size: 1.05em;
}

.ibc-equipment-cta {
  display: inline-block !important;
  background: var(--ibc-orange) !important;
  color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-orange) !important;
  padding: 0.95rem 1.6rem !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: background-color .25s ease, transform .2s ease, box-shadow .25s ease, border-color .25s ease;
  box-shadow: 0 2px 0 rgba(200, 169, 110, .35);
}
.ibc-equipment-cta:hover {
  background: var(--ibc-amber) !important;
  border-color: var(--ibc-amber) !important;
  transform: translateY(-1px);
  box-shadow: 0 8px 24px rgba(232, 155, 34, .3) !important;
}

.ibc-equipment-card {
  position: relative;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 3rem 2rem !important;
  background:
    radial-gradient(ellipse at top, rgba(232, 155, 34, 0.08) 0%, transparent 60%),
    linear-gradient(135deg, #FFFDF7 0%, var(--ibc-sunlight) 100%) !important;
  border: 1px solid rgba(200, 169, 110, 0.4) !important;
  min-height: 280px;
  overflow: hidden;
}
.ibc-equipment-card::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(232, 155, 34, 0.18);
  pointer-events: none;
}
.ibc-equipment-card::after {
  content: "EXTRACTION HARDWARE";
  position: absolute;
  bottom: 1.6rem;
  left: 50%;
  transform: translateX(-50%);
  font-family: 'Inter', sans-serif;
  font-size: 0.62rem;
  letter-spacing: 0.32em;
  color: var(--ibc-gold);
  font-weight: 700;
  text-transform: uppercase;
  opacity: 0.7;
}

.ibc-equipment-monogram {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 9rem !important;
  font-style: italic !important;
  font-weight: 600 !important;
  line-height: 1 !important;
  color: var(--ibc-ink) !important;
  margin: 0 !important;
  text-shadow: 0 2px 18px rgba(232, 155, 34, 0.2);
}
.ibc-equipment-card-label {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.85rem !important;
  letter-spacing: 0.32em !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  color: var(--ibc-ink) !important;
  margin-top: 1.2rem !important;
}
.ibc-equipment-card-tagline {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-size: 0.92rem !important;
  color: var(--ibc-ink-soft) !important;
  margin-top: 0.35rem !important;
  letter-spacing: 0.02em;
}

@media (max-width: 760px) {
  .ibc-equipment-block {
    grid-template-columns: 1fr !important;
    gap: 2rem !important;
    padding: 3rem 1.5rem !important;
  }
  .ibc-equipment-card { min-height: 220px; padding: 2.25rem 1.5rem !important; }
  .ibc-equipment-monogram { font-size: 7rem !important; }
}

/* === FOLLOW ALONG WARM BAND === */
.ibc-follow-band {
  background:
    radial-gradient(ellipse at center top, rgba(255, 248, 236, 0.35) 0%, transparent 60%),
    linear-gradient(135deg, var(--ibc-orange) 0%, var(--ibc-amber) 50%, var(--ibc-gold) 100%) !important;
  color: var(--ibc-cream) !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  padding: 5rem clamp(1.5rem, 5vw, 4rem) !important;
  text-align: center !important;
  position: relative !important;
  overflow: hidden;
}
.ibc-follow-band::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(255, 255, 255, 0.55), transparent);
  pointer-events: none;
}
.ibc-follow-band::after {
  content: "";
  position: absolute;
  bottom: 0; left: 0; right: 0; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(42, 24, 16, 0.25), transparent);
  pointer-events: none;
}

.ibc-follow-content {
  max-width: 720px;
  margin: 0 auto;
  position: relative;
}

.ibc-follow-eyebrow {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.28em !important;
  text-transform: uppercase !important;
  color: rgba(255, 248, 236, 0.85) !important;
  margin-bottom: 0.85rem !important;
}

.ibc-follow-headline {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: clamp(2rem, 4.5vw, 3rem) !important;
  font-style: italic !important;
  font-weight: 600 !important;
  line-height: 1.12 !important;
  color: var(--ibc-cream) !important;
  margin: 0 0 2rem 0 !important;
  text-shadow: 0 1px 0 rgba(42, 24, 16, 0.08);
  letter-spacing: -0.005em !important;
  text-transform: none !important;
}

.ibc-follow-hero-pill {
  display: inline-flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0.25rem !important;
  background: var(--ibc-ink) !important;
  color: var(--ibc-cream) !important;
  padding: 1.1rem 2.2rem !important;
  text-decoration: none !important;
  border: 1px solid rgba(42, 24, 16, 0.4) !important;
  margin-bottom: 1.6rem !important;
  transition: transform .25s ease, box-shadow .25s ease, background-color .25s ease;
  box-shadow: 0 6px 18px rgba(42, 24, 16, 0.2);
  max-width: 92%;
}
.ibc-follow-hero-pill:hover {
  background: #1a0f08 !important;
  transform: translateY(-2px);
  box-shadow: 0 14px 30px rgba(42, 24, 16, 0.32);
}
.ibc-follow-hero-meta {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.65rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--ibc-amber) !important;
  display: block !important;
}
.ibc-follow-hero-label {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-size: 1.25rem !important;
  font-weight: 600 !important;
  color: var(--ibc-cream) !important;
  display: block !important;
}

.ibc-follow-pills {
  display: flex !important;
  flex-wrap: wrap !important;
  justify-content: center !important;
  gap: 0.65rem 0.65rem !important;
  margin-bottom: 2.4rem !important;
}
.ibc-follow-pill {
  display: inline-flex !important;
  align-items: center !important;
  gap: 0.5rem !important;
  background: rgba(255, 248, 236, 0.92) !important;
  color: var(--ibc-ink) !important;
  text-decoration: none !important;
  padding: 0.55rem 1.05rem !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.82rem !important;
  font-weight: 500 !important;
  border: 1px solid rgba(42, 24, 16, 0.18) !important;
  transition: transform .2s ease, background-color .2s ease, box-shadow .2s ease;
}
.ibc-follow-pill:hover {
  background: var(--ibc-cream) !important;
  transform: translateY(-1px);
  box-shadow: 0 6px 16px rgba(42, 24, 16, 0.18);
}
.ibc-follow-pill .dot {
  display: inline-block;
  width: 8px;
  height: 8px;
  border-radius: 50%;
}
.ibc-follow-pill .dot-yt   { background: #c43d1a; }
.ibc-follow-pill .dot-ig   { background: #c13584; }
.ibc-follow-pill .dot-tk   { background: var(--ibc-green-deep); }
.ibc-follow-pill .dot-shop { background: var(--ibc-orange); }

.ibc-follow-signoff {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-size: 1.15rem !important;
  color: rgba(255, 248, 236, 0.92) !important;
  margin: 0 !important;
  letter-spacing: 0.02em !important;
}

@media (max-width: 760px) {
  .ibc-follow-band { padding: 3.25rem 1.25rem !important; }
  .ibc-follow-headline { font-size: 1.85rem !important; }
  .ibc-follow-hero-label { font-size: 1.05rem !important; }
}

/* /IBC_EQUIPMENT_AND_FOLLOW_REDESIGN */


/* IBC_EQUIPMENT_FOLLOW_H2_FIX */
body .ibc-equipment-block h2.ibc-equipment-headline,
body .ibc-follow-band h2.ibc-follow-headline,
.home .ibc-equipment-headline,
.home .ibc-follow-headline,
.entry-content .ibc-equipment-headline,
.entry-content .ibc-follow-headline {
  text-transform: none !important;
  letter-spacing: -0.005em !important;
  font-weight: 600 !important;
  font-style: italic !important;
}
/* /IBC_EQUIPMENT_FOLLOW_H2_FIX */


/* IBC_EQUIPMENT_BLOCK_V2 — single fancy box with integrated checkmarks */

/* Outer band: warm cream gradient, full width, breathing room */
body .ibc-equipment-block {
  display: block !important;
  grid-template-columns: none !important;
  gap: 0 !important;
  background: linear-gradient(180deg, var(--ibc-cream-2) 0%, var(--ibc-sunlight) 100%) !important;
  border-top: 1px solid rgba(200, 169, 110, 0.32) !important;
  border-bottom: 1px solid rgba(200, 169, 110, 0.32) !important;
  margin-left: calc(50% - 50vw) !important;
  margin-right: calc(50% - 50vw) !important;
  width: 100vw !important;
  max-width: 100vw !important;
  padding: clamp(3rem, 6vw, 5rem) clamp(1.25rem, 4vw, 3rem) !important;
  text-align: center !important;
}

/* Inner fancy panel: warm parchment with double-line gold border */
body .ibc-equipment-block .ibc-equipment-content {
  position: relative !important;
  max-width: 880px !important;
  margin: 0 auto !important;
  background:
    radial-gradient(ellipse at top, rgba(232, 155, 34, 0.06) 0%, transparent 65%),
    linear-gradient(180deg, #FFFDF7 0%, var(--ibc-sunlight) 100%) !important;
  border: 1px solid rgba(200, 169, 110, 0.5) !important;
  padding: clamp(2.4rem, 5vw, 3.5rem) clamp(1.5rem, 4vw, 3.25rem) clamp(2.6rem, 5vw, 3.5rem) !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  text-align: center !important;
}

/* Inset hairline */
body .ibc-equipment-block .ibc-equipment-content::before {
  content: "";
  position: absolute;
  inset: 14px;
  border: 1px solid rgba(232, 155, 34, 0.18);
  pointer-events: none;
}

/* Subtle "TK" watermark in the corner of the panel */
body .ibc-equipment-block .ibc-equipment-content::after {
  content: "TK";
  position: absolute;
  top: 0.85rem;
  right: 1.4rem;
  font-family: 'Cormorant Garamond', Georgia, serif;
  font-size: 1.1rem;
  font-style: italic;
  font-weight: 600;
  letter-spacing: 0.06em;
  color: var(--ibc-gold);
  opacity: 0.8;
  pointer-events: none;
}

body .ibc-equipment-block .ibc-equipment-eyebrow {
  font-family: 'Inter', sans-serif !important;
  font-size: 0.74rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--ibc-gold) !important;
  margin: 0 0 1rem 0 !important;
  display: inline-block !important;
}
body .ibc-equipment-block .ibc-equipment-eyebrow::before {
  content: "";
  display: inline-block;
  width: 1.65rem;
  height: 1px;
  background: var(--ibc-gold);
  vertical-align: middle;
  margin-right: 0.65rem;
  opacity: 0.55;
}
body .ibc-equipment-block .ibc-equipment-eyebrow::after {
  content: "";
  display: inline-block;
  width: 1.65rem;
  height: 1px;
  background: var(--ibc-gold);
  vertical-align: middle;
  margin-left: 0.65rem;
  opacity: 0.55;
}

body .ibc-equipment-block .ibc-equipment-headline {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: clamp(1.6rem, 3vw, 2.3rem) !important;
  font-style: italic !important;
  font-weight: 600 !important;
  line-height: 1.18 !important;
  color: var(--ibc-ink) !important;
  margin: 0 0 1.85rem 0 !important;
  letter-spacing: -0.005em !important;
  text-transform: none !important;
  max-width: 30ch !important;
  text-align: center !important;
}

/* Three-up checkmark grid on desktop, single column on mobile */
body .ibc-equipment-block .ibc-equipment-checks {
  list-style: none !important;
  display: grid !important;
  grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
  gap: 1.1rem 1.5rem !important;
  margin: 0 0 2.1rem 0 !important;
  padding: 0 !important;
  width: 100% !important;
  max-width: 740px !important;
  text-align: left !important;
}

body .ibc-equipment-block .ibc-equipment-checks li {
  position: relative;
  padding-left: 1.65rem !important;
  margin: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.92rem !important;
  color: var(--ibc-ink-soft) !important;
  line-height: 1.45 !important;
  text-align: left !important;
}
body .ibc-equipment-block .ibc-equipment-checks li::before {
  content: "✓";
  position: absolute;
  left: 0;
  top: 0.05em;
  color: var(--ibc-green-deep);
  font-weight: 800;
  font-size: 1.05em;
}

body .ibc-equipment-block .ibc-equipment-cta {
  display: inline-block !important;
  background: var(--ibc-orange) !important;
  color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-orange) !important;
  padding: 0.95rem 1.85rem !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 700 !important;
  font-size: 0.78rem !important;
  letter-spacing: 0.16em !important;
  text-transform: uppercase !important;
  text-decoration: none !important;
  transition: background-color .25s ease, transform .2s ease, box-shadow .25s ease, border-color .25s ease;
  box-shadow: 0 2px 0 rgba(200, 169, 110, .35);
}
body .ibc-equipment-block .ibc-equipment-cta:hover {
  background: var(--ibc-amber) !important;
  border-color: var(--ibc-amber) !important;
  transform: translateY(-1px);
  box-shadow: 0 8px 24px rgba(232, 155, 34, .3) !important;
}

@media (max-width: 760px) {
  body .ibc-equipment-block { padding: 2.5rem 1rem !important; }
  body .ibc-equipment-block .ibc-equipment-content {
    padding: 2rem 1.4rem 2.25rem !important;
  }
  body .ibc-equipment-block .ibc-equipment-content::before { inset: 10px; }
  body .ibc-equipment-block .ibc-equipment-content::after {
    top: 0.55rem; right: 0.85rem; font-size: 1rem;
  }
  body .ibc-equipment-block .ibc-equipment-checks {
    grid-template-columns: 1fr !important;
    max-width: 30em;
    gap: 0.7rem 0 !important;
    margin-bottom: 1.65rem !important;
  }
  body .ibc-equipment-block .ibc-equipment-headline {
    font-size: 1.4rem !important;
  }
}

/* /IBC_EQUIPMENT_BLOCK_V2 */


/* IBC_EQUIPMENT_HEADLINE_ONELINE */
/* Force the equipment headline onto a single line on desktop, scale font
   down as needed; let it wrap naturally on narrow viewports. */
body .ibc-equipment-block .ibc-equipment-headline {
  max-width: 100% !important;
  white-space: nowrap !important;
  font-size: clamp(1.05rem, 2.45vw, 1.95rem) !important;
}
@media (max-width: 720px) {
  body .ibc-equipment-block .ibc-equipment-headline {
    white-space: normal !important;
    font-size: 1.4rem !important;
    max-width: 24ch !important;
  }
}
/* /IBC_EQUIPMENT_HEADLINE_ONELINE */


/* IBC_FOLLOW_FAVICONS */
/* Real platform favicons replace the colored dots in the Follow Along band. */
body .ibc-follow-pill .ibc-pill-icon {
  width: 18px !important;
  height: 18px !important;
  display: inline-block !important;
  vertical-align: middle !important;
  border-radius: 3px !important;
  background: transparent !important;
  flex-shrink: 0 !important;
  margin: 0 !important;
}

body .ibc-follow-hero-pill .ibc-hero-pill-icon {
  width: 22px !important;
  height: 22px !important;
  display: block !important;
  margin: 0 auto 0.45rem auto !important;
  border-radius: 4px !important;
}

/* Hide any leftover dot spans (defensive — if HTML was cached) */
body .ibc-follow-pill .dot {
  display: none !important;
}
/* /IBC_FOLLOW_FAVICONS */


/* IBC_STAY_LIFTED_BIG */
body .ibc-follow-band .ibc-follow-signoff {
  font-size: clamp(2.5rem, 5.5vw, 4.25rem) !important;
  line-height: 1.05 !important;
  margin-top: 1.5rem !important;
  letter-spacing: -0.005em !important;
  color: var(--ibc-cream) !important;
  text-shadow: 0 1px 0 rgba(42, 24, 16, 0.08);
}
@media (max-width: 760px) {
  body .ibc-follow-band .ibc-follow-signoff {
    font-size: 2.25rem !important;
  }
}
/* /IBC_STAY_LIFTED_BIG */


/* IBC_FOLLOW_EYEBROW_BIG */
body .ibc-follow-band .ibc-follow-eyebrow {
  font-size: clamp(0.95rem, 1.6vw, 1.2rem) !important;
  letter-spacing: 0.3em !important;
  margin-bottom: 1.5rem !important;
}
@media (max-width: 760px) {
  body .ibc-follow-band .ibc-follow-eyebrow {
    font-size: 0.92rem !important;
    letter-spacing: 0.25em !important;
  }
}
/* /IBC_FOLLOW_EYEBROW_BIG */


/* IBC_FB_HERO_ICON_2X */
body .ibc-follow-hero-pill .ibc-hero-pill-icon {
  width: 44px !important;
  height: 44px !important;
  margin: 0 auto 0.7rem auto !important;
  border-radius: 8px !important;
}
/* /IBC_FB_HERO_ICON_2X */


/* IBC_PULLQUOTE_REFINE */
/* Refined magazine-style pull-quote: tighter padding, balanced curly quotes
   on both ends instead of a single floating one, subtle gold rule above
   the citation. */

body .ibc-pullquote-band {
  padding: 2.5rem 1.5rem !important;
}

/* Kill the lone giant floating opening quote */
body .ibc-pullquote-band::before {
  display: none !important;
  content: none !important;
}

/* The quote text — smaller, refined, with proper opening AND closing
   curly quotes baked in via pseudo-elements in subtle gold */
body .ibc-pullquote-band p:not(.cite) {
  font-size: clamp(1.25rem, 2.5vw, 1.85rem) !important;
  line-height: 1.4 !important;
  max-width: 42ch !important;
  margin: 0 auto 1.1rem !important;
  position: relative;
}

body .ibc-pullquote-band p:not(.cite)::before {
  content: "\201C";
  font-family: 'Cormorant Garamond', Georgia, serif;
  color: var(--ibc-orange);
  font-size: 1.1em;
  font-style: italic;
  margin-right: 0.05em;
  vertical-align: -0.05em;
  opacity: 0.85;
}

body .ibc-pullquote-band p:not(.cite)::after {
  content: "\201D";
  font-family: 'Cormorant Garamond', Georgia, serif;
  color: var(--ibc-orange);
  font-size: 1.1em;
  font-style: italic;
  margin-left: 0.05em;
  vertical-align: -0.05em;
  opacity: 0.85;
}

/* Thin gold rule above the citation */
body .ibc-pullquote-band p.cite::before,
body .ibc-pullquote-band .cite::before {
  content: "";
  display: block;
  width: 2.4rem;
  height: 1px;
  background: rgba(232, 155, 34, 0.55);
  margin: 0 auto 0.7rem !important;
}

body .ibc-pullquote-band p.cite,
body .ibc-pullquote-band .cite {
  font-size: 0.74rem !important;
  letter-spacing: 0.26em !important;
}
/* /IBC_PULLQUOTE_REFINE */


/* IBC_PULLQUOTE_TIGHTER */
body .ibc-pullquote-band {
  padding: 1.5rem 1.5rem !important;
}
body .ibc-pullquote-band p:not(.cite) {
  margin: 0 auto 0.65rem !important;
  line-height: 1.3 !important;
}
body .ibc-pullquote-band p.cite::before,
body .ibc-pullquote-band .cite::before {
  margin: 0 auto 0.45rem !important;
}
@media (max-width: 760px) {
  body .ibc-pullquote-band { padding: 1.25rem 1rem !important; }
}
/* /IBC_PULLQUOTE_TIGHTER */


/* IBC_EQUIPMENT_PRODUCT_COLLAGE */
/* Six Torr Kitchen product photos float as a collage behind the equipment
   text panel. mix-blend-mode: multiply makes the white photo backgrounds
   blend invisibly into the warm cream base — only the products show. */

body .ibc-equipment-block {
  position: relative !important;
  overflow: hidden !important;
}

body .ibc-equipment-products {
  position: absolute !important;
  inset: 0 !important;
  pointer-events: none !important;
  z-index: 0 !important;
}

body .ibc-eq-prod {
  position: absolute !important;
  width: clamp(140px, 16vw, 210px) !important;
  height: auto !important;
  mix-blend-mode: multiply !important;
  opacity: 0.55 !important;
  filter: saturate(0.85) contrast(0.95) !important;
  user-select: none;
}

/* Six positions — three on each side, varying rotations and scales */
body .ibc-eq-prod--1 { top: 6%;  left: 1%;  transform: rotate(-8deg) scale(1); }
body .ibc-eq-prod--2 { top: 56%; left: 4%;  transform: rotate(7deg)  scale(0.92); }
body .ibc-eq-prod--3 { top: 26%; left: -2%; transform: rotate(-3deg) scale(0.85); opacity: 0.42 !important; }
body .ibc-eq-prod--4 { top: 8%;  right: 2%; transform: rotate(6deg)  scale(0.95); }
body .ibc-eq-prod--5 { top: 58%; right: 4%; transform: rotate(-7deg) scale(1.05); }
body .ibc-eq-prod--6 { top: 30%; right: -2%; transform: rotate(4deg)  scale(0.85); opacity: 0.42 !important; }

/* The text panel sits above the products and stays opaque so the text
   reads cleanly. Add a relative z-index so it stacks correctly. */
body .ibc-equipment-block .ibc-equipment-content {
  position: relative !important;
  z-index: 1 !important;
}

/* On narrow viewports, hide all but two products so the panel still breathes */
@media (max-width: 1100px) {
  body .ibc-eq-prod--3,
  body .ibc-eq-prod--6 { display: none !important; }
}

@media (max-width: 760px) {
  body .ibc-eq-prod { opacity: 0.32 !important; width: clamp(110px, 30vw, 160px) !important; }
  body .ibc-eq-prod--2,
  body .ibc-eq-prod--5 { display: none !important; }
}
/* /IBC_EQUIPMENT_PRODUCT_COLLAGE */


/* IBC_EQUIPMENT_COLLAGE_IMG */
/* User-supplied product collage layered over the cream gradient.
   The transparent center of the PNG lets the cream show through,
   the products around the perimeter frame the text panel. */

/* Drop the previous 6 floating images — the new collage replaces them */
body .ibc-equipment-block .ibc-equipment-products,
body .ibc-equipment-block .ibc-eq-prod {
  display: none !important;
}

/* Apply the collage on top of the existing cream gradient */
body .ibc-equipment-block {
  background-image:
    url('https://ichibancrafter.com/wp-content/uploads/2026/05/torr-section-product-collage.png?v=1777599918784'),
    linear-gradient(180deg, var(--ibc-cream-2) 0%, var(--ibc-sunlight) 100%) !important;
  background-size: cover, auto !important;
  background-position: center center, center !important;
  background-repeat: no-repeat, no-repeat !important;
  padding: clamp(4rem, 8vw, 7rem) clamp(1.5rem, 4vw, 3rem) !important;
  min-height: 540px !important;
}

/* Inner text panel — slightly more opaque so products don't fight the text.
   Keep the gold inset border and TK watermark from V2. */
body .ibc-equipment-block .ibc-equipment-content {
  background-image:
    radial-gradient(ellipse at top, rgba(232, 155, 34, 0.07) 0%, transparent 65%),
    linear-gradient(180deg, rgba(255, 253, 247, 0.96) 0%, rgba(251, 233, 197, 0.97) 100%) !important;
  backdrop-filter: blur(2px) !important;
  -webkit-backdrop-filter: blur(2px) !important;
  box-shadow: 0 14px 40px rgba(42, 24, 16, 0.08) !important;
}
/* /IBC_EQUIPMENT_COLLAGE_IMG */


/* IBC_BANNER_MOBILE_FIX */
/* The V2.1 patch applied text-align: left and font-size: 1.95rem with
   .entry-content specificity, which beat the V2.2 mobile media query.
   This rule wins back on small viewports with matched specificity. */
@media (max-width: 760px) {
  body .ibc-leadmagnet-box h2,
  body .home .ibc-leadmagnet-box h2,
  body .ibc-page .ibc-leadmagnet-box h2,
  body .entry-content .ibc-leadmagnet-box h2 {
    font-size: 1.25rem !important;
    text-align: center !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  /* The inline FREE GUIDE pill also needs to center cleanly above the headline */
  body .ibc-leadmagnet-box h2::before {
    display: block !important;
    margin: 0 auto 0.55rem auto !important;
    width: fit-content !important;
  }
  /* Sub line behaves */
  body .ibc-leadmagnet-box p.sub,
  body .entry-content .ibc-leadmagnet-box p.sub { text-align: center !important; }
  /* Center the form too */
  body .ibc-leadmagnet-box .wp-block-jetpack-subscriptions__container,
  body .ibc-leadmagnet-box .jetpack_subscription_widget {
    margin: 0 auto !important;
    justify-content: center !important;
  }
  body .ibc-leadmagnet-box .ibc-trust-line { text-align: center !important; }
}
/* /IBC_BANNER_MOBILE_FIX */


/* IBC_MOBILE_HERO_FIT */
/* Mobile sizing: theme site-title was overflowing the viewport, tagline
   getting clipped, and slim-banner email input squished by leftover
   220px width rule. */
@media (max-width: 760px) {
  /* Theme hero (site-title + tagline) */
  body .site-title,
  body .site-branding .site-title,
  body h1.site-title {
    font-size: clamp(1.55rem, 6vw, 2.1rem) !important;
    line-height: 1.15 !important;
    padding: 0 0.75rem !important;
    letter-spacing: -0.005em !important;
  }
  body .site-description,
  body .site-branding .site-description {
    font-size: 0.65rem !important;
    letter-spacing: 0.18em !important;
    padding: 0 0.5rem !important;
  }
  /* Slim banner form: stack input + button instead of squishing */
  body .ibc-leadmagnet-box .jetpack_subscription_widget form,
  body .ibc-page .ibc-leadmagnet-box .jetpack_subscription_widget form,
  body .entry-content .ibc-leadmagnet-box .jetpack_subscription_widget form {
    flex-direction: column !important;
    width: 100% !important;
    gap: 0.4rem !important;
    align-items: stretch !important;
  }
  body .ibc-leadmagnet-box input[type="email"],
  body .entry-content .ibc-leadmagnet-box input[type="email"] {
    width: 100% !important;
    border-right: 1px solid rgba(74, 53, 40, 0.22) !important;
    height: 44px !important;
  }
  body .ibc-leadmagnet-box button.wp-block-button__link,
  body .entry-content .ibc-leadmagnet-box button.wp-block-button__link {
    width: 100% !important;
    height: 44px !important;
  }
  body .ibc-leadmagnet-box .wp-block-jetpack-subscriptions__container,
  body .ibc-leadmagnet-box .jetpack_subscription_widget {
    width: 100% !important;
    display: block !important;
  }
}
/* /IBC_MOBILE_HERO_FIT */

/* IBC_MOBILE_HERO_FORCE */
/* Brute-force override the V1 brand CSS rules that are setting .site-title too
   large at narrow viewports. Use very high specificity + !important. */
@media (max-width: 760px) {
  html body.home .site-header .site-branding .site-title,
  html body .site-header .site-branding .site-title,
  html body .site-header .site-title,
  html body header.site-header .site-title,
  html body .site-title,
  html body .site-title a {
    font-size: 1.5rem !important;
    line-height: 1.18 !important;
    letter-spacing: -0.005em !important;
    padding: 0 0.5rem !important;
    word-wrap: break-word !important;
    overflow-wrap: break-word !important;
    max-width: 100% !important;
    text-align: center !important;
  }
  html body.home .site-header .site-branding .site-description,
  html body .site-header .site-description,
  html body .site-description {
    font-size: 0.62rem !important;
    letter-spacing: 0.16em !important;
    padding: 0 0.5rem !important;
    line-height: 1.45 !important;
    text-align: center !important;
    max-width: 100% !important;
  }
  /* Make sure the branding container does not overflow */
  html body .site-branding,
  html body .site-header,
  html body .site-branding .clear {
    max-width: 100% !important;
    overflow: hidden !important;
  }
}
@media (max-width: 480px) {
  html body .site-title { font-size: 1.3rem !important; }
  html body .site-description { font-size: 0.58rem !important; letter-spacing: 0.12em !important; }
}
/* /IBC_MOBILE_HERO_FORCE */


/* IBC_MOBILE_HERO_TIGHTER */
/* Even more aggressive shrinking + wrap so the long title fits on iPhone-narrow widths.
   Uses vw-based clamp so the title scales with viewport. */
@media (max-width: 760px) {
  html body .site-title,
  html body .site-title a,
  html body .site-header .site-title,
  html body .site-header .site-title a {
    font-size: clamp(1rem, 5.2vw, 1.4rem) !important;
    line-height: 1.2 !important;
    letter-spacing: -0.01em !important;
    padding: 0 0.5rem !important;
    word-wrap: break-word !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
    max-width: 100% !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
  html body .site-description,
  html body .site-header .site-description {
    font-size: clamp(0.55rem, 2.4vw, 0.7rem) !important;
    letter-spacing: 0.14em !important;
    padding: 0 0.5rem !important;
    word-wrap: break-word !important;
    overflow-wrap: anywhere !important;
    white-space: normal !important;
    max-width: 100% !important;
    text-align: center !important;
    box-sizing: border-box !important;
  }
  /* Make sure the branding container constrains its children */
  html body .site-branding,
  html body .site-header,
  html body .site-branding .clear,
  html body .site-header .site-branding {
    max-width: 100% !important;
    width: 100% !important;
    box-sizing: border-box !important;
    overflow-x: hidden !important;
  }
}
/* /IBC_MOBILE_HERO_TIGHTER */


/* IBC_EMAV_BRAND */
/* Brand the Marijuana Age Verify (emav) modal with cream/ink/orange palette */

#emav-overlay-wrap {
  background: rgba(42, 24, 16, 0.82) !important;
  backdrop-filter: blur(6px) !important;
  -webkit-backdrop-filter: blur(6px) !important;
}

#emav-overlay {
  background: linear-gradient(180deg, var(--ibc-sunlight) 0%, var(--ibc-cream) 80%) !important;
  background-color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-gold) !important;
  border-radius: 0 !important;
  box-shadow: 0 24px 60px rgba(42, 24, 16, 0.4) !important;
  padding: 2.5rem 2rem !important;
  max-width: 460px !important;
}

#emav-overlay h3,
#emav-overlay h3[style*="color"] {
  color: var(--ibc-ink) !important;
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-style: italic !important;
  font-weight: 600 !important;
  letter-spacing: -0.005em !important;
  margin-bottom: 1.5rem !important;
  font-size: 1.5rem !important;
  text-align: center !important;
}

/* Yes button — warm orange CTA */
#emav_confirm_age {
  background: var(--ibc-orange) !important;
  background-color: var(--ibc-orange) !important;
  color: var(--ibc-cream) !important;
  border: 1px solid var(--ibc-orange) !important;
  border-radius: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  padding: 0.85rem 1.6rem !important;
  cursor: pointer !important;
  transition: background-color .25s ease, border-color .25s ease, transform .15s ease;
  white-space: nowrap !important;
}
#emav_confirm_age:hover {
  background: var(--ibc-amber) !important;
  background-color: var(--ibc-amber) !important;
  border-color: var(--ibc-amber) !important;
  transform: translateY(-1px);
}

/* No button — ink-outlined secondary */
#emav_not_confirm_age {
  background: transparent !important;
  background-color: transparent !important;
  color: var(--ibc-ink) !important;
  border: 1px solid var(--ibc-ink) !important;
  border-radius: 0 !important;
  font-family: 'Inter', sans-serif !important;
  font-weight: 600 !important;
  padding: 0.85rem 1.6rem !important;
  cursor: pointer !important;
  transition: background-color .25s ease, color .25s ease;
  white-space: nowrap !important;
}
#emav_not_confirm_age:hover {
  background: var(--ibc-ink) !important;
  background-color: var(--ibc-ink) !important;
  color: var(--ibc-cream) !important;
}

/* Buttons row layout */
.emav_buttons {
  display: flex !important;
  flex-direction: column !important;
  gap: 0.6rem !important;
  align-items: stretch !important;
}
.emav_buttons_sep {
  height: 0 !important;
}

/* Disclaimer text — ink-soft instead of white */
#emav-overlay .disclaimer p,
#emav-overlay .disclaimer p[style*="color"] {
  color: var(--ibc-ink-soft) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.78rem !important;
  line-height: 1.5 !important;
  margin-top: 1.2rem !important;
  text-align: center !important;
}

/* Error message — brand orange instead of red */
.emav-error {
  color: var(--ibc-orange) !important;
  font-family: 'Inter', sans-serif !important;
  font-size: 0.85rem !important;
  text-align: center !important;
  margin-bottom: 1rem !important;
}
/* /IBC_EMAV_BRAND */


/* IBC_EMAV_CENTER_BUTTONS */
/* Center the Yes/No buttons (and the form) within the modal container */

#emav-overlay {
  text-align: center !important;
}

#emav_verify_form {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  width: 100% !important;
  max-width: 320px !important;
  margin: 0 auto !important;
}

.emav_buttons {
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 0.6rem !important;
  width: 100% !important;
  margin: 0 auto !important;
}

#emav_confirm_age,
#emav_not_confirm_age {
  display: block !important;
  margin: 0 auto !important;
  width: 100% !important;
  max-width: 280px !important;
  text-align: center !important;
}
/* /IBC_EMAV_CENTER_BUTTONS */


/* IBC_FEAT_IMG_FILL */
/* Featured card image was leaving 24px whitespace because the inner img element
   wasn't filling its container. Make it stretch to match the text-body height. */
.feat-card .feat-img {
  display: flex !important;
  align-items: stretch !important;
  overflow: hidden !important;
}
.feat-card .feat-img img,
.feat-card .feat-img picture,
.feat-card .feat-img picture img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}
/* /IBC_FEAT_IMG_FILL */


/* IBC_FEAT_IMG_FILL_V2 */
/* The featured image is wrapped in span.image-big between .feat-img and the img.
   Stretch the wrapper span to full container height so the inner img can fill it. */
.feat-card .feat-img .image-big,
.feat-card .feat-img span.image-big {
  display: block !important;
  width: 100% !important;
  height: 100% !important;
  margin: 0 !important;
  padding: 0 !important;
}
.feat-card .feat-img .image-big img,
.feat-card .feat-img span.image-big img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center !important;
  display: block !important;
}
/* /IBC_FEAT_IMG_FILL_V2 */