/* Product-page-only styling: never imported by the protected homepage. */
.mm-product { margin:0; background:#03100e; color:#f2eadb; font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; -webkit-font-smoothing:antialiased; color-scheme:dark; }
.mm-product *, .mm-product *::before, .mm-product *::after { box-sizing:border-box; }
.mm-product a { color:inherit; }
.mm-product a:focus-visible, .mm-product button:focus-visible, .mm-product input:focus-visible { outline:3px solid #49dcff; outline-offset:5px; }
.mm-product button, .mm-product input { font:inherit; }
.mm-product .mm-skip { position:absolute; width:1px; height:1px; overflow:hidden; clip-path:inset(50%); }
.mm-product .mm-skip:focus { z-index:20; top:12px; left:12px; width:auto; height:auto; padding:12px; clip-path:none; background:#03100e; }
.mm-product .mm-header { position:relative; z-index:2; max-width:1320px; margin:auto; min-height:78px; padding:18px 32px; display:flex; justify-content:space-between; align-items:center; gap:24px; }
.mm-product .mm-brand { display:inline-flex; align-items:center; gap:12px; font-size:16px; font-weight:650; letter-spacing:.13em; text-decoration:none; white-space:nowrap; }
.mm-product .mm-brand > span { display:grid; place-items:center; width:35px; height:35px; border-radius:50%; background:#18d6bd; color:#03100e; font-size:23px; letter-spacing:0; }
.mm-product .mm-header nav { display:flex; align-items:center; gap:30px; font-size:14px; }
.mm-product .mm-header nav a { text-decoration:none; }
.mm-product .mm-header nav a:hover { color:#18d6bd; }
.mm-product .mm-ocean { position:relative; isolation:isolate; padding:18px 28px 56px; }
.mm-product .mm-ocean-image { position:absolute; z-index:-2; inset:-78px 0 0; width:100%; height:calc(100% + 78px); object-fit:cover; object-position:center; }
.mm-product .mm-ocean::before { content:""; position:absolute; z-index:-1; inset:-78px 0 0; pointer-events:none; background:linear-gradient(180deg,rgba(3,16,14,.2) 0%,rgba(3,16,14,.45) 32%,rgba(3,16,14,.1) 54%,rgba(3,16,14,.28) 76%,#03100e 100%); }
.mm-product .mm-intro { max-width:790px; margin:0 auto; text-align:center; text-shadow:0 2px 12px rgba(0,0,0,.55); }
.mm-product .mm-logo-area { position:relative; isolation:isolate; width:330px; max-width:86%; margin:0 auto 12px; }
/* Localized warm backing behind the untouched wordmark; no blur or logo filter. */
.mm-product .mm-logo-area::before { content:""; position:absolute; z-index:-1; left:28%; top:24%; width:76%; height:56%; background:radial-gradient(ellipse 50% 50% at 50% 50%,rgba(239,230,209,.90) 0%,rgba(239,230,209,.90) 55%,rgba(239,230,209,.64) 70%,rgba(239,230,209,.20) 85%,rgba(239,230,209,0) 100%); pointer-events:none; }
.mm-product .mm-logo { display:block; width:100%; height:auto; }
.mm-product h1 { font-family:Georgia,"Times New Roman",serif; font-size:clamp(27px,2.5vw,38px); font-weight:400; line-height:1.14; margin:0 0 14px; letter-spacing:-.025em; }
.mm-product h1 > span { color:#e9cca0; }
.mm-product .mm-description { margin:0 auto; max-width:760px; font-size:16px; line-height:1.5; text-wrap:pretty; }
.mm-product .mm-privacy { margin:12px 0 16px; font-size:14px; }
.mm-product .mm-actions { display:flex; justify-content:center; gap:12px; flex-wrap:wrap; }
.mm-product .mm-button { display:inline-flex; align-items:center; justify-content:center; gap:20px; min-height:46px; padding:11px 25px; border-radius:999px; font-size:15px; line-height:1.3; text-decoration:none; text-shadow:none; cursor:pointer; transition:background-color .15s ease; }
.mm-product .mm-button--primary { background:linear-gradient(150deg,#008d86,#00616a); color:#fff; border:1px solid #31c6c8; box-shadow:inset 0 0 12px rgba(24,214,189,.14); }
.mm-product .mm-button--secondary { background:rgba(3,16,14,.52); color:#f2eadb; border:1px solid #d3dacf; }
.mm-product .mm-button:hover { background:#075d57; }
.mm-product .mm-button:disabled { cursor:not-allowed; opacity:.6; }
.mm-product .mm-platform { margin:12px 0 5px; font-size:13px; }
.mm-product .mm-stage { display:grid; grid-template-columns:minmax(0,1fr) 246px minmax(0,1fr); align-items:center; gap:40px; max-width:1090px; margin:28px auto 0; }
.mm-product .mm-phone { grid-column:2; margin:0; padding:10px; border-radius:32px; background:#070c0e; border:2px solid #6d7777; box-shadow:0 0 0 3px #091517,0 24px 48px rgba(0,0,0,.6),inset 0 0 0 1px #141f23; }
.mm-product .mm-phone > img { display:block; width:100%; height:auto; border-radius:20px; }
.mm-product .mm-features { max-width:1050px; margin:auto; padding:60px 36px 80px; }
.mm-product .mm-section-heading { text-align:center; margin:0 auto 52px; }
.mm-product .mm-kicker { color:#18d6bd; font-size:12px; text-transform:uppercase; letter-spacing:.16em; }
.mm-product h2, .mm-product h3 { font-family:Georgia,"Times New Roman",serif; font-weight:400; text-wrap:balance; }
.mm-product h2 { font-size:clamp(30px,3.3vw,44px); line-height:1.15; margin:12px 0 20px; }
.mm-product h3 { font-size:clamp(28px,3vw,38px); line-height:1.15; margin:0 0 20px; }
.mm-product .mm-feature { display:grid; grid-template-columns:minmax(0,1fr) minmax(260px,340px); align-items:center; gap:80px; margin:0 auto 90px; max-width:900px; }
.mm-product .mm-feature-copy { max-width:400px; }
.mm-product .mm-feature p, .mm-product .mm-personal p { font-size:17px; line-height:1.75; color:#d5dfd8; }
.mm-product .mm-rule { display:block; width:44px; border-top:2px solid #18d6bd; margin-bottom:24px; }
.mm-product .mm-screen { margin:0; width:100%; }
.mm-product .mm-screen img { display:block; width:100%; height:auto; border-radius:18px; border:1px solid #39635b; box-shadow:0 20px 50px rgba(0,0,0,.3); }
.mm-product .mm-screen figcaption { text-align:center; font-size:13px; letter-spacing:.08em; margin-top:16px; color:#bfd1c8; }
.mm-product .mm-feature--reverse { grid-template-columns:minmax(260px,340px) minmax(0,1fr); }
.mm-product .mm-feature--reverse .mm-feature-copy { grid-column:2; grid-row:1; }
.mm-product .mm-feature--reverse .mm-screen { grid-column:1; grid-row:1; }
.mm-product .mm-personal { max-width:700px; margin:auto; text-align:center; padding:44px 24px; border-block:1px solid rgba(128,226,209,.2); }
.mm-product .mm-personal .mm-rule { margin-inline:auto; }
.mm-product .mm-signup { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); gap:64px; max-width:1050px; margin:0 auto 60px; padding:64px 36px; }
.mm-product .mm-signup-intro p { line-height:1.7; }
.mm-product .mm-inactive { color:#d5dfd8; }
.mm-product .mm-inactive strong { display:block; margin-bottom:8px; color:#f2eadb; }
.mm-product form { padding:28px; border:1px solid #2b5147; border-radius:20px; background:#071b18; min-width:0; }
.mm-product .mm-field label { display:block; font-weight:600; margin-bottom:10px; }
.mm-product input[type="email"] { width:100%; padding:13px; min-height:48px; color:#f2eadb; background:#03100e; border:1px solid #5c8779; border-radius:8px; }
.mm-product input[aria-invalid="true"] { outline:2px solid #e3bba0; outline-offset:2px; }
.mm-product fieldset { border:0; padding:0; margin:22px 0 16px; min-width:0; }
.mm-product legend { font-size:13px; color:#bfd1c8; margin-bottom:18px; }
.mm-product .mm-check { display:grid; grid-template-columns:20px minmax(0,1fr); gap:0 12px; margin:0 0 18px; align-items:start; }
.mm-product .mm-check input { width:19px; height:19px; margin:4px 0; accent-color:#18d6bd; }
.mm-product .mm-check label { line-height:1.6; cursor:pointer; }
.mm-product .mm-error { color:#f1cbb0; font-size:13px; margin:8px 0 0; line-height:1.5; }
.mm-product .mm-error:empty { display:none; }
.mm-product .mm-check .mm-error { grid-column:2; }
.mm-product .mm-form-note { font-size:12px; color:#bfd1c8; line-height:1.6; }
.mm-product .mm-form-status { font-size:14px; line-height:1.65; color:#f2eadb; }
.mm-product .mm-form-status:empty { margin:0; }
.mm-product .mm-honeypot { display:none; }
.mm-product form[aria-busy="true"] .mm-check { pointer-events:none; }
.mm-product .mm-form-note details { margin-bottom:20px; }
.mm-product .mm-form-note summary { cursor:pointer; text-decoration:underline; text-underline-offset:3px; }
.mm-product .mm-form-note summary:focus-visible { outline:3px solid #49dcff; outline-offset:5px; }
.mm-product .mm-footer { text-align:center; padding:36px 24px; border-top:1px solid #2b5147; font-size:13px; color:#bfd1c8; }
.mm-product .mm-footer a { text-underline-offset:5px; }
.mm-product section[id] { scroll-margin-top:24px; }
.mm-product section[id]:focus-visible { outline:2px solid #49dcff; outline-offset:-5px; }
@media(max-width:900px) {
  .mm-product .mm-header { padding:18px 24px; flex-direction:column; gap:15px; }
  .mm-product .mm-header nav { gap:24px; flex-wrap:wrap; justify-content:center; }
  .mm-product .mm-stage { gap:22px; grid-template-columns:minmax(0,1fr) 218px minmax(0,1fr); }
  .mm-product .mm-feature, .mm-product .mm-feature--reverse { gap:40px; grid-template-columns:minmax(0,1fr) minmax(220px,280px); }
  .mm-product .mm-feature--reverse .mm-feature-copy { grid-column:1; }
  .mm-product .mm-feature--reverse .mm-screen { grid-column:2; }
  .mm-product .mm-signup { gap:32px; }
}
@media(max-width:650px) {
  .mm-product .mm-header { padding:18px 16px; }
  .mm-product .mm-brand { font-size:13px; letter-spacing:.1em; }
  .mm-product .mm-header nav { gap:9px 20px; font-size:12px; }
  .mm-product .mm-header nav a { padding:6px 0; }
  .mm-product .mm-ocean { padding:18px 22px 48px; }
  .mm-product .mm-ocean-image { object-position:63% center; }
  .mm-product .mm-ocean::before { background:linear-gradient(180deg,rgba(3,16,14,.45),rgba(3,16,14,.65) 35%,rgba(3,16,14,.18) 65%,#03100e 100%); }
  .mm-product .mm-logo-area { width:290px; max-width:100%; }
  .mm-product h1 { font-size:29px; line-height:1.18; }
  .mm-product .mm-description { font-size:14px; line-height:1.6; }
  .mm-product .mm-privacy { font-size:13px; }
  .mm-product .mm-actions { gap:10px; }
  .mm-product .mm-button { width:min(270px,100%); }
  .mm-product .mm-stage { display:flex; flex-direction:column; gap:25px; margin-top:30px; }
  .mm-product .mm-phone { width:min(236px,88%); }
  .mm-product .mm-features { padding:40px 22px 50px; }
  .mm-product .mm-section-heading { margin-bottom:44px; }
  .mm-product .mm-feature, .mm-product .mm-feature--reverse { display:flex; flex-direction:column; gap:28px; margin-bottom:64px; }
  .mm-product .mm-feature-copy { width:100%; }
  .mm-product .mm-screen { width:min(340px,100%); }
  .mm-product .mm-feature p, .mm-product .mm-personal p { font-size:16px; line-height:1.65; }
  .mm-product .mm-personal { padding:36px 0; }
  .mm-product .mm-signup { grid-template-columns:minmax(0,1fr); padding:32px 22px; gap:22px; margin-bottom:32px; }
  .mm-product form { padding:22px 18px; }
}
@media(prefers-reduced-motion:reduce) { .mm-product .mm-button { transition:none; } }

/* Recruitment only: approved opening, features and existing signup layout stay intact. */
.mm-product .mm-testing { max-width:1050px; margin:auto; padding:12px 36px 40px; }
.mm-product .mm-testing-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:24px; }
.mm-product .mm-testing-path { min-width:0; padding:28px; border:1px solid #2b5147; border-radius:20px; background:#071b18; }
.mm-product .mm-testing-path h3 { font-size:clamp(28px,2.3vw,34px); }
.mm-product .mm-testing p:not(.mm-kicker) { font-size:16px; line-height:1.7; color:#d5dfd8; }
.mm-product .mm-testing .mm-testing-duration { color:#f2eadb; }
.mm-product .mm-testing .mm-testing-status { padding-top:16px; border-top:1px solid #2b5147; }
.mm-product .mm-testing-note { max-width:700px; margin:28px auto 0; text-align:center; }
@media(max-width:650px) {
  .mm-product .mm-testing { padding:12px 22px 28px; }
  .mm-product .mm-testing-grid { grid-template-columns:minmax(0,1fr); gap:22px; }
  .mm-product .mm-testing-path { padding:24px 20px; }
}

/* Expanded founder story only; existing product sections remain unchanged. */
.mm-product .mm-story { max-width:770px; margin:0 auto; padding:12px 36px 80px; }
.mm-product .mm-story-copy { max-width:65ch; margin-inline:auto; }
.mm-product .mm-story p { font-size:17px; line-height:1.75; margin:0 0 24px; }
.mm-product .mm-story .mm-story-signature { margin:32px 0 0; }
.mm-product .mm-story-signature span { display:block; }
.mm-product .mm-story-signature span + span { font-size:14px; color:#d5dfd8; }
@media(max-width:650px) {
  .mm-product .mm-story { padding:12px 22px 50px; }
  .mm-product .mm-story p { font-size:16px; line-height:1.7; margin-bottom:20px; }
}
