/* Studio Verde – landing page specifics */
.land-vis { height: clamp(440px, 46vw, 620px); }
.vis-chip { position: absolute; right: 12px; top: 12px; }
.vis-note { position: relative; margin: 14px 0 0 auto; max-width: 520px; font-size: 13px; line-height: 1.55; color: var(--muted-dark); text-align: right; }
@media (max-width: 900px) { .land-vis { height: 420px; padding: 0; } .land-vis canvas { height: 100% !important; } .vis-note { text-align: left; margin-left: 0; } }
.short { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; }
@media (max-width: 860px) { .short { grid-template-columns: minmax(0, 1fr); } }
.short article { background: #fff; border-radius: 22px; padding: 24px; box-shadow: 0 0 0 1px var(--line-light); display: flex; flex-direction: column; gap: 8px; }
.short .mono { font-size: 12px; color: var(--sage-ink); }
.short b { font-size: 19px; font-weight: 600; letter-spacing: -.01em; }
.short p { margin: 0; color: var(--muted-light); font-size: 15px; }
.teaser { margin-top: 16px; display: grid; grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr); border-radius: 28px; overflow: hidden; background: var(--night); color: var(--text-dark); text-decoration: none; box-shadow: 0 30px 70px -35px rgba(10, 22, 18, .7); transition: transform .25s var(--ease), box-shadow .25s; }
.teaser:hover { transform: translateY(-2px); box-shadow: 0 40px 80px -35px rgba(10, 22, 18, .8), 0 0 0 1px rgba(127, 184, 164, .4); }
.teaser img { width: 100%; height: 100%; min-height: 260px; object-fit: cover; display: block; }
.teaser-body { padding: clamp(22px, 3vw, 40px); display: flex; flex-direction: column; justify-content: center; gap: 16px; }
.teaser-body .spec { align-self: flex-start; }
.teaser-body b { font: 400 clamp(24px, 2.4vw, 34px)/1.15 var(--serif); }
.teaser-cta { color: var(--lumen); font-weight: 500; }
@media (max-width: 860px) { .teaser { grid-template-columns: minmax(0, 1fr); } }
.seek-mini { list-style: none; margin: 0; padding: 0; display: grid; gap: 8px; }
.seek-mini li { background: rgba(255, 255, 255, .6); border-radius: 16px; padding: 14px 16px 14px 44px; position: relative; font-weight: 500; box-shadow: 0 0 0 1px rgba(47, 107, 88, .15); }
.seek-mini li::before { content: ""; position: absolute; left: 18px; top: 50%; width: 10px; height: 10px; margin-top: -5px; border-radius: 50%; background: var(--sage-ink); box-shadow: 0 0 10px rgba(47, 107, 88, .6); }
.land-kpi { margin: 0; grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
.invest .contact { margin-top: 40px; }
