/* Calm, proportioned homepage hero and content grid. */
.home .site-content { padding-top: clamp(1.5rem,3vw,2.5rem); }
.entry-content > .sol-hero.alignwide { margin-bottom: 0; max-width: min(1280px,calc(100vw - 2.5rem)); width: 1280px; }
.sol-hero.alignwide { border-radius: 30px; min-height: clamp(620px,54vw,680px); }
.sol-hero.alignwide .wp-block-cover__image-background { filter: saturate(.88) contrast(.96); object-position: 50% 48%; }
.sol-hero.alignwide .wp-block-cover__background { background: linear-gradient(180deg,rgba(58,32,28,.25),rgba(255,229,201,.22) 45%,rgba(66,39,34,.2)) !important; }
.sol-hero.alignwide .sol-hero__inner { align-items: center; justify-content: center; margin-inline: auto; max-width: 1040px; padding: clamp(2rem,4vw,3.5rem); text-align: center; }
.sol-hero__logo-block { margin: 0 0 .65rem; }
.sol-hero__logo-block img { filter: drop-shadow(0 5px 20px rgba(53,29,25,.2)); height: 96px; object-fit: contain; width: auto; }
.sol-hero.alignwide .sol-hero__title { color: var(--sol-charcoal); font-size: clamp(4.5rem,6.2vw,5.5rem); letter-spacing: -.04em; line-height: .96; margin: 0; max-width: 850px; text-shadow: 0 2px 25px rgba(255,242,222,.34); }
.sol-hero.alignwide .sol-hero__verse { color: color-mix(in srgb,var(--sol-tangerine) 62%,var(--sol-charcoal)); font-size: .92rem; font-weight: 700; letter-spacing: .08em; margin: 1rem 0 0; text-transform: uppercase; }
.sol-hero.alignwide .sol-hero__intro { color: var(--sol-charcoal); font-size: clamp(1rem,1.35vw,1.16rem); line-height: 1.55; margin: 1.35rem auto 0; max-width: 700px; }
.sol-hero.alignwide .sol-hero__actions { gap: .8rem; justify-content: center; margin: 1.5rem 0 0; }
.sol-hero.alignwide .wp-block-button__link { box-shadow: 0 10px 28px rgba(67,37,31,.16); font-size: .95rem; min-height: 52px; min-width: 215px; }
.sol-hero.alignwide .wp-block-button:first-child .wp-block-button__link { background: linear-gradient(135deg,var(--sol-tangerine),var(--sol-apricot)); color: var(--sol-charcoal); }
.sol-hero.alignwide .is-style-sol-secondary .wp-block-button__link { backdrop-filter: blur(10px); background: color-mix(in srgb,var(--sol-ivory) 32%,transparent); border-color: var(--sol-charcoal); color: var(--sol-charcoal); }
.sol-hero__socials { flex-direction: row; gap: .6rem; margin-top: .55rem; }
.sol-hero__socials .wp-social-link { background: rgba(62,43,39,.72); color: #fff; }
.sol-hero__socials .wp-social-link:hover { transform: translateY(-2px); }
.sol-hero__social-label { color: rgba(255,255,255,.94); font-size: .78rem; font-weight: 700; letter-spacing: .04em; margin: .7rem 0 0; text-shadow: 0 1px 12px rgba(48,27,23,.45); }
.sol-hero__tagline { bottom: 1.6rem; color: rgba(255,255,255,.88); font-size: .72rem; line-height: 1.4; margin: 0; position: absolute; right: clamp(1.5rem,4vw,3.5rem); text-align: right; text-shadow: 0 1px 12px rgba(48,27,23,.5); }
.sol-hero.alignwide .wp-block-cover__inner-container { position: relative; }
.entry-content > .sol-content-library.alignwide { max-width: min(1180px,calc(100vw - 2.5rem)); padding-block: clamp(6rem,8vw,7.5rem) !important; width: 1180px; }
.sol-content-library > h2,.sol-content-library > .sol-lead,.sol-content-library > .is-style-sol-eyebrow { margin-inline: auto; max-width: 760px; text-align: center; }
.sol-content-library .wp-block-post-template { align-items: stretch; gap: clamp(1.25rem,2.5vw,2rem); grid-template-columns: repeat(3,minmax(0,1fr)); }
.sol-content-library .wp-block-post-template > li { min-height: 100%; padding: 1.15rem; }
.sol-content-library .wp-block-post-template > li:only-child { grid-column: 1 / -1; justify-self: center; max-width: 560px; width: 100%; }
.sol-content-library .wp-block-post-featured-image img { aspect-ratio: 16/10; }
.sol-content-library .wp-block-post-title { margin-bottom: .6rem; }
.sol-content-library .wp-block-post-excerpt { display: flex; flex: 1; flex-direction: column; }
.sol-content-library .wp-block-post-excerpt__more-link { background: var(--sol-charcoal); border-radius: 999px; color: #fff; display: inline-flex; font-size: .82rem; font-weight: 800; margin-top: auto; padding: .65rem 1rem; text-decoration: none; width: fit-content; }
.sol-content-library > .wp-block-buttons:last-child { margin-top: 2.5rem; }
.sol-content-library > .wp-block-buttons:last-child .wp-block-button__link { background: var(--sol-tangerine); border-color: var(--sol-tangerine); color: #fff; }
@media (max-width: 782px) {
  .entry-content > .sol-hero.alignwide { max-width: calc(100vw - 1.5rem); }
  .sol-hero.alignwide { border-radius: 28px; min-height: 650px; }
  .sol-hero.alignwide .sol-hero__inner { padding: 2rem 1.25rem 4.5rem; }
  .sol-hero__logo-block img { height: 68px; }
  .sol-hero.alignwide .sol-hero__title { font-size: clamp(2.75rem,12vw,3.4rem); line-height: .98; }
  .sol-hero.alignwide .sol-hero__intro { font-size: .98rem; }
  .sol-hero.alignwide .sol-hero__actions,.sol-hero.alignwide .wp-block-button { width: 100%; }
  .sol-hero.alignwide .wp-block-button__link { min-width: 0; width: 100%; }
  .sol-hero__tagline { bottom: 1rem; font-size: .65rem; left: 1.25rem; right: 1.25rem; text-align: center; }
  .entry-content > .sol-content-library.alignwide { max-width: calc(100vw - 2.5rem); padding-block: 6rem !important; }
  .sol-content-library .wp-block-post-template { grid-template-columns: 1fr; }
}
