:root {
  --mtcpg3-green: #0f3f36;
  --mtcpg3-green-dark: #082b25;
  --mtcpg3-cream: #f4f0e6;
  --mtcpg3-soft: #faf7ef;
  --mtcpg3-yellow: #f3c84f;
  --mtcpg3-text: #172522;
  --mtcpg3-muted: #65736f;
  --mtcpg3-border: rgba(15, 63, 54, .13);
  --mtcpg3-shadow: 0 18px 40px rgba(15, 63, 54, .13);
  --mtcpg3-radius: 22px;
}

.mtcpg3-page { background: var(--mtcpg3-cream); color: var(--mtcpg3-text); overflow-x: hidden; }
.mtcpg3-wrap { width: min(1080px, calc(100% - 36px)); margin: 0 auto; }

.mtcpg3-hero {
  background: radial-gradient(circle at top right, rgba(243, 200, 79, .18), transparent 34%), linear-gradient(135deg, var(--mtcpg3-green-dark), var(--mtcpg3-green));
  color: #fff;
  padding: 46px 0 50px;
}

.mtcpg3-hero-grid { display: grid; grid-template-columns: 1.1fr .9fr; gap: 28px; align-items: center; }

.mtcpg3-kicker {
  color: var(--mtcpg3-yellow);
  text-transform: uppercase;
  letter-spacing: .14em;
  font-weight: 900;
  font-size: .78rem;
  margin: 0 0 14px;
}

.mtcpg3-kicker-green { color: var(--mtcpg3-green) !important; }

.mtcpg3-hero h1 {
  color: #fff;
  font-size: clamp(2.6rem, 6vw, 5rem);
  line-height: 1;
  letter-spacing: -.075em;
  margin: 0 0 16px;
  max-width: 820px;
}

.mtcpg3-hero p { color: #f0fbf7; font-size: 1.08rem; max-width: 780px; margin: 0; }

.mtcpg3-hero-panel,
.mtcpg3-dark-box {
  background: rgba(255,255,255,.12);
  border: 1px solid rgba(255,255,255,.18);
  border-radius: var(--mtcpg3-radius);
  padding: 24px;
  color: #fff;
}

.mtcpg3-dark-box { background: var(--mtcpg3-green); box-shadow: var(--mtcpg3-shadow); }

.mtcpg3-hero-panel h2,
.mtcpg3-dark-box h3 {
  color: #fff !important;
  font-size: 1.55rem;
  line-height: 1.12;
  letter-spacing: -.035em;
  margin: 0 0 10px;
}

.mtcpg3-hero-panel p,
.mtcpg3-dark-box p { color: #f4fffb !important; }

.mtcpg3-hero-panel ul,
.mtcpg3-side-card ul {
  margin: 12px 0 0;
  padding-left: 1.15rem;
}

.mtcpg3-hero-panel li { color: #f4fffb !important; margin: 5px 0; }

.mtcpg3-actions { display: flex; gap: 12px; flex-wrap: wrap; margin-top: 22px; }

.mtcpg3-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-height: 48px;
  padding: 12px 20px;
  border-radius: 999px;
  font-weight: 900;
  text-decoration: none !important;
  text-align: center;
}

.mtcpg3-btn-yellow { background: var(--mtcpg3-yellow); color: #11342e !important; }
.mtcpg3-btn-outline { border: 1.5px solid rgba(255,255,255,.75); color: #fff !important; }

.mtcpg3-section { background: #fff; padding: 52px 0; }
.mtcpg3-soft { background: var(--mtcpg3-cream); }

.mtcpg3-section h2,
.mtcpg3-form-card h2,
.mtcpg3-split h2 {
  color: var(--mtcpg3-green-dark);
  font-size: clamp(2rem, 5vw, 3.1rem);
  line-height: 1.05;
  letter-spacing: -.055em;
  margin: 0 0 14px;
}

.mtcpg3-section h2 { text-align: center; }

.mtcpg3-section-intro {
  color: var(--mtcpg3-muted);
  max-width: 760px;
  margin: 0 auto 28px;
  text-align: center;
  font-size: 1.05rem;
}

.mtcpg3-contact-strip {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 18px;
  max-width: 760px;
  margin: 0 auto;
}

.mtcpg3-contact-method {
  background: #fff;
  border: 1px solid var(--mtcpg3-border);
  border-radius: var(--mtcpg3-radius);
  padding: 24px;
  box-shadow: 0 14px 30px rgba(15, 63, 54, .08);
  text-decoration: none !important;
}

.mtcpg3-contact-method span {
  color: var(--mtcpg3-green);
  font-size: .78rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .12em;
}

.mtcpg3-contact-method strong {
  display: block;
  color: var(--mtcpg3-green-dark);
  font-size: 1.65rem;
  line-height: 1.05;
  margin: 8px 0;
}

.mtcpg3-contact-method em {
  color: var(--mtcpg3-muted);
  font-style: normal;
}

.mtcpg3-card-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 18px;
}

.mtcpg3-card {
  background: #fff;
  border: 1px solid var(--mtcpg3-border);
  border-radius: var(--mtcpg3-radius);
  padding: 24px;
  box-shadow: 0 14px 30px rgba(15, 63, 54, .08);
  color: var(--mtcpg3-text) !important;
  text-decoration: none !important;
  display: block;
}

.mtcpg3-card h3 {
  color: var(--mtcpg3-green-dark);
  font-size: 1.25rem;
  line-height: 1.18;
  margin: 0 0 9px;
}

.mtcpg3-card p { color: var(--mtcpg3-muted); margin: 0 0 14px; }
.mtcpg3-card span { color: var(--mtcpg3-green); font-weight: 900; }

.mtcpg3-intro { padding: 26px 0 52px; background: var(--mtcpg3-cream); }

.mtcpg3-form-layout {
  display: grid;
  grid-template-columns: 1.12fr .88fr;
  gap: 24px;
  align-items: start;
}

.mtcpg3-form-card,
.mtcpg3-side-card {
  background: #fff;
  border: 1px solid var(--mtcpg3-border);
  border-radius: var(--mtcpg3-radius);
  padding: 26px;
  box-shadow: var(--mtcpg3-shadow);
}

.mtcpg3-form-intro {
  color: var(--mtcpg3-muted);
  margin-bottom: 22px;
}

.mtcpg3-form-intro a {
  color: var(--mtcpg3-green);
  font-weight: 900;
}

.mtcpg3-form {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 16px;
}

.mtcpg3-form label {
  color: var(--mtcpg3-green-dark);
  font-weight: 900;
  font-size: .96rem;
}

.mtcpg3-form input,
.mtcpg3-form select,
.mtcpg3-form textarea {
  width: 100%;
  display: block;
  margin-top: 7px;
  border: 1px solid var(--mtcpg3-border);
  border-radius: 14px;
  padding: 13px 14px;
  font: inherit;
  color: var(--mtcpg3-text);
  background: var(--mtcpg3-soft);
  box-sizing: border-box;
}

.mtcpg3-form textarea { resize: vertical; }
.mtcpg3-full { grid-column: 1 / -1; }

.mtcpg3-form button {
  grid-column: 1 / -1;
  border: 0;
  background: var(--mtcpg3-yellow);
  color: #11342e;
  border-radius: 999px;
  min-height: 52px;
  padding: 14px 20px;
  font-weight: 900;
  font: inherit;
  cursor: pointer;
}

.mtcpg3-success,
.mtcpg3-error {
  border-radius: 16px;
  padding: 14px 16px;
  font-weight: 900;
  margin-bottom: 18px;
}

.mtcpg3-success { background: #dff5e9; color: #145b37; }
.mtcpg3-error { background: #ffe4e4; color: #822020; }

.mtcpg3-side-card h3 {
  color: var(--mtcpg3-green-dark);
  font-size: 1.45rem;
  margin: 0 0 12px;
}

.mtcpg3-side-card li { color: #43534f; margin: 7px 0; }

.mtcpg3-photo-placeholder {
  margin-top: 22px;
  background: linear-gradient(135deg, rgba(15,63,54,.08), rgba(15,63,54,.03)), repeating-linear-gradient(135deg, rgba(15,63,54,.07), rgba(15,63,54,.07) 10px, rgba(15,63,54,.02) 10px, rgba(15,63,54,.02) 20px);
  border: 1px dashed rgba(15,63,54,.24);
  border-radius: var(--mtcpg3-radius);
  min-height: 220px;
  display: grid;
  place-items: center;
  text-align: center;
  padding: 20px;
}

.mtcpg3-photo-inner { max-width: 400px; }

.mtcpg3-photo-label {
  color: var(--mtcpg3-green) !important;
  text-transform: uppercase;
  letter-spacing: .14em;
  font-weight: 900;
  font-size: .78rem;
  margin: 0 0 10px;
}

.mtcpg3-photo-placeholder h4 {
  margin: 0 0 10px;
  font-size: 1.35rem;
  line-height: 1.15;
  color: var(--mtcpg3-green-dark) !important;
}

.mtcpg3-photo-placeholder p {
  margin: 0;
  color: var(--mtcpg3-muted) !important;
  font-size: .98rem;
}

.mtcpg3-split {
  display: grid;
  grid-template-columns: 1.08fr .92fr;
  gap: 30px;
  align-items: center;
}

.mtcpg3-split h2 { text-align: left; }
.mtcpg3-split p { color: #43534f; font-size: 1.05rem; }

.mtcpg3-final {
  background: linear-gradient(135deg, var(--mtcpg3-green-dark), var(--mtcpg3-green));
  color: #fff;
  padding: 50px 0 92px;
  text-align: center;
}

.mtcpg3-final h2 {
  color: #fff !important;
  font-size: clamp(2rem, 5vw, 3rem);
  line-height: 1.05;
  letter-spacing: -.055em;
  margin: 0 0 10px;
}

.mtcpg3-final p {
  color: #f4fffb !important;
  max-width: 740px;
  margin: 0 auto 22px;
}

.mtcpg3-sticky { display: none; }

@media (max-width: 800px) {
  .mtcpg3-wrap { width: min(100% - 24px, 1080px); }
  .mtcpg3-hero { padding: 32px 0 36px; }

  .mtcpg3-hero-grid,
  .mtcpg3-card-grid,
  .mtcpg3-contact-strip,
  .mtcpg3-form-layout,
  .mtcpg3-form,
  .mtcpg3-split {
    grid-template-columns: 1fr;
  }

  .mtcpg3-hero h1 {
    font-size: clamp(2.35rem, 11vw, 3.1rem);
    line-height: 1.02;
    letter-spacing: -.065em;
  }

  .mtcpg3-hero p { font-size: .98rem; }
  .mtcpg3-hero-panel { margin-top: 8px; padding: 20px; }
  .mtcpg3-actions { display: grid; gap: 10px; }
  .mtcpg3-btn { width: 100%; }

  .mtcpg3-section { padding: 40px 0; }

  .mtcpg3-section h2,
  .mtcpg3-form-card h2,
  .mtcpg3-split h2 {
    font-size: clamp(1.85rem, 9vw, 2.45rem);
  }

  .mtcpg3-card,
  .mtcpg3-form-card,
  .mtcpg3-side-card,
  .mtcpg3-contact-method {
    padding: 22px;
  }

  .mtcpg3-intro { padding: 24px 0 40px; }
  .mtcpg3-full { grid-column: auto; }
  .mtcpg3-photo-placeholder { min-height: 210px; }
  .mtcpg3-final { padding-bottom: 104px; }

  .mtcpg3-sticky {
    display: block;
    position: fixed;
    left: 12px;
    right: 12px;
    bottom: 12px;
    z-index: 99999;
    background: var(--mtcpg3-yellow);
    color: #11342e !important;
    border-radius: 999px;
    padding: 14px 18px;
    text-align: center;
    font-weight: 900;
    text-decoration: none !important;
    box-shadow: 0 14px 30px rgba(0,0,0,.24);
  }

  body { padding-bottom: 96px; }
}
