.landing-body {
  overflow-x: hidden;
  background:
    radial-gradient(circle at 82% 8%, rgba(153, 83, 190, 0.12), transparent 28rem),
    radial-gradient(circle at 10% 34%, rgba(210, 96, 147, 0.07), transparent 26rem),
    #09060f;
}

.landing-nav {
  border-bottom: 1px solid rgba(255, 255, 255, 0.07);
  background: rgba(9, 6, 15, 0.78);
  backdrop-filter: blur(18px);
}

.landing-nav .btn-ghost { color: rgba(255, 255, 255, 0.76); }

.mg-hero {
  position: relative;
  padding: clamp(5.25rem, 8vw, 8.5rem) 0 clamp(4.5rem, 7vw, 7rem);
}

.mg-hero::before {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(255,255,255,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(255,255,255,.025) 1px, transparent 1px);
  background-size: 4rem 4rem;
  mask-image: linear-gradient(to bottom, rgba(0,0,0,.72), transparent 82%);
  pointer-events: none;
  content: "";
}

.mg-hero-copy { position: relative; z-index: 2; }
.mg-eyebrow {
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  padding: .48rem .75rem;
  border: 1px solid rgba(213, 145, 190, .2);
  border-radius: 999px;
  background: rgba(181, 105, 166, .08);
  color: #dfb5d0;
  font-size: .74rem;
  font-weight: 700;
  letter-spacing: .045em;
  text-transform: uppercase;
}
.mg-hero h1 {
  max-width: 12ch;
  margin: 1.55rem 0 1.25rem;
  color: #fff;
  font-size: clamp(3rem, 6.1vw, 6.1rem);
  font-weight: 800;
  letter-spacing: -.07em;
  line-height: .98;
}
.mg-hero-lead {
  max-width: 39rem;
  color: rgba(242, 232, 246, .68);
  font-size: clamp(1rem, 1.4vw, 1.2rem);
  line-height: 1.72;
}
.mg-hero-actions { display: flex; flex-wrap: wrap; gap: .8rem; margin-top: 2rem; }
.mg-trust-row { display: flex; flex-wrap: wrap; gap: .75rem 1.2rem; margin-top: 2rem; color: rgba(236, 224, 241, .54); font-size: .74rem; }
.mg-trust-row span { display: inline-flex; align-items: center; gap: .4rem; }
.mg-trust-row i { color: #c88ab0; }

.mg-hero-media { position: relative; z-index: 1; max-width: 43rem; margin-left: auto; }
.mg-hero-media > img {
  position: relative;
  z-index: 1;
  display: block;
  width: 100%;
  height: auto;
  aspect-ratio: 3 / 2;
  object-fit: cover;
  border: 1px solid rgba(255, 255, 255, .13);
  border-radius: clamp(1.1rem, 2.4vw, 2rem);
  box-shadow: 0 2rem 6rem rgba(0, 0, 0, .48), 0 0 0 .4rem rgba(255,255,255,.025);
}
.mg-hero-media::after {
  position: absolute;
  z-index: 2;
  inset: 0;
  border-radius: clamp(1.1rem, 2.4vw, 2rem);
  background: linear-gradient(180deg, transparent 55%, rgba(10, 6, 14, .55));
  pointer-events: none;
  content: "";
}
.mg-hero-halo { position: absolute; z-index: 0; inset: -12%; border-radius: 50%; background: rgba(165, 79, 160, .22); filter: blur(5rem); }
.mg-live-chip {
  position: absolute;
  z-index: 3;
  top: 1rem;
  left: 1rem;
  display: inline-flex;
  align-items: center;
  gap: .5rem;
  padding: .55rem .75rem;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 999px;
  background: rgba(15, 10, 18, .72);
  color: #fff;
  font-size: .74rem;
  backdrop-filter: blur(16px);
}
.mg-live-chip span { width: .48rem; height: .48rem; border-radius: 50%; background: #e181b5; box-shadow: 0 0 0 .25rem rgba(225, 129, 181, .14); }
.mg-message-preview {
  position: absolute;
  z-index: 4;
  right: -1rem;
  bottom: -1.4rem;
  display: flex;
  width: min(23rem, 82%);
  align-items: center;
  gap: .8rem;
  padding: .9rem;
  border: 1px solid rgba(255,255,255,.13);
  border-radius: 1rem;
  background: rgba(22, 15, 27, .91);
  box-shadow: 0 1.1rem 3rem rgba(0,0,0,.42);
  backdrop-filter: blur(18px);
}
.mg-message-preview div { min-width: 0; }
.mg-message-preview small, .mg-message-preview strong { display: block; }
.mg-message-preview small { margin-bottom: .15rem; color: #ca93b4; font-size: .67rem; font-weight: 700; text-transform: uppercase; }
.mg-message-preview strong { color: #f7eff8; font-size: .82rem; line-height: 1.4; }
.mg-message-avatar { display: grid; width: 2.65rem; height: 2.65rem; flex: 0 0 auto; place-items: center; border-radius: .8rem; background: linear-gradient(135deg, #8454e9, #d061a2); color: #fff; }

.mg-principles { padding: 1.25rem 0 4rem; }
.mg-principle-grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); border-block: 1px solid rgba(255,255,255,.08); }
.mg-principle-grid article { min-width: 0; padding: 1.65rem; border-right: 1px solid rgba(255,255,255,.08); }
.mg-principle-grid article:last-child { border-right: 0; }
.mg-principle-grid strong, .mg-principle-grid span { display: block; }
.mg-principle-grid strong { margin-bottom: .4rem; color: #f7edf8; }
.mg-principle-grid span { color: rgba(239,228,242,.5); font-size: .78rem; line-height: 1.55; }

.mg-section { padding: clamp(4.5rem, 8vw, 8rem) 0; }
.mg-section-heading { max-width: 47rem; margin-bottom: 3rem; }
.mg-section-heading h2, .mg-showcase-copy h2, .mg-cta-panel h2 { margin: .8rem 0 1rem; color: #f8f1f9; font-size: clamp(2.2rem, 4.5vw, 4.15rem); font-weight: 800; letter-spacing: -.055em; line-height: 1.04; }
.mg-section-heading p, .mg-showcase-copy p { color: rgba(238,226,241,.58); line-height: 1.75; }

.mg-feature-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.mg-feature-card {
  position: relative;
  overflow: hidden;
  min-height: 18rem;
  padding: 1.5rem;
  border: 1px solid rgba(255,255,255,.085);
  border-radius: 1.1rem;
  background: linear-gradient(150deg, rgba(255,255,255,.045), rgba(255,255,255,.015));
}
.mg-feature-card::after { position: absolute; right: -5rem; bottom: -6rem; width: 12rem; height: 12rem; border-radius: 50%; background: rgba(183, 91, 164, .12); filter: blur(2.5rem); content: ""; }
.mg-feature-card > span { display: grid; width: 3rem; height: 3rem; place-items: center; border: 1px solid rgba(218,142,189,.17); border-radius: .85rem; background: rgba(188,101,166,.1); color: #e0a8c8; font-size: 1.1rem; }
.mg-feature-card h3 { margin: 4.7rem 0 .7rem; color: #f6eef7; font-size: 1.08rem; font-weight: 700; }
.mg-feature-card p { position: relative; z-index: 1; margin: 0; color: rgba(236,224,239,.52); font-size: .86rem; line-height: 1.68; }

.mg-showcase-section { background: linear-gradient(180deg, transparent, rgba(120,64,139,.07), transparent); }
.mg-product-showcase { display: grid; grid-template-columns: minmax(0, .85fr) minmax(30rem, 1.15fr); align-items: center; gap: clamp(2rem, 5vw, 5rem); }
.mg-check-list { display: grid; gap: .75rem; margin: 1.6rem 0 0; padding: 0; list-style: none; color: rgba(240,229,243,.72); font-size: .86rem; }
.mg-check-list li { display: flex; align-items: center; gap: .65rem; }
.mg-check-list i { color: #d27fab; }
.mg-chat-demo { overflow: hidden; border: 1px solid rgba(255,255,255,.12); border-radius: 1.3rem; background: #120d17; box-shadow: 0 2rem 5rem rgba(0,0,0,.38); }
.mg-chat-demo header { display: flex; align-items: center; gap: .7rem; padding: .85rem 1rem; border-bottom: 1px solid rgba(255,255,255,.08); }
.mg-chat-demo header img { width: 2.4rem; height: 2.4rem; border-radius: 50%; object-fit: cover; }
.mg-chat-demo header span { min-width: 0; flex: 1; }
.mg-chat-demo header strong, .mg-chat-demo header small { display: block; }
.mg-chat-demo header strong { color: #fff; font-size: .82rem; }
.mg-chat-demo header small { color: rgba(255,255,255,.42); font-size: .66rem; }
.mg-chat-demo header > i { color: rgba(255,255,255,.45); }
.mg-demo-scene { position: relative; height: 15rem; overflow: hidden; }
.mg-demo-scene::after { position: absolute; inset: 30% 0 0; background: linear-gradient(transparent, rgba(14,9,17,.88)); content: ""; }
.mg-demo-scene img { width: 100%; height: 100%; object-fit: cover; }
.mg-demo-scene span { position: absolute; z-index: 2; bottom: .85rem; left: 1rem; color: #fff; font-size: .8rem; font-weight: 700; }
.mg-demo-messages { display: flex; flex-direction: column; gap: .7rem; padding: 1rem; }
.mg-demo-messages p { max-width: 78%; margin: 0; padding: .7rem .8rem; border-radius: .9rem; color: #f8f1f9; font-size: .76rem; line-height: 1.5; }
.mg-demo-messages .is-her { align-self: flex-start; border-bottom-left-radius: .25rem; background: #2b2130; }
.mg-demo-messages .is-user { align-self: flex-end; border-bottom-right-radius: .25rem; background: linear-gradient(135deg, #8655e8, #bd5da5); }

.mg-character-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1rem; }
.mg-character-card { overflow: hidden; border: 1px solid rgba(255,255,255,.1); border-radius: 1.2rem; background: rgba(255,255,255,.025); }
.mg-character-card img { display: block; width: 100%; aspect-ratio: 4 / 4.5; object-fit: cover; object-position: center 20%; transition: transform .55s ease; }
.mg-character-card:hover img { transform: scale(1.025); }
.mg-character-card div { display: flex; align-items: center; justify-content: space-between; gap: 1rem; padding: 1rem 1.1rem; }
.mg-character-card span { color: #f6edf7; font-weight: 700; }
.mg-character-card small { color: #bd7fa4; font-size: .68rem; text-transform: uppercase; }

.mg-steps-section { border-block: 1px solid rgba(255,255,255,.065); background: rgba(255,255,255,.014); }
.mg-step-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; margin: 0; padding: 0; list-style: none; }
.mg-step-grid li { padding: 1.4rem; border-top: 1px solid rgba(222,139,187,.28); }
.mg-step-grid li > span { color: #bd79a0; font-size: .7rem; font-weight: 800; letter-spacing: .12em; }
.mg-step-grid h3 { margin: 2.7rem 0 .55rem; color: #f7eff8; font-size: 1.08rem; }
.mg-step-grid p { margin: 0; color: rgba(238,226,241,.52); font-size: .82rem; line-height: 1.6; }

.mg-support-section { position: relative; overflow: hidden; isolation: isolate; }
.mg-support-section::before { position: absolute; z-index: -1; top: 8%; left: 50%; width: min(68rem, 92vw); height: 34rem; border-radius: 50%; background: radial-gradient(ellipse, rgba(188,134,55,.13), rgba(110,55,158,.07) 42%, transparent 72%); filter: blur(2rem); content: ""; transform: translateX(-50%); pointer-events: none; }
.mg-support-boundary { display: inline-flex; align-items: center; gap: .5rem; margin-top: 1rem; padding: .55rem .8rem; border: 1px solid rgba(224,172,86,.18); border-radius: 999px; background: rgba(213,157,65,.055); color: rgba(239,211,157,.76); font-size: .72rem; font-weight: 650; }
.mg-support-boundary i { color: #e1b766; }
.mg-price-grid { display: grid; grid-template-columns: minmax(0, .82fr) minmax(0, 1.18fr) minmax(0, 1fr); align-items: center; gap: 1.15rem; }
.mg-price-card { position: relative; overflow: hidden; padding: 1.6rem; border: 1px solid rgba(255,255,255,.085); border-radius: 1.1rem; background: rgba(255,255,255,.025); }
.mg-price-kicker { position: relative; z-index: 2; display: block; color: #c783a9; font-size: .66rem; font-weight: 800; letter-spacing: .14em; text-transform: uppercase; }
.mg-price-card h3 { position: relative; z-index: 2; margin: 1rem 0 .7rem; color: #f8f1f9; font-size: 1.55rem; }
.mg-price-card p { position: relative; z-index: 2; min-height: 4.2rem; color: rgba(239,227,242,.52); font-size: .84rem; line-height: 1.6; }
.mg-price-card ul { position: relative; z-index: 2; display: grid; gap: .72rem; margin: 1.2rem 0 0; padding: 1.1rem 0 0; border-top: 1px solid rgba(255,255,255,.08); list-style: none; color: rgba(240,230,243,.72); font-size: .78rem; }
.mg-price-card li { display: flex; gap: .6rem; align-items: flex-start; }
.mg-price-card li::before { flex: 0 0 auto; color: #cf7fab; content: "✦"; }
.mg-price-free { padding: 1.35rem; border-color: rgba(255,255,255,.07); background: rgba(255,255,255,.018); }
.mg-price-free h3 { font-size: 1.28rem; }
.mg-price-free p { min-height: 0; }
.mg-price-free ul { gap: .55rem; color: rgba(239,228,242,.55); font-size: .73rem; }
.mg-price-free li::before { color: rgba(218,183,209,.56); content: "✓"; }
.mg-price-supporter { min-height: 26rem; padding: 1.8rem; border-color: rgba(158,102,231,.28); background: radial-gradient(circle at 90% 5%, rgba(192,108,231,.2), transparent 38%), linear-gradient(145deg, rgba(90,50,145,.27), rgba(30,18,46,.7)); box-shadow: inset 0 1px 0 rgba(255,255,255,.06), 0 1.5rem 4rem rgba(70,31,115,.22); }
.mg-price-supporter::after { position: absolute; right: -4rem; bottom: -5rem; width: 12rem; height: 12rem; border-radius: 50%; background: rgba(168,83,220,.16); filter: blur(2.8rem); content: ""; }
.mg-price-supporter .mg-price-kicker { color: #c9a1fa; }
.mg-price-supporter li::before { color: #c98aff; }
.mg-supporter-mark { position: absolute; z-index: 2; top: 1.35rem; right: 1.35rem; display: grid; width: 2.5rem; height: 2.5rem; place-items: center; border: 1px solid rgba(211,167,255,.2); border-radius: .8rem; background: rgba(170,98,230,.13); color: #d9b3ff; box-shadow: 0 0 1.8rem rgba(171,91,229,.18); }
.mg-price-founder { min-height: 31rem; padding: 2rem; border-color: rgba(235,192,102,.52); background: radial-gradient(circle at 82% 12%, rgba(255,218,131,.19), transparent 28%), radial-gradient(circle at 10% 95%, rgba(165,104,28,.17), transparent 38%), linear-gradient(145deg, #241a19, #130e14 62%, #1b1211); box-shadow: inset 0 1px 0 rgba(255,244,207,.18), inset 0 0 4rem rgba(186,128,38,.06), 0 0 0 .3rem rgba(203,151,58,.035), 0 2rem 6rem rgba(174,108,18,.23), 0 0 3.5rem rgba(235,179,74,.13); animation: mg-founder-glow 4.8s ease-in-out infinite; }
.mg-price-founder::before { position: absolute; z-index: 1; inset: 0; border-radius: inherit; background: linear-gradient(112deg, transparent 28%, rgba(255,226,160,.1) 48%, transparent 66%); content: ""; transform: translateX(-120%); animation: mg-founder-shimmer 6.5s ease-in-out infinite; pointer-events: none; }
.mg-price-founder::after { position: absolute; z-index: 1; inset: 1px; border-radius: calc(1.1rem - 1px); border: 1px solid rgba(255,232,178,.08); content: ""; pointer-events: none; }
.mg-price-founder .mg-price-kicker { color: #e7c57b; }
.mg-price-founder h3 { max-width: 9ch; margin-top: 1.15rem; color: #fff4d7; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2rem, 3vw, 2.65rem); font-weight: 600; letter-spacing: -.04em; line-height: .98; }
.mg-price-founder p { min-height: 0; color: rgba(249,229,190,.65); }
.mg-price-founder ul { border-top-color: rgba(237,193,103,.19); color: rgba(255,238,201,.82); }
.mg-price-founder li::before { color: #f0c86f; text-shadow: 0 0 .9rem rgba(244,190,73,.75); }
.mg-founder-edition { position: relative; z-index: 2; display: inline-flex; align-items: center; gap: .4rem; margin-bottom: 1.4rem; padding: .45rem .65rem; border: 1px solid rgba(239,199,113,.24); border-radius: 999px; background: rgba(215,158,52,.08); color: #f1d490; font-size: .65rem; font-weight: 750; letter-spacing: .05em; text-transform: uppercase; }
.mg-founder-orbit { position: absolute; z-index: 2; top: 1.5rem; right: 1.5rem; display: grid; width: 3.2rem; height: 3.2rem; place-items: center; border: 1px solid rgba(245,207,125,.35); border-radius: 50%; background: radial-gradient(circle, rgba(244,201,111,.19), rgba(128,79,19,.08)); color: #f5d487; font-size: 1.15rem; box-shadow: inset 0 0 1.2rem rgba(255,213,125,.08), 0 0 2rem rgba(232,176,66,.22); }
.mg-founder-orbit::after { position: absolute; inset: -.38rem; border: 1px solid rgba(239,197,107,.16); border-radius: 50%; content: ""; animation: mg-founder-orbit 8s linear infinite; }
.mg-support-cta { border: 1px solid rgba(225,182,95,.28); background: linear-gradient(135deg, rgba(128,75,171,.16), rgba(194,130,43,.14)); color: #f2dfba; box-shadow: 0 .8rem 2.4rem rgba(103,54,128,.13); }
.mg-support-cta:hover { border-color: rgba(236,197,117,.48); background: linear-gradient(135deg, rgba(137,79,186,.24), rgba(210,148,51,.22)); color: #fff3d7; }

@keyframes mg-founder-glow { 0%, 100% { box-shadow: inset 0 1px 0 rgba(255,244,207,.18), inset 0 0 4rem rgba(186,128,38,.06), 0 0 0 .3rem rgba(203,151,58,.035), 0 2rem 6rem rgba(174,108,18,.2), 0 0 3rem rgba(235,179,74,.1); } 50% { box-shadow: inset 0 1px 0 rgba(255,244,207,.22), inset 0 0 4.5rem rgba(210,151,49,.09), 0 0 0 .34rem rgba(223,171,76,.05), 0 2.2rem 6.5rem rgba(190,121,22,.28), 0 0 4.5rem rgba(241,190,84,.2); } }
@keyframes mg-founder-shimmer { 0%, 58% { transform: translateX(-125%); } 82%, 100% { transform: translateX(125%); } }
@keyframes mg-founder-orbit { to { transform: rotate(360deg); } }

.mg-final-cta { padding-top: 2rem; }
.mg-cta-panel { display: flex; align-items: center; justify-content: space-between; gap: 2rem; padding: clamp(2rem, 5vw, 4rem); border: 1px solid rgba(224,139,190,.2); border-radius: 1.35rem; background: radial-gradient(circle at 85% 25%, rgba(203,97,164,.18), transparent 24rem), linear-gradient(135deg, rgba(128,77,182,.13), rgba(255,255,255,.02)); }
.mg-cta-panel h2 { font-size: clamp(2rem, 4vw, 3.5rem); }
.mg-cta-panel p { margin: 0; color: rgba(240,228,243,.56); }
.mg-cta-panel .btn { flex: 0 0 auto; }

.mg-public-footer { margin-top: 2rem; }
.mg-footer-note { max-width: 32rem; line-height: 1.65; }
.mg-age-mark { display: inline-flex; align-items: center; gap: .45rem; color: rgba(239,225,242,.56); font-size: .72rem; }
.mg-age-mark i { color: #c984a9; }
.mg-footer-bottom { display: flex; justify-content: space-between; gap: 1rem; padding-top: 1.1rem; border-top: 1px solid rgba(255,255,255,.08); }

.mg-legal-shell { padding: clamp(4.5rem, 8vw, 7rem) 0; }
.mg-legal-header { max-width: 54rem; margin-bottom: 2.5rem; }
.mg-legal-header h1 { margin: .7rem 0 1rem; color: #f8f1f9; font-size: clamp(2.7rem, 6vw, 5.2rem); font-weight: 800; letter-spacing: -.065em; }
.mg-legal-header p { color: rgba(240,228,243,.58); line-height: 1.7; }
.mg-legal-layout { display: grid; grid-template-columns: 14rem minmax(0, 48rem); align-items: start; gap: clamp(2rem, 5vw, 5rem); }
.mg-legal-nav { position: sticky; top: 7rem; display: grid; gap: .3rem; }
.mg-legal-nav a { padding: .5rem .6rem; border-radius: .45rem; color: rgba(238,225,241,.54); font-size: .74rem; text-decoration: none; }
.mg-legal-nav a:hover { background: rgba(255,255,255,.04); color: #fff; }
.mg-legal-content { color: rgba(241,230,244,.66); font-size: .91rem; line-height: 1.78; }
.mg-legal-content section { scroll-margin-top: 7rem; padding: 0 0 2.4rem; }
.mg-legal-content h2 { margin: 0 0 .9rem; color: #f7eff8; font-size: 1.35rem; letter-spacing: -.025em; }
.mg-legal-content h3 { margin: 1.5rem 0 .6rem; color: #efe3f1; font-size: 1rem; }
.mg-legal-content ul { display: grid; gap: .45rem; padding-left: 1.2rem; }
.mg-legal-callout { padding: 1rem 1.1rem; border: 1px solid rgba(210,126,174,.2); border-radius: .8rem; background: rgba(190,96,160,.07); color: rgba(245,235,247,.78); }

.mg-about-shell {
  position: relative;
  overflow: hidden;
  padding: clamp(5.5rem, 9vw, 8.5rem) 0 clamp(4.5rem, 8vw, 7rem);
}
.mg-about-shell::before {
  position: absolute;
  top: -12rem;
  left: 50%;
  width: min(72rem, 100vw);
  height: 40rem;
  background: radial-gradient(ellipse, rgba(156,83,190,.15), rgba(203,95,151,.055) 44%, transparent 72%);
  filter: blur(1rem);
  content: "";
  transform: translateX(-50%);
  pointer-events: none;
}
.mg-about-header { position: relative; max-width: 56rem; margin: 0 auto 2.4rem; text-align: center; }
.mg-about-header h1 { margin: 1.4rem 0 1.2rem; color: #fff; font-size: clamp(3rem, 7vw, 6.4rem); font-weight: 800; letter-spacing: -.07em; line-height: .96; }
.mg-about-header p { max-width: 43rem; margin: 0 auto; color: rgba(241,229,244,.62); font-size: clamp(1rem, 1.5vw, 1.16rem); line-height: 1.72; }

.mg-about-developer {
  position: relative;
  display: flex;
  align-items: center;
  gap: .9rem;
  max-width: 58rem;
  margin: 0 auto 1rem;
  padding: .85rem 1rem;
  border: 1px solid rgba(255,255,255,.1);
  border-radius: 1rem;
  background: rgba(255,255,255,.035);
  box-shadow: 0 1.2rem 3rem rgba(0,0,0,.14);
}
.mg-about-developer img { width: 4.5rem; height: 4.5rem; flex: 0 0 auto; border: 1px solid rgba(231,164,202,.34); border-radius: .85rem; object-fit: cover; object-position: center 30%; box-shadow: 0 .75rem 1.8rem rgba(0,0,0,.28); }
.mg-about-developer div { display: grid; gap: .18rem; min-width: 0; }
.mg-about-developer strong { color: #fff; font-size: 1rem; }
.mg-about-developer div span { color: rgba(239,226,242,.5); font-size: .76rem; }
.mg-independent-mark { display: inline-flex; align-items: center; gap: .4rem; margin-left: auto; padding: .46rem .65rem; border: 1px solid rgba(204,132,177,.16); border-radius: 999px; color: rgba(231,190,216,.7); font-size: .66rem; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; }

.mg-developer-letter {
  position: relative;
  max-width: 58rem;
  margin: 0 auto;
  padding: clamp(2rem, 5vw, 4.2rem);
  border: 1px solid rgba(224,145,190,.16);
  border-radius: 1.15rem;
  background: linear-gradient(145deg, rgba(40,25,47,.92), rgba(18,12,23,.95));
  box-shadow: inset 0 1px rgba(255,255,255,.055), 0 2.5rem 7rem rgba(0,0,0,.28);
}
.mg-developer-letter::before { position: absolute; top: 2rem; right: 2.4rem; color: rgba(211,132,179,.11); font-family: Georgia, serif; font-size: 8rem; line-height: 1; content: "\201C"; pointer-events: none; }
.mg-developer-letter > header { position: relative; z-index: 1; margin-bottom: 2rem; padding-bottom: 1.5rem; border-bottom: 1px solid rgba(255,255,255,.08); }
.mg-developer-letter > header span { color: #cb82ab; font-size: .67rem; font-weight: 800; letter-spacing: .13em; text-transform: uppercase; }
.mg-developer-letter h2 { max-width: 11ch; margin: .65rem 0 0; color: #faf3fb; font-family: Georgia, "Times New Roman", serif; font-size: clamp(2.2rem, 5vw, 4rem); font-weight: 500; letter-spacing: -.045em; line-height: 1.02; }
.mg-letter-copy { position: relative; z-index: 1; color: rgba(242,231,245,.64); font-size: .94rem; line-height: 1.86; }
.mg-letter-copy p { margin: 0 0 1.35rem; }
.mg-letter-copy p:last-child { margin-bottom: 0; }
.mg-letter-copy .mg-letter-opening { color: rgba(251,243,252,.9); font-size: clamp(1.08rem, 2vw, 1.35rem); line-height: 1.65; }
.mg-developer-letter > footer { display: flex; align-items: end; justify-content: space-between; gap: 1rem; margin-top: 2.3rem; padding-top: 1.4rem; border-top: 1px solid rgba(255,255,255,.08); }
.mg-letter-signature { color: #e8bfd5; font-family: Georgia, "Times New Roman", serif; font-size: 1.55rem; font-style: italic; }
.mg-developer-letter > footer small { color: rgba(240,226,243,.38); }

.mg-about-principles { display: grid; grid-template-columns: repeat(3, 1fr); max-width: 58rem; margin: 1rem auto 0; border: 1px solid rgba(255,255,255,.085); border-radius: 1rem; background: rgba(255,255,255,.022); }
.mg-about-principles article { display: flex; gap: .85rem; padding: 1.25rem; border-right: 1px solid rgba(255,255,255,.075); }
.mg-about-principles article:last-child { border-right: 0; }
.mg-about-principles article > span { color: #bd75a0; font-size: .65rem; font-weight: 800; letter-spacing: .08em; }
.mg-about-principles strong { display: block; margin-bottom: .35rem; color: #f5edf7; font-size: .82rem; }
.mg-about-principles p { margin: 0; color: rgba(239,226,242,.46); font-size: .72rem; line-height: 1.55; }

[data-theme="light"] .landing-body {
  background:
    radial-gradient(circle at 82% 8%, rgba(153, 83, 190, 0.1), transparent 28rem),
    radial-gradient(circle at 10% 34%, rgba(210, 96, 147, 0.08), transparent 26rem),
    #f8f4fb;
}
[data-theme="light"] .landing-nav { border-bottom-color: rgba(63,34,88,.1); background: rgba(248,244,251,.84); }
[data-theme="light"] .landing-nav .btn-ghost { color: #5f526b; }
[data-theme="light"] .mg-hero::before { background-image: linear-gradient(rgba(63,34,88,.045) 1px, transparent 1px), linear-gradient(90deg, rgba(63,34,88,.045) 1px, transparent 1px); }
[data-theme="light"] .mg-eyebrow { border-color: rgba(105,51,170,.15); background: rgba(105,51,170,.06); color: #76438d; }
[data-theme="light"] .mg-hero h1,
[data-theme="light"] .mg-section-heading h2,
[data-theme="light"] .mg-showcase-copy h2,
[data-theme="light"] .mg-cta-panel h2,
[data-theme="light"] .mg-feature-card h3,
[data-theme="light"] .mg-character-card span,
[data-theme="light"] .mg-step-grid h3,
[data-theme="light"] .mg-price-card h3,
[data-theme="light"] .mg-legal-header h1,
[data-theme="light"] .mg-legal-content h2,
[data-theme="light"] .mg-legal-content h3 { color: #281a36; }
[data-theme="light"] .mg-hero-lead,
[data-theme="light"] .mg-section-heading p,
[data-theme="light"] .mg-showcase-copy p,
[data-theme="light"] .mg-feature-card p,
[data-theme="light"] .mg-step-grid p,
[data-theme="light"] .mg-price-card p,
[data-theme="light"] .mg-cta-panel p,
[data-theme="light"] .mg-legal-header p { color: rgba(40,26,54,.64); }
[data-theme="light"] .mg-trust-row,
[data-theme="light"] .mg-principle-grid span,
[data-theme="light"] .mg-age-mark { color: rgba(40,26,54,.55); }
[data-theme="light"] .mg-principle-grid,
[data-theme="light"] .mg-steps-section,
[data-theme="light"] .mg-footer-bottom { border-color: rgba(63,34,88,.1); }
[data-theme="light"] .mg-principle-grid article { border-color: rgba(63,34,88,.1); }
[data-theme="light"] .mg-principle-grid strong { color: #31213f; }
[data-theme="light"] .mg-feature-card,
[data-theme="light"] .mg-character-card,
[data-theme="light"] .mg-price-card { border-color: rgba(63,34,88,.1); background: rgba(255,255,255,.62); box-shadow: 0 1rem 3rem rgba(71,43,90,.06); }
[data-theme="light"] .mg-steps-section { background: rgba(104,51,170,.025); }
[data-theme="light"] .mg-step-grid li { border-top-color: rgba(105,51,170,.2); }
[data-theme="light"] .mg-price-free { background: rgba(255,255,255,.52); }
[data-theme="light"] .mg-price-supporter { border-color: rgba(122,64,174,.24); background: radial-gradient(circle at 90% 5%, rgba(181,105,224,.17), transparent 38%), linear-gradient(145deg, rgba(232,218,247,.92), rgba(250,247,252,.92)); }
[data-theme="light"] .mg-price-supporter .mg-price-kicker { color: #77409c; }
[data-theme="light"] .mg-supporter-mark { color: #713692; }
[data-theme="light"] .mg-price-founder { border-color: rgba(169,111,27,.48); background: radial-gradient(circle at 82% 12%, rgba(255,211,112,.24), transparent 30%), linear-gradient(145deg, #fff9e9, #f5ead0); box-shadow: inset 0 1px 0 #fff, 0 2rem 5rem rgba(142,91,23,.18), 0 0 2.5rem rgba(217,164,59,.12); }
[data-theme="light"] .mg-price-founder h3 { color: #51350d; }
[data-theme="light"] .mg-price-founder p { color: rgba(81,53,13,.68); }
[data-theme="light"] .mg-price-founder ul { border-top-color: rgba(145,92,15,.18); color: rgba(72,46,9,.8); }
[data-theme="light"] .mg-founder-edition { color: #76500d; }
[data-theme="light"] .mg-support-boundary { border-color: rgba(160,106,23,.22); background: rgba(219,165,62,.09); color: #76500d; }
[data-theme="light"] .mg-support-cta { border-color: rgba(155,99,20,.3); background: linear-gradient(135deg, rgba(131,76,181,.1), rgba(220,162,60,.16)); color: #603f09; }
[data-theme="light"] .mg-support-cta:hover { color: #3f2803; }
[data-theme="light"] .mg-price-card ul { border-top-color: rgba(63,34,88,.1); color: rgba(40,26,54,.7); }
[data-theme="light"] .mg-check-list { color: rgba(40,26,54,.72); }
[data-theme="light"] .mg-cta-panel { border-color: rgba(143,73,142,.16); background: radial-gradient(circle at 85% 25%, rgba(203,97,164,.12), transparent 24rem), rgba(255,255,255,.62); }
[data-theme="light"] .mg-legal-nav a { color: rgba(40,26,54,.58); }
[data-theme="light"] .mg-legal-nav a:hover { background: rgba(105,51,170,.06); color: #4a2b65; }
[data-theme="light"] .mg-legal-content { color: rgba(40,26,54,.72); }
[data-theme="light"] .mg-legal-callout { border-color: rgba(143,73,142,.17); background: rgba(150,80,179,.06); color: rgba(40,26,54,.82); }
[data-theme="light"] .mg-about-header h1 { color: #281a36; }
[data-theme="light"] .mg-about-header p { color: rgba(40,26,54,.64); }
[data-theme="light"] .mg-about-developer { border-color: rgba(63,34,88,.11); background: rgba(255,255,255,.66); box-shadow: 0 1.2rem 3rem rgba(71,43,90,.07); }
[data-theme="light"] .mg-about-developer strong { color: #2f203b; }
[data-theme="light"] .mg-about-developer div span { color: rgba(40,26,54,.52); }
[data-theme="light"] .mg-independent-mark { border-color: rgba(116,58,139,.15); color: #79516d; }
[data-theme="light"] .mg-developer-letter { border-color: rgba(143,73,142,.16); background: linear-gradient(145deg, rgba(255,255,255,.94), rgba(248,241,250,.96)); box-shadow: inset 0 1px #fff, 0 2rem 5rem rgba(71,43,90,.09); }
[data-theme="light"] .mg-developer-letter::before { color: rgba(122,62,145,.09); }
[data-theme="light"] .mg-developer-letter > header,
[data-theme="light"] .mg-developer-letter > footer { border-color: rgba(63,34,88,.1); }
[data-theme="light"] .mg-developer-letter h2 { color: #35213f; }
[data-theme="light"] .mg-letter-copy { color: rgba(40,26,54,.7); }
[data-theme="light"] .mg-letter-copy .mg-letter-opening { color: rgba(40,26,54,.92); }
[data-theme="light"] .mg-letter-signature { color: #874b71; }
[data-theme="light"] .mg-developer-letter > footer small { color: rgba(40,26,54,.43); }
[data-theme="light"] .mg-about-principles { border-color: rgba(63,34,88,.1); background: rgba(255,255,255,.58); }
[data-theme="light"] .mg-about-principles article { border-color: rgba(63,34,88,.1); }
[data-theme="light"] .mg-about-principles strong { color: #352440; }
[data-theme="light"] .mg-about-principles p { color: rgba(40,26,54,.56); }

@media (max-width: 991.98px) {
  .mg-hero { padding-top: 7rem; }
  .mg-hero h1 { max-width: 14ch; }
  .mg-hero-media { max-width: 40rem; margin: 1rem auto 0; }
  .mg-principle-grid { grid-template-columns: repeat(2, 1fr); }
  .mg-principle-grid article:nth-child(2) { border-right: 0; }
  .mg-principle-grid article:nth-child(-n+2) { border-bottom: 1px solid rgba(255,255,255,.08); }
  .mg-feature-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .mg-product-showcase { grid-template-columns: 1fr; }
  .mg-showcase-copy { max-width: 44rem; }
  .mg-price-grid { grid-template-columns: 1fr; max-width: 42rem; margin-inline: auto; }
  .mg-price-card p { min-height: 0; }
  .mg-price-founder, .mg-price-supporter { min-height: 0; }
  .mg-legal-shell { padding-top: 7rem; }
  .mg-legal-layout { grid-template-columns: 1fr; }
  .mg-legal-nav { position: static; grid-template-columns: repeat(2, minmax(0,1fr)); }
  .mg-about-principles { grid-template-columns: 1fr; }
  .mg-about-principles article { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.075); }
  .mg-about-principles article:last-child { border-bottom: 0; }
}

@media (max-width: 767.98px) {
  .mg-hero h1 { font-size: clamp(2.75rem, 14vw, 4.2rem); }
  .mg-hero-halo { inset: 0; }
  .mg-message-preview { right: .65rem; bottom: -.9rem; }
  .mg-principle-grid { grid-template-columns: 1fr; }
  .mg-principle-grid article { border-right: 0; border-bottom: 1px solid rgba(255,255,255,.08); }
  .mg-principle-grid article:last-child { border-bottom: 0; }
  .mg-feature-grid, .mg-character-grid, .mg-step-grid { grid-template-columns: 1fr; }
  .mg-feature-card { min-height: 15rem; }
  .mg-feature-card h3 { margin-top: 2.8rem; }
  .mg-character-card img { aspect-ratio: 4 / 4; object-position: center 18%; }
  .mg-cta-panel { align-items: flex-start; flex-direction: column; }
  .mg-footer-bottom { flex-direction: column; }
  .mg-about-developer { align-items: flex-start; }
  .mg-independent-mark { display: none; }
  .mg-developer-letter > footer { align-items: flex-start; flex-direction: column; }
}

@media (max-width: 479.98px) {
  .mg-hero-actions .btn { width: 100%; justify-content: center; }
  .mg-live-chip { top: .65rem; left: .65rem; }
  .mg-message-preview { position: relative; right: auto; bottom: auto; width: calc(100% - 1.2rem); margin: -1.1rem auto 0; }
  .mg-demo-scene { height: 11rem; }
  .mg-demo-messages p { max-width: 88%; }
  .mg-legal-nav { grid-template-columns: 1fr; }
  .mg-price-founder, .mg-price-supporter, .mg-price-free { padding: 1.35rem; }
  .mg-founder-orbit { top: 1.15rem; right: 1.15rem; }
  .mg-about-shell { padding-top: 4.7rem; }
  .mg-about-header { text-align: left; }
  .mg-about-header h1 { font-size: clamp(2.75rem, 14vw, 4.2rem); }
  .mg-developer-letter { padding: 1.45rem; }
  .mg-developer-letter::before { top: 1rem; right: 1rem; font-size: 5.5rem; }
}

@media (prefers-reduced-motion: reduce) {
  .mg-character-card img { transition: none; }
  .mg-price-founder, .mg-price-founder::before, .mg-founder-orbit::after { animation: none; }
}
