/* Explain: Layout utilities for sections, including background images and gradient overlays. */
.section-pad {
    padding-top: clamp(4rem, 8vw, 7rem);
    padding-bottom: clamp(4rem, 8vw, 7rem);
}

.page-banner {
    background:
        radial-gradient(circle at 88% 12%, rgba(232, 161, 58, 0.30), transparent 26rem),
        radial-gradient(circle at 4% 88%, rgba(217, 83, 43, 0.14), transparent 24rem),
        linear-gradient(180deg, rgba(241, 231, 216, 0.72), rgba(250, 245, 237, 0.46));
}

.hero-render {
    position: relative;
    background-image: url('https://files.cdn-files-a.com/uploads/12616648/normal_6af1e4e796f8a.png?format=avif');
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
}

.hero-render-scrim {
    position: absolute;
    inset: 0;
    z-index: -1;
    background: linear-gradient(180deg, rgba(16, 22, 18, 0.72) 0%, rgba(16, 22, 18, 0.58) 100%);
}

@media (min-width: 1024px) {
    .hero-render-scrim {
        background: linear-gradient(to left, rgba(16, 22, 18, 0.95) 0%, rgba(16, 22, 18, 0.90) 36%, rgba(16, 22, 18, 0.52) 66%, rgba(16, 22, 18, 0.15) 100%);
    }
}

.contact-section {
    background:
        radial-gradient(circle at 8% 16%, rgba(232, 161, 58, 0.24), transparent 24rem),
        linear-gradient(180deg, var(--background-color), var(--surface-color));
}

.orb {
    position: absolute;
    border-radius: 999px;
    filter: blur(12px);
    opacity: 0.55;
    pointer-events: none;
    z-index: -1;
}

.orb-sage {
    width: 26rem;
    height: 26rem;
    right: 4%;
    top: 8%;
    background: rgba(232, 161, 58, 0.30);
}

.orb-terracotta {
    width: 20rem;
    height: 20rem;
    left: 2%;
    bottom: 10%;
    background: rgba(217, 83, 43, 0.22);
}