/*
 * martel/our-approach
 *
 * Enqueued by Blocks::enqueue_section_block_styles(), NOT by block.json `style`
 * — see the note there. The block renders its own DOM rather than core blocks,
 * so the flex containers and the copy-column rhythm that core layout used to
 * supply are declared explicitly here.
 */
.martel-approach { position: relative; background: var(--wp--preset--color--slate-light); padding: 130px var(--wp--custom--gutter); overflow: hidden; }
.martel-approach::before { content: ""; position: absolute; inset: 0; background: url('/wp-content/themes/ollie-child/assets/images/blueprint-map.png') left -380px center / cover no-repeat; opacity: .5; mix-blend-mode: screen; pointer-events: none; }
.martel-approach > * { position: relative; z-index: 2; }
.martel-approach__grid { display: flex; align-items: center; gap: 90px; max-width: 1340px; margin: 0 auto; }
.martel-approach__media { flex: 0 0 51%; min-width: 0; position: relative; padding-bottom: 90px; padding-right: 40px; }
.martel-approach__img-main { width: 78%; aspect-ratio: 5/6; overflow: hidden; margin: 0; }
.martel-approach__img-main img, .martel-approach__img-inset img { width: 100%; height: 100%; object-fit: cover; }
.martel-approach__img-inset { position: absolute; right: 0; bottom: 0; width: calc(62% - 40px); aspect-ratio: 1/1; overflow: hidden; outline: 8px solid var(--wp--preset--color--slate-light); margin: 0; }
.martel-approach__copy { flex: 1 1 auto; min-width: 0; }
/* Stands in for the block gap the core column used to apply between children. */
.martel-approach__copy > * { margin-top: 0; margin-bottom: 0; }
.martel-approach__copy > * + * { margin-top: var(--wp--preset--spacing--base); }
.martel-approach .is-style-eyebrow { color: rgba(255,255,255,.62); }
.martel-approach__body { font-size: 18px; font-weight: 600; line-height: 1.62; color: rgba(255,255,255,.74); max-width: 540px; }
.martel-approach__body > * { margin: 0; }
.martel-approach__body > * + * { margin-top: 1em; }
.martel-approach__copy > .martel-approach__stats { display: flex; flex-wrap: wrap; gap: 48px; margin: 38px 0; padding: 30px 0; border-top: 1px solid rgba(255,255,255,.14); border-bottom: 1px solid rgba(255,255,255,.14); }
@media (max-width: 1024px) { .martel-approach { padding: 96px 28px; } .martel-approach__grid { flex-wrap: wrap; gap: 52px; } .martel-approach__grid > * { flex-basis: 100%; } .martel-approach__media { padding-bottom: 60px; padding-right: 0; max-width: 560px; } }
@media (max-width: 600px) { .martel-approach { padding: 64px 18px; } }
