/* dumuc.digital — Growth Field Journal visual system */
:root { --journal-ink: #122f28; --journal-earth: #d9d1bb; --journal-clay: #d96e4e; }
body { background-color: #eeeadb; background-image: radial-gradient(rgba(18,47,40,.10) .7px, transparent .7px); background-size: 15px 15px; }
.grain { opacity: .07; }
.hero { position: relative; overflow: hidden; }
.hero::before { content: ''; position: absolute; width: 720px; height: 720px; right: -260px; top: -220px; border: 1px solid rgba(18,47,40,.17); border-radius: 47% 53% 46% 54% / 48% 45% 55% 52%; box-shadow: 0 0 0 48px transparent, 0 0 0 49px rgba(18,47,40,.08), 0 0 0 104px transparent, 0 0 0 105px rgba(18,47,40,.06); pointer-events: none; }
.hero-grid { position: relative; }
.hero-art { border-radius: 0; border: 1px solid rgba(18,47,40,.28); background-color: #c9d5b9; background-image: linear-gradient(90deg, rgba(18,47,40,.14) 1px, transparent 1px), linear-gradient(rgba(18,47,40,.14) 1px, transparent 1px), radial-gradient(circle at 72% 30%, #e2ecab 0 3%, transparent 3.5%), linear-gradient(135deg,#dbe1c6 0%,#9eb79b 100%); background-size: 52px 52px, 52px 52px, auto, auto; }
.hero-art::after { content: '01 / SIGNAL MAP'; position: absolute; right: 18px; top: 16px; font: 500 9px 'DM Mono',monospace; letter-spacing: .09em; color: var(--forest); }
.proof { position: relative; background: var(--journal-ink); }
.proof::before { content: 'RESULTS / NOT PROMISES'; position: absolute; right: 32px; top: 22px; color: rgba(200,220,117,.45); font: 500 9px 'DM Mono',monospace; letter-spacing: .12em; }
.services, .approach { position: relative; }
.section-label > span { background: var(--journal-ink); color: var(--paper); width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%; }
.services-main h2, .case-head h2, .approach h2 { max-width: 810px; }
.cases { background-color: #e0d9c3; background-image: linear-gradient(135deg, rgba(255,255,255,.3), transparent 55%); }
.case-list { gap: 18px; }
.case { border-radius: 0; box-shadow: 7px 7px 0 rgba(18,47,40,.06); }
.case::before { content: 'FIELD LOG'; position: absolute; right: 24px; top: 22px; font: 500 9px 'DM Mono',monospace; letter-spacing: .12em; opacity: .42; }
.case .case-company { border-top-width: 2px; }
.case .case-content ul { border-top-width: 2px; }
.case-lalamove { background: #fff1e9; }
.case-base { background: #e5f0ff; }
.case-topdev { background: #f8f7f1; }
.steps article { position: relative; }
.steps article::after { content: ''; position: absolute; width: 7px; height: 7px; border-radius: 50%; background: var(--coral); left: -3px; top: -4px; }
.about { background-color: var(--journal-ink); background-image: linear-gradient(110deg, rgba(200,220,117,.08) 1px, transparent 1px), linear-gradient(rgba(200,220,117,.08) 1px, transparent 1px); background-size: 38px 38px; }
.portrait { border-radius: 0; border: 1px solid rgba(200,220,117,.45); }
.contact-card { border-radius: 0; border: 1px solid rgba(18,47,40,.5); background-color: var(--lime); background-image: linear-gradient(90deg, rgba(18,47,40,.11) 1px, transparent 1px), linear-gradient(rgba(18,47,40,.11) 1px, transparent 1px); background-size: 36px 36px; }
.contact-card::before { content: 'OPEN A FIELD NOTE'; position: absolute; right: 26px; top: 24px; font: 500 9px 'DM Mono',monospace; letter-spacing: .12em; color: var(--forest); }
@media (max-width: 800px) { .proof::before, .contact-card::before { display: none; } .hero::before { width: 420px; height: 420px; right: -200px; top: -140px; } .case::before { right: 18px; top: 16px; } }
