:root {
  --mg-line: #dfe8f2;
  --mg-soft: #f6fbff;
  --mg-soft-2: #edf8fb;
  --mg-pink: #e94f91;
  --mg-pink-soft: #fff4f8;
}

.mg-page { background: linear-gradient(180deg, #ffffff 0%, #fbfdff 100%); }
.mg-hero {
  padding: 34px 0 26px;
  background: radial-gradient(circle at 82% 18%, rgba(233,79,145,.09), transparent 25%), linear-gradient(180deg, #f9fcff 0%, #ffffff 100%);
}
.mg-hero-grid { display: grid; grid-template-columns: minmax(0,.94fr) minmax(0,1.06fr); gap: 30px; align-items: center; }
.mg-breadcrumb { margin-bottom: 14px; color: #6c7b8b; font-size: 13px; }
.mg-breadcrumb a { color: var(--blue-900); }
.mg-breadcrumb strong { color: var(--teal-600); }
.mg-hero-copy h1 { margin: 0 0 10px; color: var(--ink); font-size: clamp(44px,5vw,70px); line-height: 1.02; letter-spacing: -.05em; }
.mg-highlight { margin: 0 0 18px; color: var(--teal-600); font-size: clamp(26px,2vw,34px); font-weight: 800; line-height: 1.15; }
.mg-intro { max-width: 700px; margin: 0 0 22px; color: var(--body); font-size: 18px; }
.mg-hero-note { display: inline-flex; align-items: center; gap: 11px; margin-bottom: 24px; padding: 14px 18px; border: 1px solid var(--mg-line); border-radius: 16px; background: #f7fbff; color: var(--blue-900); }
.mg-icon-note { width: 36px; height: 36px; display: grid; place-items: center; border-radius: 50%; background: #e8fafb; color: var(--teal-600); font-weight: 800; }
.mg-hero-actions { display: flex; gap: 14px; flex-wrap: wrap; }
.mg-hero-visual, .mg-image-card, .mg-checkups-image { overflow: hidden; border: 1px solid var(--mg-line); background: #fff; box-shadow: var(--shadow); }
.mg-hero-visual { border-radius: 28px; }
.mg-image-card, .mg-checkups-image { border-radius: 22px; }
.mg-hero-visual img { width: 100%; display: block; aspect-ratio: 16/10; object-fit: cover; object-position: center; }
.mg-image-card img, .mg-checkups-image img { width: 100%; display: block; aspect-ratio: 16/9; object-fit: cover; object-position: center; }

.mg-benefits { padding: 0 0 8px; }
.mg-benefits-grid { display: grid; grid-template-columns: repeat(4,minmax(0,1fr)); overflow: hidden; border: 1px solid var(--mg-line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-small); }
.mg-benefit-card { display: flex; gap: 15px; padding: 24px 22px; border-right: 1px solid var(--mg-line); }
.mg-benefit-card:last-child { border-right: 0; }
.mg-icon { width: 54px; height: 54px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; background: linear-gradient(145deg,var(--teal-600),var(--blue-800)); color: #fff; font-size: 28px; font-weight: 800; }
.mg-benefit-card h2 { margin: 0 0 5px; font-size: 18px; line-height: 1.2; }
.mg-benefit-card p { margin: 0; color: var(--body); font-size: 13px; line-height: 1.45; }

.mg-two-col { display: grid; grid-template-columns: minmax(0,.9fr) minmax(0,1.1fr); gap: 30px; align-items: center; }
.mg-text-block h2, .mg-heading-left h2 { margin: 0; font-size: clamp(32px,3vw,44px); line-height: 1.1; letter-spacing: -.03em; }
.mg-text-block p { margin: 16px 0 0; color: var(--body); font-size: 18px; }
.mg-heading-left { text-align: left; margin: 0 0 24px; }
.mg-heading-left .heading-line { margin: 12px 0 0; }

.mg-type-grid { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 16px; align-items: stretch; }
.mg-type-grid article { min-height: 132px; padding: 22px; display: flex; gap: 16px; align-items: flex-start; border: 1px solid var(--mg-line); border-radius: 18px; background: #fff; box-shadow: var(--shadow-small); }
.mg-type-grid article > span { width: 48px; height: 48px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 14px; background: var(--mg-soft); color: var(--blue-800); font-size: 26px; }
.mg-type-grid h3 { margin: 0 0 7px; font-size: 17px; line-height: 1.25; }
.mg-type-grid p { margin: 0; color: var(--body); font-size: 13px; line-height: 1.42; }

.mg-checkups { background: linear-gradient(180deg,#fff 0%,var(--mg-pink-soft) 100%); }
.mg-checkups-grid { display: grid; grid-template-columns: minmax(0,.72fr) minmax(0,1.28fr); gap: 28px; align-items: start; }
.mg-checkups-list { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 14px; }
.mg-checkups-list article { min-height: 126px; padding: 18px; display: flex; gap: 13px; border: 1px solid rgba(233,79,145,.18); border-radius: 16px; background: rgba(255,255,255,.88); }
.mg-checkups-list article:last-child { grid-column: 1 / -1; }
.mg-checkups-list span { width: 42px; height: 42px; display: grid; place-items: center; flex: 0 0 auto; border-radius: 50%; background: #fff; color: var(--mg-pink); font-size: 23px; font-weight: 800; }
.mg-checkups-list h3 { margin: 0 0 6px; color: #a3215d; font-size: 16px; line-height: 1.25; }
.mg-checkups-list p { margin: 0; color: var(--body); font-size: 12.5px; line-height: 1.42; }

.mg-why { padding-top: 24px; }
.mg-why-grid { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); }
.mg-why-grid article { padding: 10px 18px; text-align: center; border-right: 1px solid var(--mg-line); }
.mg-why-grid article:last-child { border-right: 0; }
.mg-why-grid span { width: 64px; height: 64px; margin: 0 auto 14px; display: grid; place-items: center; border-radius: 50%; background: var(--mg-soft-2); color: var(--blue-800); font-size: 30px; font-weight: 800; }
.mg-why-grid p { margin: 0; color: var(--blue-900); font-size: 15px; font-weight: 700; line-height: 1.35; }

.mg-cta { padding: 12px 0 60px; }
.mg-cta-inner { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 20px; padding: 28px 32px; border-radius: 20px; background: linear-gradient(90deg,var(--teal-600),var(--blue-900)); color: #fff; }
.mg-cta-inner h2 { margin: 0 0 6px; font-size: clamp(28px,3vw,40px); letter-spacing: -.03em; line-height: 1.1; }
.mg-cta-inner p { margin: 0; color: rgba(255,255,255,.88); font-size: 16px; }
.mg-cta-inner .button-whatsapp { background: rgba(255,255,255,.12); border: 1px solid rgba(255,255,255,.36); box-shadow: none; }

@media (max-width: 1200px) {
  .mg-benefits-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .mg-benefit-card:nth-child(2) { border-right: 0; }
  .mg-benefit-card:nth-child(-n+2) { border-bottom: 1px solid var(--mg-line); }
  .mg-type-grid { grid-template-columns: repeat(2,minmax(0,1fr)); }
  .mg-checkups-grid { grid-template-columns: 1fr; }
  .mg-checkups-image { max-width: 760px; }
  .mg-why-grid { grid-template-columns: repeat(3,minmax(0,1fr)); row-gap: 24px; }
  .mg-why-grid article { border-right: 0; }
}
@media (max-width: 920px) {
  .mg-hero-grid, .mg-two-col { grid-template-columns: 1fr; }
  .mg-hero-copy { order: 1; }
  .mg-hero-visual { order: 2; }
  .mg-cta-inner { grid-template-columns: 1fr; }
}
@media (max-width: 640px) {
  .mg-hero-copy h1 { font-size: 40px; }
  .mg-highlight { font-size: 22px; }
  .mg-intro, .mg-text-block p { font-size: 16px; }
  .mg-hero-actions .button { width: 100%; }
  .mg-benefits-grid, .mg-type-grid, .mg-checkups-list { grid-template-columns: 1fr; }
  .mg-benefit-card { border-right: 0; border-bottom: 1px solid var(--mg-line); }
  .mg-benefit-card:last-child { border-bottom: 0; }
  .mg-checkups-list article:last-child { grid-column: auto; }
  .mg-why-grid { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 430px) { .mg-why-grid { grid-template-columns: 1fr; } }
