/** ==========================================================================
 *  ROOT VARIABLES & TYPOGRAPHY NOTES
 *  ------------------------------------------------------------------------*/
:root {
	/* Palette */
	--black:   #272932;
	--white:   #FFFFFF;
	--brown:   #AC6627;
	--green:   #8F9D67;
	--blue:    #006DB3;
	--purple:  #B085B6;
	--burgundy:#752035;
	--pink:    #F45B69;
	--yellow:  #E6A600;
	--beige: #F7F4EC;

	/* Navigation underline (header nav) */
	--nav-uline-h: 2px;           /* thickness */
	--nav-uline-offset: -2px;     /* distance below text */
	--nav-uline-speed: .28s;      /* animation speed */
	--nav-grad-1: var(--yellow);  /* gradient color 1 */
	--nav-grad-2: var(--purple);  /* gradient color 2 */
}

/*
Fonts (reference only)
font-family: interpol-correspondence, serif;
font-family: thirsty-rough-two, sans-serif;
- thirsty: 300 weight, regular
- interpol: 500 book, 800 bold
*/


/** ==========================================================================
 *  BASE ELEMENTS
 *  ------------------------------------------------------------------------*/
body {
	line-height: clamp(1.4, 1.6 - ((1vw - 0.2rem) * 0.2), 1.6);
}

figure { text-align: center; }

figcaption {
	display: block;
	margin: 10px auto 20px;
	max-width: 90%;
	font-size: .8em;
	line-height: 1.6em;
	font-style: normal;
}

a img:hover { opacity: .9; }
body {
	overflow-x: hidden;
	width: 100%;
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	max-width: 100%;
	position: relative;
}

html {
  overflow-x:hidden; 
} 


.page-template-blank .wp-site-blocks {
  background: url("images/3-flowers.png") no-repeat top right!important;
}

/** ==========================================================================
 *  UTILITY CLASSES
 *  ------------------------------------------------------------------------*/
.interpol { font-family: interpol-correspondence, serif; }
.multiply img { mix-blend-mode: multiply !important; }

.entry-content a:where(:not(.wp-element-button)) {
  text-decoration: none!important; 
  border-bottom: 1px solid #d5b9c0;
}
ul a:where(:not(.wp-element-button)), 
.popular-posts {
  text-decoration: none!important; 
  /* font-family: interpol-correspondence, sans-serif!important; */
}
.wpp-tiny li {margin: 0!important;}

.entry-content .wp-block-categories a:where(:not(.wp-element-button)) {
  text-decoration: none!important; 
  border-bottom: 0px solid #d5b9c0;
}

.entry-content .wp-block-query a:where(:not(.wp-element-button)) {border: none;}

li.cat-item-1 {display:none;}

/** ==========================================================================
 *  TYPE SCALE & HEADINGS
 *  ------------------------------------------------------------------------*/
/* Gutenberg font-size helpers */
.has-small-font-size {
	line-height: calc(1.4 * clamp(0.875rem, 0.875rem + ((1vw - 0.2rem) * 0.256), 1rem));
}
.has-medium-font-size {
	line-height: clamp(1.4, 1.6 - ((1vw - 0.2rem) * 0.2), 1.6);
	font-size: 1.125rem !important;
}
.has-large-font-size {
	line-height: calc(1.5 * clamp(1.146rem, 1.146rem + ((1vw - 0.2rem) * 1.342), 1.6rem));
}
.has-x-large-font-size {
	line-height: calc(1.2 * clamp(1.378rem, 1.378rem + ((1vw - 0.2rem) * 1.789), 2.25rem));
}

/* Families & weights */
.logo-heading,
h1.wp-block-heading {
	
}

.headings { }
.navigation-font{font-family: interpol-correspondence, serif;}
.script,
h3.wp-block-heading.script { font-family: thirsty-rough-two, monospace !important; font-weight: 300 !important; }
h2.wp-block-heading { }
.wp-block-post-title {}
h4 a:hover {color: var(--purple);}


h5.wp-block-heading {
	color: var(--burgundy);
	
	/* background-image: linear-gradient(90deg, var(--purple), var(--yellow), var(--pink)); */
	/* background-size: 80% 1px; */
	background-repeat: repeat-x;
	background-position: left bottom;
}

h6.wp-block-heading {
	color: var(--pink);
	
	/* background-image: linear-gradient(90deg, var(--purple), var(--yellow), var(--pink)); */
	/* background-size: 80% 1px; */
	background-repeat: repeat-x;
	background-position: left bottom;
}


/** ==========================================================================
 *  HEADER LAYOUT & STICKY BEHAVIOR
 *  ------------------------------------------------------------------------*/
.site-header {
	background: var(--white);
	padding-left:  max(20px, calc(50% - 745px)) !important;
	padding-right: max(20px, calc(50% - 745px)) !important;
}

.header-border { background: url("images/scallop-header.png") repeat-x; }
.header-border-group { margin-top: -1px !important; }

.admin-bar header.wp-block-template-part { top: 32px; }
header.wp-block-template-part {
	position: sticky;
	top: 0;
	width: 100%;
	z-index: 100;
}


/** ==========================================================================
 *  NAVIGATION: FONT & UNDERLINE EFFECT
 *  ------------------------------------------------------------------------*/
.wp-block-navigation__container {
	font-family: interpol-correspondence, serif;
	letter-spacing: 0 !important;
}

.search-results-link a span { }
.wp-block-navigation-link.search-results-link a:hover::after { width: 0 !important; }

.wp-block-navigation a {
	position: relative;
	text-decoration: none; /* custom underline below */
}

.wp-block-navigation a::after {
	content: "";
	position: absolute;
	left: 20px;
	bottom: var(--nav-uline-offset);
	height: var(--nav-uline-h);
	width: 0; /* hidden by default */
	background: linear-gradient(90deg, var(--nav-grad-1), var(--nav-grad-2));
	transition: width var(--nav-uline-speed) ease;
}

/* Slide in on hover/focus */
.wp-block-navigation a:hover::after,
.wp-block-navigation a:focus-visible::after {
	width: 70%;
}

/* Keep underline visible on current page */
.wp-block-navigation a[aria-current="page"]::after,
.wp-block-navigation a[aria-current="true"]::after,
.home .wp-block-navigation .home-link a::after,
.wp-block-navigation .current-menu-ancestor a::after,
.page-id-8312 .wp-block-navigation .icon-search a::after,
.search-results .wp-block-navigation .icon-search a::after {
	width: 70%;
}

/* Reduced motion */
@media (prefers-reduced-motion: reduce) {
	.wp-block-navigation a::after { transition: none; }
}

/*** MOBILE **/
#modal-2-content li.wp-block-navigation-item a {
  padding-left: 24px; 
  background-position: left 8px;
  font-size: 24px;
}






/** ==========================================================================
 *  NAVIGATION: ICONS ON SPECIFIC LINKS
 *  ------------------------------------------------------------------------*/
.icon-heart > a {
	background: url("images/icon-heart.png") no-repeat;
	padding-left: 22px;
	background-size: 18px;
	background-position: left 7px;
}
.icon-rocket > a {
	background: url("images/icon-rocket.png") no-repeat;
	padding-left: 22px;
	background-size: 18px;
	background-position: left 7px;
}
.icon-asterisk-green > a {
	background: url("images/icon-asterisk-green.png") no-repeat;
	padding-left: 21px;
	background-size: 18px;
	background-position: left 6px;
}
.icon-books > a {
	background: url("images/icon-books.png") no-repeat;
	padding-left: 21px;
	background-size: 18px;
	background-position: left 6px;
}
.icon-asterisk-yellow > a {
	background: url("images/icon-asterisk-yellow.png") no-repeat;
	padding-left: 21px;
	background-size: 18px;
	background-position: left 6px;
}
.icon-asterisk-black > a {
	background: url("images/icon-asterisk-black.png") no-repeat;
	padding-left: 21px;
	background-size: 18px;
	background-position: left 6px;
}
.icon-asterisk-purple > a {
	background: url("images/icon-asterisk-purple.png") no-repeat;
	padding-left: 21px;
	background-size: 18px;
	background-position: left 6px;
}
.icon-search > a {
	background: url("images/icon-search.png") no-repeat;
	padding-left: 21px;
	background-size: 18px;
	background-position: left 6px;
}

/** ==========================================================================
 *  NAVIGATION: DROPDOWN ALIGNMENT & STYLES
 *  ------------------------------------------------------------------------*/
.wp-block-navigation.items-justified-right
  .wp-block-navigation__container
  .has-child
  .wp-block-navigation__submenu-container {
	left: 0;
	right: auto;
}

.wp-block-navigation.items-justified-right
  .wp-block-navigation__container
  .has-child
  .wp-block-navigation__submenu-container a::after { display: none !important; }

.wp-block-navigation.items-justified-right
  .wp-block-navigation__container
  .has-child
  .wp-block-navigation__submenu-container a[aria-current="page"],
.wp-block-navigation.items-justified-right
  .wp-block-navigation__container
  .has-child
  .wp-block-navigation__submenu-container a:hover {
	color: var(--burgundy);
}

.wp-block-navigation.items-justified-right
  .wp-block-navigation__container
  .has-child
  .wp-block-navigation__submenu-container a {
	border-bottom: 1px solid var(--purple);
}

.wp-block-navigation.items-justified-right
  .wp-block-navigation__container
  .has-child
  .wp-block-navigation__submenu-container {
	border: 1px solid var(--purple) !important;
}


/** ==========================================================================
 *  RESPONSIVE: HEADER LAYOUT
 *  ------------------------------------------------------------------------*/
/* Mobile header minor centering tweak */
@media (max-width: 1280px) {
	.wp-container-core-group-is-layout-8d536e80 { justify-content: center; }
}

/* Desktop: show desktop header */
@media (min-width: 1024px) {
	.site-header.desktop-header { display: flex; }
	.site-header.mobile-header { display: none; }
}

/* Tablet/Phone: show mobile header */
@media (max-width: 1023px) {
	.site-header.mobile-header {
		display: flex;
		justify-content: space-between;
		flex-wrap: nowrap;
		gap: 0;
		flex-direction: row;
	}
	.site-header.mobile-header .wp-block-image { margin: 0 auto; }
	.site-header.desktop-header { display: none; }
	.site-header.mobile-header .wp-block-site-logo { margin: 10px auto 0; }
}

@media (max-width: 620px) {
	.wp-site-blocks .site-header .site-brand { display: flex !important; }
	.site-header.mobile-header {}
}


/** ==========================================================================
 *  HOMEPAGE: POST META & LINKS
 *  ------------------------------------------------------------------------*/
/* Calendar icon before post date */
.wp-block-post-date a::before,
.wp-block-post-date time::before,
.posted-on a::before,
.posted-on time::before {
	font-family: dashicons;
	font-weight: normal;
	font-style: normal;
	speak: never;
	display: inline-block;
	content: "\f145"; /* dashicons-calendar */
	font-size: 16px;
	line-height: 1;
	margin-right: .2em;
	vertical-align: -0.15em;
}

a.wp-block-post-excerpt__more-link { font-size: .85em; }






.taxonomy-category {
    display: flex;       /* put categories next to each other */
    gap: 12px;           /* spacing between category links */
    margin-top: -6px;
    font-family: 'IBM Plex Mono', monospace!important;
  }
  
  .taxonomy-category a {
    display: flex;       /* icon + label side by side */
    align-items: center; /* vertically align */
    gap: 4px;            /* space between icon and text */
    text-decoration: none;
    color: var(--black)!important;
  }
  
  .taxonomy-category .cat-icon {
    width: 18px;   /* adjust size */
    height: auto;
    display: block;
  }
  
  .taxonomy-category .cat-label {
    line-height: 1.2;
    font-family: interpol-correspondence, serif;
    font-size: 17.8px;
    padding-top: 2px;
  }

  .taxonomy-category .wp-block-post-terms__separator {display:none;}


/** ==========================================================================
 *  SIDEBAR: CATEGORY ICON LIST
 *  ------------------------------------------------------------------------*/
/* Two-column categories with CSS columns */
 .parent-cat-list ul.wp-block-categories,
 ul.wp-block-archives-list {
   columns: 2;                 /* or: column-count: 2; */
   column-gap: 1rem;
   padding: 0;
   margin: 10px 0 0 0;
   list-style: none;
   font-family: interpol-correspondence, serif;
   letter-spacing: -.03em;
 }
 
 
 .page-template-wp-custom-template-explore-archives .parent-cat-list ul.wp-block-categories {
   columns: 1;                 /* or: column-count: 2; */
 }
 
 
 
 
 
 
 .parent-cat-list ul.wp-block-categories > li {
   break-inside: avoid;        /* keep items from splitting across columns */
   white-space: nowrap;        /* ✅ keep each item on one line */
   
   text-overflow: ellipsis;    /* ✅ optional: add "…" if too long */
 }
 
 .parent-cat-list ul.wp-block-categories a:where(:not(.wp-element-button)) {
   color: var(--black);
 }
 
 .parent-cat-list ul.wp-block-categories a:where(:not(.wp-element-button)):hover {
   color: var(--purple);
 }

 footer .parent-cat-list ul.wp-block-categories a:where(:not(.wp-element-button)):hover {color: var(--burgundy);}

/** ==========================================================================
 *  HOMEPAGE: “MORE RECENT POSTS” CATEGORY CHIPS
 *  ------------------------------------------------------------------------*/
.parent-categories {
	position: absolute;
	bottom: -.6em;
	left: 50%;
	transform: translateX(-50%);
	margin: 0;
	padding: 0;
	list-style: none;
	display: flex;
	gap: 10px;
}

.parent-categories li { position: relative; }

.wp-block-list li {
  font-family: interpol-correspondence, serif;
}

.parent-categories li a {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 6px;
	white-space: nowrap;
	padding: 4px 8px 2px 8px;
	font-size: 17px;
	text-decoration: none;
	background: var(--white);
	color: var(--black);
	font-family: interpol-correspondence, serif;
	letter-spacing: -.03em;
	border: 1px dotted var(--brown);
	border-radius: 8px;
}

.parent-categories li a:hover {background: var(--beige);}

.parent-cat .cat-icon {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
}

.parent-cat .cat-label { vertical-align: middle; margin-top: -4px; }


.wp-block-tag-cloud {line-height: 22px;}
.wp-block-tag-cloud a {text-decoration: none; border: none;}
.wp-block-tag-cloud a:nth-child(6n+1) { color: var(--brown); }
.wp-block-tag-cloud a:nth-child(6n+2) { color: var(--green); }
.wp-block-tag-cloud a:nth-child(6n+3) { color: var(--blue); }
.wp-block-tag-cloud a:nth-child(6n+4) { color: var(--purple); }
.wp-block-tag-cloud a:nth-child(6n+5) { color: var(--burgundy); }
.wp-block-tag-cloud a:nth-child(6n+6) { color: var(--pink); }

.wp-block-tag-cloud a.current-tag {
  font-weight: bold;
  color: var(--black);     /* highlight color */
  text-decoration: underline;
  /* or background-color: var(--yellow); color:#fff; */
}

/* optional extra if you want yellow in the mix */


/* make hover states pop a bit */
.wp-block-tag-cloud a:hover {
  text-decoration: underline;
  opacity: 0.8;
}






/** ==========================================================================
 *  HOMEPAGE: DATE ROLLOVER ON FEATURED IMAGE
 *  ------------------------------------------------------------------------*/
/* Card wrapper as positioning context */
.more-posts-date-roll { position: relative; }

/* Clip overlay to image bounds */
.more-posts-date-roll .wp-block-post-featured-image {
	position: relative;
	overflow: hidden;
}

/* Date overlay band */
.more-posts-date-roll .wp-block-post-date {
	position: absolute;
	top: 0; left: 0; right: 0;
	z-index: 2;
	margin: 0 !important;
	padding: 6px 10px;
	background: var(--beige);
	color: var(--black);
	text-align: center;
	opacity: 0;
	transform: translateY(-6px);
	transition: opacity .2s ease, transform .2s ease;
	pointer-events: none;
	font-size: 0.8rem;
}

/* Reveal when hovering the image link */
.more-posts-date-roll:has(.wp-block-post-featured-image a:is(:hover, :focus-visible))
  .wp-block-post-date {
	opacity: 1;
	transform: translateY(0);
}

/* Fallback without :has() */
@supports not selector(:has(*)) {
	.more-posts-date-roll:hover .wp-block-post-date {
		opacity: 1;
		transform: translateY(0);
	}
}


/** ==========================================================================
 *  CATEGORIES BLOCK: ICON + LABEL INLINE
 *  ------------------------------------------------------------------------*/
.wp-block-categories a {
	display: inline-flex;
	align-items: center;
	gap: 6px;
	text-decoration: none;
}

.wp-block-categories .cat-icon {
	width: 18px;
	height: 18px;
	object-fit: cover;
	border-radius: 3px;
}





/** ==========================================================================
 *  FOOTER
 *  ------------------------------------------------------------------------*/

.footer-border { background: url("images/scallop-purple.png") repeat-x; }
.home .footer-border-group {margin-top: -16px;}



.mc4wp-form {
  background: var(--beige);
  padding: 10px 30px;
  font-family: interpol-correspondence, serif;
  letter-spacing: -.03em;
  color: var(--black);
}

.mc4wp-form .signup-note {
  font-family: Lexend, sans-serif;
  font-size: 1.2em;
  margin-bottom: 1rem;
}

.mc4wp-form label {
  display: block;
  margin-bottom: 0.25rem;
}

.mc4wp-form input[type="text"],
.mc4wp-form input[type="email"] {
  width: 100%;
  padding: 0.5rem;
  box-sizing: border-box;
  border: 2px solid var(--black);
}

.mc4wp-form .name-fields {
  display: flex;
  gap: 1rem;
  margin-bottom: 1rem;
}

.mc4wp-form .name-fields p {
  flex: 1;
  margin: 0;
}

.mc4wp-form p {
  margin-bottom: 1rem;
}

.mc4wp-form input[type="submit"] {
  padding: 0;
  cursor: pointer;
  background: transparent;
  border: none;
}
.mc4wp-form button {margin: 0!important; padding: 12px 14px;}
.wp-element-button, .wp-block-button__link {}

/* Mobile: stack name fields */
@media (max-width: 640px) {
  .mc4wp-form .name-fields {
    display: block;
  }
  .mc4wp-form .name-fields p {
    margin-bottom: 1rem;
  }
}












/** ==========================================================================
 *  ARCHIVE TEMPLATE 
 *  - sub-category styling
 *  - title icon
 *  ------------------------------------------------------------------------*/
 
 /* Icon styling */
 .wp-block-query-title .archive-cat-icon {
   width: 40px;               /* adjust size */
   height: 40px;
   object-fit: cover;
   border-radius: 8px;        /* optional rounded corners */
   flex-shrink: 0;            /* prevent shrinking */
   margin: 0 4px -8px 0;
 }

.child-categories {
   list-style: none;
   margin: 40px 0;
   padding: 0;
   display: flex;
   flex-wrap: wrap;       /* allow items to wrap onto multiple lines */
   justify-content: center; /* center the whole group */
   gap: 10px;             /* space between items */
 }
 
 .child-categories .child-cat a {
   display: inline-flex;
   align-items: center;
   justify-content: center;
   gap: 6px;
   white-space: nowrap;
   padding: 4px 8px 2px 8px;
   font-size: .9em;
   text-decoration: none;
   background: var(--white);
   color: var(--black);
   font-family: interpol-correspondence, serif;
   letter-spacing: 0em;
   border: 1px dotted var(--brown);
   border-radius: 8px;
 }
 
 /* .child-categories .child-cat .cat-label:first-letter {
   text-transform: uppercase !important;
 } */
 
 .child-categories .cat-icon {
   width: 20px;
   height: 20px;
   flex-shrink: 0;
 }

/* Highlight the current sub-category */
 .child-categories .child-cat.is-current a,
 .child-categories .child-cat a.is-current,
 .child-categories .child-cat a[aria-current="page"],
 .child-categories .child-cat a:hover {
   border-style: solid;
   border-color: var(--purple);
   color: var(--purple);
   background: color-mix(in srgb, var(--purple) 8%, #fff);
 }
 
 .child-categories .child-cat.is-current .cat-icon,
 .child-categories .child-cat a.is-current .cat-icon,
 .child-categories .child-cat a[aria-current="page"] .cat-icon,
 .child-categories .child-cat a:hover {
   filter: saturate(1.2) hue-rotate(-10deg);
 }

.child-categories-title {
   display: flex;
   align-items: center;
   justify-content: center;
   gap: 6px;
   margin: 0.5rem 0;
   text-align: center;
   font-size: .9em;
 }
 .child-categories-title a {text-decoration: none;}
 .child-categories-title a:hover {color: var(--burgundy);}
 .child-categories-title .parent-cat-icon {
   width: 40px;
   height: 40px;
   flex-shrink: 0;
 }


/* Make the list item the positioning context */
 .archive.category .wp-block-post.is-sticky {
   position: relative;
   /* border-bottom: var(--yellow) 2px solid; */
   background: #ffe5a0;
 }
 
 .archive.category .wp-block-post.is-sticky h4,
 .archive.category .wp-block-post.is-sticky time {padding-left: 14px!important;}
 
 /* Attach the star to the post itself, not just the image */
.archive.category .wp-block-post.is-sticky::before {
   content: "";
   position: absolute;
   top: 8px;
   left: 12px;
   width: 24px;
   height: 24px;
   background: url("images/icon-asterisk-yellow.png") no-repeat center center;
   background-size: contain;
   z-index: 5;
 }




/** ==========================================================================
  *  SINGLE POSTS STYLINGS
  *  ------------------------------------------------------------------------*/
.wp-block-post-comments-form .comment-reply-title {font-size: .9em; margin-bottom: .5em;}

/** related posts **/
.wp-block-jetpack-related-posts h2.wp-block-heading {
	font-weight: 400;
	font-family: Lexend, sans-serif;
	font-size: 1em;
}
.jp-related-posts-i2__post-defs dd {
	font-family: 'IBM Plex Mono', monospace;
	font-size: 14px;
}
.jp-related-posts-i2__post-defs dd::before {
	font-family: dashicons;
	font-weight: normal;
	font-style: normal;
	display: inline-block;
	content: "\f145";
	line-height: 1;
	margin-right: .2em;
	vertical-align: -0.15em;
}
.jp-related-posts-i2__list a.jp-related-posts-i2__post-link {
	font-family: Lexend, sans-serif;

	text-decoration: none;
	color: var(--black);
	margin: 0 0 2px 0;
}
.jp-related-posts-i2__list .jp-related-posts-i2__post img {
  width: 300px;   /* change to your preferred width */
  height: 200px;   /* keeps proportions */
  object-fit: cover; /* crops neatly if you set a fixed height */
}

.is-style-post-category-icon a {
	font-family: interpol-correspondence, serif;
    letter-spacing: 0;
	text-decoration: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	gap: 3px;
	background: var(--white);
	color: var(--black);	  
	border: 1px dotted var(--brown);
	border-radius: 8px;
	padding: 4px 8px 2px 8px;
	font-size: .9em;
}
.is-style-post-category-icon a img {
	width: 20px;
	height: 20px;
	flex-shrink: 0;
	margin-left: 6px;
}
/* .wp-block-post-terms::before {display:none;} */


.wp-block-search .wp-block-search__input {background: var(--white);}








/* === Random Featured Grid (4:3, square corners) === */
.lb-random-featured-grid {
  --rf-cols: 6;          /* desktop columns fallback */
  --rf-gap: 10px;
  --rf-ratio: 4/3;       /* ✅ default 4:3 aspect ratio */
}

.lb-random-featured-grid p {display:none;}

.lb-random-featured-grid .rf-grid {
  display: grid;
  grid-template-columns: repeat(var(--rf-cols), minmax(0, 1fr));
  gap: var(--rf-gap);
}

.lb-random-featured-grid .rf-tile {
  display: block;
  text-decoration: none;
  position: relative;
}

.lb-random-featured-grid .rf-media {
  margin: 0;
  position: relative;
  width: 100%;
  aspect-ratio: var(--rf-ratio);  /* ✅ ratio comes from PHP inline style or fallback */
  overflow: hidden;
}

/* Force container to 4:3 */
.lb-random-featured-grid .rf-media {
  aspect-ratio: 4 / 3 !important;
}

/* Make the image fill that box no matter what */
.lb-random-featured-grid .rf-media img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  display: block !important;
}


.lb-random-featured-grid .rf-caption {
  position: absolute;
  left: 0; right: 0; bottom: 0;
  padding: 8px 10px;
  background: linear-gradient(to top, rgba(0,0,0,.55), rgba(0,0,0,0));
  color: #fff;
  font-size: 14px;
}

/* Responsive columns */
@media (max-width: 1024px) {
  .lb-random-featured-grid .rf-grid { grid-template-columns: repeat(4, 1fr); }
}
@media (max-width: 768px) {
  .lb-random-featured-grid .rf-grid { grid-template-columns: repeat(3, 1fr); }
}
@media (max-width: 520px) {
  .lb-random-featured-grid .rf-grid { grid-template-columns: repeat(2, 1fr); }
}








/* 3 columns */
@media (max-width: 1200px) {
  .wp-block-post-template.is-layout-grid.columns-4 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* 2 columns */
@media (max-width: 900px) {
  .wp-block-post-template.is-layout-grid.columns-4 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* 1 column */
@media (max-width: 640px) {
  .wp-block-post-template.is-layout-grid.columns-4 {
    grid-template-columns: 1fr;
  }
}


/* 5 columns */
@media (max-width: 1440px) {
  .wp-block-post-template.is-layout-grid.columns-6 {
    grid-template-columns: repeat(5, minmax(0, 1fr));
  }
}

/* 4 columns */
@media (max-width: 1240px) {
  .wp-block-post-template.is-layout-grid.columns-6 {
    grid-template-columns: repeat(4, minmax(0, 1fr));
  }
}

/* 3 columns */
@media (max-width: 1024px) {
  .wp-block-post-template.is-layout-grid.columns-6 {
    grid-template-columns: repeat(3, minmax(0, 1fr));
  }
}

/* 2 columns */
@media (max-width: 768px) {
  .wp-block-post-template.is-layout-grid.columns-6 {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

/* 1 column */
@media (max-width: 520px) {
  .wp-block-post-template.is-layout-grid.columns-6 {
    grid-template-columns: 1fr;
  }
}



/* Mobile-only adjustments */
@media (max-width: 600px) {
  /* Headings */
  .wp-block-post-title,
  h1 {
    font-size: 2.25rem; /* ~36px */
    line-height: 1.2;
  }

  h2 {
    font-size: 1.9rem; /* ~30px */
    line-height: .9;
  }

  h3 {
    font-size: 1.5rem; /* ~24px */
    line-height: 1.3;
  }

  h4 {
    font-size: 1.125rem; /* ~20px */
    line-height: 1.4;
  }

  /* Excerpts larger on mobile */
  .wp-block-post-excerpt {
    font-size: 1.2rem; /* ~19px */
    line-height: 1.6;
  }
}

@media (max-width: 600px) {
  p {
    font-size: 1rem; /* ~18px, bigger for small screens */
    line-height: 1.4;
  }
}



@media (max-width: 500px) {
  .wp-block-post .wp-block-group.is-layout-flex {
    flex-direction: column;
    align-items: flex-start; /* optional: left align instead of centered */
    gap: 0.5rem; /* space between date + categories */
  }
}











 

/** ==========================================================================
 *  CORE NAV OVERRIDES: RESPONSIVE BREAKPOINTS
 *  - Changes default WP nav breakpoints from 600px to 1024px for desktop
 *  ------------------------------------------------------------------------*/
@media (min-width: 1024px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) {
		display: none !important;
	}
	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) {
		display: block !important;
		width: 100%;
		position: relative;
		z-index: auto;
		background-color: inherit;
	}
}

/* Remove default 600px behavior (reassert mobile behavior under 1024px) */
@media (min-width: 600px) {
	.wp-block-navigation__responsive-container-open:not(.always-shown) { display: flex; }
	.wp-block-navigation__responsive-container:not(.hidden-by-default):not(.is-menu-open) { display: none; }
}


/** ==========================================================================
 *  BLOCK EDITOR TWEAKS
 *  ------------------------------------------------------------------------*/
.post-type-page .editor-visual-editor__post-title-wrapper > :where(:not(.alignleft):not(.alignright):not(.alignfull)) {
	margin-bottom: 8px !important;
}
