/* Crysten Curry Elementor Widget - Blog Post Content (fonts come from fonts.css) */

.cc-pc-wrap {
  --cc-pc-bg: #FBFAF8;
  --cc-pc-maxw: 760px;
  --cc-pc-gutter: clamp(20px, 3vw, 48px);
  --cc-pc-pad: clamp(40px, 6vw, 80px);
  --cc-pc-text: #2A2627;
  --cc-pc-heading: #0A0708;
  --cc-pc-link: #520000;
  --cc-pc-fs: 17px;
  width: 100%;
  box-sizing: border-box;
}
.cc-pc-wrap *, .cc-pc-wrap *::before, .cc-pc-wrap *::after { box-sizing: border-box; }

.cc-postcontent { background: var(--cc-pc-bg); padding-block: var(--cc-pc-pad); }
.cc-pc__row {
  max-width: calc(var(--cc-pc-maxw) + 220px);
  margin: 0 auto;
  padding-inline: var(--cc-pc-gutter);
}
.cc-pc--byline .cc-pc__row { display: grid; grid-template-columns: 180px minmax(0, 1fr); gap: 40px; align-items: start; }
.cc-pc__side { padding-top: 4px; }
.cc-pc-wrap .cc-pc__by { margin: 0 0 18px !important; font-family: "Manrope", "Helvetica Neue", Arial, sans-serif; font-size: 12px; line-height: 1.5; color: var(--cc-pc-text); }
.cc-pc-wrap .cc-pc__by-label { display: block; font-size: 11px; letter-spacing: .1em; text-transform: uppercase; color: #8B8488; margin-bottom: 4px; }
.cc-pc-wrap .cc-pc__by-name { font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: var(--cc-pc-heading); }
.cc-pc-wrap .cc-pc__readtime { margin: 0 !important; font-size: 12px; color: #8B8488; }
.cc-pc__inner {
  max-width: var(--cc-pc-maxw);
  margin: 0 auto;
  font-family: "Manrope", "Helvetica Neue", Arial, sans-serif;
  font-size: var(--cc-pc-fs);
  line-height: 1.75;
  color: var(--cc-pc-text);
}
.cc-pc--byline .cc-pc__inner { margin: 0; }

/* ---------- baseline spacing between every direct block of the post body ----------
   Reset first (equal specificity, earlier in source = loses to the rule below), then add
   space between consecutive siblings. Kept !important because the active theme or Elementor's
   own base CSS often ships its own `.entry-content p { margin: 0 }`-style reset that would
   otherwise win and collapse all this spacing back to nothing. */
.cc-pc-wrap .cc-pc__inner > * { margin-top: 0 !important; margin-bottom: 0 !important; }
.cc-pc-wrap .cc-pc__inner > * + * { margin-top: 1.4em !important; }

.cc-pc-wrap .cc-pc__inner h2,
.cc-pc-wrap .cc-pc__inner h3,
.cc-pc-wrap .cc-pc__inner h4 {
  margin-top: 1.8em !important;
  margin-bottom: .5em !important;
  font-family: "Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;
  font-weight: 400;
  line-height: 1.15;
  color: var(--cc-pc-heading);
}
.cc-pc__inner h2 { font-size: clamp(1.7rem, 3vw, 2.4rem); }
.cc-pc__inner h3 { font-size: clamp(1.35rem, 2.3vw, 1.8rem); }
.cc-pc__inner h4 { font-size: 1.15rem; font-family: "Manrope", "Helvetica Neue", Arial, sans-serif; font-weight: 700; }
.cc-pc-wrap .cc-pc__inner p { margin: 0 !important; }
.cc-pc__inner a { color: var(--cc-pc-link); text-decoration: underline; text-underline-offset: 3px; }
.cc-pc__inner strong, .cc-pc__inner b { font-weight: 700; color: var(--cc-pc-heading); }
.cc-pc__inner ul, .cc-pc__inner ol { padding-left: 1.4em; }
.cc-pc-wrap .cc-pc__inner li { margin: 0 !important; }
.cc-pc-wrap .cc-pc__inner li + li { margin-top: .5em !important; }

.cc-pc--dropcap .cc-pc__inner > p:first-of-type::first-letter {
  float: left;
  font-family: "Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;
  font-size: 3.6em;
  line-height: .8;
  padding: .05em .08em 0 0;
  color: var(--cc-pc-heading);
}

/* ---------- quote: oxblood box, centred white serif text ---------- */
.cc-pc-wrap .cc-pc__inner blockquote {
  margin: 0 !important;
  padding: 1.6em 2em;
  border-left: 0;
  background: #520000;
  text-align: center;
  font-family: "Cormorant Garamond", "Cormorant", Georgia, "Times New Roman", serif;
  font-style: italic;
  font-weight: 500;
  font-size: 1.35em;
  line-height: 1.4;
  color: #FFFFFF;
}
.cc-pc__inner blockquote p { color: inherit; }
.cc-pc__inner blockquote cite { display: block; margin-top: .6em; font-size: .55em; font-style: normal; opacity: .8; }

.cc-pc-wrap .cc-pc__inner img { display: block; width: 100%; height: auto; margin: 0 !important; }
.cc-pc-wrap .cc-pc__inner figure { margin: 0 !important; }
.cc-pc__inner figcaption {
  margin-top: 10px;
  font-size: 13px;
  letter-spacing: .04em;
  text-transform: uppercase;
  text-align: center;
  color: #7B7477;
  font-family: "Manrope", "Helvetica Neue", Arial, sans-serif;
}
.cc-pc-wrap .cc-pc__inner hr { margin: 0 !important; border: 0; border-top: 1px solid #E7E0DA; }
.cc-pc__inner video { max-width: 100%; height: auto; }

/* ---------- video embeds (YouTube, Vimeo, etc.) ----------
   WordPress wraps these differently depending on editor/version: Gutenberg uses
   <figure class="wp-block-embed"><div class="wp-block-embed__wrapper">, the classic
   auto-embed uses <span class="embed-youtube"> or <p> with a bare <iframe> inside. Cover all
   of them and always force a responsive 16:9 box regardless of the wrapper. */
.cc-pc-wrap .cc-pc__inner .wp-block-embed,
.cc-pc-wrap .cc-pc__inner .embed-youtube,
.cc-pc-wrap .cc-pc__inner .embed-vimeo { margin: 0 !important; display: block; }
.cc-pc__inner .wp-block-embed__wrapper,
.cc-pc__inner .embed-youtube,
.cc-pc__inner .embed-vimeo {
  position: relative;
  display: block;
  width: 100%;
  height: 0;
  padding-top: 56.25%;
  overflow: hidden;
}
.cc-pc__inner .wp-block-embed__wrapper iframe,
.cc-pc__inner .embed-youtube iframe,
.cc-pc__inner .embed-vimeo iframe,
.cc-pc__inner iframe[src*="youtube"],
.cc-pc__inner iframe[src*="youtu.be"],
.cc-pc__inner iframe[src*="vimeo"] {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  width: 100% !important;
  height: 100% !important;
  max-width: 100%;
  border: 0;
}
.cc-pc__inner iframe { max-width: 100%; }

/* ---------- Style 2: bold Archivo headings, mono body ---------- */
.cc-pc--style2 .cc-pc__inner {
  font-family: "IBM Plex Mono", "Courier New", monospace;
  font-size: calc(var(--cc-pc-fs) - 2px);
  line-height: 1.85;
}
.cc-pc--style2 .cc-pc__inner h2,
.cc-pc--style2 .cc-pc__inner h3,
.cc-pc--style2 .cc-pc__inner h4 {
  font-family: "Archivo", "Helvetica Neue", Arial, sans-serif;
  font-weight: 800;
  letter-spacing: .01em;
  text-transform: uppercase;
}
.cc-pc--style2 .cc-pc__inner blockquote {
  font-family: "Bodoni Moda", "Didot", "Bodoni 72", Georgia, serif;
  font-style: normal;
  text-transform: uppercase;
}
