/* Magnify Coaching — [magnify_services] / [magnify_studios] front-end grids */
.mc-grid { --g:#C9A227; --gd:#a8861c; display:grid; gap:24px; max-width:1100px; margin:0 auto; }
.mc-grid-cols-1 { grid-template-columns:1fr; }
.mc-grid-cols-2 { grid-template-columns:repeat(2,1fr); }
.mc-grid-cols-3 { grid-template-columns:repeat(3,1fr); }
.mc-grid-cols-4 { grid-template-columns:repeat(4,1fr); }

.mc-grid-card { display:block; background:#fff; border:1px solid #ececec; border-radius:16px; overflow:hidden;
	box-shadow:0 8px 26px rgba(0,0,0,.06); color:inherit; text-decoration:none; transition:transform .15s, box-shadow .15s; }
.mc-grid-link:hover { transform:translateY(-3px); box-shadow:0 14px 34px rgba(0,0,0,.1); }
.mc-grid-img { aspect-ratio:4/3; background:#f4f1e7; }
.mc-grid-img img { width:100%; height:100%; object-fit:cover; display:block; }
.mc-grid-ph { display:block; width:100%; height:100%; background:linear-gradient(135deg,#f4f1e7,#ece6d2); }
.mc-grid-body { padding:16px 18px 20px; }
.mc-grid-cat { color:var(--gd); font-size:12px; font-weight:700; text-transform:uppercase; letter-spacing:.05em; }
.mc-grid-name { font-weight:700; font-size:18px; color:#1a1a1a; margin-top:4px; }
.mc-grid-price { color:var(--gd); font-weight:700; margin-top:8px; }
.mc-grid-addr { color:#666; font-size:14px; line-height:1.5; margin-top:6px; }
.mc-grid-empty { color:#888; }

@media (max-width:900px) { .mc-grid-cols-3, .mc-grid-cols-4 { grid-template-columns:repeat(2,1fr); } }
@media (max-width:560px) { .mc-grid { grid-template-columns:1fr; } }

/* layout="cards" — dark, gold-outlined service cards with icon + description + rates */
.mc-svc-cards { --g:#C9A227; --gd:#a8861c; }
.mc-svc-card { display:flex; flex-direction:column; background:#1a171269; border:1px solid var(--gd);
	border-radius:14px; padding:26px 24px; color:#e9e2cf; box-shadow:none; }
.mc-svc-icon { margin-bottom:14px; }
.mc-svc-icon img { width:54px; height:54px; object-fit:contain; display:block; }
.mc-svc-icon-ph { display:inline-block; width:54px; height:54px; border-radius:10px; background:rgba(201,162,39,.14); }
.mc-svc-name { margin:0 0 8px; font-size:21px; font-weight:700; color:var(--g); line-height:1.2; }
.mc-svc-desc { margin:0 0 16px; font-size:15px; line-height:1.6; color:#cfc6b0; }
.mc-svc-rates-toggle { margin-top:auto; align-self:flex-start; background:none; border:0; padding:0; cursor:pointer;
	font:inherit; font-weight:600; color:var(--g); display:inline-flex; align-items:center; gap:6px; }
.mc-svc-rates-toggle:hover { color:#f0d77a; }
.mc-svc-caret { transition:transform .18s; display:inline-block; }
.mc-svc-open .mc-svc-caret { transform:rotate(90deg); }
.mc-svc-rates { margin-top:14px; border-top:1px solid rgba(201,162,39,.25); padding-top:12px; }
.mc-svc-rates ul { list-style:none; margin:0; padding:0; }
.mc-svc-rates li { display:flex; justify-content:space-between; gap:14px; padding:6px 0; font-size:14px; border-bottom:1px solid rgba(255,255,255,.06); }
.mc-svc-rates li:last-child { border-bottom:0; }
.mc-svc-rates li span { color:#bcb39c; }
.mc-svc-rates li b { color:#fff; }
.mc-svc-book { display:inline-block; margin-top:12px; color:#1a1712; background:var(--g); font-weight:700;
	padding:9px 16px; border-radius:8px; text-decoration:none; }
.mc-svc-book:hover { background:#e0b62f; color:#1a1712; }

/* ---- Single service page (/services/{slug}/) ---- */
.mc-svc-page { max-width:960px; margin:0 auto; padding:32px 20px 56px; }
.mc-svc-page-head { display:flex; gap:28px; flex-wrap:wrap; align-items:flex-start; }
.mc-svc-page-hero { flex:1 1 320px; }
.mc-svc-page-hero img { width:100%; border-radius:16px; display:block; object-fit:cover; }
.mc-svc-page-intro { flex:1 1 320px; }
.mc-svc-page-icon { width:56px; height:56px; object-fit:contain; margin-bottom:10px; }
.mc-svc-page-cat { text-transform:uppercase; letter-spacing:.08em; font-size:12px; font-weight:700; color:#bcae86; margin-bottom:6px; }
.mc-svc-page-title { font-size:34px; line-height:1.15; margin:0 0 12px; }
.mc-svc-page-mode { margin-bottom:14px; }
.mc-svc-page-badge { display:inline-block; font-size:12px; font-weight:700; padding:4px 12px; border-radius:999px; background:rgba(201,162,39,.14); color:#c9a227; border:1px solid rgba(201,162,39,.4); }
.mc-svc-page-desc { color:#4a4a4a; line-height:1.6; margin-bottom:18px; }
.mc-svc-page-book { display:inline-block; }
.mc-svc-page-section { margin-top:38px; }
.mc-svc-page-section h2 { font-size:22px; margin:0 0 16px; }
.mc-svc-page-rates { list-style:none; margin:0; padding:0; max-width:480px; }
.mc-svc-page-rates li { display:flex; justify-content:space-between; padding:12px 4px; border-bottom:1px solid rgba(0,0,0,.08); }
.mc-svc-page-rates li b { color:#c9a227; }
.mc-svc-page-people { display:flex; flex-wrap:wrap; gap:18px; }
.mc-svc-person { width:140px; text-align:center; }
.mc-svc-person img, .mc-svc-person-ph { width:88px; height:88px; border-radius:50%; object-fit:cover; display:block; margin:0 auto 8px; background:#e9e7df; }
.mc-svc-person-name { display:block; font-weight:700; }
.mc-svc-person-role { display:block; font-size:12px; color:#8b929e; margin-top:2px; }
.mc-svc-page-cta { margin-top:40px; text-align:center; }

/* "View details" link on service cards. */
.mc-svc-details { display:inline-block; margin-top:12px; font-weight:600; color:#c9a227; text-decoration:none; }
.mc-svc-details:hover { text-decoration:underline; }
