.choose-hero { text-align: center; max-width: 60ch; margin: 2.4rem auto 2.6rem; }
.choose-hero h1 { font-family: var(--display, 'Fraunces', serif); font-weight: 600; font-size: clamp(2rem, 4vw, 2.9rem); letter-spacing: -0.02em; color: var(--ink); }
.choose-hero p { color: var(--muted); font-size: 1.08rem; margin-top: 0.7rem; }
.choose-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1.4rem; max-width: 1100px; margin: 0 auto 3rem; }
.choose-card { display: flex; flex-direction: column; text-align: left; background: #fff; border: 1px solid var(--line); border-radius: 16px; overflow: hidden;
    box-shadow: 0 4px 16px rgba(16,45,41,0.06); transition: transform .18s ease, box-shadow .18s ease; }
.choose-card:hover { transform: translateY(-4px); box-shadow: 0 14px 34px rgba(16,45,41,0.14); }
.choose-card .cc-img { height: 190px; background-size: cover; background-position: center; transition: transform .6s ease; }
.choose-card:hover .cc-img { transform: scale(1.06); }
.choose-card .cc-body { padding: 1.3rem 1.4rem 1.5rem; display: flex; flex-direction: column; gap: 0.5rem; flex: 1; }
.choose-card .cc-head { display: flex; align-items: center; gap: 0.6rem; }
.choose-card .cc-icon { width: 40px; height: 40px; border-radius: 11px; display: grid; place-items: center; background: #e4f0ec; color: var(--teal-dark, #0a5d50); font-size: 1.35rem; flex: none; }
.choose-card h3 { font-family: var(--display, 'Fraunces', serif); font-weight: 600; font-size: 1.3rem; color: var(--ink); }
.choose-card p { color: var(--muted); font-size: 0.96rem; line-height: 1.5; }
.choose-card .cc-cta { margin-top: auto; padding-top: 1rem; display: inline-flex; align-items: center; gap: 0.4rem; color: var(--teal-dark, #0a5d50); font-weight: 700; font-size: 0.98rem; }
.choose-card:hover .cc-cta { gap: 0.7rem; }
.choose-card .cc-cta::after { content: "→"; transition: transform .18s ease; }
@media (max-width: 860px) { .choose-grid { grid-template-columns: 1fr; max-width: 460px; } }
