/* =====================================================
   ISABEL MONTOYA — DESIGN SYSTEM
   ===================================================== */

/* 1. CUSTOM PROPERTIES
   ----------------------------------------------------- */
:root {
  --max:     1200px;
  --pad:     40px;
  --sp-sm:   24px;
  --sp-md:   48px;
  --sp-lg:   80px;
  --ink:     #111111;
  --bg:      #ffffff;
  --muted:   #777777;
  --rule:    rgba(0,0,0,0.12);
  --serif:   'Cormorant Garamond', Georgia, serif;
  --sans:    'Cormorant Garamond', Georgia, serif;
}

/* 2. BASE
   ----------------------------------------------------- */
*, *::before, *::after { box-sizing: border-box; }

body {
  font-family: var(--serif);
  font-size: 13px;
  color: var(--ink);
  background: var(--bg);
}

/* 3. GLOBAL CONTAINER SYSTEM — every page
   ----------------------------------------------------- */
#content .ast-container,
.ast-container {
  max-width: var(--max) !important;
  padding-left: var(--pad) !important;
  padding-right: var(--pad) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
}

.entry-content,
.ast-post-format- {
  max-width: 100% !important;
  width: 100% !important;
}

/* Spectra inner blocks: fill parent, no extra padding */
.uagb-container-inner-blocks-wrap {
  max-width: 100% !important;
  width: 100% !important;
}
.uagb-section__inner-wrap {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Gutenberg columns: full-width by default (no WP generated max-width) */
.wp-block-columns {
  max-width: none !important;
  width: 100% !important;
}

/* Note: Spectra block backgrounds and padding are intentionally
   preserved from block editor settings — no global overrides here */

/* 4. HEADER
   ----------------------------------------------------- */
#masthead,
.main-header-bar,
.ast-primary-header-bar {
  background-color: var(--bg) !important;
  border-bottom: 1px solid var(--rule) !important;
  box-shadow: none !important;
  padding: 14px 0 !important;
}

/* 5. NAVIGATION
   ----------------------------------------------------- */
.ast-nav-menu > li > a,
.main-navigation ul li a,
#site-navigation .menu-link,
.ast-header-custom-item .ast-nav-menu > li > a {
  font-family: var(--serif) !important;
  font-size: 11px !important;
  font-weight: 400 !important;
  letter-spacing: 0.15em !important;
  text-transform: uppercase !important;
  color: var(--ink) !important;
}

/* 6. PAGE TITLES
   ----------------------------------------------------- */
.entry-title,
.page-title,
h1.entry-title {
  font-family: var(--serif) !important;
  font-weight: 300 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--ink) !important;
}
.entry-header {
  padding-top: 0 !important;
  margin-bottom: var(--sp-md) !important;
}

/* 7. PAINTINGS PAGE — grid layout (page-id-10)
   ----------------------------------------------------- */
.page-id-10 .entry-title {
  font-family: var(--serif) !important;
  font-size: clamp(28px, 4vw, 52px) !important;
  font-weight: 300 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  margin-bottom: var(--sp-md) !important;
}

/* Acrylic section heading */
.page-id-10 h2 {
  font-family: var(--serif) !important;
  font-size: clamp(28px, 4vw, 52px) !important;
  font-weight: 300 !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--ink) !important;
  margin-top: var(--sp-lg) !important;
  margin-bottom: var(--sp-md) !important;
}

/* Grid rows */
.page-id-10 .wp-block-columns {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: var(--sp-sm) !important;
  margin-bottom: var(--sp-sm) !important;
  max-width: none !important;
  width: 100% !important;
  flex-wrap: unset !important;
  align-items: stretch !important;
}

/* Grid cells */
.page-id-10 .wp-block-column {
  width: 100% !important;
  flex: unset !important;
  min-width: 0 !important;
  max-width: none !important;
}

.page-id-10 .wp-block-image {
  margin: 0 !important;
}

.page-id-10 .wp-block-image img {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
  display: block !important;
  filter: none !important;
  transition: transform 0.4s ease !important;
}

.page-id-10 .wp-block-image img:hover {
  transform: scale(1.02) !important;
}

/* Painting captions */
.page-id-10 .wp-element-caption,
.page-id-10 figcaption {
  font-family: var(--serif) !important;
  font-size: 10px !important;
  letter-spacing: 0.12em !important;
  text-transform: uppercase !important;
  color: var(--muted) !important;
  text-align: center !important;
  margin-top: 10px !important;
  padding: 0 !important;
}

/* 8. CONTACT PAGE (page-id-698)
   ----------------------------------------------------- */
.page-id-698 .entry-title,
.page-id-698 .entry-header {
  display: none !important;
}

.page-id-698 .contact-title-heading {
  font-family: var(--serif) !important;
  font-size: clamp(40px, 6vw, 88px) !important;
  font-weight: 300 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  color: var(--ink) !important;
  line-height: 1 !important;
  margin-bottom: var(--sp-sm) !important;
}

.page-id-698 .contact-name-heading {
  font-family: var(--serif) !important;
  font-size: 18px !important;
  font-weight: 300 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: var(--ink) !important;
  margin-top: 0 !important;
  margin-bottom: 18px !important;
}

.page-id-698 .wp-block-column p {
  font-family: var(--serif) !important;
  font-size: 14px !important;
  font-weight: 300 !important;
  letter-spacing: 0.03em !important;
  color: #222222 !important;
  line-height: 1.8 !important;
  margin-bottom: 6px !important;
}

.page-id-698 .wp-block-column p a {
  color: #222222 !important;
  text-decoration: none !important;
}
.page-id-698 .wp-block-column p a:hover {
  text-decoration: underline !important;
}

.page-id-698 .wp-block-separator {
  border-color: var(--rule) !important;
  margin: var(--sp-sm) 0 !important;
  opacity: 1 !important;
}

.page-id-698 .contact-form-heading {
  font-family: var(--serif) !important;
  font-size: 13px !important;
  font-weight: 400 !important;
  letter-spacing: 0.2em !important;
  text-transform: uppercase !important;
  color: var(--ink) !important;
  margin-bottom: var(--sp-sm) !important;
}

.page-id-698 .wp-block-image img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  object-position: center top !important;
}

/* SureForms: force visible inputs */
.page-id-698 .srfm-form-container,
.srfm-form-container-2030 {
  --srfm-color-input-text: #111111;
  --srfm-color-input-background: #ffffff;
  --srfm-color-input-border: rgba(0,0,0,0.18);
}

.page-id-698 .srfm-form-container input[type="text"],
.page-id-698 .srfm-form-container input[type="email"],
.page-id-698 .srfm-form-container input[type="tel"],
.page-id-698 .srfm-form-container textarea,
.page-id-698 .srfm-form-container select {
  color: #111111 !important;
  background-color: #ffffff !important;
  border: 1px solid rgba(0,0,0,0.18) !important;
  border-radius: 0 !important;
}

.page-id-698 .srfm-form-container label,
.page-id-698 .srfm-form-container .srfm-label {
  color: #111111 !important;
  font-size: 11px !important;
  letter-spacing: 0.1em !important;
  text-transform: uppercase !important;
}

.srfm-button,
.srfm-submit-button {
  background-color: var(--ink) !important;
  color: #ffffff !important;
  border-radius: 0 !important;
  font-size: 9px !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
}

/* 9. FOOTER
   ----------------------------------------------------- */
#colophon,
.site-footer {
  background-color: var(--ink) !important;
  color: #666666 !important;
}
#colophon p,
.site-footer p,
#colophon a,
.site-footer a {
  color: #666666 !important;
  font-size: 11px !important;
  letter-spacing: 0.06em !important;
}

/* 10. RESPONSIVE
   ----------------------------------------------------- */
@media (max-width: 1024px) {
  :root { --pad: 24px; }

  .page-id-10 .wp-block-columns {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}

@media (max-width: 600px) {
  :root { --pad: 16px; }

  #content .ast-container,
  .ast-container {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }

  .page-id-10 .wp-block-columns {
    grid-template-columns: 1fr !important;
  }
}
/* Contact page: force white background throughout */
.page-id-698,
.page-id-698 .wp-block-uagb-container,
.page-id-698 .uagb-container-inner-blocks-wrap,
.page-id-698 .wp-block-group,
.page-id-698 .entry-content,
.page-id-698 .wp-block-columns,
.page-id-698 .wp-block-column {
  background-color: #ffffff !important;
  color: #111111 !important;
}

/* Paintings page: force white background */
.page-id-10,
.page-id-10 .wp-block-uagb-container,
.page-id-10 .uagb-container-inner-blocks-wrap,
.page-id-10 .entry-content {
  background-color: #ffffff !important;
}
/* Fix: Astra article element dark background on contact page */
.page-id-698 article,
.page-id-698 .ast-article-single {
  background-color: #ffffff !important;
}

/* Fix: Astra article element on paintings page */
.page-id-10 article,
.page-id-10 .ast-article-single {
  background-color: #ffffff !important;
}
/* Fix: CONTACT heading and all text elements on white contact page */
.page-id-698 .contact-page-title,
.page-id-698 .contact-title-heading,
.page-id-698 h1.wp-block-heading,
.page-id-698 h2.wp-block-heading {
  color: #111111 !important;
}

.page-id-698 .contact-page-title {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: clamp(40px, 6vw, 88px) !important;
  font-weight: 300 !important;
  letter-spacing: 0.18em !important;
  text-transform: uppercase !important;
  line-height: 1 !important;
  margin-bottom: 24px !important;
}

/* Fix any other white-on-white text elements on contact page */
.page-id-698 .uagb-heading-text,
.page-id-698 p,
.page-id-698 li {
  color: #111111 !important;
}

/* ─── ISABEL MONTOYA — Nav wordmark (center logo) ─── */
.nav-logo-wordmark .menu-link,
.nav-logo-wordmark > a {
  font-family: 'Cormorant Garamond', Georgia, serif !important;
  font-size: 22px !important;
  font-weight: 300 !important;
  letter-spacing: 0.45em !important;
  text-transform: uppercase !important;
  color: #111111 !important;
  pointer-events: none;
  cursor: default;
}

/* ─── Remove dark backgrounds — all pages white ─── */
.wp-block-uagb-container,
.wp-block-uagb-container .uagb-section--inner-wrap,
.uagb-section,
article.ast-article-single,
.ast-separate-container .ast-article-single,
#primary, #main {
  background-color: #ffffff !important;
  background-image: none !important;
}

/* ─── Fix text colors now backgrounds are white ─── */
.wp-block-uagb-container h1,
.wp-block-uagb-container h2,
.wp-block-uagb-container h3,
.wp-block-uagb-container h4,
.wp-block-uagb-container p,
.wp-block-uagb-container span,
.wp-block-uagb-container a,
.uagb-heading-text,
.uagb-sub-heading-text,
.wp-block-heading,
.entry-content h1,
.entry-content h2,
.entry-content h3,
.entry-content p {
  color: #111111 !important;
}

/* ─── FOOTER — Compact & intentional ─── */

/* Keep footer dark, override our global white-bg rule */
.site-footer,
.site-footer .wp-block-uagb-container,
.site-footer .wp-block-uagb-container .uagb-section--inner-wrap,
.site-footer .uagb-section,
#colophon {
  background-color: #111111 !important;
  background-image: none !important;
}

/* Above-footer (Stay in Touch): 77px → 32px top/bottom */
.site-above-footer-wrap.ast-builder-grid-row-container {
  padding-top: 32px !important;
  padding-bottom: 32px !important;
}

/* Primary footer bar: 104px/64px → 20px/20px */
.site-primary-footer-wrap.ast-builder-grid-row-container {
  padding-top: 20px !important;
  padding-bottom: 20px !important;
}

/* Widget sections inside footer: reduce bottom margin 36px → 14px */
.footer-widget-area .widget {
  margin-bottom: 14px !important;
}
.footer-widget-area .widget:last-child {
  margin-bottom: 0 !important;
}

/* Tighten spacing between Stay in Touch title, description, input, button */
.site-footer .wp-block-group,
.site-footer .wp-block-column {
  gap: 12px !important;
}
.site-footer p {
  margin-bottom: 12px !important;
}
.site-footer .wp-block-button {
  margin-top: 8px !important;
}

/* Footer text — keep light on dark */
.site-footer h1, .site-footer h2, .site-footer h3,
.site-footer h4, .site-footer .uagb-heading-text,
.site-footer .wp-block-heading,
.site-footer .textwidget p {
  color: #ffffff !important;
}

/* Footer container width aligned with site system */
.site-footer .ast-container,
.site-footer .ast-builder-grid-row-container-inner {
  max-width: var(--max) !important;
  padding-left: var(--pad) !important;
  padding-right: var(--pad) !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ─── Subscribe button — prevent text wrap ─── */
.srfm-submit-button,
.srfm-button.srfm-submit-button {
  white-space: nowrap !important;
  min-width: 130px !important;
  padding-left: 20px !important;
  padding-right: 20px !important;
}

/* ─── Footer form row — input + button side by side, tight ─── */
.site-footer .srfm-block-wrap,
.site-footer .srfm-fields-wrap {
  gap: 8px !important;
}

/* ─── Reduce last content block bottom padding to close white gap ─── */
#primary .entry-content > *:last-child,
#primary .wp-block-uagb-container:last-of-type {
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}
.ast-article-single > .entry-content {
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* ─── SureForms footer form — tighten field gaps ─── */
.site-footer .srfm-form {
  gap: 10px 12px !important;
}
.site-footer .srfm-block-single {
  margin-bottom: 0 !important;
}
.site-footer .srfm-error-wrap {
  display: none !important;
}

/* ═══════════════════════════════════════════
   POEMS ARCHIVE — Curated editorial grid
═══════════════════════════════════════════ */

/* White background throughout */
.blog #primary,
.blog .site-content,
.blog article.type-post,
.blog .ast-article-inner,
.ast-blog-layout-6-grid .ast-article-inner {
  background-color: #ffffff !important;
  box-shadow: none !important;
  border-radius: 0 !important;
}

/* Strip card padding, reset to flat */
.blog .ast-article-inner,
.ast-blog-layout-6-grid .ast-article-inner {
  padding: 0 0 40px !important;
  border-bottom: 1px solid rgba(0,0,0,0.10) !important;
}

/* Hide all blog clutter */
.blog .ast-blog-featured-section,
.blog .post-thumb,
.blog .ast-excerpt-container,
.blog .ast-read-more-single,
.blog .read-more-container,
.blog .entry-footer,
.blog .ast-tags-meta {
  display: none !important;
}

/* Grid top padding */
.blog #primary .ast-grid-3 {
  padding-top: var(--sp-md) !important;
  padding-bottom: var(--sp-lg) !important;
}

/* Each post: no extra side padding */
.blog article.type-post {
  padding-left: 0 !important;
  padding-right: 16px !important;
}

/* Title — clean, dark, prominent */
.blog .entry-title {
  font-size: 18px !important;
  color: #111111 !important;
  margin: 0 0 8px !important;
  line-height: 1.3 !important;
  letter-spacing: 0.06em !important;
  text-transform: uppercase !important;
}
.blog .entry-title a {
  color: #111111 !important;
  text-decoration: none !important;
}
.blog .entry-title a:hover {
  color: #888888 !important;
  text-decoration: none !important;
}

/* Date — small, subtle */
.blog .entry-header,
.blog .ast-blog-meta-container {
  order: 2;
  margin-top: 0 !important;
  margin-bottom: 0 !important;
}
.blog .entry-header .posted-on,
.blog .entry-header .ast-post-meta {
  font-size: 11px !important;
  color: #999999 !important;
  letter-spacing: 0.08em !important;
}
.blog .entry-header a {
  color: #999999 !important;
  text-decoration: none !important;
}

/* ═══════════════════════════════════════════
   SINGLE POEM — Book / editorial layout
═══════════════════════════════════════════ */

/* Single post — white background */
.single-post article,
.single-post .ast-article-single {
  background-color: #ffffff !important;
}

/* Narrow reading column for content */
.single-post .entry-content {
  max-width: 660px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/* Single poem title */
.single-post .entry-title {
  max-width: 660px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  font-size: clamp(26px, 4vw, 44px) !important;
  color: #111111 !important;
  letter-spacing: 0.08em !important;
  line-height: 1.2 !important;
  margin-bottom: 14px !important;
  margin-top: var(--sp-md) !important;
}

/* Date — subtle, centered under title */
.single-post .entry-header {
  max-width: 660px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  margin-bottom: var(--sp-md) !important;
}
.single-post .entry-header .posted-on,
.single-post .entry-header time,
.single-post .entry-header a {
  font-size: 11px !important;
  color: #999999 !important;
  letter-spacing: 0.1em !important;
  text-decoration: none !important;
}

/* Poem text — generous, book-like spacing */
.single-post .entry-content p {
  font-size: 16px !important;
  line-height: 1.85 !important;
  margin-bottom: 2em !important;
  color: #111111 !important;
  white-space: pre-line;
}

/* Stanza spacing */
.single-post .entry-content p + p {
  margin-top: 0.5em !important;
}

/* Hide clutter on single post */
.single-post .entry-footer,
.single-post .ast-tags-meta,
.single-post .post-navigation,
.single-post #respond,
.single-post .comments-area {
  display: none !important;
}

/* Responsive — tablet 2 col, mobile 1 col */
@media (max-width: 1024px) {
  .blog .ast-grid-3 {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
@media (max-width: 600px) {
  .blog .ast-grid-3 {
    grid-template-columns: 1fr !important;
  }
  .single-post .entry-title {
    font-size: 26px !important;
  }
  .single-post .entry-content p {
    font-size: 15px !important;
  }
}

/* ─── Poems archive: fix date visibility + tighten row spacing ─── */

/* Date — force dark on all wrappers */
.blog .entry-header,
.blog .entry-meta,
.blog .posted-on,
.blog span.published,
.blog time.published,
.blog time.entry-date {
  color: #999999 !important;
  font-size: 11px !important;
  letter-spacing: 0.08em !important;
}

/* Reduce inner bottom padding: 40px → 20px */
.blog .ast-article-inner,
.ast-blog-layout-6-grid .ast-article-inner {
  padding: 0 0 24px !important;
}

/* Tighten grid row gap */
.blog .ast-grid-3 {
  row-gap: 0 !important;
  column-gap: 32px !important;
}

/* ─── Single poem: hide comment link + category meta ─── */
.single .entry-meta .comments-link,
.single .entry-meta .ast-terms-link,
.single .entry-meta > span:not(.posted-on):not(.byline) {
  display: none !important;
}
.single .entry-meta .sep {
  display: none !important;
}

/* ═══════════════════════════════════════════
   FOOTER — White, centered, refined
═══════════════════════════════════════════ */

/* Override previous dark footer rules — now white */
.site-footer,
#colophon,
.site-above-footer-wrap,
.site-primary-footer-wrap,
.site-footer .ast-builder-grid-row-container,
.site-footer .ast-builder-grid-row-container-inner,
.site-footer .ast-builder-footer-grid-columns,
.site-footer .footer-widget-area {
  background-color: #ffffff !important;
  background-image: none !important;
}

/* Footer text — dark on white */
#colophon p,
.site-footer p,
#colophon a,
.site-footer a,
.site-footer span,
.site-footer .textwidget p,
.site-footer .uagb-heading-text,
.site-footer h1,
.site-footer h2,
.site-footer h3,
.site-footer h4 {
  color: #111111 !important;
}

/* "Stay in Touch" label — small, muted */
.site-footer .widget_text .textwidget p {
  font-size: 11px !important;
  letter-spacing: 0.12em !important;
  color: #999999 !important;
  text-transform: uppercase !important;
  margin-bottom: 8px !important;
}

/* Footer nav links + copyright */
.site-footer .ast-footer-nav a,
.site-footer .ast-copyright-para,
.site-footer .ast-copyright-para a {
  color: #777777 !important;
  font-size: 11px !important;
  letter-spacing: 0.06em !important;
}

/* Social icons — dark */
.site-footer .ast-social-icon-wrap a svg,
.site-footer .ast-social-icon-wrap a {
  color: #111111 !important;
  fill: #111111 !important;
}

/* Subtle top border instead of heavy dark block */
.site-above-footer-wrap {
  border-top: 1px solid rgba(0,0,0,0.10) !important;
}
.site-primary-footer-wrap {
  border-top: 1px solid rgba(0,0,0,0.08) !important;
}

/* Center the form + input + button */
.site-footer .footer-widget-area,
.site-footer .widget_block,
.site-footer .widget_text,
.site-footer .srfm-form-container,
.site-footer .srfm-form {
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
}

/* Input field — centered, refined width */
.site-footer .srfm-input-field,
.site-footer input[type="email"],
.site-footer input[type="text"] {
  max-width: 380px !important;
  width: 100% !important;
  text-align: left !important;
  border: 1px solid rgba(0,0,0,0.20) !important;
  background: #ffffff !important;
  color: #111111 !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* Subscribe button — centered below input */
.site-footer .srfm-submit-button,
.site-footer .srfm-button {
  max-width: 380px !important;
  width: 100% !important;
  margin-left: auto !important;
  margin-right: auto !important;
  background-color: #111111 !important;
  color: #ffffff !important;
  border-color: #111111 !important;
}
.site-footer .srfm-submit-button:hover {
  background-color: #333333 !important;
}

/* Form blocks align center */
.site-footer .srfm-block-single {
  width: 100% !important;
  max-width: 380px !important;
  margin-left: auto !important;
  margin-right: auto !important;
}

/* ─── Single poem: hide Jetpack sharing + Like blocks ─── */
.single-post .sharedaddy,
.single-post .sd-sharing,
.single-post .sd-block,
.single-post [class*="sharedaddy"],
.single-post .jp-relatedposts,
.single-post .jetpack-likes-widget-wrapper,
.single-post #jp-post-flair,
.single-post .wpl-likebox {
  display: none !important;
}

/* ═══════════════════════════════════════════
   CONTACT FORM — Editorial / gallery style
═══════════════════════════════════════════ */

/* Form container — constrained, clean */
.page-id-698 .srfm-form-container {
  max-width: 560px !important;
  margin-left: 0 !important;
  padding: 0 !important;
}
.page-id-698 .srfm-form {
  gap: 0 !important;
}

/* Each field block — spacing between groups */
.page-id-698 .srfm-block-single {
  margin-bottom: 32px !important;
  position: relative;
}
.page-id-698 .srfm-block-single:last-of-type {
  margin-bottom: 0 !important;
}

/* ─── Inject visible labels via ::before ─── */
.srfm-block-single.srf-input-54eb2827-block::before {
  content: "NAME";
  display: block;
  font-size: 10px;
  font-family: 'Cormorant Garamond', Georgia, serif;
  letter-spacing: 0.14em;
  color: #777777;
  margin-bottom: 8px;
  text-transform: uppercase;
}
.srfm-block-single.srf-email-98fd2dc7-block::before {
  content: "EMAIL";
  display: block;
  font-size: 10px;
  font-family: 'Cormorant Garamond', Georgia, serif;
  letter-spacing: 0.14em;
  color: #777777;
  margin-bottom: 8px;
  text-transform: uppercase;
}
.srfm-block-single.srf-phone-58fa59df-block::before {
  content: "PHONE";
  display: block;
  font-size: 10px;
  font-family: 'Cormorant Garamond', Georgia, serif;
  letter-spacing: 0.14em;
  color: #777777;
  margin-bottom: 8px;
  text-transform: uppercase;
}
.srfm-block-single.srf-textarea-67d30111-block::before {
  content: "MESSAGE";
  display: block;
  font-size: 10px;
  font-family: 'Cormorant Garamond', Georgia, serif;
  letter-spacing: 0.14em;
  color: #777777;
  margin-bottom: 8px;
  text-transform: uppercase;
}

/* ─── Input fields — clean underline style ─── */
.page-id-698 .srfm-input-field,
.page-id-698 .srfm-form input[type="text"],
.page-id-698 .srfm-form input[type="email"],
.page-id-698 .srfm-form input[type="tel"],
.page-id-698 .srfm-form textarea {
  border: none !important;
  border-bottom: 1px solid rgba(0,0,0,0.25) !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 10px 0 !important;
  font-size: 14px !important;
  color: #111111 !important;
  box-shadow: none !important;
  outline: none !important;
  width: 100% !important;
}
.page-id-698 .srfm-form input:focus,
.page-id-698 .srfm-form textarea:focus {
  border-bottom-color: #111111 !important;
  box-shadow: none !important;
}

/* Placeholder text — subtle */
.page-id-698 .srfm-form input::placeholder,
.page-id-698 .srfm-form textarea::placeholder {
  color: transparent !important;
}

/* Phone field — hide flag/country picker clutter */
.page-id-698 .srfm-phone-block .srfm-block-wrap {
  border: none !important;
  border-bottom: 1px solid rgba(0,0,0,0.25) !important;
  border-radius: 0 !important;
  background: transparent !important;
  padding: 0 !important;
}
.page-id-698 .srfm-phone-block .srfm-input-field {
  border-bottom: none !important;
}

/* Error messages — clean, below input */
.page-id-698 .srfm-error-wrap {
  margin-top: 4px !important;
}
.page-id-698 .srfm-error-message-single {
  font-size: 10px !important;
  color: #c0392b !important;
  letter-spacing: 0.06em !important;
}

/* Submit button — minimal, dark */
.page-id-698 .srfm-submit-button {
  background: #111111 !important;
  color: #ffffff !important;
  border: none !important;
  border-radius: 0 !important;
  padding: 14px 40px !important;
  font-size: 11px !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  cursor: pointer !important;
  margin-top: 8px !important;
}
.page-id-698 .srfm-submit-button:hover {
  background: #333333 !important;
}

/* ═══════════════════════════════════════════
   POEMS ARCHIVE — Gallery image above title
═══════════════════════════════════════════ */

/* ============================================
   CONTACT PAGE — gallery-soft refinements
   page-id-698
   ============================================ */

/* Page title: halved, featherweight, airy */
.page-id-698 .contact-page-title {
  font-size: clamp(22px, 3vw, 42px) !important;
  font-weight: 200 !important;
  letter-spacing: 0.30em !important;
  color: #3a3a3a !important;
  margin-top: 56px !important;
  margin-bottom: 48px !important;
  line-height: 1.2 !important;
}

/* "ISABEL MONTOYA" sub-heading — softer gray */
.page-id-698 .contact-name-heading {
  color: #3a3a3a !important;
  letter-spacing: 0.26em !important;
  margin-bottom: 28px !important;
}

/* "ENQUIRY FORM" label — muted */
.page-id-698 .contact-form-heading {
  color: #777777 !important;
  letter-spacing: 0.22em !important;
  margin-top: 52px !important;
  margin-bottom: 24px !important;
}

/* Body text — address / email / instagram */
.page-id-698 .wp-block-column p {
  color: #4a4a4a !important;
  line-height: 1.9 !important;
  margin-bottom: 12px !important;
}

/* Prose paragraph (reach out / mailing list) */
.page-id-698 .entry-content > p {
  color: #4a4a4a !important;
  line-height: 1.9 !important;
}

/* Horizontal rule — barely-there */
.page-id-698 .entry-content hr,
.page-id-698 .wp-block-separator {
  border-color: rgba(0,0,0,0.08) !important;
  margin-top: 40px !important;
  margin-bottom: 40px !important;
}

/* Form label pseudo-elements — softer */
.page-id-698 .srfm-block-single::before {
  color: #888888 !important;
}

/* Form inputs — warmer underline tone */
.page-id-698 .srfm-form input,
.page-id-698 .srfm-form textarea {
  color: #3a3a3a !important;
  border-bottom-color: rgba(0,0,0,0.18) !important;
}

/* Submit button — off-black, not pure black */
.page-id-698 .srfm-submit-button {
  background-color: #2a2a2a !important;
  letter-spacing: 0.15em !important;
}

/* ============================================
   POEMS ARCHIVE — featured image gallery
   Option A: image top, title below, date below
   ============================================ */

/* Astra layout-6 makes featured section position:absolute (background image mode).
   Override to position:relative + height:auto so aspect-ratio can control height. */
.blog .ast-blog-featured-section {
  position: relative !important;
  inset: auto !important;
  display: block !important;
  overflow: hidden !important;
  background-color: #e8e3dc !important;
  aspect-ratio: 4 / 5 !important;
  width: 100% !important;
  height: auto !important;
}

/* Hide layout-6 dark overlay pseudo-element */
.blog .ast-blog-featured-section::before {
  display: none !important;
}

/* Intermediate wrapper Astra inserts — must fill section width */
.blog .ast-blog-featured-section .post-thumb-img-content {
  display: block !important;
  width: 100% !important;
  line-height: 0 !important;
}

/* Image — fill section, cover crop */
.blog .ast-blog-featured-section img {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 4 / 5 !important;
  object-fit: cover !important;
  object-position: center top !important;
  transition: transform 0.55s ease !important;
}

/* Subtle zoom on hover */
.blog article.type-post:hover .ast-blog-featured-section img {
  transform: scale(1.04) !important;
}

/* Image flush to card top */
.blog .ast-article-inner { padding-top: 0 !important; }

/* Keep excerpt + read-more hidden */
.blog .ast-excerpt-container,
.blog .ast-read-more-single,
.blog .ast-read-more-container,
.blog p.read-more { display: none !important; }

/* Title — clean gap below image */
.blog .entry-title {
  margin-top: 14px !important;
  margin-bottom: 4px !important;
}
.blog header.entry-header { margin-top: 2px !important; }

/* ═══════════════════════════════════════════
   ARTWORK DETAIL PAGE — painting-1-2025
═══════════════════════════════════════════ */

/* Full-width two-column layout */
.page-id-2408 .artwork-detail-columns {
  align-items: flex-start !important;
  gap: 60px !important;
  margin-top: 40px !important;
}

/* Left: image fills column, no extra margin */
.page-id-2408 .artwork-detail-left {
  position: sticky !important;
  top: 80px !important;
}
.page-id-2408 .artwork-detail-image {
  margin: 0 !important;
}
.page-id-2408 .artwork-detail-image img {
  width: 100% !important;
  height: auto !important;
  display: block !important;
}

/* Right: generous top padding, clean text */
.page-id-2408 .artwork-detail-right {
  padding-top: 8px !important;
}

/* Title */
.page-id-2408 .artwork-detail-title {
  font-size: clamp(20px, 2.4vw, 34px) !important;
  font-weight: 300 !important;
  letter-spacing: 0.12em !important;
  color: #2a2a2a !important;
  margin-bottom: 28px !important;
  line-height: 1.25 !important;
}

/* Metadata (size, materials) */
.page-id-2408 .artwork-detail-meta {
  font-size: 13px !important;
  color: #5a5a5a !important;
  letter-spacing: 0.06em !important;
  line-height: 1.8 !important;
  margin-bottom: 16px !important;
  text-transform: none !important;
}
.page-id-2408 .artwork-detail-meta strong {
  color: #2a2a2a !important;
  font-weight: 500 !important;
  display: block !important;
  text-transform: uppercase !important;
  font-size: 11px !important;
  letter-spacing: 0.14em !important;
  margin-bottom: 2px !important;
}

/* Divider */
.page-id-2408 .artwork-detail-rule {
  margin: 32px 0 !important;
  border: none !important;
  height: 1px !important;
}

/* "Inquire about this work" heading */
.page-id-2408 .artwork-inquiry-label {
  font-size: 11px !important;
  font-weight: 500 !important;
  letter-spacing: 0.22em !important;
  text-transform: uppercase !important;
  color: #888 !important;
  margin-bottom: 24px !important;
}

/* Form fields — inherit site underline style */
.page-id-2408 .srfm-form-container { padding: 0 !important; background: transparent !important; }
.page-id-2408 .srfm-submit-button {
  background-color: #2a2a2a !important;
  letter-spacing: 0.14em !important;
  font-size: 12px !important;
}

/* Portfolio grid: Painting 1 link — no underline, cursor pointer */
.page-id-10 .wp-block-image a {
  text-decoration: none !important;
  display: block !important;
}
.page-id-10 .wp-block-image a:hover img {
  opacity: 0.88 !important;
  transition: opacity 0.3s ease !important;
}

/* Responsive */
@media (max-width: 768px) {
  .page-id-2408 .artwork-detail-columns {
    flex-direction: column !important;
  }
  .page-id-2408 .artwork-detail-left,
  .page-id-2408 .artwork-detail-right {
    width: 100% !important;
    flex-basis: 100% !important;
    position: static !important;
  }
}

/* >>> THOUGHTS-GALLERY-START (managed, do not edit labels) */
/* Thoughts / blog archive — art-gallery grid */
body.blog .ast-row, body.blog .site-main .ast-row {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 2.5rem 2rem !important;
  align-items: stretch !important;
}
@media (max-width: 921px) { body.blog .ast-row { grid-template-columns: repeat(2, 1fr) !important; } }
@media (max-width: 544px) { body.blog .ast-row { grid-template-columns: 1fr !important; } }
body.blog article.ast-article-post {
  width: 100% !important; margin: 0 !important;
  display: flex !important; flex-direction: column !important;
}
body.blog article.ast-article-post .ast-article-inner {
  display: flex !important; flex-direction: column !important; flex: 1 1 auto !important;
}
body.blog article .post-thumb,
body.blog article .ast-blog-featured-section,
body.blog article .ast-blog-featured-section.post-thumb,
body.blog .ast-blog-layout-6-grid .ast-row article .ast-blog-featured-section.post-thumb {
  display: block !important; position: relative !important;
  width: 100% !important; height: auto !important;
  min-height: 0 !important; max-height: none !important;
  padding: 0 !important; padding-bottom: 0 !important;
  aspect-ratio: 4 / 3 !important; overflow: hidden !important;
  margin: 0 0 1rem 0 !important;
}
body.blog article .post-thumb-img-content,
body.blog article .post-thumb-img-content.post-thumb,
body.blog .ast-blog-layout-6-grid .ast-row article .post-thumb-img-content {
  display: block !important; position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important;
  padding: 0 !important; padding-bottom: 0 !important;
  aspect-ratio: auto !important; overflow: hidden !important; margin: 0 !important;
}
body.blog article .post-thumb img,
body.blog article .post-thumb img.wp-post-image,
body.blog article .post-thumb-img-content img,
body.blog article .post-thumb-img-content.post-thumb img.wp-post-image,
body.blog article .ast-blog-featured-section img {
  position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important;
  max-width: 100% !important; max-height: 100% !important;
  object-fit: cover !important; object-position: center !important;
  display: block !important; aspect-ratio: auto !important;
}
body.blog article .post-thumb > a.im-thumb-link,
body.blog article .ast-blog-featured-section > a.im-thumb-link,
body.blog article .post-thumb-img-content > a.im-thumb-link {
  position: absolute !important; inset: 0 !important; display: block !important;
  width: 100% !important; height: 100% !important; overflow: hidden !important;
}
body.blog article a.im-thumb-link img {
  position: absolute !important; inset: 0 !important;
  width: 100% !important; height: 100% !important;
  object-fit: cover !important; object-position: center !important; display: block !important;
}
body.blog article .post-thumb { cursor: pointer; }
body.blog article .entry-header,
body.blog article .entry-title,
body.blog article .ast-excerpt-container,
body.blog article .entry-meta { margin-top: 0 !important; }
body.blog nav.pagination, body.blog .navigation.pagination {
  display: flex !important; justify-content: center !important; margin: 3rem 0 1.5rem !important;
}
body.blog nav.pagination .nav-links, body.blog .navigation.pagination .nav-links {
  display: inline-flex !important; gap: .75rem !important; align-items: center !important;
  flex-wrap: wrap; justify-content: center;
}
body.blog nav.pagination .page-numbers {
  padding: .35rem .75rem !important; min-width: 2rem; text-align: center;
  border: none !important; background: transparent !important; transition: opacity .15s ease;
}
body.blog nav.pagination .page-numbers.current {
  font-weight: 600; text-decoration: underline; text-underline-offset: 4px;
}
body.blog nav.pagination .page-numbers:hover { opacity: .6; }

body.blog.im-popular-loading .ast-row { opacity: 0.2; transition: opacity .15s ease; }
body.blog .ast-row { transition: opacity .2s ease; }
/* <<< THOUGHTS-GALLERY-END */

/* >>> THOUGHTS-SORT-UI-START (managed) */
/* Thoughts / blog archive — sort header */
body.blog .im-sort-header {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem 1.5rem;
  align-items: baseline;
  justify-content: space-between;
  padding: 0 0 1.5rem;
  margin: .25rem 0 2rem;
  border-bottom: 1px solid rgba(0,0,0,.08);
  font-size: .95rem;
  letter-spacing: .02em;
}
body.blog .im-sort-count {
  color: rgba(0,0,0,.6);
  font-variant-numeric: tabular-nums;
}
body.blog .im-sort-label {
  color: rgba(0,0,0,.6);
  margin: 0;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  white-space: nowrap;
}
body.blog .im-sort-select {
  font: inherit;
  color: inherit;
  background: transparent;
  border: 0;
  border-bottom: 1px solid rgba(0,0,0,.25);
  padding: .1rem 1.25rem .15rem .25rem;
  cursor: pointer;
  -webkit-appearance: none;
  appearance: none;
  background-image: linear-gradient(45deg, transparent 50%, rgba(0,0,0,.55) 50%),
                    linear-gradient(135deg, rgba(0,0,0,.55) 50%, transparent 50%);
  background-position: calc(100% - 10px) 55%, calc(100% - 5px) 55%;
  background-size: 5px 5px;
  background-repeat: no-repeat;
  transition: border-color .15s ease, opacity .15s ease;
}
body.blog .im-sort-select:hover,
body.blog .im-sort-select:focus {
  border-color: rgba(0,0,0,.6);
  outline: none;
  opacity: .85;
}
@media (max-width: 544px) {
  body.blog .im-sort-header { padding-bottom: 1rem; margin-bottom: 1.25rem; }
}
/* <<< THOUGHTS-SORT-UI-END */


/* >>> HERO/ABOUT SPACING & TAGLINE COLOR FIX */
/* Add breathing room between the hero (with main photo and name) and the About Me section */
.im-hero {
  margin-bottom: 80px;
}
@media (max-width: 768px) {
  .im-hero { margin-bottom: 56px; }
}

/* Make the "Artist & Writer" tagline pure white for better visibility */
.im-hero__subline {
  color: #ffffff !important;
  opacity: 1 !important;
}
/* <<< HERO/ABOUT SPACING & TAGLINE COLOR FIX END */


/* >>> HOMEPAGE-SECTION-SPACING-FIX
   Goal: cap inter-section spacing at ~80px desktop / ~48px mobile.
   Targets: About Me, Journey divider, Journey, Art Works, CTA, Instagram strip.
   Preserves the airy gallery feel; just closes broken-looking gaps. */

/* Hero already has 80px bottom margin from the prior fix. Reaffirm + mobile cap. */
.im-hero { margin-bottom: 48px; }

/* About Me container (UAGB block aowqfvsx) had padding-bottom:112px. Cap it. */
.entry-content > .uagb-block-aowqfvsx {
  padding-top: 0 !important;
  padding-bottom: 48px !important;
}

/* The two-column block right after About Me had padding-bottom:60px - keep airy, just trim a bit on mobile. */
.entry-content > .wp-block-columns.alignwide {
  padding-bottom: 40px !important;
}

/* Journey group (wp-block-group is-layout-constrained) had pt:60 pb:60. Already reasonable - leave on desktop, tighten mobile. */

/* Art Works container (UAGB block plovjyws) had padding-top:112 / padding-bottom:112. Cap. */
.entry-content > .uagb-block-plovjyws {
  padding-top: 48px !important;
  padding-bottom: 48px !important;
}

/* Art Works CTA wrap had pt:48 pb:80 - already inside target. Keep, but tighten mobile. */
/* Follow-strip-wrap had pt:32 - fine. */

/* Defensive: any UAGB container in the homepage entry-content with padding > 96 gets capped */
.entry-content [class*="uagb-block-"] { }

/* Mobile: reduce all section paddings to roughly 48px */
@media (max-width: 768px) {
  .im-hero { margin-bottom: 48px; }
  .entry-content > .uagb-block-aowqfvsx {
    padding-bottom: 48px !important;
  }
  .entry-content > .wp-block-columns.alignwide {
    padding-bottom: 32px !important;
  }
  .entry-content > .wp-block-group.is-layout-constrained {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
  .entry-content > .uagb-block-plovjyws {
    padding-top: 48px !important;
    padding-bottom: 48px !important;
  }
  .art-works-cta-wrap {
    padding-top: 32px !important;
    padding-bottom: 48px !important;
  }
  .follow-strip-wrap {
    padding-top: 24px !important;
  }
}

/* Hide any empty Gutenberg blocks that might silently add height (defensive only - none detected currently) */
.entry-content .wp-block-spacer[style*="height: 1"][style*="00px"],
.entry-content .wp-block-spacer[style*="height: 12"],
.entry-content .wp-block-spacer[style*="height: 16"],
.entry-content .wp-block-spacer[style*="height: 20"] {
  height: 80px !important;
}
@media (max-width: 768px) {
  .entry-content .wp-block-spacer[style*="height: 1"][style*="00px"],
  .entry-content .wp-block-spacer[style*="height: 12"],
  .entry-content .wp-block-spacer[style*="height: 16"],
  .entry-content .wp-block-spacer[style*="height: 20"] {
    height: 48px !important;
  }
}
/* <<< HOMEPAGE-SECTION-SPACING-FIX END */



/* =====================================================
   INQUIRE CTA — quiet on-brand call to action
   Used on Home (after Art Works grid), Paintings page (top),
   and individual painting detail pages.
   Matches existing .art-works-cta-wrap styling.
   ===================================================== */

/* Shared base for the link itself, regardless of wrapper */
a.im-inquire-link{
  display:inline-block;
  font-family:'Cormorant Garamond',Georgia,serif !important;
  font-size:18px !important;
  letter-spacing:0.18em !important;
  text-transform:uppercase !important;
  color:#1a1a1a !important;
  text-decoration:none !important;
  border-bottom:1px solid #1a1a1a !important;
  padding:6px 2px;
  transition:color .25s ease,border-color .25s ease,letter-spacing .25s ease;
  background:transparent !important;
}
a.im-inquire-link .arrow{
  display:inline-block;
  margin-left:10px;
  transition:transform .25s ease;
}
a.im-inquire-link:hover{
  color:#7a6a52 !important;
  border-color:#7a6a52 !important;
  letter-spacing:0.22em !important;
}
a.im-inquire-link:hover .arrow{
  transform:translateX(4px);
}

/* Home (after Art Works grid) */
.im-inquire-wrap.im-inquire-home{
  text-align:center;
  padding:48px 24px;
  background:transparent;
}
.im-inquire-wrap.im-inquire-home .im-inquire-line{
  font-family:'Cormorant Garamond',Georgia,serif !important;
  font-size:16px !important;
  letter-spacing:0.18em;
  text-transform:uppercase;
  color:#1a1a1a !important;
  margin:0 0 18px 0;
  font-weight:400;
}

/* Paintings page intro */
.im-inquire-paintings-intro{
  text-align:center;
  padding:24px 24px 32px;
  background:transparent;
}
.im-inquire-paintings-intro .im-inquire-line{
  font-family:'Cormorant Garamond',Georgia,serif !important;
  font-size:16px !important;
  letter-spacing:0.16em;
  text-transform:uppercase;
  color:#1a1a1a !important;
  margin:0;
  font-weight:400;
}
.im-inquire-paintings-intro a.im-inquire-link{
  font-size:16px !important;
  letter-spacing:0.18em !important;
  margin-left:8px;
}

/* Painting detail page */
.im-inquire-detail{
  text-align:center;
  padding:32px 24px 48px;
  background:transparent;
}
.im-inquire-detail a.im-inquire-link{
  font-size:18px !important;
}

/* Mobile drop */
@media (max-width:768px){
  .im-inquire-wrap.im-inquire-home{ padding:48px 16px; }
  .im-inquire-paintings-intro{ padding:20px 16px 24px; }
  .im-inquire-detail{ padding:24px 16px 40px; }
  .im-inquire-wrap.im-inquire-home .im-inquire-line,
  .im-inquire-paintings-intro .im-inquire-line{
    font-size:14px !important;
    letter-spacing:0.16em;
  }
  .im-inquire-wrap.im-inquire-home a.im-inquire-link,
  .im-inquire-paintings-intro a.im-inquire-link,
  .im-inquire-detail a.im-inquire-link{
    font-size:16px !important;
    letter-spacing:0.16em !important;
  }
  .im-inquire-wrap.im-inquire-home a.im-inquire-link:hover,
  .im-inquire-paintings-intro a.im-inquire-link:hover,
  .im-inquire-detail a.im-inquire-link:hover{
    letter-spacing:0.20em !important;
  }
}

/* === IM Mobile Menu Light === */
/* Make the mobile flyout menu light with dark text so it's readable */
#ast-mobile-popup,
#ast-mobile-popup .ast-mobile-popup-inner,
#ast-mobile-popup .ast-mobile-popup-content,
#ast-mobile-popup .ast-mobile-popup-header {
  background-color: #ffffff !important;
}
#ast-mobile-popup .ast-mobile-popup-overlay {
  background-color: rgba(0,0,0,0.35) !important;
}
#ast-mobile-popup .main-header-menu,
#ast-mobile-popup .main-header-menu .menu-item,
#ast-mobile-popup .main-header-menu .menu-item > a,
#ast-mobile-popup .main-header-menu .sub-menu .menu-item > a,
#ast-mobile-popup ul.menu li a,
#ast-mobile-popup .ast-builder-menu-mobile .main-header-menu a {
  background-color: #ffffff !important;
  color: #1a1a1a !important;
}
#ast-mobile-popup .main-header-menu .menu-item > a:hover,
#ast-mobile-popup .main-header-menu .menu-item.current-menu-item > a,
#ast-mobile-popup ul.menu li a:hover {
  color: #7a6a52 !important;
  background-color: #faf6f1 !important;
}
/* close button (X) icon contrast */
#ast-mobile-popup .menu-toggle-close,
#ast-mobile-popup .menu-toggle-close .ast-svg-iconset,
#ast-mobile-popup .menu-toggle-close svg {
  color: #1a1a1a !important;
  fill: #1a1a1a !important;
  background-color: transparent !important;
}
/* divider lines between items */
#ast-mobile-popup .main-header-menu .menu-item {
  border-bottom-color: rgba(26,26,26,0.08) !important;
}

/* === IM Mobile+iPad Polish v1 === */
/* ----- Mobile + iPad portrait (Astra mobile breakpoint is 921px) ----- */
@media (max-width: 921px) {
  /* 1. Readable body text */
  body, body p, .ast-container, .entry-content p,
  .site-footer, .site-footer p, .site-footer a,
  .ast-footer-copyright, .ast-footer-copyright a {
    font-size: 16px !important;
    line-height: 1.6 !important;
  }

  /* 2. Headings scale down for small screens */
  h1, .entry-title { font-size: 42px !important; line-height: 1.15 !important; }
  h2 { font-size: 28px !important; line-height: 1.2 !important; }
  h3 { font-size: 22px !important; line-height: 1.25 !important; }

  /* 3. Hamburger trigger meets 44x44 tap target */
  .menu-toggle.main-header-menu-toggle,
  .ast-mobile-menu-trigger-fill,
  .ast-mobile-menu-trigger-minimal,
  #menu-toggle-close {
    min-width: 44px !important;
    min-height: 44px !important;
    padding: 10px !important;
  }

  /* 4. Form inputs ≥16px to prevent iOS zoom-on-focus */
  input[type="text"], input[type="email"], input[type="tel"],
  input[type="url"], input[type="search"], input[type="number"],
  textarea, select,
  .srfm-input-common, .srfm-input-email, .srfm-input-text,
  .srfm-input-phone, .srfm-input-textarea {
    font-size: 16px !important;
    min-height: 48px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  textarea, .srfm-input-textarea { min-height: 140px !important; }

  /* 5+6. Submit buttons readable + full-width on mobile */
  .srfm-button.srfm-submit-button,
  #srfm-submit-btn,
  button[type="submit"], input[type="submit"], .wp-block-button__link {
    font-size: 16px !important;
    min-height: 48px !important;
    padding: 12px 20px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }

  /* 7. Footer subscribe row stacks cleanly on phones */
  .srfm-form-container .srfm-block-width-75,
  .srfm-form-container .srfm-block-width-25 {
    width: 100% !important;
    flex: 0 0 100% !important;
    max-width: 100% !important;
  }
  .srfm-form-container .srfm-block-wrap { width: 100% !important; }

  /* 8. Section padding rhythm: cap big desktop padding at 48px on mobile */
  .ast-container,
  .entry-content > .wp-block-group,
  .entry-content > section,
  .ast-builder-grid-row-container-inner {
    padding-left: 24px !important;
    padding-right: 24px !important;
  }
  .ast-builder-html-element { padding: 0 !important; }

  /* 9. Footer columns stack with breathing room */
  .site-below-footer-wrap[data-section="section-below-footer-builder"],
  .site-above-footer-wrap[data-section="section-above-footer-builder"],
  .ast-builder-footer-grid-columns {
    grid-template-columns: 1fr !important;
    gap: 32px !important;
  }
  .site-footer .footer-widget-area { margin-bottom: 24px; }

  /* 10. Images responsive */
  img, figure img, .wp-block-image img {
    max-width: 100% !important;
    height: auto !important;
  }
}

/* ----- Phones only (≤480px): tighter type ----- */
@media (max-width: 480px) {
  h1, .entry-title { font-size: 34px !important; }
  h2 { font-size: 24px !important; }
  h3 { font-size: 20px !important; }
  .ast-container, .entry-content > section {
    padding-left: 16px !important;
    padding-right: 16px !important;
  }
}

/* ----- iPad landscape (922-1024) keeps desktop nav but tightens type ----- */
@media (min-width: 922px) and (max-width: 1024px) {
  body, body p { font-size: 16px !important; }
  h1, .entry-title { font-size: 56px !important; }
}

/* === IM SureForms specificity boost v1 === */
@media (max-width: 921px) {
  .srfm-form input.srfm-input-common,
  .srfm-form input.srfm-input-input,
  .srfm-form input.srfm-input-email,
  .srfm-form input.srfm-input-phone,
  .srfm-form textarea.srfm-input-common,
  .srfm-form textarea.srfm-input-textarea,
  form.srfm-form input,
  form.srfm-form textarea,
  form.srfm-form select {
    font-size: 16px !important;
    min-height: 48px !important;
    width: 100% !important;
    box-sizing: border-box !important;
  }
  form.srfm-form textarea { min-height: 140px !important; }
  /* Ensure full-width parent slots so inputs actually take full width */
  .srfm-form .srfm-block-wrap,
  .srfm-form .srfm-block-single { width: 100% !important; }
}

/* === IM SureForms page-id override v1 === */
/* Beat the .page-id-698 rule by matching its specificity (page-id class + !important) */
@media (max-width: 921px) {
  .page-id-698 .srfm-input-field,
  .page-id-698 .srfm-form input[type="text"],
  .page-id-698 .srfm-form input[type="email"],
  .page-id-698 .srfm-form input[type="tel"],
  .page-id-698 .srfm-form textarea,
  body .srfm-form input[type="text"],
  body .srfm-form input[type="email"],
  body .srfm-form input[type="tel"],
  body .srfm-form input[type="url"],
  body .srfm-form input[type="search"],
  body .srfm-form input[type="number"],
  body .srfm-form textarea,
  body .srfm-form select,
  body form.srfm-form .srfm-input-common {
    font-size: 16px !important;
    min-height: 48px !important;
  }
}

/* === IM Mobile Header Menu Light v2 (no media query) === */
/* These classes only exist on pages where Astra renders the mobile/inline menu, so it's safe to apply without a media query. */

/* Drawer wrapper backgrounds */
.ast-mobile-header-content,
.ast-mobile-header-wrap .ast-mobile-header-content,
.ast-mobile-header-wrap,
#ast-hf-mobile-menu,
.ast-builder-menu-mobile .main-header-menu,
.ast-builder-menu-mobile #ast-hf-mobile-menu,
.ast-builder-menu-mobile .main-navigation,
.main-header-bar-navigation.toggle-on,
.main-header-bar-navigation.toggle-on .main-header-menu,
.main-header-bar-navigation.toggle-on #ast-hf-mobile-menu {
  background-color: #ffffff !important;
}

/* Each menu item link */
#ast-hf-mobile-menu .menu-item > a,
#ast-hf-mobile-menu .menu-link,
#ast-hf-mobile-menu li > a,
.ast-mobile-header-content .menu-item > a,
.ast-mobile-header-content .menu-link,
.ast-builder-menu-mobile .menu-item > a,
.ast-builder-menu-mobile .menu-link,
.main-header-bar-navigation.toggle-on .menu-item > a,
.main-header-bar-navigation.toggle-on .menu-link {
  background-color: #ffffff !important;
  color: #1a1a1a !important;
}

/* Hover / current */
#ast-hf-mobile-menu .menu-item > a:hover,
#ast-hf-mobile-menu .menu-link:hover,
#ast-hf-mobile-menu .menu-item.current-menu-item > a,
.ast-mobile-header-content .menu-item > a:hover,
.ast-mobile-header-content .menu-item.current-menu-item > a,
.ast-builder-menu-mobile .menu-item > a:hover,
.ast-builder-menu-mobile .menu-item.current-menu-item > a {
  background-color: #faf6f1 !important;
  color: #7a6a52 !important;
}

/* Sub-menu */
#ast-hf-mobile-menu .sub-menu,
#ast-hf-mobile-menu .sub-menu .menu-item > a,
.ast-builder-menu-mobile .sub-menu,
.ast-builder-menu-mobile .sub-menu .menu-item > a {
  background-color: #ffffff !important;
  color: #1a1a1a !important;
}

/* Item dividers */
#ast-hf-mobile-menu .menu-item,
.ast-mobile-header-content .menu-item {
  border-bottom-color: rgba(26,26,26,0.08) !important;
}

/* Sub-menu toggle / arrow */
.ast-mobile-header-content .ast-menu-toggle,
.ast-builder-menu-mobile .ast-menu-toggle,
#ast-hf-mobile-menu .ast-menu-toggle {
  color: #1a1a1a !important;
  fill: #1a1a1a !important;
}

/* TYPOGRAPHY CONSISTENCY — Override Astra/Montserrat defaults
   Ensure Cormorant Garamond is used everywhere body text flows */
button,
input,
select,
textarea {
  font-family: var(--serif) !important;
}

/* Instagram Feed plugin "Load More" button */
.sbi_load_btn,
.sbi_btn_text,
.sbi-load-more-btn {
  font-family: var(--serif) !important;
}

/* SureForms submit button font-family */
.srfm-button,
.srfm-submit-button {
  font-family: var(--serif) !important;
}

/* Block navigation (Gutenberg in-content nav) */
.wp-block-navigation,
.wp-block-navigation-item__label {
  font-family: var(--serif) !important;
}


/* ── Thoughts page: override Cinzel → Cormorant Garamond on the page h2 ──
   Scoped to body.page-id-23 so no other page heading is affected.
   Cinzel remains loaded for any other intentional uses. */
body.page-id-23 h2.wp-block-heading {
  font-family: "Cormorant Garamond", Georgia, serif !important;
}

/* ── Mobile hero: shift object-position up so face isn't cropped ──
   Applies only at ≤900 px; desktop (center center) is untouched.
   height: 100% !important overrides the global @media(max-width:921px)
   img { height: auto } rule that was collapsing the image height. */
@media (max-width: 900px) {
  .im-hero .im-hero__image img {
    height: 100% !important;
    object-position: center 22%;
  }
}

/* ============================================================
   About Me Section — Portrait Proportions & Mobile Improvements
   ============================================================ */

/* Desktop (>900px): 38/62 column split */
.uagb-block-5vwsxyao.wp-block-uagb-image .wp-block-uagb-image__figure img {
  width: 365px !important;
  height: 400px !important;
}
.wp-block-uagb-container.uagb-is-root-container .uagb-block-uegsfolx {
  max-width: 62% !important;
}

/* Mobile: stack bio above portrait */
@media only screen and (max-width: 900px) {
  /* Force the flex group to wrap vertically */
  .uagb-block-k4icow7c .wp-block-group.is-nowrap {
    flex-direction: column !important;
    flex-wrap: wrap !important;
  }
  /* Bio text goes first (above) */
  .uagb-block-k4icow7c .wp-block-group.is-nowrap .uagb-block-uegsfolx {
    order: -1 !important;
    max-width: 100% !important;
    width: 100% !important;
  }
  /* Portrait goes second (below) */
  .uagb-block-k4icow7c .wp-block-group.is-nowrap .uagb-block-5vwsxyao {
    order: 1 !important;
    width: 100% !important;
    max-width: 100% !important;
  }
  /* Cap portrait height at 60vh, object-fit for face visibility */
  .uagb-block-5vwsxyao.wp-block-uagb-image .wp-block-uagb-image__figure img {
    width: 100% !important;
    height: 60vh !important;
    max-height: 60vh !important;
    object-fit: cover !important;
    object-position: center 25% !important;
  }
  .uagb-block-5vwsxyao.wp-block-uagb-image .wp-block-uagb-image__figure {
    width: 100% !important;
    max-width: 100% !important;
  }
}

/* About Me CTA: "View Paintings" link */
.im-about-cta {
  display: inline-block;
  margin-top: 24px;
  font-family: "Cormorant Garamond", Georgia, serif;
  font-size: 14px;
  font-weight: 500;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: #1a1a1a;
  text-decoration: none;
  border-bottom: 1px solid #1a1a1a;
  padding-bottom: 2px;
  transition: color 0.25s, border-color 0.25s, letter-spacing 0.25s;
}
.im-about-cta:hover {
  color: #7a6a52;
  border-color: #7a6a52;
  letter-spacing: 0.22em;
}
