:root{
  --mrpag-bg:#edf1f5;
  --mrpag-bg-2:#dfe5ec;
  --mrpag-ink:#11213d;
  --mrpag-ink-soft:#53627d;
  --mrpag-card:rgba(255,255,255,.84);
  --mrpag-shadow:0 38px 90px rgba(24,35,68,.18);
  --mrpag-shadow-soft:0 18px 44px rgba(24,35,68,.12);
  --mrpag-blue:#18c7ee;
  --mrpag-indigo:#365df6;
  --mrpag-violet:#7b39ff;
  --mrpag-magenta:#ff00d4;
  --mrpag-ok:#0d6b53;
  --mrpag-ok-bg:rgba(13,107,83,.10);
  --mrpag-danger:#a1254f;
  --mrpag-danger-bg:rgba(161,37,79,.10);
}

*{box-sizing:border-box;}
html,body{margin:0;padding:0;min-height:100%;}
body.mrpag-body{
  min-height:100vh;
  min-height:100svh;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;
  color:var(--mrpag-ink);
  background:
    radial-gradient(42rem 42rem at -10% 0%, rgba(24,199,238,.18), transparent 58%),
    radial-gradient(38rem 38rem at 100% 10%, rgba(255,0,212,.14), transparent 60%),
    linear-gradient(180deg, var(--mrpag-bg), var(--mrpag-bg-2));
}

a{color:inherit;}

.mrpag{
  position:relative;
  min-height:100vh;
  min-height:100svh;
  overflow:hidden;
}

.mrpag::before,
.mrpag::after{
  content:"";
  position:absolute;
  border-radius:50%;
  pointer-events:none;
}

.mrpag::before{
  width:30rem;height:30rem;top:-8rem;right:-8rem;
  background:radial-gradient(circle, rgba(54,93,246,.16), transparent 66%);
}
.mrpag::after{
  width:34rem;height:34rem;left:-12rem;bottom:-14rem;
  background:radial-gradient(circle, rgba(255,0,212,.12), transparent 68%);
}

.mrpag-shell{
  position:relative;
  z-index:2;
  width:min(1340px, calc(100% - 34px));
  margin:0 auto;
  min-height:100vh;
  min-height:100svh;
  display:grid;
  grid-template-columns:minmax(0,1.18fr) minmax(360px, 470px);
  gap:30px;
  align-items:start;
  padding:28px 0;
}

.mrpag-showcase{display:grid;gap:22px;align-self:start;}

.mrpag-showcase__hero,
.mrpag-showcase__lower,
.mrpag-card{
  position:relative;
  background:rgba(255,255,255,.58);
  border:1px solid rgba(255,255,255,.82);
  border-radius:34px;
  box-shadow:var(--mrpag-shadow);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  overflow:hidden;
}

.mrpag-showcase__hero{padding:32px;}
.mrpag-showcase__hero::before,
.mrpag-showcase__lower::before,
.mrpag-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:6px;
  background:linear-gradient(90deg,var(--mrpag-blue),var(--mrpag-indigo),var(--mrpag-magenta));
}

.mrpag-showcase__lower{padding:24px;display:grid;grid-template-columns:minmax(300px,.98fr) minmax(0,1.25fr);gap:18px;align-items:stretch;}

.mrpag-badge{
  display:inline-flex;
  align-items:center;
  gap:16px;
  padding:14px 18px;
  border-radius:999px;
  background:rgba(255,255,255,.74);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:var(--mrpag-shadow-soft);
}
.mrpag-badge__logo{width:58px;height:58px;object-fit:contain;border-radius:12px;}
.mrpag-badge__text strong{display:block;font-size:17px;line-height:1.1;font-weight:950;letter-spacing:-.02em;}
.mrpag-badge__text span{display:block;margin-top:4px;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:#52627d;}

.mrpag-kicker,
.mrpag-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  font-weight:900;
  letter-spacing:.12em;
  text-transform:uppercase;
  color:#2c4fa3;
}

.mrpag-kicker{
  margin:24px 0 14px;
  padding:10px 14px;
  border-radius:999px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.92);
  box-shadow:var(--mrpag-shadow-soft);
}

.mrpag-title{
  margin:0;
  max-width:11ch;
  font-size:clamp(44px,6vw,80px);
  line-height:.93;
  letter-spacing:-.055em;
  font-weight:950;
}

.mrpag-subtitle{
  max-width:760px;
  margin:20px 0 0;
  font-size:18px;
  line-height:1.72;
  color:var(--mrpag-ink-soft);
}

.mrpag-story-grid{
  margin-top:30px;
  display:grid;
  grid-template-columns:1.2fr .8fr;
  gap:16px;
}

.mrpag-story-card{
  position:relative;
  min-height:100%;
  padding:22px;
  border-radius:28px;
  background:linear-gradient(180deg, rgba(255,255,255,.78), rgba(250,252,255,.62));
  border:1px solid rgba(255,255,255,.9);
  box-shadow:var(--mrpag-shadow-soft);
}

.mrpag-story-card--main{grid-row:span 2;display:flex;flex-direction:column;justify-content:space-between;min-height:260px;}
.mrpag-story-card h2{margin:12px 0 0;font-size:32px;line-height:1.08;letter-spacing:-.04em;font-weight:950;max-width:15ch;}
.mrpag-story-card strong{display:block;font-size:19px;line-height:1.25;font-weight:900;}
.mrpag-story-card p{margin:10px 0 0;font-size:15px;line-height:1.7;color:var(--mrpag-ink-soft);}

.mrpag-research-panel{
  border-radius:26px;
  padding:22px;
  background:linear-gradient(135deg, rgba(17,33,61,.95), rgba(54,93,246,.88) 55%, rgba(255,0,212,.82));
  color:#fff;
  box-shadow:0 24px 50px rgba(17,33,61,.22);
}
.mrpag-research-panel__head strong{display:block;margin-top:10px;font-size:28px;line-height:1.1;font-weight:950;letter-spacing:-.04em;max-width:13ch;}
.mrpag-research-panel p{margin:14px 0 0;font-size:15px;line-height:1.7;color:rgba(255,255,255,.82);}

.mrpag-benefits{display:grid;grid-template-columns:repeat(3,minmax(180px,1fr));gap:16px;align-items:stretch;}
.mrpag-benefit{
  position:relative;
  padding:18px 18px 18px 22px;
  border-radius:24px;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(255,255,255,.9);
  box-shadow:var(--mrpag-shadow-soft);
}
.mrpag-benefit::before{
  content:"";
  position:absolute;left:0;top:16px;bottom:16px;width:5px;border-radius:999px;
  background:linear-gradient(180deg,var(--mrpag-blue),var(--mrpag-indigo),var(--mrpag-magenta));
}
.mrpag-benefit strong{display:block;font-size:16px;line-height:1.3;font-weight:900;letter-spacing:-.02em;}
.mrpag-benefit span{display:block;margin-top:8px;font-size:14px;line-height:1.68;color:var(--mrpag-ink-soft);}

.mrpag-card{padding:26px;align-self:start;position:sticky;top:28px;}
.mrpag-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;}
.mrpag-card-head__text h2{margin:10px 0 0;font-size:30px;line-height:1.02;letter-spacing:-.04em;font-weight:950;}
.mrpag-card-head__text p{margin:12px 0 0;font-size:15px;line-height:1.62;color:var(--mrpag-ink-soft);}
.mrpag-card-logo{width:72px;height:72px;object-fit:contain;border-radius:16px;flex:0 0 auto;}

.mrpag-alert{margin-bottom:14px;padding:13px 14px;border-radius:16px;font-size:14px;line-height:1.5;font-weight:800;border:1px solid transparent;}
.mrpag-alert--error{background:var(--mrpag-danger-bg);color:var(--mrpag-danger);border-color:rgba(161,37,79,.16);}
.mrpag-alert--ok{background:var(--mrpag-ok-bg);color:var(--mrpag-ok);border-color:rgba(13,107,83,.16);}

.mrpag-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;padding:7px;border-radius:22px;background:rgba(255,255,255,.74);border:1px solid rgba(17,33,61,.09);}
.mrpag-tab, button.mrpag-tab{appearance:none !important;border:0 !important;cursor:pointer;border-radius:16px;min-height:50px;padding:0 14px;background:#ffffff !important;color:var(--mrpag-ink) !important;font-size:15px;font-weight:900;transition:all .18s ease;box-shadow:0 8px 18px rgba(24,41,79,.06);}
.mrpag-tab.is-active, button.mrpag-tab.is-active{background:linear-gradient(90deg,var(--mrpag-blue),var(--mrpag-indigo),var(--mrpag-magenta)) !important;color:#fff !important;box-shadow:0 10px 26px rgba(54,93,246,.28);}

.mrpag-panels{margin-top:18px;}
.mrpag-panel{display:none;}
.mrpag-panel.is-active{display:block;}
.mrpag-form{display:grid;gap:14px;}
.mrpag-field{display:grid;gap:8px;}
.mrpag-field span{font-size:13px;font-weight:800;letter-spacing:.02em;color:#3f5070;}
.mrpag-field input{width:100%;min-height:54px;border-radius:16px;border:1px solid rgba(17,33,61,.10);background:rgba(255,255,255,.95);color:var(--mrpag-ink);padding:0 16px;font:inherit;box-shadow:inset 0 1px 0 rgba(255,255,255,.75);}
.mrpag-field input:focus{outline:none;border-color:rgba(54,93,246,.36);box-shadow:0 0 0 4px rgba(54,93,246,.10);}
.mrpag-field--hp{position:absolute !important;left:-9999px !important;top:-9999px !important;width:1px !important;height:1px !important;overflow:hidden !important;}

.mrpag-password{position:relative;}
.mrpag-password__input{padding-right:78px !important;}
.mrpag-password__toggle{appearance:none;border:0;background:transparent;position:absolute;right:14px;top:50%;transform:translateY(-50%);font-size:12px;font-weight:900;letter-spacing:.05em;text-transform:uppercase;color:#3b56d6;cursor:pointer;}

.mrpag-terms{margin-top:2px;padding:16px;border-radius:22px;background:linear-gradient(180deg, rgba(255,255,255,.82), rgba(247,249,255,.94));border:1px solid rgba(17,33,61,.08);}
.mrpag-terms__head{font-size:14px;font-weight:900;letter-spacing:.03em;text-transform:uppercase;color:#253d8d;}
.mrpag-terms__body{margin-top:10px;font-size:14px;line-height:1.68;color:var(--mrpag-ink-soft);}
.mrpag-terms__body p{margin:0;}
.mrpag-terms__body ul{margin:12px 0 0;padding:0;list-style:none;display:grid;gap:9px;}
.mrpag-terms__body li{position:relative;padding-left:16px;}
.mrpag-terms__body li::before{content:"—";position:absolute;left:0;top:0;color:#3b56d6;font-weight:900;}

.mrpag-check{display:flex;align-items:flex-start;gap:10px;margin-top:14px;font-size:13px;line-height:1.6;font-weight:700;color:var(--mrpag-ink);}
.mrpag-check input{margin-top:3px;accent-color:#4a49ff;}

.mrpag-btn{appearance:none;border:0;cursor:pointer;min-height:54px;border-radius:16px;padding:0 18px;font:inherit;font-size:15px;font-weight:900;color:#fff;background:linear-gradient(90deg,var(--mrpag-blue),var(--mrpag-indigo),var(--mrpag-magenta));box-shadow:0 18px 34px rgba(54,93,246,.24);}
.mrpag-btn:hover{transform:translateY(-1px);}
.mrpag-small{font-size:13px;line-height:1.6;color:var(--mrpag-ink-soft);}
.mrpag-small a{font-weight:800;color:#2f47c5;text-decoration:none;}
.mrpag-small a:hover{text-decoration:underline;}
.mrpag-foot{margin-top:18px;font-size:12px;line-height:1.55;color:#6c7891;}

@media (max-width: 1180px){
  .mrpag-card{position:relative;top:auto;}

  .mrpag-shell{grid-template-columns:1fr;gap:22px;padding:22px 0 28px;align-items:start;}
  .mrpag-showcase__lower{grid-template-columns:1fr;}
  .mrpag-card{max-width:720px;width:100%;margin:0 auto;}
}

@media (max-width: 1080px){
  .mrpag-title{max-width:12ch;font-size:clamp(40px,8vw,62px);}
  .mrpag-story-grid{grid-template-columns:1fr;}
  .mrpag-story-card--main{grid-row:auto;min-height:unset;}
  .mrpag-benefits{grid-template-columns:1fr;}
}

@media (max-width: 680px){
  .mrpag-shell{width:min(100% - 18px, 100%);}
  .mrpag-showcase__hero,.mrpag-showcase__lower,.mrpag-card{padding:20px 18px;border-radius:28px;}
  .mrpag-badge{width:100%;border-radius:24px;padding:13px 14px;}
  .mrpag-badge__logo{width:50px;height:50px;}
  .mrpag-title{font-size:clamp(34px,12vw,52px);}
  .mrpag-subtitle{font-size:16px;line-height:1.65;}
  .mrpag-story-card h2{font-size:27px;max-width:none;}
  .mrpag-research-panel__head strong{font-size:24px;max-width:none;}
  .mrpag-card-head__text h2{font-size:26px;}
  .mrpag-card-logo{width:58px;height:58px;}
}

@media (max-width: 520px){
  .mrpag-kicker{display:flex;border-radius:18px;}
  .mrpag-tabs{grid-template-columns:1fr 1fr;}
  .mrpag-tab{min-height:46px;}
  .mrpag-field input,.mrpag-btn{min-height:52px;}
}

.mrpag-brand-panel{
  border-radius:26px;
  padding:22px;
  background:linear-gradient(135deg, rgba(17,33,61,.95), rgba(54,93,246,.88) 55%, rgba(255,0,212,.82));
  color:#fff;
  box-shadow:0 24px 50px rgba(17,33,61,.22);
}
.mrpag-brand-panel__head strong{
  display:block;
  margin-top:10px;
  font-size:28px;
  line-height:1.1;
  font-weight:950;
  letter-spacing:-.04em;
  max-width:13ch;
}
.mrpag-brand-panel p{
  margin:14px 0 0;
  font-size:15px;
  line-height:1.7;
  color:rgba(255,255,255,.82);
}

.mrpag-kicker:empty{display:none;}
button.mrpag-btn,
.mrpag-btn,
input[type="submit"].mrpag-btn{
  color:#fff !important;
  background:linear-gradient(90deg,var(--mrpag-blue),var(--mrpag-indigo),var(--mrpag-magenta)) !important;
}
button.mrpag-btn:hover,
.mrpag-btn:hover{
  color:#fff !important;
}


/* v1.3.4 top story card balance */
.mrpag-story-grid{
  align-items:stretch;
}
.mrpag-story-card--main{
  min-height: 0;
}
.mrpag-story-card{
  min-height: 0;
}
.mrpag-story-card h2{
  max-width: 12ch;
}
.mrpag-story-card p{
  max-width: 30ch;
}
@media (min-width: 901px){
  .mrpag-story-grid{
    grid-template-columns: 1.28fr .82fr;
  }
  .mrpag-story-card--main{
    min-height: 0 !important;
    padding-bottom: 28px;
  }
  .mrpag-story-grid > .mrpag-story-card:not(.mrpag-story-card--main){
    padding: 18px 18px 16px;
  }
  .mrpag-story-grid > .mrpag-story-card:not(.mrpag-story-card--main) strong{
    font-size: 17px;
    line-height: 1.15;
  }
  .mrpag-story-grid > .mrpag-story-card:not(.mrpag-story-card--main) p{
    margin-top: 8px;
    font-size: 14px;
    line-height: 1.5;
  }
}


/* Mobile polish: keep auth card stacked first and prevent horizontal overflow */
@media (max-width: 1180px){
  .mrpag-card{
    order:-1;
    max-width:100%;
    min-width:0;
  }
  .mrpag-showcase{
    order:2;
    min-width:0;
  }
}

@media (max-width: 680px){
  html, body, .mrpag, .mrpag-shell, .mrpag-showcase, .mrpag-card{
    overflow-x:hidden;
  }
  .mrpag-shell > *{
    min-width:0;
  }
  .mrpag-card{
    width:100%;
    margin:0;
  }
  .mrpag-card-head{
    gap:12px;
  }
  .mrpag-card-head__text,
  .mrpag-panels,
  .mrpag-form,
  .mrpag-tabs{
    min-width:0;
  }
}


/* Mobile overflow hard stop */
.mrpag-badge__text,
.mrpag-card-head__text{
  min-width:0;
  flex:1 1 0;
}
.mrpag-badge__text strong,
.mrpag-badge__text span,
.mrpag-card-head__text h2,
.mrpag-card-head__text p{
  overflow-wrap:anywhere;
  word-break:normal;
}

@media (max-width: 680px){
  .mrpag-shell{
    width:100%;
    max-width:100%;
    margin:0;
    padding-left:10px;
    padding-right:10px;
    box-sizing:border-box;
  }
  .mrpag-badge,
  .mrpag-card-head{
    width:100%;
    max-width:100%;
  }
  .mrpag-badge{
    display:flex;
    align-items:flex-start;
    gap:12px;
  }
  .mrpag-card-head{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    flex-wrap:nowrap;
  }
  .mrpag-badge__text strong{
    font-size:15px;
    line-height:1.15;
  }
  .mrpag-badge__text span{
    font-size:11px;
    letter-spacing:.08em;
  }
  .mrpag-card-head__text h2{
    font-size:24px;
    line-height:1.06;
    max-width:none;
  }
  .mrpag-card-head__text p{
    font-size:14px;
    line-height:1.5;
  }
  .mrpag-card-logo{
    flex:0 0 52px;
    width:52px;
    height:52px;
  }
}
