/* Scoped to the magic service page; share its typography and motion system. */
.service-page--magic .magic-preparation{background:var(--blue-mist)}
.service-page--magic .magic-preparation .service-heading{margin-bottom:40px}
.service-page--magic .magic-preparation h2{font-size:clamp(26px,3vw,40px);line-height:1.5}
.service-page--magic .magic-preparation-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:clamp(24px,3vw,48px)}
.service-page--magic .magic-preparation-item{min-width:0;padding-top:24px;border-top:1px solid var(--line)}
.service-page--magic .magic-preparation-item h3{margin:0 0 20px;font-size:clamp(19px,1.8vw,24px);font-weight:500;line-height:1.6;color:var(--navy)}
.service-page--magic .magic-preparation-item p{margin:0;font-size:16px;line-height:1.85;color:var(--muted)}
.service-page--magic .magic-preparation-link{margin:36px 0 0}
.service-page--magic .magic-preparation-link a{display:inline-block;padding-block:8px;color:var(--blue-deep);font-size:16px;font-weight:600;text-decoration:underline;text-underline-offset:5px}
@media(max-width:767px){
 .service-page--magic .magic-preparation-item h3{text-align:center}
 .service-page--magic .magic-preparation-grid{grid-template-columns:1fr;gap:32px}
 .service-page--magic .magic-preparation .service-heading,.service-page--magic .magic-preparation-link{text-align:center}
}

.service-page--magic .magic-preparation-item p strong{color:var(--ink);font-weight:600}
