:root { --jmi-wine:#28070f; --jmi-ink:#171315; --jmi-cream:#f7f3ec; --jmi-paper:#fffdf9; --jmi-red:#cc153f; --jmi-gold:#e5bd69; --jmi-lilac:#c9b9ff; --jmi-line:rgba(255,255,255,.18); }
* { box-sizing:border-box; }
.jmi-site { margin:0; color:var(--jmi-ink); background:var(--jmi-cream); font-family:"Avenir Next", Avenir, Helvetica, Arial, sans-serif; }
.jmi-site h1,.jmi-site h2,.jmi-site h3,.jmi-site p { margin-top:0; }
.jmi-site h1,.jmi-site h2,.jmi-site h3 { font-family:Georgia, "Times New Roman", serif; font-weight:400; letter-spacing:-.045em; }
.jmi-shell { width:min(1180px, calc(100% - 48px)); margin-inline:auto; }
.jmi-header { position:sticky; top:0; z-index:30; background:rgba(40,7,15,.92); backdrop-filter:blur(18px); color:white; border-bottom:1px solid var(--jmi-line); }
.jmi-nav { min-height:72px; display:flex; align-items:center; gap:25px; }
.jmi-brand { color:inherit; text-decoration:none; display:inline-flex; align-items:center; gap:9px; letter-spacing:.16em; font-size:12px; }
.jmi-brand span { display:grid; place-items:center; width:30px; height:30px; border-radius:50%; background:var(--jmi-gold); color:var(--jmi-wine); font-family:Georgia,serif; font-size:21px; letter-spacing:0; }
.jmi-nav-links { display:flex; gap:20px; margin-right:auto; }
.jmi-nav a { color:inherit; text-decoration:none; font-size:12px; font-weight:700; }
.jmi-nav-links a { opacity:.78; }.jmi-nav-links a:hover { opacity:1; }
.jmi-languages { display:flex; border:1px solid rgba(255,255,255,.22); border-radius:99px; overflow:hidden; }
.jmi-languages a { padding:6px 7px; font-size:10px; opacity:.65; }.jmi-languages a.is-active { background:#fff; color:var(--jmi-wine); opacity:1; }
.jmi-download,.jmi-button { display:inline-flex; align-items:center; justify-content:center; gap:10px; border-radius:99px; padding:13px 19px; text-decoration:none; font-size:13px; font-weight:800; transition:transform .2s ease, box-shadow .2s ease; }
.jmi-download { background:#fff; color:var(--jmi-wine)!important; white-space:nowrap; }.jmi-button { color:var(--jmi-ink); background:#d4ff84; }.jmi-button:hover,.jmi-download:hover { transform:translateY(-2px); box-shadow:0 12px 28px rgba(0,0,0,.16); }
.jmi-hero,.jmi-feature-hero { overflow:hidden; position:relative; background:var(--jmi-wine); color:white; }
.jmi-hero { min-height:760px; padding:95px 0 58px; }.jmi-hero-orbit { position:absolute; width:900px; height:900px; border:1px solid rgba(229,189,105,.32); border-radius:50%; right:-340px; top:-300px; box-shadow:0 0 0 120px rgba(204,21,63,.07),0 0 0 240px rgba(229,189,105,.04); }
.jmi-hero-grid,.jmi-feature-hero-grid { display:grid; grid-template-columns:1.02fr .98fr; align-items:center; gap:45px; position:relative; z-index:1; }
.jmi-kicker { color:var(--jmi-gold); font-size:11px; font-weight:800; letter-spacing:.15em; text-transform:uppercase; }
.jmi-hero h1 { max-width:670px; font-size:clamp(56px,8.4vw,118px); line-height:.88; margin-bottom:30px; }.jmi-hero h1 span,.jmi-hero h1 em { display:block; }.jmi-hero h1 em,.jmi-feature-hero h1 em,.jmi-story h2 em,.jmi-index-hero h1 em,.jmi-spotlight-card h3 em,.jmi-feature-card h2 em,.jmi-proof h2 em,.jmi-live h2 em { color:var(--jmi-gold); font-style:italic; }
.jmi-lead { max-width:610px; color:rgba(255,255,255,.82); font-size:18px; line-height:1.55; }.jmi-actions { display:flex; gap:22px; align-items:center; margin-top:34px; }.jmi-text-link { color:#fff; text-underline-offset:5px; font-size:13px; font-weight:800; }
.jmi-hero-character { margin:0; min-height:520px; position:relative; display:grid; place-items:end center; background:radial-gradient(circle at 48% 44%,rgba(229,189,105,.9),rgba(204,21,63,.4) 36%,transparent 64%); border-radius:46% 46% 22px 22px; overflow:hidden; }.jmi-hero-character img { position:relative; width:min(500px,100%); z-index:1; transform:translateY(18px); filter:drop-shadow(0 28px 30px rgba(0,0,0,.28)); }.jmi-speech { position:absolute; z-index:2; top:56px; left:15px; width:min(300px,80%); padding:22px; color:#28141a; background:#fffdf8; border-radius:18px 18px 18px 3px; box-shadow:0 16px 50px rgba(0,0,0,.2); }.jmi-speech small,.jmi-demo-prompt small,.jmi-demo-result small { font-size:10px; font-weight:900; letter-spacing:.13em; text-transform:uppercase; color:var(--jmi-red); }.jmi-speech strong { display:block; margin-top:8px; font-family:Georgia,serif; font-size:20px; line-height:1.14; font-weight:400; }
.jmi-story { display:grid; grid-template-columns:.8fr 1fr; gap:12vw; padding:130px 0; }.jmi-story h2,.jmi-index-hero h1 { font-size:clamp(42px,5vw,74px); line-height:.96; }.jmi-story>p { margin:auto 0 0; max-width:550px; font-size:19px; line-height:1.65; color:#554c4c; }
.jmi-cast { padding:0 0 132px; background:linear-gradient(180deg,var(--jmi-cream) 0 21%,#260810 21%); color:var(--jmi-ink); }.jmi-cast-grid { display:grid; grid-template-columns:.82fr 1.18fr; gap:clamp(38px,8vw,115px); align-items:center; }.jmi-cast-copy { padding-top:clamp(42px,8vw,105px); }.jmi-cast-copy h2,.jmi-moment-heading h2 { font-size:clamp(42px,5.3vw,76px); line-height:.94; }.jmi-cast-copy h2 em,.jmi-moment-heading h2 em { color:var(--jmi-red); font-style:italic; }.jmi-cast-copy>p:last-child { max-width:470px; color:#5c5053; font-size:17px; line-height:1.62; }.jmi-cast-stage { min-height:525px; padding:32px; position:relative; overflow:hidden; border:1px solid rgba(229,189,105,.42); border-radius:34px; background:radial-gradient(circle at 50% 27%,rgba(229,189,105,.2),transparent 29%),radial-gradient(circle at 78% 85%,rgba(204,21,63,.28),transparent 35%),#20040c; color:#fff; box-shadow:0 34px 70px rgba(50,10,20,.2); }.jmi-cast-stage::before { position:absolute; inset:24px; border:1px solid rgba(255,255,255,.09); border-radius:24px; content:''; pointer-events:none; }.jmi-cast-quote { position:relative; z-index:2; max-width:415px; margin:10px auto 0; padding:21px 24px; border-radius:20px 20px 20px 3px; background:#fffdf8; color:#271319; box-shadow:0 16px 42px rgba(0,0,0,.28); font-family:Georgia,serif; font-size:clamp(20px,2.2vw,30px); line-height:1.07; transition:opacity .18s ease,transform .18s ease; }.jmi-cast-quote.is-changing { animation:jmi-quote-in .38s cubic-bezier(.2,.8,.2,1) both; }.jmi-cast-people { position:absolute; z-index:1; right:16px; bottom:0; left:16px; display:grid; grid-template-columns:repeat(4,1fr); align-items:end; gap:4px; }.jmi-cast-people button { min-height:310px; padding:0 7px 15px; border:0; background:transparent; color:#fff; cursor:pointer; transition:transform .28s cubic-bezier(.2,.8,.2,1),filter .28s ease; }.jmi-cast-people button:hover,.jmi-cast-people button.is-active { transform:translateY(-18px); }.jmi-cast-people button:not(.is-active) { filter:grayscale(.45) brightness(.72); }.jmi-cast-people img { display:block; width:100%; height:230px; margin:auto; object-fit:contain; object-position:center bottom; filter:drop-shadow(0 20px 12px rgba(0,0,0,.35)); }.jmi-cast-people span { display:block; padding-top:9px; text-align:center; }.jmi-cast-people strong { display:block; font-family:Georgia,serif; font-size:20px; font-weight:400; }.jmi-cast-people small { display:block; margin-top:4px; color:rgba(255,255,255,.58); font-size:9px; line-height:1.2; }.jmi-moment { padding:126px 0; background:linear-gradient(135deg,#f0ebe4,#fffdf9 55%,#eadde0); }.jmi-moment-heading { display:grid; grid-template-columns:1fr .72fr; gap:10vw; align-items:end; }.jmi-moment-heading>p { margin:0 0 8px; color:#5c5053; font-size:17px; line-height:1.62; }.jmi-moment-tabs { display:flex; gap:9px; margin:42px 0 20px; overflow-x:auto; scrollbar-width:none; }.jmi-moment-tabs::-webkit-scrollbar { display:none; }.jmi-moment-tabs button { flex:0 0 auto; padding:12px 16px; border:1px solid #d6c6c1; border-radius:999px; background:transparent; color:#4c3339; font:750 12px "Avenir Next",Avenir,sans-serif; cursor:pointer; transition:background .2s ease,color .2s ease,transform .2s ease; }.jmi-moment-tabs button:hover,.jmi-moment-tabs button.is-active { background:var(--jmi-wine); border-color:var(--jmi-wine); color:#fff; transform:translateY(-2px); }.jmi-moment-phone { width:min(100%,790px); min-height:422px; margin:0 auto; padding:18px; border:10px solid #25141a; border-radius:42px; background:#f8f7f3; box-shadow:0 35px 70px rgba(53,20,29,.18); }.jmi-phone-head { display:flex; align-items:center; gap:10px; padding:0 6px 18px; color:#28151b; font-size:13px; }.jmi-phone-head>span { width:31px; height:31px; border-radius:11px; background:var(--jmi-red); }.jmi-phone-head strong { font-weight:800; }.jmi-phone-head small { margin-left:auto; color:#876d74; font-size:10px; font-weight:800; text-transform:uppercase; }.jmi-phone-user { width:fit-content; max-width:75%; margin:7px 0 22px auto; padding:13px 15px; border-radius:17px 17px 4px 17px; background:#e2d8ff; color:#34253a; font-size:15px; line-height:1.4; transition:opacity .15s ease; }.jmi-phone-answer { max-width:85%; padding:18px 20px; border-radius:20px 20px 20px 4px; background:#fff; box-shadow:0 8px 22px rgba(58,31,37,.08); }.jmi-phone-answer small { color:var(--jmi-red); font-size:10px; font-weight:900; letter-spacing:.12em; text-transform:uppercase; }.jmi-phone-answer p { margin:9px 0 16px; color:#38262b; font-family:Georgia,serif; font-size:clamp(20px,2.4vw,30px); line-height:1.06; transition:opacity .15s ease; }.jmi-phone-answer button { border:0; padding:0; background:transparent; color:var(--jmi-red); font:800 12px "Avenir Next",Avenir,sans-serif; cursor:pointer; }.jmi-phone-answer button span { padding-left:5px; }.jmi-phone-user.is-changing,.jmi-phone-answer p.is-changing,.jmi-phone-answer button.is-changing { opacity:.18; }
.jmi-spotlight { display:grid; grid-template-columns:repeat(3,1fr); gap:18px; padding-bottom:130px; }.jmi-spotlight-card { min-height:390px; padding:28px; position:relative; overflow:hidden; color:#1e0a0e; background:linear-gradient(140deg,#e6dfff,#fecab9); border-radius:28px; text-decoration:none; display:flex; flex-direction:column; }.jmi-spotlight-card--2 { background:linear-gradient(140deg,#d7ffd8,#a3e3d2); }.jmi-spotlight-card--3 { background:linear-gradient(140deg,#ffe0a8,#ee9cab); }.jmi-spotlight-card>span { font-size:12px; font-weight:900; color:#7b5974; }.jmi-spotlight-card small { margin-top:auto; font-size:10px; font-weight:800; text-transform:uppercase; letter-spacing:.1em; }.jmi-spotlight-card h3 { font-size:35px; line-height:.98; margin:10px 0 0; }.jmi-spotlight-card i,.jmi-feature-card i { position:absolute; right:25px; top:24px; width:38px; height:38px; display:grid; place-items:center; border-radius:50%; background:rgba(255,255,255,.75); font-style:normal; font-size:17px; }
.jmi-index-hero { padding:116px 0 64px; }.jmi-index-hero>p:last-child { max-width:650px; font-size:18px; color:#5a5050; line-height:1.6; }.jmi-feature-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; padding-bottom:110px; }.jmi-feature-card { min-height:330px; padding:28px; position:relative; overflow:hidden; color:var(--jmi-ink); background:#fff; border:1px solid #e9dfd7; border-radius:26px; text-decoration:none; transition:transform .25s ease, box-shadow .25s ease; }.jmi-feature-card:hover { transform:translateY(-6px); box-shadow:0 20px 42px rgba(63,24,31,.12); }.jmi-feature-card img { position:absolute; right:18px; bottom:-15px; width:150px; max-height:190px; object-fit:contain; filter:drop-shadow(0 18px 15px rgba(34,10,15,.12)); }.jmi-card-number { color:var(--jmi-red); font-size:11px; font-weight:900; }.jmi-feature-card small { display:block; margin-top:48px; padding-right:145px; font-size:10px; line-height:1.35; letter-spacing:.1em; text-transform:uppercase; color:#7d6c71; }.jmi-feature-card h2 { max-width:80%; margin:11px 0; font-size:34px; line-height:.97; }.jmi-feature-card p { max-width:74%; color:#6a6062; line-height:1.5; font-size:14px; }
.jmi-feature-hero { padding:88px 0 70px; }.jmi-feature-hero h1 { max-width:700px; font-size:clamp(48px,6.7vw,94px); line-height:.91; margin:22px 0; }.jmi-crumb { color:rgba(255,255,255,.72); font-size:13px; text-decoration:none; }.jmi-feature-portrait { margin:0; min-height:410px; position:relative; overflow:hidden; display:grid; place-items:end center; border:1px solid rgba(255,255,255,.2); border-radius:28px; background:linear-gradient(145deg,#4c1020,#b71b42 60%,#dcba77); }.jmi-feature-portrait span { position:absolute; width:260px; height:260px; top:55px; border-radius:50%; background:#f9efe0; }.jmi-feature-portrait img { position:relative; max-height:390px; max-width:90%; object-fit:contain; filter:drop-shadow(0 24px 18px rgba(0,0,0,.24)); }
.jmi-demo-section { padding:105px 0 62px; }.jmi-section-heading { display:flex; align-items:end; justify-content:space-between; gap:35px; margin-bottom:24px; }.jmi-section-heading h2,.jmi-proof h2,.jmi-live h2 { margin-bottom:0; font-size:clamp(38px,4.8vw,66px); line-height:.96; }.jmi-section-heading h2 em { color:var(--jmi-red); }.jmi-demo-card { padding:clamp(26px,6vw,72px); background:linear-gradient(135deg,#261018,#45111d); color:#fff; border-radius:34px; border:1px solid rgba(229,189,105,.5); }.jmi-demo-prompt { max-width:830px; }.jmi-demo-prompt p,.jmi-demo-result p { margin:12px 0 0; font-family:Georgia,serif; font-size:clamp(28px,4vw,52px); line-height:1.04; }.jmi-demo-result { margin-top:35px; padding-top:30px; border-top:1px solid rgba(255,255,255,.2); color:#d7ff9b; }.jmi-demo-button { margin-top:38px; border:0; border-radius:99px; padding:14px 21px; color:#220a10; background:var(--jmi-gold); font:800 13px "Avenir Next",Avenir,sans-serif; cursor:pointer; }.jmi-demo-card.is-revealed .jmi-demo-button { background:#fff; }
.jmi-proof { display:grid; grid-template-columns:1fr 1fr; gap:8vw; padding:82px 0; border-top:1px solid #dfd1c8; }.jmi-proof ul { list-style:none; padding:0; margin:0; }.jmi-proof li { display:flex; gap:15px; padding:16px 0; border-bottom:1px solid #dfd1c8; font-size:18px; }.jmi-proof li span { color:var(--jmi-red); }.jmi-faq { padding-bottom:112px; }.jmi-faq details { border-top:1px solid #d8cbc2; }.jmi-faq details:last-child { border-bottom:1px solid #d8cbc2; }.jmi-faq summary { list-style:none; cursor:pointer; padding:22px 42px 22px 0; position:relative; font:400 25px/1.05 Georgia,serif; }.jmi-faq summary::-webkit-details-marker { display:none; }.jmi-faq summary i { position:absolute; right:5px; font:normal 30px/1 Avenir,sans-serif; color:var(--jmi-red); }.jmi-faq details[open] summary i { transform:rotate(45deg); }.jmi-faq details p { max-width:720px; padding:0 0 24px; margin:0; color:#675b5e; line-height:1.6; }
.jmi-live { color:#fff; background:#171315; padding:110px 0; }.jmi-live .jmi-shell { max-width:850px; }.jmi-live p:not(.jmi-kicker) { max-width:590px; line-height:1.6; color:rgba(255,255,255,.75); margin:22px 0 30px; }.jmi-live h2 em { color:#d4ff84; }.jmi-footer { padding:48px 0; background:#28070f; color:#fff; }.jmi-footer .jmi-shell { display:flex; align-items:center; gap:25px; }.jmi-footer p { margin:0; font-size:13px; color:rgba(255,255,255,.72); }.jmi-footer small { margin-left:auto; color:rgba(255,255,255,.5); font-size:11px; }
@keyframes jmi-quote-in { from { opacity:.15; transform:translateY(9px) scale(.98); } to { opacity:1; transform:none; } }
@media (max-width:760px) { .jmi-shell { width:min(100% - 32px, 1180px); }.jmi-nav { min-height:62px; gap:12px; }.jmi-nav-links,.jmi-download { display:none; }.jmi-languages { margin-left:auto; }.jmi-hero { min-height:auto; padding:65px 0 0; }.jmi-hero-grid,.jmi-feature-hero-grid,.jmi-story,.jmi-proof,.jmi-cast-grid,.jmi-moment-heading { grid-template-columns:1fr; }.jmi-hero h1 { font-size:clamp(54px,16vw,84px); }.jmi-hero-character { min-height:385px; margin-top:28px; }.jmi-speech { top:24px; left:10px; }.jmi-story { gap:22px; padding:80px 0; }.jmi-story>p { font-size:17px; }.jmi-cast { padding-bottom:78px; background:linear-gradient(180deg,var(--jmi-cream) 0 10%,#260810 10%); }.jmi-cast-copy { padding-top:76px; }.jmi-cast-stage { min-height:450px; padding:18px; border-radius:25px; }.jmi-cast-quote { margin-top:5px; padding:17px; font-size:21px; }.jmi-cast-people { right:6px; left:6px; }.jmi-cast-people button { min-height:235px; padding:0 2px 10px; }.jmi-cast-people img { height:165px; }.jmi-cast-people strong { font-size:15px; }.jmi-cast-people small { font-size:8px; }.jmi-spotlight { grid-template-columns:1fr; padding-bottom:80px; }.jmi-spotlight-card { min-height:270px; }.jmi-moment { padding:78px 0; }.jmi-moment-heading { gap:7px; }.jmi-moment-heading>p { font-size:16px; }.jmi-moment-tabs { margin:28px 0 15px; }.jmi-moment-phone { min-height:385px; padding:13px; border-width:7px; border-radius:30px; }.jmi-phone-user,.jmi-phone-answer { max-width:94%; }.jmi-phone-answer p { font-size:23px; }.jmi-index-hero { padding:76px 0 42px; }.jmi-feature-grid { grid-template-columns:1fr; padding-bottom:75px; }.jmi-feature-card { min-height:300px; }.jmi-feature-card h2 { font-size:33px; }.jmi-feature-hero { padding:65px 0 44px; }.jmi-feature-portrait { min-height:300px; margin-top:8px; }.jmi-feature-portrait img { max-height:280px; }.jmi-demo-section { padding-top:75px; }.jmi-section-heading { display:block; }.jmi-section-heading h2 { margin-top:10px; }.jmi-demo-card { border-radius:22px; }.jmi-proof { padding:65px 0; gap:28px; }.jmi-faq { padding-bottom:75px; }.jmi-faq summary { font-size:22px; }.jmi-live { padding:75px 0; }.jmi-footer .jmi-shell { display:block; }.jmi-footer p { margin:16px 0; }.jmi-footer small { display:block; } }
