/* Editorial guide: scoped styles, matching the existing site palette. */
.terrain-guide{padding:clamp(32px,6vw,72px) 0;color:#152326;background:#f5faf9;font-family:"DM Sans",Arial,sans-serif;line-height:1.75}
.terrain-guide__inner{width:min(1120px,calc(100% - 40px));margin:0 auto}
.terrain-guide__intro{max-width:76ch;margin:0 0 30px}
.terrain-guide__section{scroll-margin-top:24px;padding:32px 0;border-top:1px solid #dce7e3}
.terrain-guide h2{font-weight:700;font-family:Manrope,Arial,sans-serif;font-size:clamp(1.6rem,3vw,2.2rem);line-height:1.2;letter-spacing:-.035em;margin:0 0 24px;color:#075f60}
.terrain-guide h3{font-weight:700;font-family:Manrope,Arial,sans-serif;font-size:1.15rem;line-height:1.35;margin:26px 0 12px}
.terrain-guide p,.terrain-guide ul,.terrain-guide ol{max-width:78ch;margin:0 0 18px}
.terrain-guide a{color:#075f60;text-underline-offset:3px}
.terrain-guide a:focus-visible{outline:3px solid #008f89;outline-offset:4px}
.terrain-guide__portfolio{float:right;width:250px;max-width:100%;margin:0 0 24px 32px;padding:0}
.terrain-guide__portfolio img{display:block;width:250px;height:250px;max-width:100%;object-fit:contain;background:#fff;border:1px solid #dce7e3;border-radius:8px}
.terrain-guide__portfolio figcaption{font-size:.85rem;color:#52666a;line-height:1.5;margin-top:10px}
.terrain-guide__section::after{content:"";display:block;clear:both}
@media(max-width:600px){.terrain-guide__inner{width:calc(100% - 32px)}.terrain-guide__portfolio{float:none;margin:0 auto 24px}.terrain-guide__section{padding:26px 0}}
