/* banner mobile responsive*/
.ymdbanner2 img {
  width: 100%;
  height: auto;
  display: block;
}

.ymdbanner {
  width: 100%;
  min-height: 500px; /* controls banner height */
  background-image: url('/wp-content/uploads/2026/02/yvonne-debandi-author-banner.jpg');

	background-size: contain;
	/* makes image fill width */
  background-position: center; /* keeps image centered */
  background-repeat: no-repeat;
  
  display: flex;
  align-items: left;
  justify-content: left;

  padding: 80px 40px;
  box-sizing: border-box;
}

/* Mobile adjustments */
@media (max-width: 768px) {
  .ymdbanner {
    min-height: 350px;
    padding: 60px 20px;
    background-position: center center;
  }
}


/* hide author meta*/
.entry-meta{
	display:none;
}
/* Default fallback if a page has no realm */
body { --realm-accent: #3F4E5A; }

/* Realm accent color variables */
body.realm-technological { --realm-accent: #3F4E5A; }
body.realm-mystical      { --realm-accent: #A68B4F; }
body.realm-human         { --realm-accent: #9C5A3C; }
body { --realm-accent: #3F4E5A; }

/* Astra + Gutenberg buttons (higher specificity) */
body a{color:#3F4E5A;}
body .ast-button,
body a.ast-button,
body .ast-custom-button,
body a.ast-custom-button,
body button,
body input[type="button"],
body input[type="submit"],
body input[type="reset"],
body .wp-block-button__link {
  background-color: var(--realm-accent) !important;
  border-color: var(--realm-accent) !important;
}
/*manual buttons*/
.technological-button
	 {
  background-color:#3F4E5A !important;
  border-color: #3F4E5A !important;
	}
.mystical-button.wp-block-button__link{ 
	background-color:#A68B4F !important;
  border-color: #A68B4F !important;
	}
.human-button{background-color:#9C5A3C;}
/* Hover state */
body .ast-button:hover,
body a.ast-button:hover,
body .ast-custom-button:hover,
body a.ast-custom-button:hover,
body button:hover,
body input[type="button"]:hover,
body input[type="submit"]:hover,
body input[type="reset"]:hover,
body .wp-block-button__link:hover {
  filter: brightness(0.92);
}

/* Optional: subtle accents for headings/lines inside book pages */
.single-books h2,
.single-books h3, .single-books h5 {
  border-bottom: 2px solid var(--realm-accent);
  padding-bottom: 0.25em;
}

/* Optional: links on book pages */
.single-books a {
  text-decoration-color: var(--realm-accent);
}
/* Subtle tinted hero background */
.single-books .book-hero {
  background-color: color-mix(in srgb, var(--realm-accent) 6%, white);
  padding: 3rem 2rem;
  border-radius: 6px;
}
/* Books archive cover fix */
.books-grid .book-cover {
  aspect-ratio: 2 / 3;
  overflow: hidden;
  border-radius: 6px; /* optional */
}

.books-grid .book-cover img {
  width: 100%;
  height: 100%;
  object-fit: cover;  /* prevents stretching */
  display: block;
}
.books-grid{
  display:grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 24px;
}
.book-card { background: #fff; padding: 18px; border-radius: 10px; }
.book-link { color: inherit; text-decoration: none; }


/* Clamp Book titles to 2 lines and prevent ugly overflow */
.wp-block-post-title,
.wp-block-post-title a {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;   /* change to 3 if you want */
  overflow: hidden;

  /* helps long titles behave */
  overflow-wrap: anywhere;
  word-break: break-word;
  hyphens: auto;
}

/* Optional: keep all cards aligned by reserving space for 2 lines */
.wp-block-post-title {
  line-height: 1.25;
  min-height: calc(1.25em * 2);
}

/* Limit excerpts to 4 lines in archive cards */
.post-type-archive-books .wp-block-post-excerpt__excerpt,
.tax-realm .wp-block-post-excerpt__excerpt .card-clamp {
  display: -webkit-box;
  -webkit-line-clamp: 4;      /* change to 3–5 */
  -webkit-box-orient: vertical;
  overflow: hidden;
}



/* Realm archive grid */
.ydc-book-grid{
  display:grid;
  grid-template-columns: repeat(auto-fit, minmax(220px, 1fr));
  gap: 28px;
  align-items:start;
}

/* Cover image sizing */
.ydc-book-cover img{
  width:100%;
  height:auto;
  object-fit:cover;
  border-radius:6px;
  display:block;
}

/* Title clamp */
.ydc-book-title{
  margin: 12px 0 8px;
  font-size: 20px;
  line-height: 1.2;
  display:-webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow:hidden;
}

/* Excerpt clamp */
.ydc-book-excerpt{
  color:#444;
  line-height:1.45;
  display:-webkit-box;
  -webkit-line-clamp: 4;
  -webkit-box-orient: vertical;
  overflow:hidden;
}
/*image caption*/
.wp-image-726 + .wp-element-caption {
    text-align: right;
    color: #777;
}

/* --- Global: soften and unify panels / callouts --- */
:root{
  --panel-radius: 14px;
  --panel-shadow: 0 10px 24px rgba(0,0,0,.08);
  --panel-border: 1px solid rgba(0,0,0,.06);
}

/* Apply to common content blocks (adjust selectors to match your theme/classes) */
.ymd-banner-2,
.journey-strip,
.realm-intro-box,
.new-to-realm,
.callout,
.wp-block-group.is-style-default,
.entry-content .wp-block-group,
.entry-content .wp-block-cover,
.entry-content .wp-block-columns {
  border-radius: var(--panel-radius);
}

/* Use this class on the "Begin Your Journey" strip (or add to its container) */
.journey-strip{
  border: var(--panel-border);
  box-shadow: var(--panel-shadow);
  padding: 14px 16px;
  background: rgba(255,255,255,.7);
  backdrop-filter: blur(6px);
}

/* Make links inside the strip feel more like clear options */
.journey-strip a{
  text-decoration: none;
  font-weight: 600;
}
.journey-strip a:hover{
  text-decoration: underline;
}

/* --- Improve button consistency site-wide --- */
a.button, .wp-block-button__link, button, input[type="submit"]{
  border-radius: 10px;
  box-shadow: 0 8px 18px rgba(0,0,0,.10);
  transition: transform .12s ease, box-shadow .12s ease;
}
a.button:hover, .wp-block-button__link:hover, button:hover, input[type="submit"]:hover{
  transform: translateY(-1px);
  box-shadow: 0 12px 24px rgba(0,0,0,.14);
}

/* --- Make book cover images feel more premium (optional) --- */
.book-cover img,
.wp-block-image img{
  border-radius: 10px;
}

/* Sticky Header CSS */
div.ast-main-header-wrap {
    z-index: 999;
}

body.is-scrolled .ast-main-header-wrap {
    position: fixed !important;
    top: 0 !important;
    width: 100% !important;
    background-color: #fff !important; /* Adjust color as needed */
    box-shadow: 0 2px 5px rgba(0,0,0,0.1) !important;
}

body.is-scrolled .site-content {
    margin-top: 80px !important; /* Adjust based on header height */
}

/* yd-publications plugin css */
.yd-publications-grid {
	display: grid;
	grid-template-columns: repeat(auto-fit, minmax(240px, 1fr));
	gap: 24px;
	margin: 24px 0;
}

.yd-publication-card {
	background: #f7f3ec;
	border-radius: 14px;
	padding: 20px;
	box-shadow: 0 8px 20px rgba(0,0,0,.08);
}

.yd-publication-card.is-featured {
	border: 1px solid rgba(156, 90, 60, 0.18);
	box-shadow: 0 12px 26px rgba(0,0,0,.10);
}

.yd-publication-cover img {
	width: 100%;
	height: auto;
	border-radius: 10px;
	display: block;
}

.yd-publication-badge {
	display: inline-block;
	margin-bottom: 10px;
	padding: 4px 10px;
	border-radius: 999px;
	background: rgba(156, 90, 60, 0.10);
	color: #9C5A3C;
	font-size: 0.85em;
	font-weight: 600;
}

.yd-publication-title {
	margin-top: 12px;
	margin-bottom: 8px;
}

.yd-publication-subtitle {
	font-style: italic;
	opacity: .85;
	margin-bottom: 10px;
}

.yd-publication-format {
	margin-top: 12px;
	font-size: 0.95em;
}

.yd-publication-button {
	display: inline-block;
	padding: 10px 16px;
	border: 1px solid #9C5A3C;
	border-radius: 10px;
	text-decoration: none;
	color: #9C5A3C;
	font-weight: 600;
}

.yd-publication-button:hover {
	text-decoration: none;
	box-shadow: 0 6px 14px rgba(0,0,0,.08);
}