/* === CPG page (1085) full-width === */
.page-id-1085 .entry-content.has-global-padding {
  padding-inline: 0 !important;
}
.page-id-1085 .is-layout-constrained > * {
  max-width: 100% !important;
}
.page-id-1085 .wp-block-post-content {
  padding: 0 !important;
  margin: 0 !important;
}
.page-id-1085 .entry-header,
.page-id-1085 h1.entry-title,
.page-id-1085 .page-title,
.page-id-1085 #masthead,
.page-id-1085 #colophon,
.page-id-1085 .site-header,
.page-id-1085 .site-footer {
  display: none !important;
}

/* === Homepage (339) full-width === */
.page-id-339 .entry-content.has-global-padding,
.home .entry-content.has-global-padding {
  padding-inline: 0 !important;
}
.page-id-339 .is-layout-constrained > *,
.home .is-layout-constrained > * {
  max-width: 100% !important;
}
.page-id-339 .wp-block-post-content,
.home .wp-block-post-content {
  padding: 0 !important;
  margin: 0 !important;
}
.page-id-339 .entry-header,
.page-id-339 h1.entry-title,
.page-id-339 .page-title,
.page-id-339 #masthead,
.page-id-339 #colophon,
.page-id-339 .site-header,
.page-id-339 .site-footer,
.home .entry-header,
.home h1.entry-title,
.home .page-title,
.home #masthead,
.home #colophon,
.home .site-header,
.home .site-footer {
  display: none !important;
}
.page-id-339 #page,
.page-id-339 #content,
.page-id-339 #primary,
.page-id-339 .site-content,
.page-id-339 .content-area,
.page-id-339 article,
.page-id-339 main,
.home #page,
.home #content,
.home #primary,
.home .site-content,
.home .content-area,
.home article,
.home main {
  max-width: 100% !important;
  width: 100% !important;
  padding: 0 !important;
  margin: 0 !important;
}

/* Hide WordPress nav & header on homepage */
.home .wp-block-template-part,
.home header.wp-block-template-part,
.home .wp-block-navigation,
.home .wp-block-site-title,
.home .wp-block-page-list,
.page-id-339 .wp-block-template-part,
.page-id-339 header.wp-block-template-part,
.page-id-339 .wp-block-navigation,
.page-id-339 .wp-block-site-title,
.page-id-339 .wp-block-page-list {
  display: none !important;
}

/* Kill WordPress preset spacing */
.page-id-339 main,
.page-id-339 main > div,
.page-id-339 .wp-block-group.has-global-padding,
.page-id-339 .wp-block-post-content,
.home main,
.home main > div,
.home .wp-block-group.has-global-padding,
.home .wp-block-post-content,
.page-id-1085 main,
.page-id-1085 main > div,
.page-id-1085 .wp-block-group.has-global-padding,
.page-id-1085 .wp-block-post-content {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

/* Hide auto-injected empty paragraphs */
.page-id-339 .wp-block-post-content > p,
.home .wp-block-post-content > p,
.page-id-1085 .wp-block-post-content > p {
  display: none !important;
}

/* Force homepage content to respect container padding */
.page-id-339 .wrap,
.home .wrap {
  padding-left: clamp(24px, 5vw, 64px) !important;
  padding-right: clamp(24px, 5vw, 64px) !important;
  max-width: 1100px !important;
  margin-left: auto !important;
  margin-right: auto !important;
  width: 100% !important;
  box-sizing: border-box !important;
}

/* Make sure hero grid doesn't break out of wrap */
.page-id-339 .hero,
.home .hero {
  max-width: 100% !important;
  width: 100% !important;
}

.page-id-339 .skills-strip,
.home .skills-strip {
  margin-bottom: 0 !important;
}

.page-id-339 .about-section,
.home .about-section {
  padding-top: 88px !important;
}

/* Preserve the custom hero rhythm while still defeating WP spacing */
.page-id-339 .hero,
.home .hero {
  padding-top: 86px !important;
  padding-bottom: 104px !important;
  gap: clamp(36px, 7vw, 88px) !important;
}

/* Remove the accidental framed rectangle around the homepage hero */
.page-id-339 .hero-wrap,
.home .hero-wrap,
.page-id-339 .hero,
.home .hero,
.page-id-339 .hero-inner-wrap,
.home .hero-inner-wrap,
.page-id-339 .hero-wrap > .wrap,
.home .hero-wrap > .wrap,
.page-id-339 .hero-wrap .wrap,
.home .hero-wrap .wrap,
.page-id-339 .hero-wrap .hero-text,
.home .hero-wrap .hero-text {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

.page-id-339 .hero-wrap::before,
.home .hero-wrap::before,
.page-id-339 .hero-wrap::after,
.home .hero-wrap::after,
.page-id-339 .hero::before,
.home .hero::before,
.page-id-339 .hero::after,
.home .hero::after,
.page-id-339 .hero-wrap > .wrap::before,
.home .hero-wrap > .wrap::before,
.page-id-339 .hero-wrap > .wrap::after,
.home .hero-wrap > .wrap::after,
.page-id-339 .hero-inner-wrap::before,
.home .hero-inner-wrap::before,
.page-id-339 .hero-inner-wrap::after,
.home .hero-inner-wrap::after {
  content: none !important;
  display: none !important;
}

/* Fallback for live pages where WP body classes or block wrappers differ */
.hero-wrap,
.hero-inner-wrap,
.hero-wrap > .wrap,
.hero-wrap .wrap,
.hero-wrap .hero,
.wp-block-custom-html:has(.hero-wrap),
.wp-block-html:has(.hero-wrap),
.wp-block-post-content > *:has(.hero-wrap),
.entry-content > *:has(.hero-wrap) {
  border: 0 !important;
  outline: 0 !important;
  box-shadow: none !important;
}

.hero-wrap::before,
.hero-wrap::after,
.hero::before,
.hero::after,
.hero-wrap > .wrap::before,
.hero-wrap > .wrap::after,
.hero-inner-wrap::before,
.hero-inner-wrap::after,
.wp-block-custom-html:has(.hero-wrap)::before,
.wp-block-custom-html:has(.hero-wrap)::after,
.wp-block-html:has(.hero-wrap)::before,
.wp-block-html:has(.hero-wrap)::after,
.wp-block-post-content > *:has(.hero-wrap)::before,
.wp-block-post-content > *:has(.hero-wrap)::after,
.entry-content > *:has(.hero-wrap)::before,
.entry-content > *:has(.hero-wrap)::after {
  content: none !important;
  display: none !important;
}

/* Don't let max-width sprawl too wide */
.page-id-339 .wrap,
.home .wrap,
.page-id-1085 .wrap {
  max-width: 1100px !important;
}

/* Hide WordPress theme header/template parts on custom pages */
.page-id-339 header.wp-block-template-part,
.page-id-339 .wp-block-template-part,
.home header.wp-block-template-part,
.home .wp-block-template-part,
.page-id-1085 header.wp-block-template-part,
.page-id-1085 .wp-block-template-part {
  display: none !important;
}

/* Kill the main element's preset top margin */
.page-id-339 main,
.home main,
.page-id-1085 main {
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
}

.page-id-632 .entry-content.has-global-padding { padding-inline: 0 !important; }
.page-id-632 .is-layout-constrained > * { max-width: 100% !important; }
.page-id-632 .wp-block-post-content > p { display: none !important; }
.page-id-632 header.wp-block-template-part { display: none !important; }
.page-id-632 .wp-block-group { padding: 0 !important; margin: 0 !important; }



/* ── Page-scoped WP overrides ─────────────────────────────────── */
.page-id-721 header.wp-block-template-part          { display: none !important; }
.page-id-721 .entry-content.has-global-padding      { padding-inline: 0 !important; }
.page-id-721 .is-layout-constrained > *             { max-width: 100% !important; }
.page-id-721 .wp-block-post-content > p             { display: none !important; }
.page-id-721 .wp-block-post-content                 { overflow: visible !important; }

html, body {
  max-width: 100%;
  overflow-x: hidden;
}

* {
  box-sizing: border-box;
}
.posts-grid > p { display: none !important; }

.page-id-339,
.home,
.page-id-632,
.page-id-721 {
  background: #fbf7ec !important;
}

.page-id-1085 {
  background: #fbf7ec !important;
}

@media (max-width: 820px) {
  .page-id-339 .hero,
  .home .hero {
    padding-top: 70px !important;
    padding-bottom: 82px !important;
  }
}

@media (max-width: 480px) {
  .page-id-339 .hero,
  .home .hero {
    padding-top: 70px !important;
    padding-bottom: 78px !important;
  }
}
