/* Grade House Call to Action — closing band: heading and intro left,
 * buttons and contact right. On graphite the top edge is a tape measure. */

.gh.cta { overflow: hidden; }
.gh.cta.tone-ink { background: var(--gh-ink-2); }
.gh.cta--tape::before { content: ""; position: absolute; left: 0; right: 0; top: 0; height: 8px; background-color: var(--gh-card); background-image: repeating-linear-gradient(90deg, var(--gh-ink) 0 1px, transparent 1px 10px), repeating-linear-gradient(90deg, var(--gh-ink) 0 1px, transparent 1px 50px); background-size: 100% 4px, 100% 8px; background-repeat: no-repeat; background-position: 0 0, 0 0; }

.gh.cta .cta__grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(0, 1fr); gap: clamp(32px, 6vw, 96px); align-items: end; }
.gh.cta .cta__head { display: grid; gap: 18px; max-width: 720px; }
.gh.cta.tone-ink .cta__head .h2 { color: #fff; }
.gh.cta .cta__act { display: grid; gap: 24px; justify-items: start; }
.gh.cta .cta__contact { display: flex; flex-wrap: wrap; gap: 12px 28px; font-size: 16px; }
.gh.cta .cta__contact a { display: inline-flex; align-items: center; gap: 10px; min-height: 44px; text-decoration: none; color: var(--gh-ink); background: linear-gradient(currentColor, currentColor) 30px 85% / 0 1px no-repeat; transition: background-size .25s var(--gh-ease); }
.gh.cta .cta__contact a:hover { background-size: calc(100% - 30px) 1px; }
.gh.cta.tone-ink .cta__contact a { color: #fff; }
.gh.cta .cta__contact .ic { color: var(--gh-blue); }
.gh.cta.tone-ink .cta__contact .ic { color: var(--gh-card); }
.gh.cta.tone-card .btn--line { color: var(--gh-ink); }

@media (max-width: 900px) {
	.gh.cta .cta__grid { grid-template-columns: 1fr; align-items: start; gap: 32px; }
	.gh.cta .cta__act { justify-items: stretch; }
}
@media (max-width: 767px) {
	.gh.cta .cta__contact { flex-direction: column; gap: 4px; }
}
