/* Generated by tools/build-public-css.php. Edit the source files above, then rebuild. */

/* source: assets/css/connectx.css */
/*
 * Lato, served by the Guide itself.
 *
 * The Guide ships as an offline Windows installer as well as a web package, and
 * its PHP shell sends font-src 'self'. A CDN link would load in neither. Latin
 * and Latin Extended; licensed under the SIL Open Font License 1.1 - OFL.txt
 * beside this file.
 */
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/lato-300-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 300;
  font-display: swap;
  src: url(../fonts/lato-300-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/lato-400-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 400;
  font-display: swap;
  src: url(../fonts/lato-400-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/lato-700-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 700;
  font-display: swap;
  src: url(../fonts/lato-700-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}
/* latin-ext */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(../fonts/lato-900-latin-ext.woff2) format('woff2');
  unicode-range: U+0100-02BA, U+02BD-02C5, U+02C7-02CC, U+02CE-02D7, U+02DD-02FF, U+0304, U+0308, U+0329, U+1D00-1DBF, U+1E00-1E9F, U+1EF2-1EFF, U+2020, U+20A0-20AB, U+20AD-20C0, U+2113, U+2C60-2C7F, U+A720-A7FF;
}
/* latin */
@font-face {
  font-family: 'Lato';
  font-style: normal;
  font-weight: 900;
  font-display: swap;
  src: url(../fonts/lato-900-latin.woff2) format('woff2');
  unicode-range: U+0000-00FF, U+0131, U+0152-0153, U+02BB-02BC, U+02C6, U+02DA, U+02DC, U+0304, U+0308, U+0329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD;
}

.cx-widget{--cx-wine:#650018;--cx-gold:#ffe19a;--cx-line:#e8dde1;font-family:Lato,Arial,sans-serif;color:#331922;position:relative;z-index:1100;font-size:14px;line-height:1.5}
.cx-widget *{box-sizing:border-box}.cx-widget [hidden]{display:none!important}.cx-widget button,.cx-widget input,.cx-widget select,.cx-widget textarea{font:inherit}.cx-widget button{cursor:pointer}.cx-widget button:disabled{cursor:wait;opacity:.6}.cx-widget button:focus-visible,.cx-widget a:focus-visible{outline:3px solid #c68931;outline-offset:3px}.cx-widget button{letter-spacing:normal;text-transform:none}
.cx-widget{--cx-bottom:88px}
.cx-launch{position:fixed;right:24px;bottom:var(--cx-bottom);border:1px solid #ffd98a55;border-radius:40px;background:linear-gradient(135deg,#780526,#480012);color:#fff7df;padding:14px 21px;box-shadow:0 8px 28px #44001630;display:flex;align-items:center;gap:11px;font-weight:700!important}.cx-launch>img{width:48px;height:30px;object-fit:contain;border:0!important;outline:0;box-shadow:none!important;filter:none!important;padding:0!important;background:none!important;flex-shrink:0}
.cx-panel{position:fixed;bottom:calc(var(--cx-bottom) + 76px);right:24px;width:390px;height:min(680px,calc(100dvh - var(--cx-bottom) - 100px));display:flex;flex-direction:column;background:#fff;border:1px solid var(--cx-line);border-radius:22px;overflow:hidden;box-shadow:0 18px 70px #39001930;text-align:left}
.cx-head{display:flex;align-items:center;gap:12px;padding:20px;background:linear-gradient(130deg,#700721,#3e000e);color:#fff2ce;border-bottom:2px solid #dba34e}.cx-head img{border:0!important;box-shadow:none!important;outline:0;padding:0;background:none;flex-shrink:0}.cx-head h2{font:700 17px/1.3 Lato,Arial,sans-serif;margin:0;color:inherit;letter-spacing:.1px}.cx-head p{margin:3px 0 0;color:#ead4db;font-size:12px}.cx-close{margin-left:auto;border:0;background:none;color:#fff2ce;font-size:28px!important;line-height:1;padding:7px}
.cx-body{padding:18px;overflow:auto;flex:1;min-height:0;background:radial-gradient(ellipse at top right,#fff1d633,transparent 65%),#fff}.cx-intro{font-size:18px;font-weight:700;margin:0 0 15px}.cx-messages{display:flex;flex-direction:column;gap:12px}.cx-message{margin:0;padding:12px 14px;border-radius:14px;background:#f7f2f4;white-space:pre-wrap;overflow-wrap:anywhere}.cx-message--visitor{align-self:flex-end;max-width:90%;background:var(--cx-wine);color:#fff}.cx-message a{display:block;color:var(--cx-wine);font-weight:700;margin-top:10px;text-decoration:underline;white-space:normal}.cx-topics,.cx-products{display:flex;flex-wrap:wrap;gap:7px;margin-top:16px}.cx-topics button,.cx-products button{border:1px solid var(--cx-line);background:#fff;color:var(--cx-wine);padding:8px 11px;border-radius:20px;font-size:12px}.cx-topics button:hover,.cx-products button:hover{background:#fff6df;border-color:#d6a655}.cx-demo,.cx-submit{width:100%;background:var(--cx-wine);color:#fff;border:0;border-radius:12px;padding:12px 15px;font-weight:700!important;margin-top:18px}.cx-demo{display:flex;justify-content:space-between}.cx-compose{display:flex;gap:8px;margin:0;padding:12px 16px;border-top:1px solid var(--cx-line);background:#fff}.cx-compose input{flex:1;min-width:0;border:1px solid var(--cx-line);background:#fcfafa;border-radius:10px;padding:11px;color:#331922}.cx-compose button{width:42px;border:0;border-radius:10px;background:var(--cx-wine);color:#fff;font-size:22px}.cx-footnote{padding:0 12px 12px;margin:0;text-align:center;font-size:10px;color:#78656c;background:#fff}.cx-enquiry h3,.cx-success h3{font-size:21px;margin:12px 0 5px;color:#331922}.cx-enquiry>p{margin:0 0 16px;color:#78656c}.cx-enquiry>label{display:block;margin-top:13px;font-size:12px;font-weight:700}.cx-enquiry input:not([type=checkbox]),.cx-enquiry select,.cx-enquiry textarea{width:100%;display:block;margin-top:5px;border:1px solid var(--cx-line);border-radius:10px;padding:10px 11px;background:#fff;color:#331922}.cx-enquiry textarea{resize:vertical;min-height:80px}.cx-widget input:focus,.cx-widget select:focus,.cx-widget textarea:focus{outline:2px solid #a94c68;outline-offset:1px}.cx-back{border:0;background:none;color:var(--cx-wine);padding:0;font-weight:700!important}.cx-enquiry .cx-consent{display:flex;align-items:flex-start;gap:8px;font-weight:400}.cx-consent input{width:17px;height:17px;margin-top:2px;accent-color:var(--cx-wine);flex-shrink:0}.cx-consent a{color:var(--cx-wine);text-decoration:underline}.cx-error{background:#fff0ee;color:#9b2424;padding:12px;border-radius:10px;margin:12px 0 0}.cx-success{text-align:center;padding:25px 0}.cx-reference{display:block;padding:14px 8px;border:1px solid var(--cx-line);border-radius:12px;background:#fff7e9;overflow-wrap:anywhere}.cx-success-icon{display:inline-grid;place-items:center;width:50px;height:50px;background:#edf7ef;color:#207545;border-radius:50%;font-size:25px}.cx-trap,.cx-sr{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;overflow:hidden!important;clip:rect(0,0,0,0);white-space:nowrap}
@media(max-width:480px){.cx-widget{--cx-bottom:calc(76px + env(safe-area-inset-bottom,0px))}.cx-launch{right:14px;padding:12px 17px}.cx-panel{right:10px;left:10px;width:auto;height:calc(100dvh - var(--cx-bottom) - 92px);border-radius:18px}.cx-widget input,.cx-widget select,.cx-widget textarea{font-size:16px}.cx-head{padding:16px}.cx-body{padding:15px}}
@media print{.cx-widget{display:none}}


/* Live chat with JPRAXC: the desk's lines carry the name, the start form sits inside the chat. */
.cx-widget .cx-live-open{background:#521329;color:#f6efe6;border-color:#521329}
.cx-widget .cx-live-start{display:grid;gap:8px;margin:8px 0}
.cx-widget .cx-live-start label{display:grid;gap:4px;font-size:12px;font-weight:600}
.cx-widget .cx-live-start input{padding:9px 11px;border:1px solid #cbbbab;border-radius:10px;font:inherit}
.cx-widget .cx-live-note{font-size:12px;color:#696269;margin:0}
.cx-widget .cx-message--live{border-left:3px solid #c39a62}
.cx-widget .cx-message-sender{display:block;font-size:10px;letter-spacing:1.4px;font-weight:800;color:#521329;margin-bottom:3px}

.cx-widget .cx-message-file{display:block;margin-top:5px;font-weight:700;text-decoration:underline;overflow-wrap:anywhere}

.cx-widget .cx-message-file{display:block;margin-top:5px;font-weight:700;text-decoration:underline;overflow-wrap:anywhere}

.cx-widget .cx-message-file{display:block;margin-top:5px;font-weight:700;text-decoration:underline;overflow-wrap:anywhere}

.cx-widget .cx-message-file{display:block;margin-top:5px;font-weight:700;text-decoration:underline;overflow-wrap:anywhere}

/* source: assets/css/modern.css */
@font-face{font-family:Lato;src:url('../fonts/lato-400-latin.woff2') format('woff2');font-weight:400;font-display:swap}@font-face{font-family:Lato;src:url('../fonts/lato-700-latin.woff2') format('woff2');font-weight:700;font-display:swap}@font-face{font-family:Lato;src:url('../fonts/lato-900-latin.woff2') format('woff2');font-weight:900;font-display:swap}
:root{--f-paper:#f4f1e8;--f-ink:#211b20;--f-wine:#521329;--f-gold:#c39a62;--f-muted:#696269;--f-rule:rgba(42,31,35,.17);--f-sage:#d9e6c3}
html{scroll-behavior:smooth;scroll-padding-top:110px}*{box-sizing:border-box}.future-site{margin:0;background:var(--f-paper);color:var(--f-ink);font-family:Lato,Arial,sans-serif;-webkit-font-smoothing:antialiased}.future-site a{color:inherit;text-decoration:none}.future-site button,.future-site input,.future-site select,.future-site textarea{font:inherit}.future-site button{cursor:pointer}.future-site button:focus-visible,.future-site a:focus-visible{outline:3px solid #bc7b33;outline-offset:5px}.future-site img{max-width:100%;height:auto}.future-site [hidden]{display:none!important}.future-site em{font-style:normal;color:var(--f-wine)}.future-site h1,.future-site h2,.future-site h3,.future-site p{margin:0}.future-site ::selection{background:#d9e6c3;color:#211b20}.future-skip{position:fixed;left:20px;top:-100px;background:white;padding:16px;z-index:200}.future-skip:focus{top:20px}
.floating-brand{position:fixed;z-index:60;top:26px;left:4.5%;display:flex;align-items:center;gap:11px;background:rgba(244,241,232,.94);padding:7px 15px 7px 7px;border-radius:12px;backdrop-filter:blur(12px)}.floating-brand img{width:42px;height:42px;object-fit:contain;border:0;border-radius:0}.floating-brand>span{font-weight:900;font-size:22px;letter-spacing:1px;line-height:1.15}.floating-brand small{display:block;font-size:7.5px;letter-spacing:2px;font-weight:700;margin-top:5px}.contact-corner{position:fixed;z-index:60;right:4.5%;top:30px;display:flex;gap:18px;align-items:center}.corner-phone{font-size:13px;font-weight:700;padding:13px 16px;border-radius:30px;background:rgba(244,241,232,.92);backdrop-filter:blur(12px)}.contact-trigger{display:flex;align-items:center;gap:10px;border:1px solid #d5cdc5;background:var(--f-paper);color:var(--f-ink);border-radius:30px;padding:14px 20px;font-size:13px;font-weight:700;box-shadow:0 3px 10px #22151c06}.contact-trigger>span:last-child{margin-left:12px;font-size:19px}.availability-dot{display:inline-block;flex-shrink:0;width:7px;height:7px;border-radius:50%;background:#577843;box-shadow:0 0 0 4px #5778430d}.chapter-rail{position:fixed;left:25px;top:42%;height:230px;display:flex;flex-direction:column;align-items:center;z-index:50;mix-blend-mode:difference;color:#c7c1b9;pointer-events:none;font-size:8px;font-weight:700;letter-spacing:1px}.chapter-rail>span:first-child{writing-mode:vertical-rl;transform:rotate(180deg)}.chapter-rail>i{width:1px;height:75px;background:#ffffff35;position:relative;margin:22px 0 15px}.chapter-rail b{position:absolute;left:-1px;top:0;width:3px;background:#faf7f0;height:0}.rail-end{font-size:9px}
.explore-dock{position:fixed;z-index:70;bottom:24px;left:50%;transform:translateX(-50%);display:flex;align-items:center;gap:2px;background:#211b20f5;color:#fbf9f3;padding:7px;border:1px solid #61545d;border-radius:999px;box-shadow:0 12px 32px #1d10252b;backdrop-filter:blur(16px);white-space:nowrap}.explore-dock>a{padding:15px 18px;font-size:13px;font-weight:700;border-radius:24px;transition:background .2s}.explore-dock>a:hover,.explore-dock>a.is-current{background:#ffffff16}.explore-dock .dock-demo{margin-left:7px;background:var(--f-paper);color:var(--f-ink);padding:15px 22px}.explore-dock .dock-demo:hover{background:#e0e8cd}.dock-demo span{padding-left:18px}.dock-index{display:grid;grid-template-columns:repeat(2,4px);gap:3px;padding:18px 18px;border:0;background:none;align-content:center;justify-content:center;border-radius:30px}.dock-index span{height:4px;width:4px;background:#f4f1e8;border-radius:1px}.dock-index:hover{background:#ffffff16}.preview-tag{position:fixed;z-index:50;bottom:42px;left:4.5%;color:#756d72;font-size:8px;letter-spacing:1.5px;mix-blend-mode:difference;color:#b5afa5}.tiny-label{font-size:10px;letter-spacing:1.8px;font-weight:700;line-height:1.7}.mini-line{width:22px;height:1px;background:var(--f-wine);display:inline-block;vertical-align:middle;margin-right:10px}.future-button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;background:var(--f-wine);color:#fff!important;border:0;border-radius:999px;padding:17px 22px 17px 25px;font-size:13px;font-weight:700;line-height:1.4;transition:transform .25s,background .25s}.future-button span{font-size:22px;font-weight:400;line-height:1}.future-button:hover{background:#762340;transform:translateY(-3px)}.future-button.light{background:#f4f1e8;color:#251b20!important}.text-link{display:inline-block;padding-bottom:6px;border-bottom:1px solid currentColor;font-size:13px;font-weight:700}.reveal{opacity:1}.motion-ready .reveal{opacity:0;transform:translateY(35px);transition:opacity .8s,transform .8s cubic-bezier(.2,.75,.25,1)}.motion-ready .reveal.is-visible{opacity:1;transform:none}
.unbox-story{height:250vh;position:relative;--open:0;--hero-alpha:1;--inside-alpha:0}.unbox-sticky{height:100svh;min-height:760px;position:sticky;top:0;overflow:hidden;background:var(--f-paper)}.hero-grain{position:absolute;inset:0;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 180 180' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.7' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' opacity='.035' filter='url(%23n)'/%3E%3C/svg%3E");opacity:.55}.hero-coordinates{position:absolute;top:120px;left:8%;right:6%;display:flex;justify-content:space-between;border-top:1px solid var(--f-rule);padding-top:13px;font-size:8px;letter-spacing:1.5px;color:#756c70}.hero-copy{position:absolute;left:9%;top:22%;z-index:5;opacity:var(--hero-alpha);transform:translateY(calc(var(--open)*-80px));pointer-events:auto}.hero-copy .hero-slogan{font-size:clamp(65px,7.2vw,116px);font-weight:900;line-height:.96;letter-spacing:-6px;margin:25px 0 25px;max-width:640px}.hero-copy .hero-slogan em{position:relative}.hero-copy .hero-slogan em:after{content:'';position:absolute;bottom:0;left:0;right:0;height:3px;background:var(--f-gold);transform:rotate(-3deg);transform-origin:left}.hero-description{font-size:15px;line-height:1.7;color:#60555d;max-width:430px}
.hero-copy .future-button{margin-top:20px}
.node-symbol--inr{font-family:Georgia,"Times New Roman",serif;font-weight:700}
@media(max-height:860px){.hero-copy{top:max(166px,15%)}.hero-copy .hero-slogan{font-size:clamp(48px,6.4vw,66px);margin:14px 0}.hero-description{font-size:14px}.hero-copy .future-button{margin-top:16px;padding:13px 18px 13px 20px}.hero-contact{margin-top:14px}}
.hero-copy .future-button{margin-top:20px}
.node-symbol--inr{font-family:Georgia,"Times New Roman",serif;font-weight:700}
.node-symbol--svg{display:flex;align-items:center}
.node-symbol--svg svg{width:39px;height:39px}
@media(max-height:860px){.hero-copy{top:max(166px,15%)}.hero-copy .hero-slogan{font-size:clamp(48px,6.4vw,66px);margin:14px 0}.hero-description{font-size:14px}.hero-copy .future-button{margin-top:16px;padding:13px 18px 13px 20px}.hero-contact{margin-top:14px}}.hero-copy .future-button{margin-top:26px}.hero-contact{display:block!important;width:max-content;max-width:100%;font-size:11px;margin-top:19px;color:#70616a!important;border-bottom:1px solid #b8a6af;padding-bottom:5px}.unbox-copy{position:absolute;left:9%;top:37%;z-index:4;opacity:var(--inside-alpha);transform:translateY(calc(35px - var(--open)*35px));pointer-events:none}.unbox-copy.is-active{pointer-events:auto}.unbox-copy h2{font-size:clamp(48px,5.6vw,88px);letter-spacing:-4px;line-height:1.02;margin:22px 0}.unbox-copy p:not(.tiny-label){font-size:15px;line-height:1.7;color:#4f474c;margin-bottom:25px}.case-scene{position:absolute;left:52%;top:16%;width:44%;height:73%;perspective:1300px;transform:translateY(calc(var(--open)*25px))}.product-case{position:absolute;width:360px;height:390px;left:50%;top:50%;transform:translate(-50%,-50%) rotateX(12deg) rotateY(-20deg) rotateZ(-12deg);transform-style:preserve-3d}.case-lid{position:absolute;z-index:5;inset:0;border-radius:35px;background:linear-gradient(145deg,#7b1735,#450c23 52%,#240b1b);box-shadow:inset 1px 1px 2px #f7ca9a90,inset -2px -4px 2px #110510,8px 12px 0 #250716,11px 15px 0 #bd925b,16px 22px 2px #481127,25px 34px 40px #1f061c3d;overflow:hidden;display:flex;flex-direction:column;align-items:center;transform:translateY(calc(var(--open)*-290px)) translateX(calc(var(--open)*65px)) rotateZ(calc(var(--open)*13deg)) rotateX(calc(var(--open)*22deg));opacity:calc(1 - var(--open)*.45)}.case-lid:after{content:'';position:absolute;inset:13px;border:1px solid #d9ae702e;border-radius:24px;pointer-events:none}.case-lid>img{width:156px;height:156px;object-fit:contain;margin-top:62px;border:0;filter:drop-shadow(0 15px 20px #0003)}.lid-micro{font-size:7px;letter-spacing:2.4px;color:#f3d2a4;position:absolute;top:35px}.lid-caption{position:absolute;bottom:36px;left:33px;right:34px;display:flex;justify-content:space-between;align-items:center;color:#f4ddb9;font-size:26px;font-weight:900;line-height:1.04;letter-spacing:-.6px}.lid-plus{font-size:52px;font-weight:400}.case-glint{position:absolute;inset:0;background:linear-gradient(130deg,#ffffff16,transparent 32%,transparent 66%,#d2a26920);pointer-events:none}.case-base{position:absolute;inset:15px -6px -19px 4px;border-radius:34px;background:linear-gradient(135deg,#382b35,#170f19);box-shadow:inset 0 0 0 8px #a8865c,inset 0 0 0 10px #d9cbb2,15px 20px 25px #2517202b;transform:translateZ(-20px)}.base-label{position:absolute;bottom:21px;left:0;right:0;color:#cab491;font-size:8px;letter-spacing:3px;text-align:center}.case-shadow{position:absolute;width:68%;height:12%;top:89%;left:19%;background:radial-gradient(ellipse,#3e25303d,transparent 67%);filter:blur(12px);transform:rotate(-12deg)}.case-orbit{position:absolute;left:6%;top:0;width:93%;height:95%;border:1px solid #7964531a;border-radius:50%;transform:rotate(-20deg)}.orbit-two{inset:5% 7%;height:82%;width:84%;border-style:dashed;transform:rotate(30deg)}.scene-label{position:absolute;color:#827070;font-size:7px;font-weight:700;letter-spacing:1.6px}.label-a{right:6%;top:8%;writing-mode:vertical-rl}.label-b{left:1%;bottom:22%;writing-mode:vertical-rl;transform:rotate(180deg)}.case-edition{position:absolute;bottom:-3%;left:15%;right:4%;text-align:center;font-size:8px;letter-spacing:1.5px;color:#725f68}.case-edition b{margin:0 13px;color:#a29289}.inside-card{position:absolute;left:25px;right:20px;height:150px;padding:24px;border:1px solid #d2c9bb;border-radius:16px;background:#fffaf0;box-shadow:0 14px 30px #12051326;transform:translateZ(30px) translateY(calc(var(--open)*-190px)) rotateZ(calc(var(--open)*-11deg));opacity:var(--inside-alpha);z-index:4}.inside-card i{position:absolute;right:20px;top:22px;font-size:12px;color:#6f5d4f;font-style:normal}.inside-card strong{font-weight:900;font-size:27px;letter-spacing:-1px;display:block}.inside-card small{font-size:10px;display:block;margin-top:5px;color:#675763}.inside-one{top:20px;background:#e8eddc}.inside-two{top:120px;transform:translateZ(60px) translateY(calc(var(--open)*-75px)) translateX(calc(var(--open)*32px)) rotateZ(calc(var(--open)*5deg));z-index:6}.inside-three{top:228px;background:#e7ddce;transform:translateZ(95px) translateY(calc(var(--open)*25px)) translateX(calc(var(--open)*-20px)) rotateZ(calc(var(--open)*-5deg));z-index:7}.people-dots{display:flex;align-items:center;margin-top:15px}.people-dots b{font-size:10px;background:#aca688;color:#282b20;width:27px;height:27px;border:2px solid #e8eddc;border-radius:50%;display:grid;place-items:center;margin-right:-5px}.people-dots b:nth-child(2){background:#cab4a7}.people-dots b:nth-child(3){background:#5a6f54;color:white}.people-dots span{font-size:21px;margin-left:auto}.mini-bars{height:38px;display:flex;align-items:end;gap:9px;margin-top:11px}.mini-bars b{display:block;width:24px;height:35%;background:#5a263c;border-radius:4px 4px 0 0}.mini-bars b:nth-child(2n){height:65%;background:#986074}.mini-bars b:nth-child(3n){height:85%}.mini-bars b:last-child{height:100%;background:#a58a56}.inside-status{display:flex;align-items:center;gap:6px;margin-top:23px;font-size:10px}.inside-status b{width:6px;height:6px;border-radius:50%;background:#6f8054}.scroll-invitation{position:absolute;bottom:105px;left:9%;display:flex;align-items:center;gap:14px;font-size:11px;line-height:1.6;z-index:10}.scroll-invitation b{font-weight:400;color:#63555c;font-size:10px}.scroll-mouse{width:21px;height:31px;border:1px solid #a4949c;border-radius:15px;display:grid;place-items:start center;padding-top:6px}.scroll-mouse i{width:2px;height:6px;background:#5b263d;animation:scrollWheel 1.8s infinite}.hero-counter{position:absolute;right:6%;bottom:111px;font-size:11px;color:#978c91;letter-spacing:2px}.hero-counter b{font-size:28px;font-weight:400;letter-spacing:-1px;color:#5b4c54}.section-intro h2{font-size:clamp(56px,6.8vw,106px);font-weight:900;line-height:.98;letter-spacing:-5px;margin:22px 0}.section-intro>p:last-child{line-height:1.7;font-size:17px;color:inherit;opacity:.77}.product-universe{background:#26131e;color:#f4f1e8;padding:125px 8% 140px;scroll-margin-top:0}.product-universe em{color:#d6bb90}.product-universe .section-intro{padding:0 0 65px;border-bottom:1px solid #68505d;position:relative}.product-universe .section-intro>p:last-child{position:absolute;right:0;bottom:75px}.product-explorer{display:grid;grid-template-columns:32% 1fr;gap:9%;padding-top:45px}.product-tabs{align-self:start;position:sticky;top:130px}.product-tab{width:100%;display:flex;align-items:center;gap:17px;border:0;border-bottom:1px solid #654655;padding:30px 0;background:none;color:#b4a3ae;text-align:left}.product-tab>span{font-size:10px;color:#b89881}.product-tab strong{font-size:22px;font-weight:700;letter-spacing:-.5px}.product-tab i{font-style:normal;font-size:26px;margin-left:auto;opacity:0;transform:translate(-8px,8px);transition:.25s}.product-tab.is-active{color:#f4e4c9}.product-tab.is-active i,.product-tab:hover i{opacity:1;transform:none}.product-tab.is-active>span{color:#f0cc9b}.all-products-link{display:flex;justify-content:space-between;font-size:11px;color:#dfc4ae!important;padding-top:30px}.product-panel{animation:panelIn .45s;min-width:0}
.product-explorer{position:relative}
.product-slide-bar{position:absolute;left:0;bottom:-1px;height:2px;width:0;background:var(--f-gold,#efad2f);transition:width .2s linear}
.product-tab.is-active .product-slide-bar{transition:width var(--slide-ms,6000ms) linear}
.product-tab{position:relative}.product-panel-head{display:flex;justify-content:space-between;align-items:center;gap:15px;margin-bottom:28px}.product-identity{display:flex;align-items:center;gap:12px}.product-identity img{width:42px;height:42px;object-fit:contain}.product-identity b{font-size:11px;letter-spacing:.2px}.product-status{font-size:9px;border:1px solid #886777;padding:7px 11px;border-radius:20px;white-space:nowrap;color:#e6d7d5}.product-panel h3{font-size:clamp(30px,3.1vw,47px);line-height:1.1;letter-spacing:-1.6px;font-weight:900}.product-panel>p{max-width:520px;font-size:14px;line-height:1.7;color:#c7b6c1;margin:20px 0 27px}.software-window{margin:25px -15px 15px 0;background:#e7dfd5;border:1px solid #9c858a;border-radius:13px;overflow:hidden;box-shadow:0 25px 50px #05000830;transform:perspective(1200px) rotateY(-4deg);transform-origin:left center;transition:transform .4s}.software-window:hover{transform:perspective(1200px) rotateY(0)}.window-toolbar{height:30px;display:flex;align-items:center;justify-content:space-between;padding:0 13px;color:#5f5057}.window-toolbar>span:first-child{display:flex;gap:4px}.window-toolbar i{width:4px;height:4px;border-radius:50%;background:#9c8b92}.window-toolbar b{font-size:6px;letter-spacing:1px}.software-window>img{display:block;width:100%}.product-highlights{display:flex;flex-wrap:wrap;gap:6px 16px;font-size:10px;line-height:1.6;color:#ddc8d4;margin:25px 0}.product-highlights span:before{content:'+';color:#e1bc83;margin-right:7px}.product-demo-link{display:inline-block;font-size:11px;margin-left:23px;margin-top:18px;color:#dbc1cb!important}.workflow-window{padding:28px;background:#382633;border-radius:14px;border:1px solid #725366;margin:28px 0;min-height:240px}.workflow-window>.tiny-label{color:#dbbe98}.workflow-item{display:flex;gap:15px;align-items:center;padding:18px 0;border-bottom:1px solid #614b59;font-size:13px}.workflow-item:last-child{border:0}.workflow-item i{font-size:9px;font-style:normal;color:#c5a878}.workflow-item strong{font-weight:400}.workflow-item>span{margin-left:auto}
.connections{padding:130px 9% 95px;overflow:hidden}.connections>.section-intro{text-align:center}.connection-stage{max-width:1060px;min-height:520px;margin:70px auto 85px;position:relative}.connection-line{position:absolute;left:18%;right:18%;top:8%;bottom:2%;border-radius:50%;border:1px solid #baab91}.connection-line:before,.connection-line:after{content:'';position:absolute;left:50%;top:0;bottom:0;width:1px;background:#cab99e;transform:rotate(57deg)}.connection-line:after{transform:rotate(-57deg)}.connection-core{position:absolute;top:34%;left:50%;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;padding:23px;gap:20px;background:var(--f-paper)}.connection-core img{width:92px;height:92px;object-fit:contain}.connection-core>span{font-size:7px;letter-spacing:1.4px;font-weight:700}.connection-node{position:absolute;width:242px;padding:24px 25px;background:#fcfaf4;border:1px solid #ddd3c6;border-radius:20px;box-shadow:0 12px 30px #37281c07;transition:transform .3s,box-shadow .3s}.connection-node:hover{transform:translateY(-8px);box-shadow:0 20px 30px #37281c10}.connection-node>img{height:39px;width:61px;object-fit:contain;display:block;margin-bottom:17px}.connection-node strong{display:block;font-size:19px;font-weight:900;letter-spacing:-.5px}.connection-node>span:not(.node-symbol){display:block;font-size:11px;color:#79696f;margin-top:7px}.connection-node i{position:absolute;top:21px;right:22px;font-style:normal;color:#886f58;font-size:20px}.node-symbol{display:block;height:39px;margin-bottom:17px;font-size:39px;line-height:1;color:var(--f-wine);font-weight:900}.node-a{left:3%;top:3%;transform:rotate(-5deg)}.node-b{right:3%;top:3%;transform:rotate(5deg)}.node-c{left:3%;bottom:2%;transform:rotate(3deg)}.node-d{right:3%;bottom:2%;transform:rotate(-3deg)}.web-service{position:relative;min-height:390px;max-width:1100px;margin:0 auto;padding-top:75px;border-top:1px solid var(--f-rule)}.web-service>span{font-size:9px;letter-spacing:1.3px}.web-service h3{font-size:60px;font-weight:900;letter-spacing:-3px;line-height:1.02;margin:24px 0 27px}.web-service>a{font-size:12px;padding-bottom:8px;border-bottom:1px solid #8a747c}.web-service>a>span{margin-left:35px}.browser-object{position:absolute;right:1%;top:76px;width:41%;min-height:275px;border:1px solid #523542;border-radius:13px;background:#e2b881;box-shadow:11px 14px 0 #dcc8ab;transform:rotate(-5deg);padding:18px 25px}.browser-object>div{display:flex;gap:4px;align-items:center;border-bottom:1px solid #806244;padding-bottom:14px}.browser-object i{width:5px;height:5px;border-radius:50%;background:#584233}.browser-object>div>span{margin-left:auto;font-size:8px;letter-spacing:2px}.browser-object>b{display:block;font-size:clamp(35px,5.2vw,76px);line-height:.85;letter-spacing:-4px;padding:25px 0;color:#4b2030}.browser-object>b>span{color:#521329}.browser-object>small{font-size:6px;letter-spacing:1.4px}
.deployment-scene{padding:135px 9%;display:grid;grid-template-columns:1fr 1fr;gap:5%;background:#e8e2d8;min-height:800px;overflow:hidden}.deployment-copy h2,.mobile-copy h2{font-size:clamp(55px,6.6vw,100px);letter-spacing:-5px;line-height:1;margin:24px 0}.deployment-copy>p:not(.tiny-label),.mobile-copy>p:not(.tiny-label){font-size:16px;line-height:1.7;color:#3a4034}.deployment-switch{padding:5px;border:1px solid #c9bcb2;border-radius:32px;display:flex;gap:5px;width:max-content;margin:26px 0}.deployment-switch button{border:0;border-radius:28px;padding:12px 25px;background:none;color:#76606c;font-size:12px}.deployment-switch button[aria-selected=true]{background:#fffaf0;color:var(--f-wine);box-shadow:0 3px 10px #4530230a}.deployment-description{min-height:120px;max-width:390px}.deployment-description h3{font-size:17px;margin-bottom:10px}.deployment-description p{font-size:13px;line-height:1.7;color:#6a5c61}.deployment-art{position:relative;min-width:0;perspective:1000px;margin:30px 0}.world-ring{position:absolute;left:0;top:12%;width:100%;height:65%;border:1px solid #978273;border-radius:50%;transform:rotate(-30deg)}.ring-b{transform:rotate(45deg);width:74%;left:13%;height:96%;top:0;border-color:#b5a395}.world-dot{position:absolute;width:13px;height:13px;border-radius:50%;background:#834051;box-shadow:0 0 0 7px #8340510a;z-index:3}.dot-a{top:20%;left:14%}.dot-b{bottom:28%;right:3%;background:#a2884c}.server-stack{position:absolute;left:20%;top:26%;width:70%;transform:rotateX(12deg) rotateY(-20deg) rotateZ(-12deg);transition:transform .65s}.server-stack>div{padding:20px 22px;border-radius:13px;background:#f9f3e7;box-shadow:5px 7px 0 #b7a694,10px 14px 0 #b7a69444;margin:17px 0;height:65px;display:flex;gap:8px;align-items:center;border:1px solid #c8b6a1}.server-stack>div:first-child{height:160px;align-items:flex-end;background:linear-gradient(140deg,#602c42,#2c1825);color:#d3af7c;border-color:#846252}.server-stack>div:first-child>span{font-size:57px;letter-spacing:-7px;font-weight:900}.server-stack b{margin-left:auto;width:4px;height:4px;background:#bad899;border-radius:50%}.server-stack b+b{margin-left:0}.server-stack i{width:3px;height:21px;background:#a9937a;border-radius:4px}.server-stack>div>span:last-child:not(:first-child){margin-left:auto;font-size:8px;font-weight:700;letter-spacing:1.8px}.connection-ticket{position:absolute;left:12%;bottom:4%;display:flex;gap:13px;align-items:center;padding:17px 22px;background:#faf7eebd;backdrop-filter:blur(4px);box-shadow:0 12px 20px #4a291710;transform:rotate(3deg);font-size:11px;border-radius:10px}.deployment-scene.is-local .server-stack{transform:rotateX(0) rotateY(0) rotateZ(0)}.deployment-scene.is-local .world-ring{border-style:dashed;opacity:.4}.mobile-scene{background:#dce7c9;display:grid;grid-template-columns:1fr 1.25fr;min-height:820px;padding:135px 9%;gap:6%;overflow:hidden}.mobile-copy{align-self:center}.mobile-copy h2{font-size:clamp(65px,8vw,125px);letter-spacing:-6px}.mobile-copy>p:not(.tiny-label){max-width:340px}.mobile-copy .text-link{margin-top:30px}.phone-stage{position:relative;min-height:560px;perspective:1200px}.phone{position:absolute;width:235px;border:7px solid #251923;background:#251923;border-radius:30px;box-shadow:0 22px 40px #27311938;margin:0;overflow:visible}.phone img{width:100%;display:block;border-radius:23px}.phone figcaption{position:absolute;bottom:-40px;left:0;right:0;text-align:center;font-size:8px;letter-spacing:2px;color:#465239}.phone-parent{left:0;top:0;transform:rotate(-9deg) rotateY(8deg);z-index:2}.phone-staff{right:0;top:90px;transform:rotate(11deg) rotateY(-8deg)}.phone-orbit{position:absolute;right:10%;top:5%;font-size:8px;letter-spacing:2px;writing-mode:vertical-rl;color:#60704e}
.contact-finale{background:#47182d;color:#f2e7d9;padding:125px 9% 150px}.contact-finale em{color:#d6b78b}.contact-finale h2{font-size:clamp(65px,9.5vw,145px);font-weight:900;letter-spacing:-7px;line-height:.96;margin:35px 0 75px;position:relative}.final-arrow{position:absolute;right:3%;top:14px;font-size:145px;color:#d1b28c;font-weight:400}.finale-links{display:grid;grid-template-columns:1.15fr 1fr 1fr;border-top:1px solid #9d7284;border-bottom:1px solid #9d7284;gap:45px;padding:33px 0}.finale-links>a{font-size:clamp(16px,1.7vw,26px);position:relative;font-weight:700;letter-spacing:-.5px}.finale-links>a>span{display:block;font-size:8px;font-weight:400;letter-spacing:1.6px;margin-bottom:20px;color:#c6a7b8}.finale-links i{font-style:normal;float:right;color:#caa984}.finale-bottom{display:flex;justify-content:space-between;gap:60px;margin-top:60px;font-size:11px;line-height:1.9;color:#cdb8c1}.finale-bottom b{font-size:10px;letter-spacing:1px;color:#f0e2d5}.finale-bottom p{margin:8px 0 17px}.finale-bottom>div:last-child{display:flex;flex-direction:column;align-items:flex-end;gap:9px}.finale-bottom button{border:0;background:none;color:#f3dfc4;padding:0;font-size:13px}.finale-bottom a{color:#f3dfc4}.finale-bottom span{font-size:9px}.page-contact-end{padding:95px 8% 155px;background:#47182d;color:#f4eee3}.page-contact-end h2{font-size:clamp(40px,6vw,85px);letter-spacing:-3px;line-height:1.03;margin:25px 0}.page-contact-end .future-button{background:#f4eee3;color:#47182d!important;margin-right:25px}.page-contact-end>a{font-size:13px}
.future-site dialog{position:fixed;border:1px solid #cbbcad;border-radius:24px;background:var(--f-paper);color:var(--f-ink);padding:55px;max-width:calc(100vw - 40px);max-height:calc(100svh - 60px);overflow:auto;box-shadow:0 30px 90px #17081242}.future-site dialog::backdrop{background:#211019a8;backdrop-filter:blur(8px)}.future-site dialog[open]{animation:panelIn .3s}.dialog-close{position:absolute;right:22px;top:22px;width:35px;height:35px;border:1px solid #d0c4ba;background:none;border-radius:50%;color:var(--f-ink);font-size:25px;line-height:1;display:grid;place-items:center}.contact-dialog{width:820px}.contact-dialog h2{font-size:80px;letter-spacing:-4px;font-weight:900;line-height:1;margin:18px 0 35px}.contact-methods{display:grid;grid-template-columns:1fr 1fr;gap:35px;padding:25px 0;border-top:1px solid var(--f-rule);border-bottom:1px solid var(--f-rule)}.contact-methods>div{display:flex;flex-direction:column;gap:9px}.contact-methods>div>span{font-size:9px;letter-spacing:1px;color:#796570;margin-bottom:10px}.contact-methods a{font-size:18px;font-weight:700}.contact-methods .text-link{width:max-content;font-size:12px;margin-top:8px}.contact-dialog address{font-size:12px;font-style:normal;line-height:1.8;color:#5e5058;margin:28px 0}.contact-dialog address b{font-size:10px;color:#4e3742}.index-dialog{width:1100px}.index-dialog h2{font-size:60px;letter-spacing:-3px;margin:20px 0 38px}.index-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:40px}.index-columns>div{display:flex;flex-direction:column;gap:14px}.index-columns>div>span{font-size:9px;letter-spacing:1.5px;margin-bottom:12px;color:#6e5854}.index-columns a,.index-columns button{font-size:14px;text-align:left;background:none;border:0;padding:0;color:var(--f-ink);width:max-content;max-width:100%}.index-columns a:hover,.index-columns button:hover{color:var(--f-wine);text-decoration:underline}.preview-dialog{width:570px}.preview-dialog h2{font-size:37px;line-height:1.1;letter-spacing:-1.7px;margin:22px 0}.preview-dialog>p:not(.tiny-label){line-height:1.8;color:#4f474c;font-size:14px;margin-bottom:26px}.future-site .cx-widget{position:fixed;bottom:28px!important;right:30px!important;z-index:65}.future-site .cx-launch{background:#f4f1e8!important;color:#442031!important;border:1px solid #c6b9ab!important;box-shadow:0 8px 20px #25122110!important;border-radius:99px!important;padding:11px 17px!important;font-size:11px!important;font-weight:700!important;gap:9px!important}.future-site .cx-launch img{width:39px!important;height:25px!important;border:0!important;box-shadow:none!important;border-radius:0!important;background:none!important}.future-site .cx-panel{bottom:62px!important;border-radius:20px!important;box-shadow:0 15px 75px #15051335!important}.future-site .cx-panel .cx-head{background:#47182d}.future-site .cx-panel .cx-compose input{color:#211b20!important;background:#fffdf8!important}.future-site .cx-panel button{font-family:Lato,Arial,sans-serif}
@keyframes scrollWheel{0%{transform:translateY(0);opacity:0}30%{opacity:1}100%{transform:translateY(9px);opacity:0}}@keyframes panelIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}
@media(min-width:1600px){.hero-copy{left:11%;top:23%}.case-scene{left:51%;width:42%;top:19%;height:66%}.product-case{width:410px;height:440px}.case-lid>img{width:180px;height:180px;margin-top:74px}.hero-copy .hero-slogan{font-size:125px}.scroll-invitation{left:11%}.inside-card{height:160px}.inside-two{top:145px}.inside-three{top:270px}}
@media(max-width:1150px){.hero-copy .hero-slogan{font-size:80px;letter-spacing:-4px}.hero-copy{left:8%;top:24%}.hero-copy .tiny-label{font-size:8px}.product-case{width:290px;height:330px}.case-lid>img{width:135px;height:135px;margin-top:52px}.lid-caption{font-size:23px}.lid-micro{font-size:6px}.inside-card{padding:20px;height:140px}.inside-card strong{font-size:23px}.inside-two{top:99px}.inside-three{top:195px}.product-explorer{grid-template-columns:31% 1fr;gap:6%}.product-tab strong{font-size:18px}.product-demo-link{margin-left:0;display:block}.phone{width:195px}.phone-stage{min-height:490px}.mobile-scene{min-height:710px}.chapter-rail{left:14px}.corner-phone{font-size:11px}.preview-tag{display:none}.connection-node{width:215px}.finale-links{gap:25px}.hero-contact{font-size:10px}.future-site .cx-launch{font-size:0!important;padding:11px!important;gap:0!important}}
@media(max-width:760px){.floating-brand{left:17px;top:16px;padding:6px 11px 6px 6px;gap:8px}.floating-brand img{width:34px;height:34px}.floating-brand>span{font-size:18px}.floating-brand small{font-size:6px;letter-spacing:1.3px}.contact-corner{right:17px;top:20px}.corner-phone{display:none}.contact-trigger{font-size:11px;padding:10px 12px;gap:7px}.contact-trigger>span:last-child{margin-left:3px;font-size:16px}.chapter-rail{display:none}.hero-coordinates{top:96px;left:6%;right:6%;font-size:6px;letter-spacing:1px}.hero-coordinates>span:last-child{display:none}.unbox-story{height:230vh}.unbox-sticky{min-height:760px;height:100svh}.hero-copy{left:7%;top:148px}.hero-copy .hero-slogan{font-size:60px;line-height:.97;letter-spacing:-3px;margin:16px 0 16px}.hero-copy .tiny-label{font-size:7px;letter-spacing:1px}.hero-description{font-size:12px;line-height:1.6}.hero-copy .future-button{margin-top:18px;padding:12px 18px;font-size:11px;gap:30px}.hero-contact{font-size:9px;margin-top:12px}.case-scene{left:41%;top:47%;width:61%;height:36%;transform:translateY(calc(var(--open)*20px))}.product-case{width:178px;height:192px;transform:translate(-50%,-50%) rotateX(12deg) rotateY(-18deg) rotateZ(-12deg)}.case-lid{border-radius:20px;box-shadow:inset 1px 1px 2px #f7ca9a90,5px 7px 0 #250716,7px 9px 0 #bd925b,10px 14px 0 #481127,17px 25px 30px #1f061c3d;transform:translateY(calc(var(--open)*-140px)) translateX(calc(var(--open)*-15px)) rotateZ(calc(var(--open)*13deg));opacity:calc(1 - var(--open)*.85)}.case-lid:after{inset:8px;border-radius:13px}.case-lid>img{width:83px;height:83px;margin-top:30px}.lid-micro{top:17px;font-size:3.5px;letter-spacing:1.2px}.lid-caption{left:19px;right:18px;bottom:18px;font-size:13px;letter-spacing:0}.lid-plus{font-size:29px}.case-base{inset:8px -4px -10px 4px;border-radius:20px;box-shadow:inset 0 0 0 4px #a8865c,inset 0 0 0 5px #d9cbb2}.base-label{font-size:4px;letter-spacing:1px;bottom:10px}.case-edition{font-size:5px;letter-spacing:.6px;bottom:0;left:0}.scene-label{display:none}.case-orbit{opacity:.6}.inside-card{height:100px;left:-15px;right:5px;padding:16px;border-radius:10px;transform:translateZ(30px) translateY(calc(var(--open)*-120px)) translateX(calc(var(--open)*-50px)) rotateZ(calc(var(--open)*-11deg))}.inside-card strong{font-size:18px;letter-spacing:-.5px}.inside-card i{font-size:8px;top:14px;right:15px}.inside-card small{font-size:7px}.inside-two{top:60px;transform:translateZ(60px) translateY(calc(var(--open)*-40px)) translateX(calc(var(--open)*-8px)) rotateZ(calc(var(--open)*5deg))}.inside-three{top:126px;transform:translateZ(95px) translateY(calc(var(--open)*30px)) translateX(calc(var(--open)*-60px)) rotateZ(calc(var(--open)*-5deg))}.people-dots{margin-top:9px}.people-dots b{width:19px;height:19px;font-size:6px}.mini-bars{height:22px;margin-top:8px;gap:6px}.mini-bars b{width:17px}.inside-status{font-size:7px;margin-top:13px}.unbox-copy{left:7%;top:26%;right:8%}.unbox-copy h2{font-size:46px;letter-spacing:-2px;margin:17px 0}.unbox-copy .tiny-label{font-size:7px}.unbox-copy p:not(.tiny-label){font-size:12px;max-width:260px}.unbox-copy .text-link{font-size:11px}.scroll-invitation{bottom:106px;left:7%;font-size:10px}.scroll-invitation b{font-size:8px}.hero-counter{right:7%;bottom:94px;font-size:9px}.hero-counter b{font-size:20px}.explore-dock{bottom:15px;max-width:calc(100vw - 24px);padding:5px;gap:0}.explore-dock>a{font-size:10px;padding:14px 11px}.explore-dock .dock-demo{font-size:10px;padding:14px 13px;margin-left:2px}.dock-demo span{padding-left:5px}.dock-index{padding:15px 13px;grid-template-columns:repeat(2,3px);gap:3px}.dock-index span{width:3px;height:3px}.future-site .cx-widget{right:17px!important;bottom:86px!important}.future-site .cx-launch{padding:9px!important}.future-site .cx-launch img{width:34px!important;height:23px!important}.future-site .cx-panel{width:calc(100vw - 34px)!important;max-width:380px;max-height:calc(100svh - 190px)!important;bottom:51px!important}.section-intro h2{font-size:55px;letter-spacing:-3px;margin:18px 0}.section-intro .tiny-label{font-size:8px;letter-spacing:1.4px}.section-intro>p:last-child{font-size:13px}.product-universe{padding:80px 7% 90px}.product-universe .section-intro{padding-bottom:30px}.product-universe .section-intro>p:last-child{position:static}.product-explorer{display:block;padding-top:15px}.product-tabs{position:static;display:grid;grid-template-columns:1fr 1fr;gap:0 20px;margin-bottom:35px}.product-tab{padding:20px 0;gap:10px;align-items:start}.product-tab>span{font-size:8px;margin-top:4px}.product-tab strong{font-size:15px;line-height:1.25}.product-tab i{font-size:18px}.all-products-link{grid-column:1/-1;font-size:10px;padding-top:18px}.product-panel-head{gap:7px}.product-identity b{font-size:10px}.product-identity img{width:33px;height:33px}.product-status{font-size:7px;padding:6px 8px}.product-panel h3{font-size:31px;letter-spacing:-1.2px}.product-panel>p{font-size:12px}.software-window{margin-right:0;transform:none}.product-highlights{font-size:9px;gap:7px;margin-top:20px}.product-panel .future-button{font-size:11px}.connections{padding:85px 7%}.connection-stage{min-height:510px;margin:45px auto 30px}.connection-node{width:43%;padding:18px 13px;border-radius:15px}.connection-node>img{width:45px;height:30px;margin-bottom:12px}.connection-node strong{font-size:15px}.connection-node>span:not(.node-symbol){font-size:9px;line-height:1.5}.connection-node i{font-size:15px;right:12px;top:14px}.node-symbol{font-size:30px;height:30px;margin-bottom:12px}.node-a,.node-c{left:0}.node-b,.node-d{right:0}.connection-core{top:36%;gap:13px;padding:10px}.connection-core img{width:65px;height:65px}.connection-core>span{font-size:5px;letter-spacing:1px}.connection-line{top:14%;bottom:13%;left:18%;right:18%}.web-service{padding-top:45px;padding-bottom:290px}.web-service>span{font-size:7px}.web-service h3{font-size:47px;letter-spacing:-2px}.web-service>a{font-size:11px}.browser-object{width:78%;min-height:210px;top:auto;bottom:10px;right:7%;padding:15px 20px}.browser-object>b{font-size:62px}.deployment-scene{display:flex;flex-direction:column;padding:80px 7%;min-height:920px;gap:0}.deployment-copy h2{font-size:59px;letter-spacing:-3px}.deployment-copy>.tiny-label{font-size:8px}.deployment-copy>p:not(.tiny-label){font-size:13px}.deployment-description{min-height:112px}.deployment-art{height:345px;width:90%;align-self:center;margin:25px 0 0}.server-stack{width:60%;left:23%;top:17%}.server-stack>div:first-child{height:100px}.server-stack>div:first-child>span{font-size:40px}.server-stack>div{height:43px;padding:12px 16px;margin:12px 0}.server-stack>div>span:last-child:not(:first-child){font-size:6px}.connection-ticket{font-size:9px;padding:12px 15px;bottom:0;left:12%}.mobile-scene{display:block;padding:80px 7% 100px}.mobile-copy h2{font-size:85px;letter-spacing:-5px}.mobile-copy h2 br:nth-child(2){display:none}.mobile-copy>p:not(.tiny-label){font-size:13px;max-width:280px}.phone-stage{margin-top:55px;min-height:425px;max-width:340px;margin-left:auto;margin-right:auto}.phone{width:165px;border-width:5px;border-radius:23px}.phone img{border-radius:18px}.phone-parent{left:5px}.phone-staff{top:65px;right:2px}.phone-orbit{font-size:6px}.contact-finale{padding:80px 7% 135px}.contact-finale h2{font-size:61px;letter-spacing:-3px;margin-bottom:40px}.contact-finale .tiny-label{font-size:7px}.final-arrow{font-size:60px;right:0;top:6px}.finale-links{grid-template-columns:1fr;gap:0;padding:10px 0}.finale-links>a{padding:23px 0;font-size:25px}.finale-links>a+ a{border-top:1px solid #885f73}.finale-links>a>span{font-size:8px;margin-bottom:13px}.finale-bottom{display:block;margin-top:38px}.finale-bottom>div:last-child{align-items:start;margin-top:25px}.future-site dialog{padding:45px 25px 30px;border-radius:19px;max-width:calc(100vw - 26px);max-height:calc(100svh - 35px)}.contact-dialog h2{font-size:62px;letter-spacing:-3px}.contact-methods{grid-template-columns:1fr;gap:27px}.contact-methods>div+div{border-top:1px solid var(--f-rule);padding-top:22px}.contact-methods a{font-size:19px}.contact-dialog address{font-size:10px}.index-dialog h2{font-size:41px;letter-spacing:-2px}.index-columns{grid-template-columns:1fr 1fr;gap:32px 18px}.index-columns>div:last-child{grid-column:1/-1}.index-columns a,.index-columns button{font-size:12px}.page-contact-end{padding:75px 7% 140px}.page-contact-end>a{display:block;margin-top:25px}.preview-dialog h2{font-size:32px}.hero-copy{max-width:90%}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.motion-ready .reveal{opacity:1;transform:none;transition:none}*,*:before,*:after{animation:none!important;transition:none!important}.unbox-story{height:100svh}.unbox-sticky{position:relative}.inside-card{opacity:0!important}.case-lid{opacity:1!important;transform:none!important}.hero-copy{opacity:1!important;transform:none!important}.unbox-copy{display:none!important}}
/* Final composition adjustments after desktop and phone review. */
.case-lid{opacity:calc(1 - var(--open)*1.5)}
.hero-counter{bottom:136px}
@media(max-width:760px){.unbox-copy{top:18%}.case-lid{opacity:calc(1 - var(--open)*1.5)}.hero-counter{right:100px;bottom:106px}.unbox-copy h2{font-size:44px}.unbox-copy p:not(.tiny-label){max-width:310px}}

/* The products stage: pinned while the visitor scrolls through the slides (wide, tall screens). */
body.future-site.future-home .product-universe.is-pinned{height:calc((var(--slides,5) + 1) * 100svh);padding:0}
body.future-site.future-home .product-universe.is-pinned .product-stage{position:sticky;top:0;height:100svh;min-height:700px;overflow:hidden;box-sizing:border-box;padding:84px 8% 112px;display:grid;grid-template-rows:auto minmax(0,1fr)}
body.future-site.future-home .product-universe.is-pinned .section-intro{padding:0 0 16px;text-align:left}
body.future-site.future-home .product-universe.is-pinned .section-intro h2{font-size:clamp(28px,3vw,40px);letter-spacing:-1.5px;margin:8px 0 0;line-height:1}
body.future-site.future-home .product-universe.is-pinned .section-intro>p:last-child{position:absolute;right:0;bottom:18px;font-size:12px}
body.future-site.future-home .product-universe.is-pinned .product-explorer{display:grid;grid-template-columns:26% minmax(0,1fr);gap:6%;padding-top:16px;min-height:0}
body.future-site.future-home .product-universe.is-pinned .product-tabs{position:static;display:block;margin:0}
body.future-site.future-home .product-universe.is-pinned .product-tab{padding:13px 0;gap:12px}
body.future-site.future-home .product-universe.is-pinned .product-tab strong{font-size:17px}
body.future-site.future-home .product-universe.is-pinned .all-products-link{padding-top:16px}
body.future-site.future-home .product-universe.is-pinned .product-panels{min-height:0;overflow:hidden}
body.future-site.future-home .product-universe.is-pinned .product-panel-head{margin-bottom:12px}
body.future-site.future-home .product-universe.is-pinned .product-panel h3{font-size:clamp(24px,2.2vw,32px);letter-spacing:-1px}
body.future-site.future-home .product-universe.is-pinned .product-panel>p{margin:10px 0 12px;font-size:13px;line-height:1.55}
body.future-site.future-home .product-universe.is-pinned .product-capabilities{display:none}
body.future-site.future-home .product-universe.is-pinned .product-highlights{margin:12px 0}
body.future-site.future-home .product-universe.is-pinned .product-demo-link{margin-top:0}

/* On the move: the four apps around the work (home); the cloud, mail and partner cards; the drawn symbols. */
.mobile-connection-art .cloud-art{left:0;top:145px;transform:rotate(-9deg);z-index:2}
.mobile-connection-art .mail-art{right:-2%;top:255px;transform:rotate(8deg);background:#31432c;color:#eef1e3;border-color:#7c8b70;z-index:3}
.mobile-connection-art.art-four{min-height:620px}
.mobile-connection-art.art-four .mobile-art-core{left:50%;top:50%;width:180px;height:176px;padding:22px;transform:translate(-50%,-50%) rotate(7deg)}
.mobile-connection-art.art-four .mobile-art-core strong{font-size:34px;margin-top:24px}
.mobile-connection-art.art-four .mobile-art-card{width:218px;min-height:206px;padding:21px 20px}
.mobile-connection-art.art-four .mobile-art-card strong{font-size:25px}
.mobile-connection-art.art-four .mobile-art-card>span{margin:14px 0}
.mobile-connection-art.art-four .mobile-art-card p{margin-top:14px}
.mobile-connection-art.art-four .parent-art{left:0;top:0;transform:rotate(-8deg)}
.mobile-connection-art.art-four .staff-art{right:0;top:36px;transform:rotate(7deg)}
.mobile-connection-art.art-four .mail-art{left:2%;right:auto;top:auto;bottom:14px;transform:rotate(6deg);background:#f5f1e5;color:#2f3025;border-color:#a5b093;z-index:2}
.mobile-connection-art.art-four .partner-art{right:1%;bottom:0;transform:rotate(-7deg);background:#31432c;color:#eef1e3;border-color:#7c8b70;z-index:3}
.mobile-connection-art.art-four .mobile-art-note{left:0;bottom:-34px;white-space:nowrap}
.mail-symbol,.deal-symbol,.browser-symbol{height:29px;display:flex;align-items:end}
.mail-symbol i{position:relative;width:30px;height:21px;border:1.5px solid currentColor;border-radius:4px;overflow:hidden}
.mail-symbol i:before{content:'';position:absolute;left:50%;top:-10px;width:16px;height:16px;border:1.5px solid currentColor;transform:translateX(-50%) rotate(45deg)}
.deal-symbol i{width:20px;height:20px;border:1.5px solid currentColor;border-radius:50%}
.deal-symbol i+i{margin-left:-7px}
.browser-symbol i{position:relative;width:30px;height:23px;border:1.5px solid currentColor;border-radius:4px}
.browser-symbol i:before{content:'';position:absolute;left:0;right:0;top:5px;border-top:1.5px solid currentColor}
.browser-symbol i:after{content:'';position:absolute;left:4px;top:1.5px;width:3px;height:3px;border-radius:50%;background:currentColor;box-shadow:5px 0 0 currentColor}
.future-page .mobile-scene{padding:120px 8%}
.future-page .mobile-copy h2{font-size:clamp(50px,5.6vw,84px);letter-spacing:-4px;font-weight:900;margin:22px 0}
.future-page .mobile-copy .tiny-label{color:#3b4a33}
.future-page .mobile-copy .text-link{display:inline-block;margin-top:26px;font-weight:700}
@media(max-width:1150px){.mobile-connection-art.art-four .mobile-art-card{width:196px;min-height:190px}.mobile-connection-art.art-four .mobile-art-card strong{font-size:22px}}
@media(max-width:760px){
.mobile-connection-art.art-four{display:grid;grid-template-columns:1fr 1fr;gap:12px;min-height:0;margin:50px 0 0}
.mobile-connection-art.art-four .mobile-path{display:none}
.mobile-connection-art.art-four .mobile-art-core{position:static;transform:none;grid-column:1/-1;width:auto;height:auto}
.mobile-connection-art.art-four .mobile-art-card{position:static;transform:none;width:auto;min-height:0}
.mobile-connection-art.art-four .mobile-art-note{position:static;transform:none;grid-column:1/-1;text-align:center;margin-top:6px}
.future-page .mobile-scene{padding:80px 7% 90px}
}

/* Better together: the organisation as a hub, the five services on spokes, the three flows beneath. */
.together{max-width:1080px;margin:64px auto 0}
.together-stage{position:relative;aspect-ratio:1000/640;isolation:isolate}
.together-web{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.together-web__ring{fill:none;stroke:#cdbfa6;stroke-width:1;stroke-dasharray:6 8}
.together-web__spoke{fill:none;stroke:#cdbfa6;stroke-width:1.2}
.together-web__signal{fill:#efad2f;filter:drop-shadow(0 0 6px rgba(239,173,47,.7))}
.together-hub{position:absolute;left:50%;top:46.9%;transform:translate(-50%,-75px);display:grid;justify-items:center;gap:10px;z-index:2;text-align:center}
.together-hub__mark{display:grid;place-items:center;width:150px;height:150px;border-radius:50%;background:#521329;box-shadow:0 0 0 12px rgba(82,19,41,.08),0 0 0 26px rgba(82,19,41,.04),0 26px 56px rgba(44,8,20,.32)}
.together-hub__mark img{width:76px;height:76px;object-fit:contain}
.together-hub>b{font-size:9px;letter-spacing:2px;font-weight:800;margin-top:6px}
.together-hub>span{font-size:8px;letter-spacing:1.6px;color:#8a7a80;font-weight:700}
.together-node{position:absolute;z-index:3;width:24%;min-width:200px;padding:18px 18px 16px;border-radius:18px;background:#fffdf8;border:1px solid #ddd3c6;box-shadow:0 14px 34px rgba(55,40,28,.08);color:inherit;text-decoration:none;transition:transform .3s,box-shadow .3s,border-color .3s}
.together-node:hover{transform:translateY(-6px);box-shadow:0 22px 44px rgba(55,40,28,.14);border-color:#521329}
.together-node__mark{display:grid;place-items:center;width:46px;height:46px;margin-bottom:14px;border-radius:13px;background:#521329;color:#fff8ec;font-size:24px;font-weight:900;line-height:1}
.together-node__mark--image{background:#f3e9dc;border:1px solid #e3d6c4}
.together-node__mark--image img{width:36px;height:26px;object-fit:contain}
.together-node__mark--whatsapp{background:#25d366;color:#fff}
.together-node__mark svg{width:26px;height:26px}
.together-node__mark--inr{font-family:Georgia,"Times New Roman",serif}
.together-node strong{display:block;font-size:18px;font-weight:900;letter-spacing:-.4px}
.together-node>span:not(.together-node__mark){display:block;font-size:12px;color:#5e4f55;margin-top:5px}
.together-node em{display:inline-block;margin-top:12px;padding:5px 9px;border-radius:999px;background:#f3e9dc;color:#521329;font-style:normal;font-size:9px;letter-spacing:1px;font-weight:800;text-transform:uppercase}
.together-node i{position:absolute;top:16px;right:18px;font-style:normal;color:#886f58;font-size:18px}
.together-node--a{left:3%;top:2%}
.together-node--b{right:3%;top:2%}
.together-node--c{left:0;top:38%}
.together-node--d{right:0;top:38%}
.together-node--e{left:50%;bottom:-2%;transform:translateX(-50%)}
.together-node--e:hover{transform:translateX(-50%) translateY(-6px)}
.together-flows{list-style:none;margin:72px 0 0;padding:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.together-flows li{display:grid;gap:8px;padding:22px 22px 24px;border-radius:18px;background:#521329;color:#fff8ec}
.together-flows b{font-size:11px;letter-spacing:2px;color:#efad2f}
.together-flows strong{font-size:19px;line-height:1.15;letter-spacing:-.4px}
.together-flows span{font-size:13px;line-height:1.6;color:#e8d3d9}
html[data-theme=dark] .together-web__ring,html[data-theme=dark] .together-web__spoke{stroke:#665249}
html[data-theme=dark] .together-node{background:#242127;border-color:#584752}
html[data-theme=dark] .together-node>span:not(.together-node__mark){color:#c8b6bf}
html[data-theme=dark] .together-node em{background:#3a2a33;color:#e4c09b}
html[data-theme=dark] .together-node i{color:#dfbd96}
html[data-theme=dark] .together-hub>span{color:#bcb1bc}
html[data-theme=dark] .together-node__mark--image{background:#3a2a33;border-color:#584752}
@media(prefers-reduced-motion:reduce){.together-web__signal{display:none}}
@media(max-width:1150px){.together-node{min-width:0;width:26%;padding:15px 14px 14px}.together-node strong{font-size:15px}.together-node em{font-size:8px}.together-hub__mark{width:120px;height:120px}.together-hub__mark img{width:60px;height:60px}.together-hub{transform:translate(-50%,-60px)}}
@media(max-width:760px){
.together{margin-top:40px}
.together-stage{aspect-ratio:auto;display:grid;grid-template-columns:1fr 1fr;gap:12px}
.together-web{display:none}
.together-hub{position:static;transform:none;grid-column:1/-1;margin-bottom:8px}
.together-hub__mark{width:110px;height:110px;box-shadow:0 0 0 8px rgba(82,19,41,.08),0 18px 40px rgba(44,8,20,.28)}
.together-hub__mark img{width:56px;height:56px}
.together-node,.together-node--e{position:static;transform:none;width:auto;min-width:0}
.together-node--e{grid-column:1/-1}
.together-node:hover,.together-node--e:hover{transform:none}
.together-flows{grid-template-columns:1fr;margin-top:36px}
}

/* The panel's two actions on the right of its head row, beside the availability pill and clear of the dock. */
.product-panel-head{flex-wrap:wrap}
.product-panel-head .product-status{margin-right:auto}
.product-actions{display:flex;flex-direction:column;align-items:flex-end;gap:9px;margin-left:auto}
.product-actions .product-demo-link,.product-explorer .product-actions .product-demo-link{display:inline-block;margin:0;white-space:nowrap}
.product-actions .future-button{white-space:nowrap}
body.future-site.future-home .product-universe.is-pinned .product-actions .future-button{padding:12px 17px 12px 19px;font-size:12px;gap:22px}
@media(max-width:1150px){.product-actions .product-demo-link{display:inline-block;margin:0}}
@media(max-width:760px){.product-actions{align-items:flex-start;width:100%;gap:10px;margin-left:0}.product-actions .future-button{font-size:11px}}

/* The pinned stage slides with the scroll, as the hero does: each part of a panel comes in from the right in turn, the art drifts, the panel leaves to the left; a counter and a scene label as in the hero. */
body.future-site.future-home .product-universe.is-pinned{--slide-in:1;--slide-out:0;--slide-p:0}
body.future-site.future-home .product-universe.is-pinned .product-panel{animation:none;transform:translateX(calc(var(--slide-out) * -90px));opacity:calc(1 - var(--slide-out));will-change:transform,opacity}
body.future-site.future-home .product-universe.is-pinned .product-panel-head{transform:translateX(calc((1 - var(--slide-in)) * 40px));opacity:var(--slide-in)}
body.future-site.future-home .product-universe.is-pinned .product-panel h3{transform:translateX(calc((1 - var(--slide-in)) * 70px));opacity:var(--slide-in)}
body.future-site.future-home .product-universe.is-pinned .product-panel>p{transform:translateX(calc((1 - var(--slide-in)) * 100px));opacity:var(--slide-in)}
body.future-site.future-home .product-universe.is-pinned :is(.website-product-art,.school-concept,.erp-concept){transform:translate(calc((1 - var(--slide-in)) * 130px),calc(var(--slide-p) * -12px));opacity:var(--slide-in)}
body.future-site.future-home .product-universe.is-pinned .product-highlights{transform:translateX(calc((1 - var(--slide-in)) * 60px));opacity:var(--slide-in)}
.stage-counter,.stage-label{display:none}
body.future-site.future-home .product-universe.is-pinned .stage-counter{display:block;position:absolute;right:8%;bottom:118px;font-size:11px;letter-spacing:2px;color:#a08c99}
body.future-site.future-home .product-universe.is-pinned .stage-counter b{font-size:28px;font-weight:400;letter-spacing:-1px;color:#f0cc9b;margin-right:4px}
body.future-site.future-home .product-universe.is-pinned .stage-label{display:block;position:absolute;right:2.4%;top:50%;transform:translateY(-50%) rotate(180deg);writing-mode:vertical-rl;font-size:7px;font-weight:700;letter-spacing:1.6px;color:#8b7784}

/* Product chooser: scroll-driven on large screens, swipeable snap slides everywhere else. */
.guide-scroll{display:none}
.guide-swipe{display:inline}
.product-slide-controls{display:none}
body.future-site.future-home .product-universe.is-swipe .product-explorer{display:block;padding-top:34px}
body.future-site.future-home .product-universe.is-swipe .product-tabs{position:static;display:flex;align-items:stretch;gap:10px;margin:0 0 24px;overflow-x:auto;scroll-snap-type:x proximity;scrollbar-width:thin;scrollbar-color:#9f7c8d transparent;padding:0 0 12px}
body.future-site.future-home .product-universe.is-swipe .product-tab{flex:0 0 auto;width:auto;min-width:190px;padding:17px 18px;border:1px solid #654655;border-radius:14px;scroll-snap-align:start}
body.future-site.future-home .product-universe.is-swipe .product-tab.is-active{background:#35202c;border-color:#d4ae7b}
body.future-site.future-home .product-universe.is-swipe .product-tab i{margin-left:12px}
body.future-site.future-home .product-universe.is-swipe .product-slide-bar{display:none}
body.future-site.future-home .product-universe.is-swipe .all-products-link{flex:0 0 auto;align-items:center;gap:24px;padding:0 18px;min-width:210px;border:1px solid #654655;border-radius:14px;scroll-snap-align:start}
body.future-site.future-home .product-universe.is-swipe .product-panels{display:flex;gap:clamp(16px,3vw,34px);overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:#d4ae7b #3c2632;padding:0 0 18px;touch-action:pan-x pan-y}
body.future-site.future-home .product-universe.is-swipe .product-panel{box-sizing:border-box;flex:0 0 100%;width:100%;min-width:0;scroll-snap-align:start;scroll-snap-stop:always;padding:clamp(22px,4vw,42px);border:1px solid #654655;border-radius:22px;background:#2d1924;animation:none}
body.future-site.future-home .product-universe.is-swipe .product-panel.is-active{border-color:#a17b62;box-shadow:inset 0 0 0 1px #a17b6240}
body.future-site.future-home .product-universe.is-swipe .product-slide-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:22px}
body.future-site.future-home .product-universe.is-swipe .product-slide-controls button{display:flex;align-items:center;gap:10px;border:1px solid #806172;border-radius:999px;background:transparent;color:#f4e4c9;padding:11px 17px;font:700 11px/1 Lato,Arial,sans-serif;letter-spacing:.04em}
body.future-site.future-home .product-universe.is-swipe .product-slide-controls button:not(:disabled):hover{background:#f4e4c9;color:#2d1924}
body.future-site.future-home .product-universe.is-swipe .product-slide-controls button:disabled{opacity:.32;cursor:not-allowed}
body.future-site.future-home .product-universe.is-swipe .product-slide-controls p{min-width:58px;text-align:center;font-size:10px;letter-spacing:2px;color:#a995a0}
body.future-site.future-home .product-universe.is-swipe .product-slide-controls b{font-size:22px;font-weight:400;color:#f0cc9b}
body.future-site.future-home .product-universe.is-pinned .guide-scroll{display:inline}
body.future-site.future-home .product-universe.is-pinned .guide-swipe{display:none}
body.future-site.future-home .product-universe.is-pinned .product-slide-controls{display:none}
@media(max-width:760px){
body.future-site.future-home .product-universe.is-swipe .section-intro h2{font-size:clamp(43px,13vw,58px);line-height:1.01}
body.future-site.future-home .product-universe.is-swipe .product-explorer{padding-top:24px}
body.future-site.future-home .product-universe.is-swipe .product-tabs{display:flex;gap:8px;margin-bottom:16px}
body.future-site.future-home .product-universe.is-swipe .product-tab{min-width:154px;padding:14px 13px;gap:8px}
body.future-site.future-home .product-universe.is-swipe .product-tab strong{font-size:13px}
body.future-site.future-home .product-universe.is-swipe .all-products-link{min-width:180px;padding:0 14px}
body.future-site.future-home .product-universe.is-swipe .product-panels{gap:12px;margin-right:-3%;padding-bottom:14px}
body.future-site.future-home .product-universe.is-swipe .product-panel{padding:22px 18px;border-radius:18px}
body.future-site.future-home .product-universe.is-swipe .product-slide-controls{justify-content:space-between;gap:10px;margin-top:16px}
body.future-site.future-home .product-universe.is-swipe .product-slide-controls button{padding:11px 13px;font-size:10px}
}
@media(prefers-reduced-motion:reduce){body.future-site.future-home .product-universe.is-swipe .product-panels{scroll-behavior:auto}}

/* Product universe, rebuilt as a second scroll story. The whole workspace is
   the slide: copy, actions and an illustrated stage advance together while the
   page remains pinned, echoing the opening unbox sequence. */
.product-stage{position:relative;isolation:isolate;overflow:hidden}
.product-stage-glow{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.product-stage-glow i{position:absolute;border-radius:50%;filter:blur(2px);transition:background .65s ease,transform .65s ease,opacity .65s ease}
.product-stage-glow i:nth-child(1){width:min(58vw,820px);aspect-ratio:1;right:-14%;top:-34%;background:radial-gradient(circle,rgba(163,93,113,.2),transparent 67%)}
.product-stage-glow i:nth-child(2){width:min(42vw,600px);aspect-ratio:1;left:31%;bottom:-48%;background:radial-gradient(circle,rgba(218,178,112,.12),transparent 68%)}
.product-stage-glow i:nth-child(3){inset:0;border-radius:0;filter:none;opacity:.2;background-image:linear-gradient(rgba(255,255,255,.045) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.045) 1px,transparent 1px);background-size:70px 70px;mask-image:linear-gradient(to bottom,transparent,#000 28%,#000 72%,transparent)}
.product-panel-kicker{margin:0 0 12px;color:#d9b882;font-size:9px;font-weight:800;letter-spacing:.18em;text-transform:uppercase}
.product-panel-description{max-width:550px;margin:18px 0 24px;color:#c7b6c1;font-size:14px;line-height:1.72}
.product-panel-visual{position:relative;min-width:0;display:grid;place-items:center}
.product-panel-copy{min-width:0}

body.future-site.future-home .product-universe.is-pinned{height:calc((var(--slides,5) + 1) * 92svh);background:#1a0d15}
body.future-site.future-home .product-universe.is-pinned .product-stage{height:100svh;min-height:700px;padding:72px 8% 104px;display:grid;grid-template-rows:auto minmax(0,1fr)}
body.future-site.future-home .product-universe.is-pinned .section-intro{display:flex;align-items:end;justify-content:space-between;gap:40px;padding:0 0 22px;border-bottom:1px solid rgba(229,199,160,.24);text-align:left}
body.future-site.future-home .product-universe.is-pinned .section-intro h2{font-size:clamp(37px,4.2vw,64px);line-height:.94;letter-spacing:-3px;margin:9px 0 0}
body.future-site.future-home .product-universe.is-pinned .section-intro .tiny-label{color:#bda98e}
body.future-site.future-home .product-universe.is-pinned .product-stage-guide{position:static;max-width:230px;margin:0 0 5px;text-align:right;color:#baa9b3;font-size:11px;line-height:1.55}
body.future-site.future-home .product-universe.is-pinned .product-explorer{display:grid;grid-template-columns:1fr;grid-template-rows:auto minmax(0,1fr);gap:18px;padding-top:0;min-height:0}
body.future-site.future-home .product-universe.is-pinned .product-tabs{position:static;display:grid;grid-template-columns:repeat(5,minmax(0,1fr)) minmax(145px,.8fr);align-items:stretch;gap:0;margin:0}
body.future-site.future-home .product-universe.is-pinned .product-tab{min-width:0;padding:14px 14px 13px 0;border:0;border-bottom:1px solid rgba(151,115,134,.42);gap:9px;overflow:hidden}
body.future-site.future-home .product-universe.is-pinned .product-tab+.product-tab{padding-left:14px}
body.future-site.future-home .product-universe.is-pinned .product-tab>span{font-size:8px}
body.future-site.future-home .product-universe.is-pinned .product-tab strong{overflow:hidden;font-size:clamp(12px,1.05vw,16px);line-height:1.15;text-overflow:ellipsis;white-space:nowrap}
body.future-site.future-home .product-universe.is-pinned .product-tab i{display:none}
body.future-site.future-home .product-universe.is-pinned .product-slide-bar{height:3px;bottom:-1px}
body.future-site.future-home .product-universe.is-pinned .all-products-link{align-items:center;gap:16px;padding:0 0 0 20px;border-bottom:1px solid rgba(151,115,134,.42);font-size:9px;line-height:1.35}
body.future-site.future-home .product-universe.is-pinned .product-panels{height:100%;min-height:0;overflow:hidden}
body.future-site.future-home .product-universe.is-pinned .product-panel:not([hidden]){height:100%;display:grid;grid-template-columns:minmax(300px,.78fr) minmax(430px,1.22fr);align-items:center;gap:clamp(34px,5vw,86px);animation:none;transform:translateX(calc(var(--slide-out) * -8vw));opacity:calc(1 - var(--slide-out));will-change:transform,opacity}
body.future-site.future-home .product-universe.is-pinned .product-panel-copy{align-self:center;padding-bottom:14px}
body.future-site.future-home .product-universe.is-pinned .product-panel-head{justify-content:flex-start;gap:13px;margin:0 0 20px;transform:translateY(calc((1 - var(--slide-in)) * 24px));opacity:var(--slide-in)}
body.future-site.future-home .product-universe.is-pinned .product-panel-head .product-status{margin-right:0}
body.future-site.future-home .product-universe.is-pinned .product-panel-kicker{transform:translateY(calc((1 - var(--slide-in)) * 34px));opacity:var(--slide-in)}
body.future-site.future-home .product-universe.is-pinned .product-panel h3{max-width:16ch;margin:0;font-size:clamp(36px,3.5vw,56px);line-height:.93;letter-spacing:-3px;transform:translateY(calc((1 - var(--slide-in)) * 54px));opacity:var(--slide-in)}
body.future-site.future-home .product-universe.is-pinned .product-panel-description{margin:20px 0 25px;font-size:clamp(12px,1vw,15px);line-height:1.65;transform:translateY(calc((1 - var(--slide-in)) * 68px));opacity:var(--slide-in)}
body.future-site.future-home .product-universe.is-pinned .product-actions{align-items:flex-start;flex-direction:row;flex-wrap:wrap;gap:13px 18px;margin:0;transform:translateY(calc((1 - var(--slide-in)) * 78px));opacity:var(--slide-in)}
body.future-site.future-home .product-universe.is-pinned .product-actions .future-button{padding:13px 18px 13px 20px;font-size:11px}
body.future-site.future-home .product-universe.is-pinned .product-actions .product-demo-link{align-self:center;font-size:10px}
body.future-site.future-home .product-universe.is-pinned .product-capabilities{display:none}
body.future-site.future-home .product-universe.is-pinned .product-highlights{margin:22px 0 0;transform:translateY(calc((1 - var(--slide-in)) * 88px));opacity:var(--slide-in)}
body.future-site.future-home .product-universe.is-pinned .product-panel-visual{align-self:stretch;min-height:0;margin:18px 0 8px;border:1px solid rgba(222,190,153,.18);border-radius:30px;background:linear-gradient(145deg,rgba(255,255,255,.055),rgba(255,255,255,.012));box-shadow:inset 0 1px rgba(255,255,255,.06),0 35px 90px rgba(0,0,0,.25);overflow:hidden;transform:translateX(calc((1 - var(--slide-in)) * 12vw)) scale(calc(.94 + var(--slide-in) * .06)) rotate(calc((1 - var(--slide-in)) * 1.5deg));opacity:var(--slide-in)}
body.future-site.future-home .product-universe.is-pinned .product-panel-visual :is(.website-product-art,.school-concept,.erp-concept){width:min(94%,760px);max-height:100%;transform:translateY(calc((.5 - var(--slide-p)) * 22px));opacity:1}
body.future-site.future-home .product-universe.is-pinned .stage-counter{right:8%;bottom:112px}
body.future-site.future-home .product-universe.is-pinned .stage-label{right:2.2%;color:#a9909e}
body.future-site.future-home .product-universe[data-active-product="school"] .product-stage-glow i:nth-child(1){background:radial-gradient(circle,rgba(98,128,100,.24),transparent 67%);transform:translate(-5%,8%)}
body.future-site.future-home .product-universe[data-active-product="hospital"] .product-stage-glow i:nth-child(1){background:radial-gradient(circle,rgba(80,140,146,.22),transparent 67%);transform:translate(-10%,16%)}
body.future-site.future-home .product-universe[data-active-product="billing"] .product-stage-glow i:nth-child(1){background:radial-gradient(circle,rgba(195,140,63,.22),transparent 67%);transform:translate(-15%,24%)}
body.future-site.future-home .product-universe[data-active-product="business"] .product-stage-glow i:nth-child(1){background:radial-gradient(circle,rgba(108,89,153,.24),transparent 67%);transform:translate(-20%,31%)}

body.future-site.future-home .product-universe.is-swipe .product-stage-glow{display:none}
body.future-site.future-home .product-universe.is-swipe .section-intro{display:flex;align-items:end;justify-content:space-between;gap:30px}
body.future-site.future-home .product-universe.is-swipe .section-intro>div{min-width:0}
body.future-site.future-home .product-universe.is-swipe .product-panel-copy{display:flex;flex-direction:column}
body.future-site.future-home .product-universe.is-swipe .product-panel-description{margin:16px 0 22px}
body.future-site.future-home .product-universe.is-swipe .product-actions{align-items:flex-start;flex-direction:row;flex-wrap:wrap;margin:0 0 24px}
body.future-site.future-home .product-universe.is-swipe .product-panel-visual{min-height:clamp(300px,52vw,560px);margin:6px 0 22px;border:1px solid #654655;border-radius:18px;background:#35202c;overflow:hidden}
body.future-site.future-home .product-universe.is-swipe .product-panel-visual :is(.website-product-art,.school-concept,.erp-concept){width:min(94%,760px)}

@media(max-width:1180px) and (min-width:1000px){
body.future-site.future-home .product-universe.is-pinned .product-stage{padding-inline:6%}
body.future-site.future-home .product-universe.is-pinned .product-panel:not([hidden]){grid-template-columns:minmax(280px,.72fr) minmax(400px,1.28fr);gap:35px}
body.future-site.future-home .product-universe.is-pinned .product-panel h3{font-size:clamp(38px,4.4vw,58px)}
body.future-site.future-home .product-universe.is-pinned .product-tab strong{font-size:12px}
}
@media(max-width:760px){
body.future-site.future-home .product-universe.is-swipe .section-intro{display:block}
body.future-site.future-home .product-universe.is-swipe .product-stage-guide{margin-top:20px}
body.future-site.future-home .product-universe.is-swipe .product-panel-head{display:flex;align-items:center}
body.future-site.future-home .product-universe.is-swipe .product-panel-kicker{margin-top:5px}
body.future-site.future-home .product-universe.is-swipe .product-panel h3{font-size:clamp(36px,11vw,50px);line-height:.96;letter-spacing:-2px}
body.future-site.future-home .product-universe.is-swipe .product-panel-description{font-size:12px;line-height:1.65}
body.future-site.future-home .product-universe.is-swipe .product-actions{display:grid;grid-template-columns:1fr;gap:12px;margin-bottom:22px}
body.future-site.future-home .product-universe.is-swipe .product-actions .future-button{width:100%;box-sizing:border-box;justify-content:space-between}
body.future-site.future-home .product-universe.is-swipe .product-panel-visual{min-height:290px;margin-inline:-4px}
body.future-site.future-home .product-universe.is-swipe .product-highlights{margin-top:20px}
}

/* Better together, redrawn as a clear integration board rather than an orbit. */
.connections{padding:clamp(88px,8vw,126px) 8%;background:linear-gradient(180deg,#f4f1e8 0%,#eee8dc 100%)}
.connections>.section-intro{max-width:1180px;margin:0 auto;text-align:left;display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,.38fr);gap:24px 70px;align-items:end}
.connections>.section-intro .tiny-label{grid-column:1/-1;margin:0;color:#6a4d3e}
.connections>.section-intro h2{margin:0;font-size:clamp(58px,7vw,104px);line-height:.92}
.connections>.section-intro>p:last-child{margin:0 0 8px;max-width:38ch;font-size:15px;line-height:1.7;color:#6c5e64;opacity:1}
.together{max-width:1180px;margin:64px auto 0}
.integration-board{display:grid;grid-template-columns:minmax(320px,.82fr) minmax(0,1.18fr);border:1px solid #d8cfc1;border-radius:30px;background:#faf7f0;box-shadow:0 28px 75px rgba(57,37,29,.11);overflow:hidden}
.integration-core{position:relative;padding:clamp(34px,4.5vw,62px);background:#361220;color:#fff8ec;overflow:hidden}
.integration-core:before{content:'';position:absolute;width:360px;height:360px;right:-180px;bottom:-205px;border:1px solid rgba(239,207,167,.2);border-radius:50%;box-shadow:0 0 0 55px rgba(239,207,167,.035),0 0 0 110px rgba(239,207,167,.025)}
.integration-core>*{position:relative;z-index:1}
.integration-core__brand{display:flex;align-items:center;gap:15px;padding-bottom:28px;margin-bottom:42px;border-bottom:1px solid rgba(255,240,219,.2)}
.integration-core__brand>span{display:grid;place-items:center;width:68px;height:68px;background:transparent;box-shadow:none}
.integration-core__brand img{width:64px;height:64px;object-fit:contain}
.integration-core__brand div{display:grid;gap:6px}.integration-core__brand b{font-size:10px;letter-spacing:.16em}.integration-core__brand small{color:#d6bbc4;font-size:8px;letter-spacing:.14em}
.integration-core>.tiny-label{color:#e5bc7e}
.integration-core h3{margin:17px 0 22px;font-size:clamp(38px,4vw,61px);line-height:.98;letter-spacing:-2.7px}.integration-core h3 em{color:#e5bc7e}
.integration-core>p:not(.tiny-label){max-width:43ch;margin:0;color:#dfcfd3;font-size:14px;line-height:1.72}
.integration-path{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:0;margin:40px 0 0;padding:0;border-top:1px solid rgba(255,240,219,.2)}
.integration-path li{position:relative;display:grid;gap:8px;padding:20px 12px 0 0}.integration-path li+li{padding-left:18px}
.integration-path li+li:before{content:'→';position:absolute;left:-8px;top:27px;color:#a98692;font-size:12px}
.integration-path b{color:#e5bc7e;font-size:9px;letter-spacing:.18em}.integration-path span{font-size:11px;font-weight:800;letter-spacing:.04em}
.integration-services{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#ded4c6}
.integration-service{position:relative;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:17px;align-items:center;min-height:148px;padding:24px 25px;background:#faf7f0;color:#2a2025;text-decoration:none;transition:background .25s ease,transform .25s ease}
.integration-service:hover{z-index:1;background:#fffdf8;box-shadow:0 18px 45px rgba(59,38,29,.12);transform:translateY(-2px)}
.integration-service--wide{grid-column:1/-1;min-height:132px}
.integration-service__mark{display:grid;place-items:center;width:54px;height:54px;border-radius:16px;background:#521329;color:#fff8ec;font:900 25px/1 var(--f-font-display);box-shadow:0 9px 24px rgba(63,19,35,.15)}
.integration-service__mark svg{width:26px;height:26px}.integration-service__mark--image{background:#efe4d6}.integration-service__mark--image img{width:42px;height:31px;object-fit:contain}.integration-service__mark--whatsapp{background:#237b4b}.integration-service__mark--inr{font-family:Georgia,"Times New Roman",serif}
.integration-service>span:nth-child(2){display:grid;gap:5px;min-width:0}.integration-service small{color:#6f5646;font-size:7px;font-weight:800;letter-spacing:.16em}.integration-service strong{font-size:18px;line-height:1.1;letter-spacing:-.35px}.integration-service em{color:#5c4f56;font-size:10px;line-height:1.35;font-style:normal}.integration-service>i{align-self:start;color:#7b5a48;font-style:normal;font-size:17px;transition:transform .25s}.integration-service:hover>i{transform:translate(3px,-3px)}
.integration-proof-head{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-top:58px;padding-bottom:17px;border-bottom:1px solid #cfc4b4}.integration-proof-head span{color:#72513f;font-size:9px;font-weight:800;letter-spacing:.17em}.integration-proof-head p{margin:0;color:#5c4f56;font-size:12px}
.together-flows{margin:0;padding:0;gap:0;border-bottom:1px solid #cfc4b4}
.together-flows li{position:relative;display:grid;align-content:start;gap:12px;min-height:235px;padding:31px 34px 34px;border-radius:0;background:transparent;color:#2a2025}
.together-flows li+li{border-left:1px solid #cfc4b4}.together-flows b{color:#7a5236;font-size:9px}.together-flows strong{max-width:15ch;font-size:clamp(21px,2vw,29px);line-height:1.08;letter-spacing:-.8px}.together-flows span{color:#544850;font-size:13px;line-height:1.65}
html[data-theme=dark] .connections{background:linear-gradient(180deg,#1d191e,#211a1e)}
html[data-theme=dark] .connections>.section-intro>p:last-child,html[data-theme=dark] .integration-proof-head p{color:#bfb2b8}
html[data-theme=dark] .integration-board{border-color:#55464e;background:#211d22}
html[data-theme=dark] .integration-services{background:#51444b}
html[data-theme=dark] .integration-service{background:#282329;color:#f3eee5}
html[data-theme=dark] .integration-service:hover{background:#30282f}
html[data-theme=dark] .integration-service em{color:#bfb2b8}
html[data-theme=dark] .integration-proof-head,html[data-theme=dark] .together-flows{border-color:#574a50}
html[data-theme=dark] .together-flows li{color:#f3eee5}
html[data-theme=dark] .together-flows li+li{border-color:#574a50}
html[data-theme=dark] .together-flows span{color:#bfb2b8}
@media(max-width:900px){.connections>.section-intro{grid-template-columns:1fr}.connections>.section-intro>p:last-child{max-width:55ch}.integration-board{grid-template-columns:1fr}.integration-services{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:760px){.connections{padding:78px 7% 82px}.connections>.section-intro{gap:23px}.connections>.section-intro h2{font-size:clamp(51px,14vw,68px)}.connections>.section-intro>p:last-child{font-size:13px}.together{margin-top:40px}.integration-board{border-radius:22px}.integration-core{padding:30px 23px 34px}.integration-core__brand{margin-bottom:31px}.integration-core h3{font-size:39px}.integration-services{grid-template-columns:1fr}.integration-service,.integration-service--wide{grid-column:auto;min-height:0;padding:20px 18px}.integration-service__mark{width:49px;height:49px;border-radius:14px}.integration-proof-head{display:block;margin-top:44px}.integration-proof-head p{margin-top:8px}.together-flows{grid-template-columns:1fr}.together-flows li{min-height:0;padding:27px 4px 29px}.together-flows li+li{border-left:0;border-top:1px solid #cfc4b4}.together-flows strong{max-width:none}}

/* The demo request follows the same calm, single-panel language as Talk to us. */
.future-site .demo-dialog{width:820px;padding:55px;overflow:auto}
.future-site .demo-dialog[open]{display:block}
.demo-dialog__intro{padding:0 0 28px;color:var(--f-ink);border-bottom:1px solid var(--f-rule)}
.demo-dialog__intro .tiny-label{color:var(--f-wine)}.demo-dialog__intro h2{margin:18px 0 22px;font-size:clamp(52px,6vw,78px);line-height:.95;letter-spacing:-4px}.demo-dialog__intro h2 em{color:var(--f-wine)}.demo-dialog__intro>p:not(.tiny-label){max-width:56ch;margin:0;color:var(--f-muted);font-size:13px;line-height:1.72}
.demo-dialog__promise{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin-top:25px;border-top:1px solid var(--f-rule);border-bottom:1px solid var(--f-rule)}.demo-dialog__promise span{display:flex;gap:10px;padding:13px 10px 13px 0;font-size:10px;font-weight:700}.demo-dialog__promise span+span{padding-left:15px;border-left:1px solid var(--f-rule)}.demo-dialog__promise b{color:var(--f-wine);font-size:8px;letter-spacing:.15em}
.demo-dialog__form{padding:28px 0 0;background:transparent;overflow:visible}.demo-dialog__form .hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.demo-dialog__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.demo-dialog__field{display:grid;gap:8px;min-width:0}.demo-dialog__field>span,.demo-dialog__products legend{color:#5f5058;font-size:9px;font-weight:800;letter-spacing:.11em;text-transform:uppercase}.demo-dialog__field>span b{color:#8f1022}
.demo-dialog__field :is(input,select,textarea){box-sizing:border-box;width:100%;min-height:48px;border:1px solid #cfc2b6;border-radius:9px;background:#fffdf8;color:#281f24;padding:11px 13px;font:500 13px/1.45 Lato,Arial,sans-serif;outline:0}.demo-dialog__field textarea{min-height:76px;resize:vertical}.demo-dialog__field :is(input,select,textarea):focus{border-color:#6d263f;box-shadow:0 0 0 3px rgba(109,38,63,.1)}
.demo-dialog__products{min-width:0;margin:23px 0;padding:0;border:0}.demo-dialog__products legend{margin-bottom:13px}.demo-dialog__products>div{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 22px}.demo-dialog__products label{display:flex;align-items:flex-start;gap:10px;min-width:0;color:#55464e;cursor:pointer}.demo-dialog__products input{appearance:none;display:grid;place-items:center;flex:0 0 17px;width:17px;height:17px;margin:0;border:1.5px solid #876f79;border-radius:2px;background:transparent;cursor:pointer}.demo-dialog__products input:checked{border-color:#6d263f;background:#6d263f}.demo-dialog__products input:checked:after{content:'✓';color:#fff;font:800 12px/1 Arial,sans-serif}.demo-dialog__products input:focus-visible{outline:2px solid #a94c68;outline-offset:2px}.demo-dialog__products label span{min-width:0;padding-top:1px;font-size:11px;font-weight:700;line-height:1.35}.demo-dialog__products label:has(input:checked) span{color:#5a1830}.demo-dialog__products>small{display:block;margin-top:12px;color:#63555c;font-size:10px;line-height:1.5}
.demo-dialog__grid--bottom{grid-template-columns:.8fr 1.2fr;margin-bottom:20px}.demo-dialog__form .legal-accept{margin-top:5px}.demo-dialog__form .checkbox{display:flex;align-items:flex-start;gap:9px;color:#66575f;font-size:10px;line-height:1.55;cursor:pointer}.demo-dialog__form .checkbox input{flex:none;width:17px;height:17px;margin:1px 0 0;accent-color:#6d263f}.demo-dialog__form .field__hint{margin:5px 0 0 26px;color:#8b7b83;font-size:9px;line-height:1.5}.demo-dialog__actions{display:flex;align-items:center;gap:18px;margin-top:20px}.demo-dialog__actions .future-button{border:0}.demo-dialog__actions p{margin:0;color:#63555c;font-size:9px;line-height:1.5}.demo-dialog>.dialog-close{z-index:4;color:#5a1830;background:#fffaf2}
html[data-theme=dark] .demo-dialog__field :is(input,select,textarea){color-scheme:dark;border-color:#5b4b53;background:#2e2930;color:#eee6dc}html[data-theme=dark] .demo-dialog__field>span,html[data-theme=dark] .demo-dialog__products legend{color:#c7b8bf}html[data-theme=dark] .demo-dialog__products label{color:#eee6dc}html[data-theme=dark] .demo-dialog__products input{border-color:#ad98a2}html[data-theme=dark] .demo-dialog__products input:checked{border-color:#e0b792;background:#e0b792}html[data-theme=dark] .demo-dialog__products input:checked:after{color:#361220}html[data-theme=dark] .demo-dialog__products label:has(input:checked) span{color:#f3d8c2}
@media(max-width:760px){.future-site .demo-dialog{padding:45px 25px 30px}.demo-dialog__intro h2{font-size:52px;letter-spacing:-3px}.demo-dialog__promise span{display:grid;gap:5px;padding-right:8px}.demo-dialog__form{padding-top:25px}}
@media(max-width:600px){.future-site .demo-dialog{max-height:calc(100svh - 24px)}.demo-dialog__intro{padding-bottom:24px}.demo-dialog__intro h2{font-size:42px;margin:16px 0 18px}.demo-dialog__intro>p:not(.tiny-label){font-size:12px}.demo-dialog__promise{grid-template-columns:1fr;margin-top:22px;border-bottom:0}.demo-dialog__promise span,.demo-dialog__promise span+span{display:flex;padding:10px 0;border-left:0;border-bottom:1px solid var(--f-rule)}.demo-dialog__grid,.demo-dialog__grid--bottom{grid-template-columns:1fr;gap:14px}.demo-dialog__products>div{grid-template-columns:1fr}.demo-dialog__actions{align-items:flex-start;flex-direction:column}.demo-dialog__actions .future-button{width:100%;justify-content:space-between}}

/* source: assets/css/modern-pages.css */
/* Preview-only editorial surfaces. Existing forms and destinations are retained. */
body.future-page {
  --ff-display: var(--f-font-display, "Space Grotesk", sans-serif);
  --ff-body: var(--f-font-body, Manrope, sans-serif);
  --paper: #f4f1e8;
  --cream: #eee9de;
  --bg: #f4f1e8;
  --white: #fffdf8;
  --ink: #211b20;
  --ink-soft: #40373d;
  --muted: #57494f;
  --muted-2: #736870;
  --wine-950: #211b20;
  --wine-900: #38101f;
  --wine-800: #521329;
  --wine-700: #521329;
  --wine-600: #6c203c;
  --orange: #c39a62;
  --orange-ink: #714523;
  --gold: #d9b788;
  --gold-soft: #ebd6b7;
  --accent: #c39a62;
  --accent-ink: #521329;
  --surface: #fffdf8;
  --surface-2: #eee9de;
  --surface-3: #e7e0d2;
  --elevated: #fffdf8;
  --text: #211b20;
  --text-soft: #40373d;
  --text-muted: #57494f;
  --line: rgba(45, 32, 39, .17);
  --line-2: rgba(45, 32, 39, .1);
  --line-strong: rgba(45, 32, 39, .3);
  --focus: #521329;
  --focus-offset: #f4f1e8;
  --cw: 1320px;
  --cw-wide: 1440px;
  --cw-narrow: 1000px;
  --gutter: clamp(22px, 5vw, 80px);
  --band-y: clamp(68px, 9vw, 132px);
  --anchor-offset: 130px;
  color: var(--ink);
  background: var(--paper);
  font-family: var(--ff-body);
  padding-top: 128px;
  padding-bottom: 100px;
}

body.future-page .band { background: var(--paper); }
body.future-page .band--cream { background: #eee9de; }
body.future-page .band--wine,
body.future-page .band--deep {
  --text: #f8f2e7;
  --text-soft: #e2d6ce;
  --text-muted: #d4c5bd;
  --line: rgba(244, 241, 232, .18);
  --line-2: rgba(244, 241, 232, .1);
  --line-strong: rgba(244, 241, 232, .3);
  background: #521329;
  color: #f8f2e7;
}
body.future-page .band::before,
body.future-page .band::after,
body.future-page .hero__visual .mock::before { content: none; }
body.future-page .band.page-hero {
  --text: #211b20;
  --text-soft: #40373d;
  --text-muted: #57494f;
  --line: rgba(45, 32, 39, .17);
  --line-2: rgba(45, 32, 39, .1);
  --line-strong: rgba(45, 32, 39, .3);
  padding-top: 38px;
  padding-bottom: clamp(60px, 7vw, 106px);
  background: var(--paper);
  color: var(--ink);
  border-bottom: 1px solid var(--line);
}
body.future-page .page-title {
  max-width: 17ch;
  margin-block: 22px 28px;
  color: var(--ink);
  font-family: var(--ff-display);
  font-size: clamp(42px, 5.9vw, 88px);
  font-weight: 700;
  line-height: .99;
  letter-spacing: -.058em;
  text-wrap: balance;
  background: none;
  text-shadow: none;
}
body.future-page.page-products .page-title { max-width: 22ch; }
body.future-page .page-hero .lead {
  max-width: 60ch;
  color: #57494f;
  font-size: clamp(18px, 1.6vw, 22px);
  line-height: 1.6;
}
body.future-page .section-title {
  font-family: var(--ff-display);
  max-width: 24ch;
  font-size: clamp(32px, 4.1vw, 61px);
  line-height: 1.05;
  letter-spacing: -.045em;
  font-weight: 700;
}
body.future-page .section-lead { max-width: 68ch; font-size: 18px; line-height: 1.65; }
body.future-page .section-head { margin-bottom: clamp(34px, 5vw, 66px); }
body.future-page .eyebrow,
body.future-page .section-num,
body.future-page .pricing-eyebrow,
body.future-page .tag {
  font-family: var(--ff-body);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .17em;
  text-transform: uppercase;
}
body.future-page .page-hero .eyebrow,
body.future-page .page-hero .tag { color: #714523; }
body.future-page .breadcrumb { margin-bottom: 42px; }
body.future-page .breadcrumb__item { color: #57494f; font-size: 12px; }
body.future-page .breadcrumb__item.is-current { color: #211b20; }
body.future-page .hero__micro { max-width: 60ch; color: #57494f; font-size: 13px; line-height: 1.65; }
body.future-page .hero__actions { gap: 12px; margin-top: 34px; }
body.future-page .button {
  min-height: 50px;
  padding: 14px 23px;
  border: 1px solid #521329;
  border-radius: 999px;
  font-family: var(--ff-body);
  font-size: 14px;
  font-weight: 700;
  letter-spacing: 0;
  line-height: 1.3;
  box-shadow: none;
  text-shadow: none;
  transition: background-color .2s ease, color .2s ease, transform .2s ease;
}
body.future-page .button-primary,
body.future-page .page-hero a.button-primary {
  color: #fff8ec;
  background: #521329;
  border-color: #521329;
}
body.future-page .button-primary:hover,
body.future-page .page-hero a.button-primary:hover { color: #fff8ec; background: #36101e; border-color: #36101e; }
body.future-page .button-outline,
body.future-page .page-hero .button-outline-light,
body.future-page .button-light { color: #521329; background: transparent; border-color: rgba(82, 19, 41, .35); }
body.future-page .button-outline:hover,
body.future-page .page-hero .button-outline-light:hover,
body.future-page .button-light:hover { background: #e9e1d4; color: #521329; }
body.future-page .band--wine:not(.page-hero) .button-primary,
body.future-page .band--deep .button-primary,
body.future-page .band--wine:not(.page-hero) .button-light,
body.future-page .band--deep .button-light { color: #38101f; background: #eddbc0; border-color: #eddbc0; }
body.future-page .band--wine:not(.page-hero) .button-outline-light,
body.future-page .band--deep .button-outline-light { color: #f8f2e7; background: transparent; border-color: #b48b90; }
body.future-page .link-arrow { gap: 14px; font-weight: 700; text-underline-offset: 5px; }
body.future-page .page-hero .link-arrow--light { color: #521329; }
body.future-page .band .pill { color: #521329; background: #eee6d8; border-color: #c9b8aa; }
body.future-page :is(a, button, input, select, textarea, summary):focus-visible { outline: 3px solid #ad7947; outline-offset: 4px; }

/* Product shelves: large marks and an editorial index instead of tiled boxes. */
body.future-page .grid--products { grid-template-columns: 1fr; gap: 0; }
body.future-page .product-card {
  display: grid;
  grid-template-columns: minmax(140px, .3fr) 1fr;
  align-items: start;
  gap: 12px 48px;
  padding: 44px 12px;
  border: 0;
  border-top: 1px solid var(--line);
  border-radius: 0;
  background: transparent;
  box-shadow: none;
  overflow: visible;
}
body.future-page .product-card:hover { transform: none; box-shadow: none; background: rgba(255, 253, 248, .46); border-color: var(--line-strong); }
body.future-page .product-card:last-child { border-bottom: 1px solid var(--line); }
body.future-page .product-card > :not(.product-card__art) { grid-column: 2; }
body.future-page .product-card__art { grid-column: 1; grid-row: 1 / span 6; min-height: 200px; height: 100%; background: none; margin: 0; }
body.future-page .product-card__logo { width: 160px; max-width: 75%; filter: none; }
body.future-page .product-card__tag { margin: 0; padding: 0; }
body.future-page .product-card .availability-badge--card { position: static; justify-self: start; padding: 5px 9px; font-size: 10px; margin: 0; }
body.future-page .product-card .product-card__name { padding: 0; margin: 0; font-size: clamp(27px, 3.2vw, 43px); line-height: 1.08; letter-spacing: -.035em; }
body.future-page .product-card__short { max-width: 70ch; margin: 0; color: #57494f; font-size: 17px; }
/* On the wine band the card's description reads in cream, not the grey of the paper cards. */
body.future-page .band--wine .product-card__short, body.future-page .band--wine .section-lead { color: #f1e4e8; }
/* a paper card on a wine band keeps its own ink (September 2026: the "Prefer to write?" card on /book-demo was pink on cream) */
body.future-page .band--wine .card .card__text, body.future-page .band--wine .card .card__text a { color: #57494f; }
body.future-page .band--wine .card .card__text a { text-decoration: underline; text-underline-offset: 2px; }
body.future-page .band--wine .product-card__name, body.future-page .band--wine .section-title { color: #fff; }
body.future-page .product-card__cta { margin-top: 12px; }
/* The wine band's product cards: room inside, the tag its own width, the parts apart. */
body.future-page .band--wine .product-card { padding: 48px 20px; gap: 18px 48px; }
body.future-page .band--wine .product-card__tag { display: inline-flex; width: auto; justify-self: start; padding: 6px 12px; border-radius: 999px; font-size: 11px; letter-spacing: .12em; }
body.future-page .band--wine .product-card__short { margin-top: 4px; }
body.future-page .band--wine .product-card__cta { margin-top: 20px; }
body.future-page .band--wine .product-card__logo { margin-bottom: 8px; }

/* The Partner page's concept: the journey as one ordered rail — the heart on the left, four numbered stations on a dashed line; phones stack it as a timeline. */
body.future-page .partner-journey { position: relative; margin: 44px 0 0; }
body.future-page .partner-journey__canvas { position: relative; padding: 66px 32px 62px; border-radius: 26px; background: #e6d8dc; border: 1px solid rgba(255, 245, 227, .12); isolation: isolate; }
body.future-page .partner-journey__kicker, body.future-page .partner-journey__caption { position: absolute; left: 32px; font-size: 10px; letter-spacing: .18em; font-weight: 800; color: #6b4d58; }
body.future-page .partner-journey__kicker { top: 24px; }
body.future-page .partner-journey__caption { bottom: 24px; }
body.future-page .partner-journey__grid { display: grid; grid-template-columns: 236px minmax(0, 1fr); gap: 32px; align-items: stretch; }
body.future-page .partner-journey__heart { position: relative; display: grid; align-content: center; gap: 8px; padding: 24px 26px; border-radius: 22px; background: #521329; color: #fff; box-shadow: 0 24px 60px rgba(44, 8, 20, .35); }
body.future-page .partner-journey__heart span { font-size: 10px; letter-spacing: .2em; color: #efad2f; font-weight: 800; }
body.future-page .partner-journey__heart strong { font-size: 26px; line-height: 1.08; letter-spacing: -.02em; }
body.future-page .partner-journey__heart em { font-style: normal; font-size: 12px; line-height: 1.5; color: rgba(255, 245, 227, .78); }
body.future-page .partner-journey__heart b { position: absolute; right: 18px; top: 18px; color: #efad2f; font-size: 20px; }
body.future-page .partner-journey__track { position: relative; list-style: none; margin: 0; padding: 48px 0 0; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 16px; }
body.future-page .partner-journey__track::before { content: ''; position: absolute; left: -32px; right: 0; top: 16px; border-top: 2px dashed rgba(82, 19, 41, .32); }
body.future-page .partner-journey__track li { position: relative; display: grid; align-content: start; gap: 4px; padding: 18px 16px; border-radius: 16px; background: rgba(255, 253, 248, .94); color: #2c1e23; box-shadow: 0 14px 34px rgba(44, 30, 33, .14); }
body.future-page .partner-journey__track li i { position: absolute; left: 16px; top: -48px; width: 34px; height: 34px; display: grid; place-items: center; border-radius: 50%; background: #521329; color: #f0cd95; font-style: normal; font-size: 10px; font-weight: 800; letter-spacing: .12em; box-shadow: 0 0 0 5px #e6d8dc; }
body.future-page .partner-journey__track li b { font-size: 15px; }
body.future-page .partner-journey__track li span { font-size: 12px; line-height: 1.45; color: #6b5c63; }
@media (max-width: 1100px) {
  body.future-page .partner-journey__track { grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 44px 16px; }
  body.future-page .partner-journey__track::before { display: none; }
  body.future-page .partner-journey__track li i { top: -40px; width: 30px; height: 30px; }
}
@media (max-width: 860px) {
  body.future-page .partner-journey__canvas { padding: 60px 18px 56px; }
  body.future-page .partner-journey__kicker, body.future-page .partner-journey__caption { left: 18px; }
  body.future-page .partner-journey__grid { grid-template-columns: 1fr; gap: 22px; }
  body.future-page .partner-journey__track { grid-template-columns: 1fr; gap: 14px; padding: 0 0 0 30px; }
  body.future-page .partner-journey__track::before { display: block; left: 14px; right: auto; top: 0; bottom: 0; border-top: 0; border-left: 2px dashed rgba(82, 19, 41, .32); }
  body.future-page .partner-journey__track li i { left: -30px; top: 14px; width: 30px; height: 30px; font-size: 9px; }
}

 the mark, the app's store badges. */
body.future-page .apply-hero__grid { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(0, .9fr); gap: clamp(28px, 5vw, 64px); align-items: start; }
body.future-page .apply-hero__logo { display: block; width: 88px; height: 88px; margin: 0 0 18px; border-radius: 22px; }
body.future-page .apply-app { padding: 28px; border-radius: 24px; background: rgba(255, 250, 242, .96); color: #2c1e23; box-shadow: 0 24px 60px rgba(44, 8, 20, .28); }
body.future-page .apply-app img { width: 56px; height: 56px; border-radius: 14px; margin-bottom: 14px; }
body.future-page .apply-app .eyebrow { color: #8f1027; }
body.future-page .apply-app h2 { margin: 6px 0 10px; font-size: clamp(22px, 2.4vw, 30px); line-height: 1.15; letter-spacing: -.02em; }
body.future-page .apply-app p { margin: 0 0 16px; color: #5e4f55; font-size: 14.5px; line-height: 1.6; }
body.future-page .apply-app__note { font-size: 12.5px; color: #75656d; margin: 14px 0 0; }
body.future-page .store-badges { display: flex; flex-wrap: wrap; gap: 10px; }
body.future-page .store-badge { display: inline-flex; align-items: center; gap: 10px; padding: 9px 16px 9px 12px; border-radius: 12px; background: #211b20; color: #fff; text-decoration: none; min-width: 168px; }
body.future-page .store-badge svg { width: 26px; height: 26px; }
body.future-page .store-badge span { display: grid; line-height: 1.15; }
body.future-page .store-badge small { font-size: 10px; letter-spacing: .04em; opacity: .8; }
body.future-page .store-badge strong { font-size: 16px; }
body.future-page .store-badge:hover { background: #521329; }
body.future-page .store-badge--soon { background: #d9cfd3; color: #4a3d44; cursor: default; }
@media (max-width: 860px) { body.future-page .apply-hero__grid { grid-template-columns: 1fr; } }
body.future-page .chip { padding: 6px 10px; border-radius: 5px; border: 1px solid var(--line); background: transparent; color: var(--text-soft); font-family: var(--ff-body); font-size: 12px; }
body.future-page .chip--more { color: #521329; background: #e9e1d4; }
body.future-page .page-hero__grid { grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(35px, 5vw, 72px); }
body.future-page .product-page__logo { width: 80px; height: 80px; margin-bottom: 24px; filter: none; border: 0; background: transparent; box-shadow: none; }
body.future-page .hero__visual { min-width: 0; perspective: none; }
body.future-page .hero__visual .mock,
body.future-page .erp-screen--hero { transform: none; border: 1px solid rgba(82, 19, 41, .2); border-radius: 18px; box-shadow: 0 25px 65px rgba(44, 30, 33, .15); }
body.future-page .mock {
  --text: #f8f2e7;
  --text-soft: #e2d6ce;
  --text-muted: #d4c5bd;
  --line: rgba(244, 241, 232, .18);
  --line-2: rgba(244, 241, 232, .1);
  background: #38101f;
  color: #f8f2e7;
}
body.future-page .web-hero-panel { background: #521329; border: 0; border-radius: 22px; padding: clamp(30px, 4vw, 54px); box-shadow: none; }
body.future-page .web-hero-panel::before { content: none; }
body.future-page .web-hero-panel h2 { color: #f8f2e7; font-size: clamp(29px, 3vw, 43px); font-weight: 700; letter-spacing: -.035em; line-height: 1.08; }
body.future-page .web-hero-panel__eyebrow { color: #d9b788; font-family: var(--ff-body); font-size: 10px; }
body.future-page .web-hero-panel__grid { gap: 0 24px; }
body.future-page .web-hero-panel__item { padding: 22px 0; border: 0; border-top: 1px solid #875363; border-radius: 0; background: transparent; }
body.future-page .web-hero-panel__item strong { font-size: 18px; color: #f8f2e7; }
body.future-page .web-hero-panel__item span { color: #e2d6ce; font-size: 14px; line-height: 1.55; }
body.future-page .page-hero .erp-screen figcaption { color: #57494f; background: #eee9de; border-color: var(--line); }
body.future-page .anchor-nav { position: static; background: transparent; border-block: 0; margin: 24px auto 0; box-shadow: none; }
body.future-page .anchor-nav__inner { gap: 10px; padding-block: 0; flex-wrap: wrap; }
body.future-page .anchor-nav__link { padding: 9px 15px; border: 1px solid rgba(82, 19, 41, .17); border-radius: 999px; background: transparent; color: #521329; }
body.future-page .anchor-nav__link.is-active { color: #fff8ec; background: #521329; border-color: #521329; }

/* Calm surfaces and thin dividers give longer product stories a clear rhythm. */
body.future-page .card,
body.future-page .bento__cell,
body.future-page .version-option,
body.future-page .quote-card,
body.future-page .download-card,
body.future-page .catalogue-download-card,
body.future-page .app-card,
body.future-page .erp-screen-card {
  background: #fffdf8;
  border: 1px solid rgba(45, 32, 39, .15);
  border-radius: 18px;
  box-shadow: none;
  backdrop-filter: none;
  color: #211b20;
  --text: #211b20;
  --text-soft: #40373d;
  --text-muted: #57494f;
  --line: rgba(45, 32, 39, .15);
  --line-2: rgba(45, 32, 39, .09);
}
body.future-page .card:hover,
body.future-page .bento__cell:hover,
body.future-page .download-card:hover { box-shadow: none; transform: none; border-color: rgba(82, 19, 41, .3); }
body.future-page .card__icon-tile { background: #eee9de; color: #521329; box-shadow: none; border: 0; border-radius: 12px; }
body.future-page .card__title,
body.future-page .version-option__title,
body.future-page .app-card__name { color: #211b20; font-size: clamp(23px, 2.4vw, 31px); font-weight: 700; letter-spacing: -.03em; }
body.future-page .card__text,
body.future-page .version-option__desc { color: #57494f; font-size: 16px; line-height: 1.7; }
body.future-page :is(.card, .version-option, .app-card, .quote-card) :is(.link-arrow, .link-arrow--light) { color: #521329; }
body.future-page .module-grid { border-color: var(--line); gap: 0; border-radius: 0; }
body.future-page .module { padding: 26px 22px; background: transparent; border-color: var(--line); }
body.future-page .module:hover { background: #fffdf8; }
body.future-page .module__num,
body.future-page .step__num { color: #714523; background: transparent; box-shadow: none; border-radius: 0; }
body.future-page .module__name { font-size: 17px; }
body.future-page .step__num { font-size: 28px; font-family: var(--ff-body); font-weight: 700; }
body.future-page .catalogue-download-grid { gap: 24px; }
body.future-page .catalogue-download-card { padding: 28px; }
body.future-page .catalogue-download-card__logo { background: transparent; border-radius: 0; width: 75px; height: 75px; }
body.future-page .catalogue-download-card__logo img { border-radius: 0; }
body.future-page .catalogue-download-card__copy h3 { font-weight: 700; letter-spacing: -.025em; }
body.future-page .erp-screen-card__copy { padding: 30px; }
body.future-page .erp-screen-card__copy h3 { font-size: 24px; letter-spacing: -.025em; }
body.future-page .app-card { padding: clamp(28px, 4vw, 54px); }
body.future-page .app-feature-list { gap: 22px; }
body.future-page .app-feature__name { font-size: 17px; }
body.future-page .app-feature__note { font-size: 15px; }
body.future-page .app-feature::before { background: #b28250; width: 5px; height: 5px; border-radius: 50%; top: .7em; }
body.future-page .compare-table { background: #fffdf8; color: #211b20; border-radius: 16px; }
body.future-page .compare-table thead th { color: #521329; background: #e9e1d4; }
body.future-page .compare-table tbody td,
body.future-page .compare-table tbody th { color: #40373d; border-color: rgba(45, 32, 39, .13); }
body.future-page .compare-table tbody th { background: #fffdf8; }
body.future-page .faq { gap: 0; border-top: 1px solid var(--line); }
body.future-page .faq__item { background: transparent; border: 0; border-bottom: 1px solid var(--line); border-radius: 0; box-shadow: none; }
/* FAQ: the group title is a real section heading, and each question reads as a sub-heading rather than a line of text. */
body.future-page .faq { counter-reset: faqgroup; }
body.future-page .faq-group { padding-top: 26px; }
body.future-page .faq-group + .faq-group { padding-top: 56px; }
/* The group heading is a card: paper, a hairline, a numbered label, the title. */
body.future-page .faq-group__title { display: flex; flex-direction: column; gap: 10px; margin: 0 0 6px; padding: 26px 30px 28px; border: 1px solid var(--line); border-radius: 22px; background: #fffdf8; box-shadow: 0 1px 0 rgba(82, 19, 41, .04); font-family: var(--ff-display); font-size: clamp(26px, 3vw, 36px); line-height: 1.1; letter-spacing: -.035em; font-weight: 700; color: #521329; }
body.future-page .faq-group__title::before { counter-increment: faqgroup; content: "0" counter(faqgroup) " / FAQs"; font-family: var(--ff-body); font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: #714523; }
body.future-page .faq-group .faq__item:first-of-type { border-top: 0; }
body.future-page .faq__q { min-height: 84px; padding: 25px 0; border-radius: 0; font-family: var(--ff-display); font-size: clamp(19px, 2vw, 24px); line-height: 1.35; letter-spacing: -.02em; font-weight: 700; }
body.future-page .faq__item[open] .faq__q { color: #521329; }
body.future-page .faq__q:hover,
body.future-page .faq__item[open] .faq__q { background: transparent; border-radius: 0; border-bottom: 0; }
body.future-page .faq__a { padding: 0 48px 30px 0; font-size: 17px; line-height: 1.75; }
body.future-page .prose { max-width: 76ch; }
body.future-page .prose > * + * { margin-top: 24px; }
body.future-page .prose h2 { margin-top: 50px; font-size: 30px; letter-spacing: -.025em; }
body.future-page .prose p,
body.future-page .prose li { font-size: 18px; line-height: 1.75; }
body.future-page .cta-band__title { font-size: clamp(35px, 4.5vw, 64px); letter-spacing: -.045em; line-height: 1.05; }
body.future-page .cta-band__text { font-size: 18px; line-height: 1.65; }
body.future-page .cta-alt a { text-decoration: underline; text-underline-offset: 4px; font-weight: 700; }

/* Request journeys share one legible, focused form language. */
body.future-page:is(.page-buy, .page-pricing, .page-demo) .page-hero { padding-bottom: 56px; }
body.future-page:is(.page-buy, .page-pricing, .page-demo) .page-title { max-width: 22ch; font-size: clamp(39px, 5vw, 70px); }
body.future-page .buy-hero__grid { grid-template-columns: minmax(0, 1.4fr) minmax(240px, .6fr); align-items: end; }
body.future-page .buy-hero__aside { padding: 8px 0 8px 32px; border: 0; border-left: 1px solid rgba(82, 19, 41, .2); border-radius: 0; background: transparent; box-shadow: none; }
body.future-page .buy-hero__aside > span { color: #714523; font-family: var(--ff-body); font-weight: 700; font-size: 10px; }
body.future-page .buy-hero__aside ol { color: #211b20; font-size: 15px; line-height: 1.5; }
body.future-page .buy-hero__aside p { color: #57494f; font-size: 13px; }
body.future-page .buy-hero__aside li::marker { color: #714523; }
body.future-page .form-card,
body.future-page .pricing-success,
body.future-page .pricing-summary,
body.future-page .feedback-form {
  --text: #211b20;
  --text-soft: #40373d;
  --text-muted: #57494f;
  --line: rgba(45, 32, 39, .16);
  --line-2: rgba(45, 32, 39, .1);
  color: #211b20;
  background: #fffdf8;
  border: 1px solid rgba(45, 32, 39, .16);
  border-radius: 24px;
  box-shadow: none;
  padding: clamp(28px, 4vw, 56px);
}
body.future-page .form-card__head { gap: 14px; padding-bottom: 30px; margin-bottom: 36px; }
body.future-page .form-card__head h2 { font-size: clamp(25px, 2.5vw, 35px); line-height: 1.15; letter-spacing: -.035em; font-weight: 700; }
body.future-page .form-card__head .small { max-width: 72ch; color: #57494f; font-size: 14px; line-height: 1.65; }
body.future-page .form-grid,
body.future-page .buy-form-section .form-grid { gap: 26px; }
body.future-page .field__label { color: #211b20; font-size: 14px; font-weight: 700; line-height: 1.5; }
body.future-page .field__hint,
body.future-page .form-note { color: #57494f; font-size: 13px; line-height: 1.6; }
body.future-page .input,
body.future-page .select,
body.future-page .textarea,
body.future-page .multi-select > summary,
body.future-page .feedback-grid :is(input, select, textarea) { min-height: 54px; padding: 14px 16px; border-radius: 10px; color: #211b20; background: #f7f4ed; border: 1px solid #c8beb8; font-family: var(--ff-body); font-size: 16px; line-height: 1.5; box-shadow: none; }
body.future-page .select { padding-right: 44px; }
body.future-page .input::placeholder,
body.future-page .textarea::placeholder { color: #75696e; opacity: 1; }
body.future-page .input:hover,
body.future-page .select:hover,
body.future-page .textarea:hover { border-color: #8f737e; }
body.future-page .input:focus,
body.future-page .select:focus,
body.future-page .textarea:focus { border-color: #521329; background: #fffdf8; box-shadow: 0 0 0 3px rgba(82, 19, 41, .08); }
body.future-page .buy-form-section { padding-block: 35px; }
body.future-page .buy-form-section:first-of-type { padding-top: 0; }
body.future-page .buy-form-section legend { color: #211b20; font-size: 21px; font-weight: 700; letter-spacing: -.02em; }
body.future-page .buy-form-section legend span { background: #eee9de; color: #714523; border-radius: 50%; width: 34px; height: 34px; font-family: var(--ff-body); font-size: 12px; font-weight: 700; }
body.future-page .buy-form-section > p { font-size: 15px; margin: 14px 0 26px; }
body.future-page .checkbox { min-height: 44px; color: #40373d; font-size: 15px; line-height: 1.5; }
body.future-page .checkbox input,
body.future-page .radio-option input { accent-color: #521329; }
body.future-page .buy-consent { background: #f4f1e8; border-radius: 12px; padding: 22px; }
body.future-page .buy-consent .checkbox { min-height: 0; }
body.future-page .buy-renew-choice { gap: 16px; margin-bottom: 28px; }
body.future-page .buy-renew-choice__card { padding: 26px; background: transparent; border: 1px solid rgba(82, 19, 41, .23); border-radius: 16px; box-shadow: none; }
body.future-page .buy-renew-choice__card.is-selected { background: #521329; color: #fff8ec; border-color: #521329; box-shadow: none; }
body.future-page .buy-renew-choice__card.is-selected :is(.mono, small) { color: #e4d4c9; }
body.future-page .buy-renew-choice__card .mono { color: #714523; font-family: var(--ff-body); }
body.future-page .buy-renew-choice__card:hover { transform: none; box-shadow: none; }
body.future-page .buy-submit-row { padding-top: 12px; }
body.future-page .buy-submit-row .button { min-width: 180px; }
body.future-page .buy-submit-row > p { max-width: 310px; font-size: 12px; }
body.future-page .buy-safety-note,
body.future-page .buy-otp__form { border-color: #d9ccc0; background: #f4f1e8; box-shadow: none; }
body.future-page .buy-otp__intro h3 { color: #211b20; }
body.future-page .phone-prefix-control { border-color: #c8beb8; border-radius: 10px; background: #eee9de; }
body.future-page .phone-prefix-control > span { color: #40373d; }
body.future-page .multi-select__menu { background: #fffdf8; border-color: #c8beb8; box-shadow: 0 18px 40px rgba(45, 32, 39, .12); }
body.future-page .multi-select__option { color: #211b20; font-size: 15px; }
body.future-page .form-alert--error,
body.future-page .field__error { color: #922037; }
body.future-page .form-alert--error { background: #fff0f0; border-color: #df9caa; }
body.future-page .pricing-workspace { gap: 28px; }
body.future-page .pricing-summary { top: 114px; padding: 30px; }
body.future-page .pricing-summary h2 { font-size: 34px; color: #521329; letter-spacing: -.04em; }
body.future-page .pricing-summary :is(p, li, dt, dd) { font-size: 14px; line-height: 1.65; }
body.future-page .pricing-success { text-align: left; }
body.future-page .pricing-success h2 { font-size: 38px; line-height: 1.1; letter-spacing: -.035em; font-weight: 700; }
body.future-page .footer-address { color: inherit; font-size: 16px; line-height: 1.7; }

/* Abstract product objects: no ERP or mobile application screenshots. */
body.future-page .product-access-note { margin-top: 22px; padding-left: 16px; max-width: 52ch; border-left: 2px solid #c39a62; color: #714523; font-size: 14px; font-weight: 700; line-height: 1.65; }
body.future-page .product-school-concept { position: relative; min-height: 550px; margin: 0; overflow: hidden; border-radius: 24px; color: #f4e7d5; background: #521329; }
body.future-page .product-school-concept__index { position: absolute; left: 32px; top: 29px; font-size: 9px; font-weight: 700; letter-spacing: .2em; }
body.future-page .product-school-concept__orbit { position: absolute; width: 430px; height: 430px; border: 1px solid #a36f7859; border-radius: 50%; left: 48%; top: 48%; transform: translate(-50%, -50%); box-shadow: 0 0 0 56px #94556613, 0 0 0 112px #9455660d; }
body.future-page .product-school-concept__sheets { position: absolute; width: 240px; height: 270px; top: 135px; left: calc(50% - 120px); transform: rotate(-9deg); }
body.future-page .product-school-concept__sheets > i,
body.future-page .product-school-concept__sheets > div { position: absolute; inset: 0; display: block; border-radius: 12px; }
body.future-page .product-school-concept__sheets > i:first-child { background: #a0784e; transform: translate(27px, 23px) rotate(15deg); }
body.future-page .product-school-concept__sheets > i:nth-child(2) { background: #d2b58c; transform: translate(13px, 12px) rotate(8deg); }
body.future-page .product-school-concept__sheets > div { padding: 27px; background: #f1e7d5; color: #38222d; box-shadow: 0 30px 44px #26051044; }
body.future-page .product-school-concept__sheets > div > span { font-size: 10px; font-weight: 700; letter-spacing: .3em; }
body.future-page .product-school-concept__sheets strong { display: block; margin-top: 36px; font-family: var(--ff-display); font-size: 42px; letter-spacing: -.06em; line-height: .96; }
body.future-page .product-school-concept__sheets b { display: block; margin-top: 24px; font-size: 47px; font-weight: 400; line-height: 1; }
body.future-page .product-school-concept__label { position: absolute; padding: 13px 17px; border: 1px solid #ab7d6a; border-radius: 999px; color: #f4e7d5; background: #471226; font-size: 11px; font-weight: 700; box-shadow: 0 9px 25px #2b061a25; }
body.future-page .product-school-concept__label--a { top: 108px; right: 24px; transform: rotate(6deg); }
body.future-page .product-school-concept__label--b { bottom: 141px; left: 24px; transform: rotate(-5deg); }
body.future-page .product-school-concept__label--c { bottom: 98px; right: 30px; transform: rotate(5deg); }
body.future-page .product-school-concept figcaption { position: absolute; bottom: 28px; left: 32px; right: 32px; padding-top: 16px; border-top: 1px solid #a36f7859; color: #e7cdbb; font-size: 11px; }
body.future-page .school-flow-art { position: relative; height: 370px; margin: 0; overflow: hidden; border-radius: 20px; background: #e8decd; color: #521329; }
body.future-page .school-flow-art__number { position: absolute; top: 24px; left: 28px; color: #714523; font-size: 12px; font-weight: 700; letter-spacing: .18em; }
body.future-page .school-flow-art__rings { position: absolute; top: 47px; left: calc(50% - 125px); width: 250px; height: 250px; }
body.future-page .school-flow-art__rings i { position: absolute; inset: 0; border: 1px solid #8a5c5670; border-radius: 50%; transform: rotate(-35deg) scaleY(.5); }
body.future-page .school-flow-art__rings i:nth-child(2) { transform: rotate(40deg) scaleY(.5); }
body.future-page .school-flow-art__rings b { position: absolute; inset: 67px; display: grid; place-items: center; border-radius: 50%; color: #f2e8d6; background: #521329; font-family: var(--ff-display); font-size: 63px; font-weight: 400; box-shadow: 12px 13px 0 #c8b08d; }
body.future-page .school-flow-art__words { position: absolute; bottom: 57px; left: 24px; right: 24px; display: flex; flex-wrap: wrap; justify-content: center; gap: 7px; }
body.future-page .school-flow-art__words span { padding: 9px 13px; border-radius: 999px; color: #521329; background: #f5edde; font-size: 11px; font-weight: 700; }
body.future-page .school-flow-art figcaption { position: absolute; bottom: 22px; left: 0; right: 0; text-align: center; font-size: 10px; color: #6d5048; letter-spacing: .05em; }
body.future-page .school-flow-art--1 { background: #e0e5d4; }
body.future-page .school-flow-art--1 .school-flow-art__rings i { border-radius: 22%; transform: rotate(-30deg) scaleY(.65); }
body.future-page .school-flow-art--1 .school-flow-art__rings i:nth-child(2) { transform: rotate(30deg) scaleY(.65); }
body.future-page .school-flow-art--2 { background: #ead9d5; }
body.future-page .school-flow-art--2 .school-flow-art__rings i { transform: rotate(90deg) scaleX(.7); }
body.future-page .school-flow-art--2 .school-flow-art__rings i:nth-child(2) { transform: rotate(0) scaleX(.7); }
body.future-page .capability-art { height: 235px; position: relative; overflow: hidden; background: #e8decd; color: #521329; }
body.future-page .capability-art__number { position: absolute; top: 27px; left: 28px; font-family: var(--ff-display); font-size: 44px; line-height: 1; letter-spacing: -.05em; }
body.future-page .capability-art__caption { position: absolute; left: 28px; bottom: 25px; font-size: 8px; font-weight: 700; letter-spacing: .16em; }
body.future-page .capability-art__shape { position: absolute; width: 140px; height: 140px; top: 45px; right: 14%; transform: rotate(-20deg); }
body.future-page .capability-art__shape i { position: absolute; inset: 0; border-radius: 22%; border: 1px solid #704b4c; background: #c69b68; transform: translate(17px, 17px); }
body.future-page .capability-art__shape i:nth-child(2) { background: #ede0cc; transform: translate(8px, 8px); }
body.future-page .capability-art__shape i:nth-child(3) { background: #521329; transform: translate(-1px, -1px); }
body.future-page .capability-art--1 { background: #e0e5d4; }
body.future-page .capability-art--1 .capability-art__shape i { border-radius: 50%; transform: translate(17px, 0); }
body.future-page .capability-art--1 .capability-art__shape i:nth-child(2) { transform: translate(0, 17px); }
body.future-page .capability-art--1 .capability-art__shape i:nth-child(3) { inset: 28px; transform: translate(9px, 9px); }
body.future-page .capability-art--2 { background: #ead9d5; }
body.future-page .capability-art--2 .capability-art__shape { transform: rotate(-8deg); }
body.future-page .capability-art--2 .capability-art__shape i { border-radius: 8px; inset: 85px 0 0; transform: translate(0, 0); }
body.future-page .capability-art--2 .capability-art__shape i:nth-child(2) { inset: 43px 16px 43px; transform: translate(0, 0); }
body.future-page .capability-art--2 .capability-art__shape i:nth-child(3) { inset: 0 33px 85px; transform: translate(0, 0); }
body.future-page .app-connection-art { width: 100%; max-width: 340px; height: 470px; position: relative; overflow: hidden; margin: 0 auto; border-radius: 24px; background: #521329; color: #f4e7d5; }
body.future-page .app-connection-art__label { position: absolute; top: 28px; left: 26px; right: 26px; font-size: 8px; letter-spacing: .18em; }
body.future-page .app-connection-art__orbit { position: absolute; width: 290px; height: 290px; border-radius: 50%; border: 1px solid #b88c7566; top: 86px; left: calc(50% - 145px); box-shadow: 0 0 0 34px #9b6a6115; }
body.future-page .app-connection-art__school { position: absolute; top: 74px; left: 0; right: 0; text-align: center; font-size: 13px; font-weight: 700; }
body.future-page .app-connection-art__school span { display: block; margin-top: 16px; color: #d7b586; font-size: 38px; font-weight: 400; }
body.future-page .app-connection-art__person { position: absolute; width: 150px; height: 175px; left: calc(50% - 75px); top: 172px; border-radius: 17px; background: #ecdec7; color: #521329; transform: rotate(-8deg); box-shadow: 13px 14px 0 #c29961; }
body.future-page .app-connection-art__person > span { display: block; text-align: center; padding-top: 18px; font-family: var(--ff-display); font-size: 78px; font-weight: 700; line-height: 1.3; }
body.future-page .app-connection-art__person > strong { display: block; text-align: center; font-size: 12px; letter-spacing: .06em; }
body.future-page .app-connection-art__chip { position: absolute; padding: 10px 13px; border: 1px solid #ab7d6a; background: #471226; color: #f4e7d5; border-radius: 999px; font-size: 9px; }
body.future-page .app-connection-art__chip--a { top: 184px; left: 15px; transform: rotate(-5deg); }
body.future-page .app-connection-art__chip--b { bottom: 82px; right: 10px; transform: rotate(5deg); }
body.future-page .app-connection-art figcaption { position: absolute; bottom: 26px; left: 26px; right: 26px; padding-top: 16px; border-top: 1px solid #b88c7555; color: #e7cdbb; font-size: 11px; }

/* Both themes keep the same content, form hierarchy, and reading contrast. */
html[data-theme="dark"] body.future-page,
html[data-theme="dark"] body.future-page .band,
html[data-theme="dark"] body.future-page .band.page-hero {
  --paper: #16151a;
  --cream: #1c1921;
  --bg: #16151a;
  --white: #211e26;
  --ink: #f3eee5;
  --ink-soft: #ded5dc;
  --muted: #bcb1bc;
  --muted-2: #bcb1bc;
  --wine-950: #f3eee5;
  --wine-900: #291622;
  --wine-800: #e4c09b;
  --wine-700: #e4c09b;
  --wine-600: #edc6a2;
  --orange: #d8ad7c;
  --orange-ink: #e4c09b;
  --gold: #d8ad7c;
  --gold-soft: #edceb0;
  --accent: #d8ad7c;
  --accent-ink: #e4c09b;
  --surface: #211e26;
  --surface-2: #2a252e;
  --surface-3: #342a33;
  --elevated: #211e26;
  --text: #f3eee5;
  --text-soft: #ded5dc;
  --text-muted: #bcb1bc;
  --line: rgba(235, 220, 230, .18);
  --line-2: rgba(235, 220, 230, .1);
  --line-strong: rgba(235, 220, 230, .32);
  --focus: #e4c09b;
  --focus-offset: #16151a;
  color: #f3eee5;
  background: #16151a;
  border-color: rgba(235, 220, 230, .18);
}
html[data-theme="dark"] body.future-page .band--cream { background: #1c1921; }
html[data-theme="dark"] body.future-page .band--wine:not(.page-hero),
html[data-theme="dark"] body.future-page .band--deep { background: #321522; }
html[data-theme="dark"] body.future-page :is(.page-title, .section-title, .card__title, .card__text strong, .product-card__name, .version-option__title, .app-card__name, .web-hero-panel h2, .buy-form-section legend, .buy-otp__intro h3, .form-card__head h2, .pricing-success h2, .field__label, .prose strong, .buy-hero__aside ol) { color: #f3eee5; }
html[data-theme="dark"] body.future-page :is(.page-hero .lead, .hero__micro, .breadcrumb__item, .product-card__short, .card__text, .version-option__desc, .buy-hero__aside p, .form-card__head .small, .field__hint, .form-note, .checkbox, .multi-select__option, .phone-prefix-control > span, .pricing-summary dt, .pricing-summary p, .prose, .prose p, .prose li, .app-feature__note, .web-hero-panel__item span) { color: #bcb1bc; }
html[data-theme="dark"] body.future-page .breadcrumb__item.is-current { color: #f3eee5; }
html[data-theme="dark"] body.future-page :is(.page-hero .eyebrow, .page-hero .tag, .pricing-eyebrow, .buy-hero__aside > span, .module__num, .step__num, .required-mark, .buy-renew-choice__card .mono, .pricing-summary h2, .web-hero-panel__eyebrow) { color: #e4c09b; }
html[data-theme="dark"] body.future-page :is(.tag, .card__meta, .catalogue-download-card__number, .download-card__icon) { color: #e4c09b; }
html[data-theme="dark"] body.future-page :is(.card, .bento__cell, .version-option, .quote-card, .download-card, .catalogue-download-card, .app-card, .erp-screen-card, .form-card, .pricing-success, .pricing-summary, .feedback-form) {
  --text: #f3eee5;
  --text-soft: #ded5dc;
  --text-muted: #bcb1bc;
  --line: rgba(235, 220, 230, .18);
  --line-2: rgba(235, 220, 230, .1);
  --surface: #211e26;
  --surface-2: #2a252e;
  color: #f3eee5;
  background: #211e26;
  border-color: rgba(235, 220, 230, .18);
  box-shadow: none;
}
html[data-theme="dark"] body.future-page :is(.card, .version-option, .app-card, .quote-card) :is(.link-arrow, .link-arrow--light),
html[data-theme="dark"] body.future-page :is(.prose a, .form a, .product-card__cta, .buy-consent a, .faq__a a, .card__text a) { color: #e4c09b; }
html[data-theme="dark"] body.future-page :is(.card, .bento__cell, .download-card):hover { background: #28212c; border-color: rgba(235, 220, 230, .32); }
html[data-theme="dark"] body.future-page .product-card { background: transparent; border-color: rgba(235, 220, 230, .18); }
html[data-theme="dark"] body.future-page .product-card:hover { background: rgba(255, 253, 248, .025); }
html[data-theme="dark"] body.future-page :is(.chip, .chip--more, .card__icon-tile, .buy-form-section legend span) { color: #e4c09b; background: #332831; border-color: #5a4753; }
html[data-theme="dark"] body.future-page .product-card__tag { background: transparent; }
html[data-theme="dark"] body.future-page .module { background: transparent; border-color: rgba(235, 220, 230, .18); }
html[data-theme="dark"] body.future-page .module:hover { background: #211e26; }
html[data-theme="dark"] body.future-page .anchor-nav { background: transparent; }
html[data-theme="dark"] body.future-page .anchor-nav__link { color: #e4c09b; border-color: #5a4753; }
html[data-theme="dark"] body.future-page .anchor-nav__link.is-active { color: #291622; background: #e4c09b; border-color: #e4c09b; }
html[data-theme="dark"] body.future-page .button,
html[data-theme="dark"] body.future-page .band :is(.button-primary, .button-light),
html[data-theme="dark"] body.future-page .page-hero a.button-primary { color: #291622; background: #e4c09b; border-color: #e4c09b; }
html[data-theme="dark"] body.future-page .band :is(.button-primary, .button-light):hover,
html[data-theme="dark"] body.future-page .page-hero a.button-primary:hover { color: #211b20; background: #f3d7b8; border-color: #f3d7b8; }
html[data-theme="dark"] body.future-page .band :is(.button-outline, .button-outline-light) { color: #edceb0; background: transparent; border-color: #a17b88; }
html[data-theme="dark"] body.future-page .band :is(.button-outline, .button-outline-light):hover { color: #f3eee5; background: #342a33; }
html[data-theme="dark"] body.future-page :is(.input, .select, .textarea, .multi-select > summary),
html[data-theme="dark"] body.future-page .feedback-grid :is(input, select, textarea) { color: #f3eee5; background: #1b181f; border-color: #69535f; box-shadow: none; }
html[data-theme="dark"] body.future-page .input::placeholder,
html[data-theme="dark"] body.future-page .textarea::placeholder { color: #b4a7b1; opacity: 1; }
html[data-theme="dark"] body.future-page :is(.input, .select, .textarea):hover { border-color: #ad8995; }
html[data-theme="dark"] body.future-page :is(.input, .select, .textarea):focus { color: #f3eee5; background: #241d27; border-color: #e4c09b; box-shadow: 0 0 0 3px rgba(228, 192, 155, .1); }
html[data-theme="dark"] body.future-page .select-wrap::after { filter: invert(1) brightness(1.6); }
html[data-theme="dark"] body.future-page select option { color: #f3eee5; background: #211e26; }
html[data-theme="dark"] body.future-page .phone-prefix-control { color: #ded5dc; border-color: #69535f; background: #2a252e; }
html[data-theme="dark"] body.future-page .multi-select__menu { color: #f3eee5; background: #211e26; border-color: #69535f; box-shadow: 0 18px 40px rgba(0, 0, 0, .3); }
html[data-theme="dark"] body.future-page .multi-select__option:hover { background: #342a33; }
html[data-theme="dark"] body.future-page :is(.checkbox input, .radio-option input, .multi-select__option input, .field-check input) { accent-color: #e4c09b; color-scheme: dark; }
html[data-theme="dark"] body.future-page :is(.buy-consent, .buy-safety-note, .buy-otp__form, .buy-copy-contact, .radio-option__label) { color: #ded5dc; background: #2a252e; border-color: #51424c; }
html[data-theme="dark"] body.future-page .buy-safety-note strong { color: #e4c09b; }
html[data-theme="dark"] body.future-page .buy-renew-choice__card { color: #f3eee5; background: #211e26; border-color: #69535f; }
html[data-theme="dark"] body.future-page .buy-renew-choice__card.is-selected { color: #211b20; background: #e4c09b; border-color: #e4c09b; }
html[data-theme="dark"] body.future-page .buy-renew-choice__card.is-selected :is(.mono, small) { color: #49303b; }
html[data-theme="dark"] body.future-page .buy-hero__aside { border-color: #51424c; }
html[data-theme="dark"] body.future-page .buy-hero__aside li::marker { color: #e4c09b; }
html[data-theme="dark"] body.future-page :is(.form-alert--error, .buy-error-summary, .pricing-error) { color: #ffd6df; background: #42212d; border-color: #a56777; }
html[data-theme="dark"] body.future-page .field__error { color: #ffb7c6; }
html[data-theme="dark"] body.future-page .field.has-error :is(.input, .select, .textarea) { border-color: #d9879c; }
html[data-theme="dark"] body.future-page .form-alert--success { color: #d7f4e1; background: #1a3d31; border-color: #5f947f; }
html[data-theme="dark"] body.future-page .availability-badge--available,
html[data-theme="dark"] body.future-page .catalogue-download-card__availability.is-available { color: #bfedcf; background: #1a382c; border-color: #4c7c60; }
html[data-theme="dark"] body.future-page .availability-badge--coming,
html[data-theme="dark"] body.future-page .catalogue-download-card__availability.is-coming { color: #ffd2dc; background: #40222c; border-color: #a56777; }
html[data-theme="dark"] body.future-page .web-hero-panel { background: #351825; border: 1px solid #694455; }
html[data-theme="dark"] body.future-page .web-hero-panel__item { border-color: #694455; }
html[data-theme="dark"] body.future-page .web-hero-panel__item strong { color: #f3eee5; }
html[data-theme="dark"] body.future-page .page-hero .erp-screen figcaption,
html[data-theme="dark"] body.future-page .erp-screen figcaption { color: #bcb1bc; background: #211e26; border-color: #51424c; }
html[data-theme="dark"] body.future-page .erp-screen--hero { border-color: #694455; }
html[data-theme="dark"] body.future-page .faq-group__title { color: #e4c09b; background: #211e26; border-color: rgba(235, 220, 230, .18); box-shadow: none; }
html[data-theme="dark"] body.future-page .faq-group__title::before { color: #d9b790; }
html[data-theme="dark"] body.future-page .faq__q,
html[data-theme="dark"] body.future-page .faq__item[open] .faq__q { color: #f3eee5; background: transparent; }
html[data-theme="dark"] body.future-page .faq__item[open] .faq__q { color: #e4c09b; }
html[data-theme="dark"] body.future-page .faq__a { color: #bcb1bc; }
html[data-theme="dark"] body.future-page .compare-table { color: #f3eee5; background: #211e26; }
html[data-theme="dark"] body.future-page .compare-table thead th { color: #e4c09b; background: #332831; border-color: #51424c; }
html[data-theme="dark"] body.future-page .compare-table tbody :is(td, th) { color: #ded5dc; border-color: #51424c; }
html[data-theme="dark"] body.future-page .compare-table tbody th { background: #211e26; }
html[data-theme="dark"] body.future-page .compare-yes { color: #bfedcf; background: #1a382c; }
html[data-theme="dark"] body.future-page .compare-no { color: #bcb1bc; background: #342a33; }
html[data-theme="dark"] body.future-page .success-ref { color: #f3eee5; background: #291f29; border-color: #69535f; }
html[data-theme="dark"] body.future-page :is(.pill, .mock__badge) { color: #f2d7bc; background: #432638; border-color: #8b6776; }
html[data-theme="dark"] body.future-page .page-hero .link-arrow--light { color: #e4c09b; }
html[data-theme="dark"] body.future-page .product-access-note { color: #e4c09b; border-color: #c39a62; }
html[data-theme="dark"] body.future-page :is(.school-flow-art, .capability-art) { background: #342934; color: #e4c09b; }
html[data-theme="dark"] body.future-page :is(.school-flow-art--1, .capability-art--1) { background: #2a342d; }
html[data-theme="dark"] body.future-page :is(.school-flow-art--2, .capability-art--2) { background: #3d2b31; }
html[data-theme="dark"] body.future-page :is(.school-flow-art__number, .school-flow-art figcaption) { color: #e4c09b; }
html[data-theme="dark"] body.future-page .school-flow-art__rings i { border-color: #b089776f; }
html[data-theme="dark"] body.future-page .school-flow-art__words span { background: #211e26; color: #e4c09b; }
html[data-theme="dark"] body.future-page .capability-art__shape i { border-color: #d0a987; }

@media (max-width: 1000px) {
  body.future-page .page-hero__grid { grid-template-columns: 1fr; }
  body.future-page .page-hero .page-title { max-width: 20ch; }
  body.future-page .hero__visual { max-width: 780px; }
  body.future-page .buy-hero__grid { grid-template-columns: minmax(0, 1.2fr) minmax(230px, .8fr); }
  body.future-page .catalogue-download-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  body.future-page .product-card { grid-template-columns: 150px minmax(0, 1fr); gap: 12px 30px; }
}
@media (max-width: 720px) {
  body.future-page { padding-top: 104px; padding-bottom: 100px; --gutter: 22px; --band-y: 66px; }
  body.future-page .band.page-hero { padding-top: 28px; padding-bottom: 48px; }
  body.future-page .page-title { font-size: clamp(38px, 9.5vw, 62px); }
  body.future-page .section-title { font-size: 36px; }
  body.future-page .breadcrumb { margin-bottom: 30px; }
  body.future-page .page-hero .lead { font-size: 17px; }
  body.future-page .buy-hero__grid { grid-template-columns: 1fr; gap: 30px; }
  body.future-page .buy-hero__aside { padding-left: 20px; }
  body.future-page .buy-hero__aside ol { display: flex; flex-wrap: wrap; gap: 14px 24px; padding-left: 18px; }
  body.future-page .form-card { padding: 26px; border-radius: 18px; }
  body.future-page .form-grid,
  body.future-page .buy-form-section .form-grid,
  body.future-page .feedback-grid { grid-template-columns: 1fr; gap: 22px; }
  body.future-page .buy-renew-choice__card { padding: 20px; }
  body.future-page .buy-form-section legend { font-size: 19px; }
  body.future-page .buy-submit-row { gap: 18px; }
  body.future-page .buy-submit-row > p { text-align: left; }
  body.future-page .product-card { grid-template-columns: 70px minmax(0, 1fr); gap: 11px 20px; padding-block: 32px; }
  body.future-page .product-card__art { min-height: 80px; align-self: start; }
  body.future-page .product-card__logo { width: 70px; max-width: 100%; }
  body.future-page .product-card .product-card__name { font-size: 29px; }
  body.future-page .product-card__short { font-size: 15px; }
  body.future-page .product-card__modules { gap: 5px; }
  body.future-page .product-card__cta { font-size: 14px; }
  body.future-page .catalogue-download-grid { grid-template-columns: 1fr; }
  body.future-page .catalogue-download-card { padding: 24px; }
  body.future-page .app-card { padding: 24px; }
  body.future-page .erp-screen-card__copy { padding: 24px; }
  body.future-page .faq__q { padding-block: 22px; font-size: 20px; }
  body.future-page .faq__a { padding-right: 0; font-size: 16px; }
  body.future-page .pricing-workspace { grid-template-columns: 1fr; }
  body.future-page .pricing-summary { position: static; }
  body.future-page .pricing-success h2 { font-size: 32px; }
  body.future-page .anchor-nav__inner { gap: 7px; }
  body.future-page .anchor-nav__link { padding: 8px 11px; font-size: 12px; }
  body.future-page .product-school-concept { min-height: 475px; }
  body.future-page .product-school-concept__sheets { width: 195px; height: 238px; top: 121px; left: calc(50% - 98px); }
  body.future-page .product-school-concept__sheets > div { padding: 23px; }
  body.future-page .product-school-concept__sheets strong { font-size: 36px; margin-top: 30px; }
  body.future-page .product-school-concept__sheets b { font-size: 37px; margin-top: 20px; }
  body.future-page .product-school-concept__label { padding: 10px 12px; font-size: 9px; }
  body.future-page .product-school-concept__label--a { top: 95px; right: 18px; }
  body.future-page .product-school-concept__label--b { bottom: 139px; left: 12px; }
  body.future-page .product-school-concept__label--c { bottom: 79px; right: 18px; }
  body.future-page .school-flow-art { height: 330px; }
  body.future-page .school-flow-art__rings { top: 22px; }
  body.future-page .school-flow-art__words { left: 15px; right: 15px; }
  body.future-page .school-flow-art__words span { font-size: 10px; padding: 8px 11px; }
  body.future-page .capability-art { height: 215px; }
  body.future-page .capability-art__shape { right: 10%; width: 120px; height: 120px; }
}
@media (max-width: 430px) {
  body.future-page { --gutter: 18px; }
  body.future-page .form-card { padding: 22px 18px; }
  body.future-page .hero__actions .button { width: 100%; }
  body.future-page .buy-renew-choice { grid-template-columns: 1fr; }
  body.future-page .product-card { gap: 11px 15px; grid-template-columns: 56px minmax(0, 1fr); }
  body.future-page .product-card__art { min-height: 56px; }
  body.future-page .product-card__logo { width: 56px; }
  body.future-page .product-card .product-card__name { font-size: 26px; }
  body.future-page .chip { font-size: 11px; padding: 5px 7px; }
}
@media (prefers-reduced-motion: reduce) {
  body.future-page [data-reveal] { opacity: 1 !important; transform: none !important; transition: none !important; }
  body.future-page .button { transition: none; }
}
@media print {
  body.future-page { padding: 0; background: white; }
  body.future-page .band.page-hero { padding-top: 0; }
  body.future-page .page-title { font-size: 34px; }
}

/* The About page beyond the prose: what JPRAXC builds, the rollout, the two editions, the place. */
body.future-page .about-build__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 24px; }
body.future-page .about-build__card { display: flex; flex-direction: column; padding: 20px; border-radius: 20px; background: #fffdf8; border: 1px solid rgba(45, 32, 39, .15); color: #211b20; }
body.future-page .about-build__card h3 { margin: 20px 0 8px; font-size: 24px; letter-spacing: -.025em; line-height: 1.15; }
body.future-page .about-build__card p { margin: 0 0 16px; color: #57494f; font-size: 15.5px; line-height: 1.65; flex: 1; }
body.future-page .about-build__card .link-arrow { color: #521329; }
body.future-page .about-art { position: relative; aspect-ratio: 4 / 3; border-radius: 16px; overflow: hidden; background: #521329; color: #fff8ec; isolation: isolate; }
body.future-page .about-art__kicker { position: absolute; left: 18px; top: 16px; z-index: 2; font-size: 10px; letter-spacing: .18em; font-weight: 800; color: #efad2f; }
body.future-page .about-art__tiles { position: absolute; inset: 44px 18px 18px; display: grid; grid-template-columns: 1fr 1fr; gap: 10px; }
body.future-page .about-art__tile { display: grid; grid-template-columns: 40px minmax(0, 1fr); align-items: center; gap: 10px; padding: 10px 12px; border-radius: 12px; background: rgba(255, 250, 242, .94); color: #2c1e23; }
body.future-page .about-art__tile img { width: 40px; height: 40px; }
body.future-page .about-art__tile b { font-size: 12px; line-height: 1.2; }
body.future-page .about-art--web { background: #e6d8dc; }
body.future-page .about-art--web .about-art__kicker { color: #6b4d58; }
body.future-page .about-browser { position: absolute; left: 26px; right: 26px; top: 46px; bottom: -12px; border-radius: 14px 14px 0 0; background: #fffdf8; box-shadow: 0 18px 44px rgba(44, 8, 20, .22); overflow: hidden; }
body.future-page .about-browser__bar { display: flex; align-items: center; gap: 6px; padding: 10px 12px; background: #eee9de; }
body.future-page .about-browser__bar i { width: 8px; height: 8px; border-radius: 50%; background: #c9bbc1; }
body.future-page .about-browser__bar span { margin-left: 8px; flex: 1; padding: 4px 10px; border-radius: 999px; background: #fffdf8; font-family: var(--ff-mono); font-size: 10px; color: #6b5c63; }
body.future-page .about-browser__hero { display: grid; gap: 6px; padding: 18px 16px 12px; }
body.future-page .about-browser__hero b { font-size: 26px; line-height: .95; letter-spacing: -.03em; color: #521329; }
body.future-page .about-browser__hero b span { color: #a86a12; }
body.future-page .about-browser__hero small { font-size: 9px; letter-spacing: .18em; font-weight: 800; color: #8f1027; }
body.future-page .about-browser__rows { display: grid; gap: 6px; padding: 0 16px 16px; }
body.future-page .about-browser__rows i { height: 6px; border-radius: 3px; background: #eee9de; }
body.future-page .about-browser__rows i:nth-child(2) { width: 80%; }
body.future-page .about-browser__rows i:nth-child(3) { width: 55%; }
body.future-page .about-orbit { position: absolute; inset: 20px 0 0; }
body.future-page .about-orbit__ring { position: absolute; left: 50%; top: 54%; width: 56%; aspect-ratio: 1; border: 1px dashed rgba(255, 248, 236, .38); border-radius: 50%; transform: translate(-50%, -50%); }
body.future-page .about-orbit__core { position: absolute; left: 50%; top: 54%; width: 64px; height: 64px; display: grid; place-items: center; border-radius: 50%; background: #fffdf8; transform: translate(-50%, -50%); box-shadow: 0 14px 34px rgba(0, 0, 0, .3); }
body.future-page .about-orbit__core img { width: 44px; height: 44px; border-radius: 12px; }
body.future-page .about-orbit__node { position: absolute; width: 44px; height: 44px; display: grid; place-items: center; border-radius: 50%; background: rgba(255, 250, 242, .95); color: #521329; font-weight: 800; font-size: 18px; line-height: 1; transform: translate(-50%, -50%); box-shadow: 0 10px 24px rgba(0, 0, 0, .25); }
body.future-page .about-orbit__node img { width: 30px; height: 30px; }
body.future-page .about-orbit__node svg { width: 22px; height: 22px; color: #25d366; }
body.future-page .about-orbit__node--a { left: 50%; top: 16.7%; }
body.future-page .about-orbit__node--b { left: 76.6%; top: 42.5%; }
body.future-page .about-orbit__node--c { left: 66.5%; top: 84.2%; }
body.future-page .about-orbit__node--d { left: 33.5%; top: 84.2%; letter-spacing: .1em; }
body.future-page .about-orbit__node--e { left: 23.4%; top: 42.5%; }
body.future-page .steps--5 { grid-template-columns: repeat(5, minmax(0, 1fr)); }
body.future-page .about-steps .step__title { font-size: 17px; }
body.future-page .about-steps .step__text { font-size: 14.5px; }
body.future-page .about-editions { display: grid; grid-template-columns: minmax(0, 1fr) auto minmax(0, 1fr); gap: 22px; align-items: stretch; }
body.future-page .about-edition { position: relative; padding: 28px 28px 28px; border-radius: 22px; background: rgba(255, 250, 242, .96); color: #2c1e23; box-shadow: 0 24px 60px rgba(44, 8, 20, .28); }
body.future-page .about-edition h3 { margin: 4px 0 8px; font-size: clamp(22px, 2.2vw, 28px); letter-spacing: -.02em; line-height: 1.15; }
body.future-page .about-edition p { margin: 0; color: #5e4f55; font-size: 15px; line-height: 1.6; }
body.future-page .about-edition__label { display: block; margin: 16px 0 0; font-size: 10px; letter-spacing: .2em; font-weight: 800; color: #8f1027; }
body.future-page .about-edition__mark { display: grid; place-items: center; width: 90px; height: 70px; padding: 0; border: 1px solid rgba(82, 19, 41, .16); border-radius: 17px; background: linear-gradient(145deg, #f8efe3, #eadbcc); color: #521329; box-shadow: inset 0 1px 0 rgba(255,255,255,.7); }
body.future-page .about-edition__mark svg { display: block; width: 78px; height: 56px; overflow: visible; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
body.future-page .about-edition__mark .about-icon-panel { fill: rgba(82, 19, 41, .06); }
body.future-page .about-edition__mark .about-icon-accent { stroke: #b57819; stroke-width: 2.4; }
body.future-page .about-edition__mark .about-icon-dot { fill: #b57819; stroke: none; }
body.future-page .about-edition__mark--cloud { background: linear-gradient(145deg, #f8efe3, #eadbcc); }
body.future-page .about-edition__path { align-self: center; display: grid; justify-items: center; gap: 4px; color: #efad2f; }
body.future-page .about-edition__path span { font-size: 10px; letter-spacing: .18em; font-weight: 800; white-space: nowrap; }
body.future-page .about-edition__path b { font-size: 34px; line-height: 1; }
body.future-page .about-place { display: grid; grid-template-columns: minmax(0, .9fr) minmax(0, 1.1fr); gap: clamp(28px, 5vw, 64px); align-items: center; }
body.future-page .about-place .section-head { margin-bottom: 26px; }
body.future-page .about-place__copy .section-num { margin-bottom: 14px; }
body.future-page .about-place__copy .section-lead { margin: 12px 0 26px; }
body.future-page .about-map { position: relative; aspect-ratio: 1; border-radius: 26px; overflow: hidden; background: #eee9de; border: 1px solid rgba(45, 32, 39, .15); isolation: isolate; }
body.future-page .about-map__road { position: absolute; left: -20%; right: -20%; height: 14px; border-radius: 7px; background: #fffdf8; }
body.future-page .about-map__road--a { top: 38%; transform: rotate(-14deg); }
body.future-page .about-map__road--b { top: 62%; transform: rotate(22deg); height: 10px; }
body.future-page .about-map__road--c { top: 50%; transform: rotate(80deg); height: 8px; opacity: .8; }
body.future-page .about-map__pin { position: absolute; left: 50%; top: 46%; width: 30px; height: 30px; transform: translate(-50%, -50%); border-radius: 50%; background: #521329; box-shadow: 0 0 0 10px rgba(82, 19, 41, .14), 0 0 0 26px rgba(82, 19, 41, .07); }
body.future-page .about-map__pin b { position: absolute; left: 50%; top: 50%; width: 10px; height: 10px; transform: translate(-50%, -50%); border-radius: 50%; background: #efad2f; }
body.future-page .about-map__label { position: absolute; left: 22px; bottom: 20px; font-size: 10px; letter-spacing: .18em; font-weight: 800; color: #6b4d58; }
body.future-page .about-facts { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; margin: 0; }
body.future-page .about-fact { display: grid; gap: 4px; padding: 16px 18px; border-radius: 16px; background: #fffdf8; border: 1px solid rgba(45, 32, 39, .15); }
body.future-page .about-fact dt { font-size: 30px; font-weight: 700; letter-spacing: -.03em; line-height: 1; color: #521329; }
body.future-page .about-fact dd { margin: 0; display: grid; gap: 2px; }
body.future-page .about-fact dd strong { font-size: 14px; color: #211b20; }
body.future-page .about-fact dd span { font-size: 12px; line-height: 1.4; color: #57494f; }
@media (max-width: 1100px) {
  body.future-page .steps--5 { grid-template-columns: repeat(3, minmax(0, 1fr)); }
  body.future-page .about-steps .timeline__line { display: none; }
}
@media (max-width: 960px) {
  body.future-page .about-build__grid { grid-template-columns: 1fr; }
  body.future-page .about-place { grid-template-columns: 1fr; }
  body.future-page .about-map { max-width: 420px; }
}
@media (max-width: 860px) {
  body.future-page .about-editions { grid-template-columns: 1fr; }
  body.future-page .about-edition__path b { transform: rotate(90deg); display: inline-block; }
}
@media (max-width: 720px) {
  body.future-page .steps--5 { grid-template-columns: 1fr; }
  body.future-page .about-facts { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
html[data-theme="dark"] body.future-page :is(.about-build__card, .about-fact) { background: #211e26; border-color: rgba(235, 220, 230, .18); color: #f3eee5; }
html[data-theme="dark"] body.future-page :is(.about-build__card p, .about-fact dd span) { color: #bcb1bc; }
html[data-theme="dark"] body.future-page :is(.about-build__card .link-arrow, .about-fact dt) { color: #e4c09b; }
html[data-theme="dark"] body.future-page .about-fact dd strong { color: #f3eee5; }
html[data-theme="dark"] body.future-page .about-map { background: #2a252e; border-color: rgba(235, 220, 230, .18); }
html[data-theme="dark"] body.future-page .about-map__road { background: #211e26; }
html[data-theme="dark"] body.future-page .about-map__label { color: #bcb1bc; }

/* The app cards: room between the lead line and the drawn connection (modern.css zeroes every p margin). */
body.future-page .app-card__lead { margin: 18px 0 30px; }
@media (max-width: 639px) { body.future-page .app-card__lead { margin: 14px 0 22px; } }

/* source: assets/css/modern-theme.css */
@font-face{font-family:'Space Grotesk';src:url('../fonts/SpaceGrotesk-Variable.ttf') format('truetype');font-style:normal;font-weight:300 700;font-display:swap}
@font-face{font-family:Manrope;src:url('../fonts/Manrope-Variable.ttf') format('truetype');font-style:normal;font-weight:200 800;font-display:swap}
:root{--f-font-display:'Space Grotesk',Arial,sans-serif;--f-font-body:Manrope,Arial,sans-serif;color-scheme:light}
.future-site{font-family:var(--f-font-body)}
.future-site :is(h1,h2,h3,.inside-card strong,.lid-caption,.product-tab strong,.floating-brand>span,.browser-object>b){font-family:var(--f-font-display);font-weight:700}
.future-site .cx-widget,.future-site .cx-panel button{font-family:var(--f-font-body)}
.theme-toggle{width:49px;height:49px;display:grid;place-items:center;border:1px solid #d5cdc5;border-radius:50%;color:#3f2632;background:#f4f1e8;flex-shrink:0}
.theme-toggle svg{width:21px;height:21px;stroke:currentColor;fill:none;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.theme-toggle:hover{background:#e6dfd2}
.theme-toggle .theme-sun{display:none}
html[data-theme=dark]{color-scheme:dark;--f-paper:#16151a;--f-ink:#f3eee5;--f-wine:#e4c09b;--f-gold:#d2ad77;--f-muted:#bcb1bc;--f-rule:rgba(235,220,230,.18);--f-sage:#aabc90}
html[data-theme=dark] .theme-moon{display:none}
html[data-theme=dark] .theme-sun{display:block}
html[data-theme=dark] .future-site :is(.floating-brand,.corner-phone,.contact-trigger,.theme-toggle){background:#242127ed;color:#f3eee5;border-color:#59505b}
html[data-theme=dark] .theme-toggle:hover{background:#38323b}
html[data-theme=dark] .availability-dot{background:#bad499}
html[data-theme=dark] .explore-dock{background:#252028f5;border-color:#625263}
html[data-theme=dark] .future-site .explore-dock .dock-demo{background:#ecd9ba;color:#271827}
html[data-theme=dark] .future-site :is(.hero-description,.hero-contact,.unbox-copy p:not(.tiny-label),.hero-coordinates,.scene-label,.case-edition,.hero-counter,.scroll-invitation b){color:#bfb3be!important}
html[data-theme=dark] .hero-counter b{color:#ecd9ba}
html[data-theme=dark] .hero-contact{border-color:#6e5669}
html[data-theme=dark] .case-orbit{border-color:#9c7f6933}
html[data-theme=dark] .case-shadow{background:radial-gradient(ellipse,#b2678b25,transparent 67%)}
html[data-theme=dark] .future-site .future-button{background:#e4c09b;color:#281b23!important}
html[data-theme=dark] .future-site .future-button:hover{background:#f4dabc}
html[data-theme=dark] .inside-card{color:#211b20}
html[data-theme=dark] .future-site .connection-node{background:#242127;border-color:#584752}
html[data-theme=dark] .connection-node>span:not(.node-symbol){color:#c8b6bf}
html[data-theme=dark] .connection-node i{color:#dfbd96}
html[data-theme=dark] .connection-line{border-color:#665249}
html[data-theme=dark] .connection-line:before,html[data-theme=dark] .connection-line:after{background:#665249}
html[data-theme=dark] .browser-object{color:#442330;box-shadow:11px 14px 0 #514236}
html[data-theme=dark] .deployment-scene{background:#211c24}
html[data-theme=dark] .deployment-copy>p:not(.tiny-label),html[data-theme=dark] .deployment-description p{color:#c5b8c2}
html[data-theme=dark] .deployment-switch{border-color:#6f5a6c}
html[data-theme=dark] .deployment-switch button{color:#c8b7c2}
html[data-theme=dark] .deployment-switch button[aria-selected=true]{background:#e5cbb0;color:#311d2b}
html[data-theme=dark] .server-stack>div:not(:first-child){background:#e9dfcf;color:#392a35}
html[data-theme=dark] .connection-ticket{background:#2e2730e8;color:#eee2d8;border:1px solid #675569}
html[data-theme=dark] .world-ring{border-color:#77655e}
html[data-theme=dark] .mobile-scene{background:#22291f}
html[data-theme=dark] .mobile-copy>p:not(.tiny-label){color:#c0c9b7}
html[data-theme=dark] :is(.phone figcaption,.phone-orbit){color:#cad6bc}
html[data-theme=dark] .contact-finale{background:#301422}
html[data-theme=dark] .page-contact-end{background:#301422}
html[data-theme=dark] .future-site dialog{border-color:#60515c;background:#211e26}
html[data-theme=dark] .future-site dialog::backdrop{background:#08070bbd}
html[data-theme=dark] .dialog-close{border-color:#655767}
html[data-theme=dark] :is(.contact-methods>div>span,.contact-dialog address,.index-columns>div>span,.preview-dialog>p:not(.tiny-label)){color:#c1b1bd}
html[data-theme=dark] .contact-dialog address b{color:#e9d6be}
html[data-theme=dark] .future-site .cx-widget{--cx-line:#605362;--cx-wine:#e4c09b;color:#f1e6ed}
html[data-theme=dark] .future-site .cx-launch{background:#28212bed!important;color:#f0dfcd!important;border-color:#776070!important}
html[data-theme=dark] .future-site :is(.cx-panel,.cx-body,.cx-compose,.cx-footnote){background:#211e26;color:#f1e6ed}
html[data-theme=dark] .future-site .cx-message{background:#36303b;color:#f3e9ef}
html[data-theme=dark] .future-site .cx-message--visitor{background:#e2bb95;color:#2a1722}
html[data-theme=dark] .future-site :is(.cx-topics button,.cx-products button){background:#2b2530;color:#f0d8be}
html[data-theme=dark] .future-site :is(.cx-demo,.cx-submit,.cx-compose button){background:#e2bb95;color:#2a1722}
html[data-theme=dark] .future-site :is(.cx-footnote,.cx-enquiry>p){color:#c9bac7}
html[data-theme=dark] .future-site :is(.cx-enquiry h3,.cx-success h3){color:#f3e6db}
html[data-theme=dark] .future-site .cx-panel :is(input,select,textarea){background:#2d2731!important;color:#f7eee7!important;border-color:#726574}
html[data-theme=dark] .future-site .cx-panel ::placeholder{color:#bcabbc}
.hero-copy .hero-slogan{letter-spacing:-.075em}
.unbox-copy h2{letter-spacing:-.06em}
@media(max-width:760px){.contact-corner{gap:8px;top:18px}.theme-toggle{width:39px;height:39px}.theme-toggle svg{width:19px;height:19px}.contact-trigger{padding:10px 11px}.contact-trigger .availability-dot{display:none}.hero-copy .hero-slogan{font-size:58px}.unbox-copy h2{font-size:43px}.floating-brand{padding-right:7px}.hero-contact{font-size:10px}.hero-description{font-size:12px}.hero-counter{display:none}}
@media(max-width:370px){.floating-brand>span{font-size:16px}.floating-brand img{width:30px;height:30px}.floating-brand small{font-size:5px}.contact-trigger{font-size:10px}.contact-corner{right:12px;gap:5px}.theme-toggle{width:35px;height:35px}.hero-copy .hero-slogan{font-size:53px}.explore-dock>a{padding-left:8px;padding-right:8px}.dock-index{padding-left:11px;padding-right:11px}}
.scroll-invitation,.case-edition{opacity:calc(1 - var(--open))}
@media(max-width:760px){.hero-description,.unbox-copy p:not(.tiny-label),.product-panel>p{font-size:13px}}
/* Concept artwork describes capabilities without displaying product screens. */
.school-concept{position:relative;min-height:420px;background:#e8ddc9;color:#341c2a;margin:30px 0;border-radius:18px;overflow:hidden;isolation:isolate;box-shadow:0 18px 40px #0a041524}
.concept-kicker,.concept-end{position:absolute;left:25px;right:25px;top:24px;font-size:8px;font-weight:700;letter-spacing:1.6px;text-align:center;z-index:2}.concept-end{top:auto;bottom:24px;font-size:7px;letter-spacing:1.4px}
.school-orbit{position:absolute;inset:55px 15%;border:1px solid #b9a888;border-radius:50%;transform:rotate(-25deg)}.school-orbit.orbit-inner{inset:78px 24%;transform:rotate(25deg);border-style:dashed}
.school-heart{position:absolute;top:37%;left:25%;right:25%;text-align:center}.school-heart>span{font-family:var(--f-font-display);font-weight:700;font-size:40px;letter-spacing:-6px;color:#7b2949}.school-heart strong{display:block;margin-top:6px;font-size:17px;font-family:var(--f-font-display);line-height:1.2}
.school-moment{position:absolute;padding:17px 20px;background:#f9f4e8;border:1px solid #bda997;border-radius:10px;width:38%;box-shadow:0 7px 15px #37233610}.school-moment b{display:block;font-size:17px;font-family:var(--f-font-display);letter-spacing:-.4px}.school-moment span{display:block;font-size:10px;color:#6a4b58;margin-top:6px}.school-moment i{float:right;font-size:9px;font-style:normal;color:#725664}.moment-admit{top:70px;left:5%;transform:rotate(-7deg);background:#e1e8d1}.moment-learn{top:80px;right:5%;transform:rotate(6deg)}.moment-manage{bottom:66px;left:5%;transform:rotate(4deg)}.moment-connect{bottom:76px;right:5%;transform:rotate(-6deg);background:#d7c1ce}
.mobile-connection-art{position:relative;min-height:550px;isolation:isolate}.mobile-path{position:absolute;inset:10% 4%;border:1px solid #9dab83;border-radius:50%;transform:rotate(-28deg)}.mobile-path.path-two{inset:0 16%;transform:rotate(22deg);border-style:dashed}.mobile-art-core{position:absolute;top:0;left:35%;width:195px;height:190px;padding:25px;background:#e2bc8c;color:#4d2135;border:1px solid #a98259;border-radius:15px;transform:rotate(7deg);box-shadow:7px 10px 0 #ae997344}.mobile-art-core>span{display:block;font-size:8px;letter-spacing:2px;font-weight:700}.mobile-art-core>b{float:right;font-size:39px;font-weight:400}.mobile-art-core strong{display:block;font:700 38px/.96 var(--f-font-display);letter-spacing:-2px;margin-top:29px}.mobile-art-card{position:absolute;width:260px;min-height:247px;padding:25px 24px;background:#f5f1e5;color:#2f3025;border:1px solid #a5b093;border-radius:18px;box-shadow:0 20px 40px #27311920}.parent-art{left:0;top:145px;transform:rotate(-9deg);z-index:2}.staff-art{right:-2%;top:255px;transform:rotate(8deg);background:#31432c;color:#eef1e3;border-color:#7c8b70;z-index:3}.mobile-art-card>span{display:block;font-size:8px;letter-spacing:1.5px;margin:18px 0}.mobile-art-card strong{display:block;font:700 29px/1.03 var(--f-font-display);letter-spacing:-1.3px}.mobile-art-card p{font-size:10px;margin-top:20px;color:inherit}.people-symbol,.book-symbol{height:29px;display:flex;align-items:end;gap:5px}.people-symbol i{width:19px;height:23px;border:1.5px solid #526546;border-radius:10px 10px 4px 4px;position:relative}.people-symbol i:before{content:'';position:absolute;top:-12px;left:4px;border:1.5px solid #526546;width:8px;height:8px;border-radius:50%;background:#f5f1e5}.people-symbol i+i{height:17px;width:15px}.people-symbol i+i:before{left:2px}.book-symbol{gap:0}.book-symbol i{width:23px;height:27px;border:1.5px solid #cedac1;border-radius:4px 0 0 0;transform:skewY(10deg)}.book-symbol i+i{border-radius:0 4px 0 0;transform:skewY(-10deg)}.mobile-art-note{position:absolute;left:5%;bottom:0;font-size:8px;letter-spacing:2px;color:#3b4a33}
html[data-theme=dark] .school-concept{background:#d8cbb5}
html[data-theme=dark] .mobile-path{border-color:#647058}
html[data-theme=dark] .mobile-art-note{color:#c1ccb6}
@media(max-width:1150px){.mobile-art-card{width:215px;padding:23px 20px}.mobile-art-core{left:34%;width:160px}.mobile-art-card strong{font-size:26px}.staff-art{right:-3%}}
@media(max-width:760px){.school-concept{min-height:355px}.concept-kicker{font-size:6px;letter-spacing:1px;top:19px}.concept-end{font-size:5.5px;bottom:20px;letter-spacing:1px}.school-moment{padding:14px 11px;width:42%}.school-moment b{font-size:13px}.school-moment span{font-size:8px}.school-moment i{font-size:7px}.moment-admit{top:59px;left:4%}.moment-learn{top:66px;right:4%}.moment-manage{bottom:58px;left:4%}.moment-connect{bottom:64px;right:4%}.school-heart{top:38%}.school-heart>span{font-size:32px;letter-spacing:-5px}.school-heart strong{font-size:13px}.mobile-connection-art{min-height:510px;margin:65px 0 0}.mobile-art-core{left:43%;width:152px;height:158px;padding:19px}.mobile-art-core strong{font-size:31px}.mobile-art-core>b{font-size:25px}.mobile-art-core>span{font-size:6px}.mobile-art-card{width:190px;min-height:224px;padding:23px 20px}.mobile-art-card strong{font-size:24px}.mobile-art-card>span{font-size:7px}.mobile-art-card p{font-size:8px}.parent-art{left:0;top:125px}.staff-art{top:260px;right:0}.mobile-art-note{font-size:6px;left:0}}
.future-site .future-skip{background:#fffaf0;color:#251822}
.deployment-switch button{color:#6c5661}
.scroll-invitation b{color:#75656d}
.chapter-rail{mix-blend-mode:normal;color:#65555e;background:#f4f1e8eb;padding:10px 5px;border-radius:20px;height:auto}
.chapter-rail>i{background:#b1a7a6}.chapter-rail b{background:#68505e}
.preview-tag{mix-blend-mode:normal;background:#f4f1e8e8;padding:5px 7px;border-radius:5px;color:#6a5b63}
html[data-theme=dark] .chapter-rail,html[data-theme=dark] .preview-tag{background:#16151aeb;color:#c9bdc5}
html[data-theme=dark] .chapter-rail b{background:#e7c69e}
.future-social{margin-top:36px;padding-top:24px;border-top:1px solid var(--f-rule);text-align:left}
.future-social>span{display:block;font-size:9px;letter-spacing:1.5px;font-weight:700;margin-bottom:17px;color:inherit}
.future-social>div{display:flex;flex-wrap:wrap;gap:10px}
.future-site .future-social a{display:inline-flex;align-items:center;gap:9px;padding:9px 13px;background:#f5eee4;border:1px solid #cbbbab;color:#362030;border-radius:99px}
.future-social img{width:19px;height:19px;object-fit:contain}.future-social b{font-size:11px;font-weight:600}.future-social i{font-size:15px;margin-left:7px;font-style:normal}.future-site .future-social a:hover{background:#e8d8c2;transform:translateY(-2px)}
.contact-finale .future-social,.page-contact-end .future-social{border-color:#916575;color:#e9d8cb}
html[data-theme=dark] .future-site .future-social a{background:#eee3d3;border-color:#aa968b;color:#321f2b}
@media(max-width:760px){.future-social>div{gap:8px}.future-site .future-social a{padding:8px 11px}.future-social i{margin-left:2px}.future-social b{font-size:10px}.future-social img{width:17px;height:17px}.contact-dialog .future-social{margin-top:25px}}
.website-product-art{padding:22px 25px 30px;margin:25px 0 35px}
.website-product-art .browser-object{position:relative;top:auto;right:auto;bottom:auto;width:95%;max-width:600px;margin:12px auto;min-height:300px;padding:22px 30px;color:#442330;transform:rotate(-4deg)}
.website-product-art .browser-object>b{font-size:clamp(54px,6.3vw,90px);padding:35px 0;letter-spacing:-.055em}
.website-product-art .browser-object>small{font-size:9px;line-height:1.5;display:block}
@media(max-width:760px){.website-product-art{padding:8px 8px 20px;margin-top:25px}.website-product-art .browser-object{min-height:240px;padding:17px 19px;width:94%;box-shadow:7px 10px 0 #b89972}.website-product-art .browser-object>b{font-size:clamp(52px,12.8vw,80px);padding:30px 0}.website-product-art .browser-object>small{font-size:7px}}
.product-capabilities{border-top:1px solid #715260;border-bottom:1px solid #715260;margin:29px 0;color:#f3e8df}.product-capabilities summary{display:flex;justify-content:space-between;align-items:center;gap:20px;padding:21px 0;cursor:pointer;list-style:none}.product-capabilities summary::-webkit-details-marker{display:none}.product-capabilities summary>span{font-family:var(--f-font-display);font-size:19px;font-weight:500}.product-capabilities summary>b{font-size:10px;letter-spacing:.5px;font-weight:500;color:#dfc4b0;white-space:nowrap}.product-capabilities summary i{font-size:23px;font-style:normal;display:inline-block;vertical-align:middle;margin-left:14px;transition:transform .2s}.product-capabilities[open] summary i{transform:rotate(45deg)}.product-capabilities ul{display:grid;grid-template-columns:1fr 1fr;gap:0 25px;list-style:none;margin:0 0 23px;padding:0}.product-capabilities li{font-size:12px;line-height:1.6;color:#d9cad3;padding:12px 0;border-top:1px solid #604451}.product-capabilities li:before{content:'↗';margin-right:9px;color:#c6a88d}
.cloud-benefits{display:flex;flex-wrap:wrap;gap:8px 18px;margin:0 0 28px}.cloud-benefits span{font-size:10px;font-weight:600;color:#584653;border-bottom:1px solid #b7a79d;padding-bottom:5px}html[data-theme=dark] .cloud-benefits span{color:#e5d5c6;border-color:#65565f}
@media(max-width:760px){.product-capabilities summary>span{font-size:16px}.product-capabilities summary>b{font-size:8px}.product-capabilities summary i{margin-left:7px}.product-capabilities ul{grid-template-columns:1fr}.product-capabilities li{font-size:12px}.cloud-benefits span{font-size:9px}}
/* JPRAXC signature: burgundy, gold and the rising curve of the original identity. */
.brand-interlude{position:relative;overflow:hidden;background:#471025;color:#faefdf;padding:85px 9% 80px;isolation:isolate}
.brand-interlude:after{content:'';position:absolute;right:-230px;bottom:-280px;width:680px;height:600px;border-radius:50%;border:28px solid #d99743;box-shadow:0 0 0 10px #ed7529;transform:rotate(-30deg);z-index:-1;opacity:.22}
.brand-story-top{display:flex;align-items:center;gap:22px;padding-bottom:42px;border-bottom:1px solid #976178}
.brand-story-top img{width:76px;height:76px;object-fit:contain;border:0;background:none;border-radius:0}
.brand-story-top>span{font-size:11px;letter-spacing:1.2px;font-weight:700;line-height:1.9}.brand-story-top>span>b{font-size:10px;font-weight:400;color:#d9bbca;letter-spacing:.5px}
.brand-story-top>a{margin-left:auto;font-size:12px;color:#efcfaa;border-bottom:1px solid #b9937b;padding-bottom:7px}
.brand-story-main{position:relative;padding:40px 0 45px}.brand-superword{display:block;font:700 clamp(100px,17.5vw,280px)/.92 var(--f-font-display);letter-spacing:-.085em;color:#f0cd95;margin-left:-.025em}
.brand-story-main h2{font-size:clamp(34px,4vw,60px);line-height:1.04;letter-spacing:-.04em;margin-top:37px;max-width:740px}.brand-story-main h2 em{color:#f0cd95}
.brand-story-main>p{max-width:420px;font-size:14px;line-height:1.8;margin-top:22px;color:#e3cbd5}
.brand-principles{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;border-top:1px solid #976178;padding-top:30px}.brand-principles>span{font-size:12px;color:#ead2dc;line-height:1.8}.brand-principles b{display:block;font-size:9px;letter-spacing:1.6px;margin-bottom:7px;color:#f0cd95}
.page-contact-end{position:relative;overflow:hidden}.page-contact-end:after{content:'JPRAXC';position:absolute;right:2%;bottom:-.05em;font:700 clamp(90px,16vw,260px)/1 var(--f-font-display);letter-spacing:-.08em;opacity:.055;pointer-events:none;color:#ffdfaa}
@media(max-width:760px){.brand-interlude{padding:60px 7%}.brand-story-top{gap:14px;flex-wrap:wrap;padding-bottom:28px}.brand-story-top img{width:57px;height:57px}.brand-story-top>span{font-size:8px;letter-spacing:.7px}.brand-story-top>span>b{font-size:8px}.brand-story-top>a{font-size:10px;margin-left:72px;margin-top:-8px}.brand-story-main{padding:30px 0}.brand-superword{font-size:20vw}.brand-story-main h2{font-size:35px;margin-top:25px}.brand-story-main>p{font-size:13px}.brand-principles{grid-template-columns:1fr;gap:18px;padding-top:24px}.brand-principles>span{font-size:12px}.brand-principles b{font-size:8px;margin-bottom:3px}}
/* Desktop keeps every shortcut. On phones, Partner and Mail stay in the index
   dialog so the primary dock fits without clipping the demo action. */
.future-site .explore-dock .dock-mail{box-shadow:inset 0 0 0 1px #9e899357}
@media(max-width:760px){.future-site .explore-dock>a{padding:14px 8px}.future-site .explore-dock [data-dock="partners"],.future-site .explore-dock [data-dock="mail"]{display:none}.future-site .explore-dock .dock-demo{padding:14px 10px}.future-site .explore-dock .dock-demo span{display:none}.future-site .explore-dock .dock-index{padding:15px 11px}}
@media(max-width:370px){.future-site .explore-dock{max-width:calc(100vw - 16px)}.future-site .explore-dock>a{padding:14px 6px;font-size:9px}.future-site .explore-dock .dock-demo{padding:14px 8px;font-size:9px}.future-site .explore-dock .dock-index{padding:15px 8px}}
@media(max-width:340px){.future-site .explore-dock>a{padding-inline:4px}.future-site .explore-dock .dock-demo{padding-inline:6px}.future-site .explore-dock .dock-index{padding-inline:6px}}

/* source: assets/css/modern-depth.css */
.depth-section{--depth-soft:#e9e4db;--depth-tag:#ebe5dc;--depth-tag-ink:#584650;padding:120px 9%;background:var(--f-paper);color:var(--f-ink);scroll-margin-top:70px}
.depth-section :is(h2,h3,h4){font-family:var(--f-font-display);font-weight:700}
.depth-heading{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(240px,.7fr);column-gap:8%;align-items:end;padding-bottom:66px}
.depth-heading>.tiny-label{grid-column:1/-1;margin-bottom:22px;text-transform:uppercase}
.depth-heading h2,.depth-questions-intro h2{font-size:clamp(44px,5.4vw,82px);line-height:1.03;letter-spacing:-.055em}
.depth-heading-note{max-width:330px;padding-bottom:5px}
.depth-heading-note>p,.depth-questions-intro>p:not(.tiny-label){font-size:16px;line-height:1.8;color:var(--f-muted)}
.depth-inline-link{display:inline-flex;align-items:center;gap:24px;font-size:13px;font-weight:700;line-height:1.65;border-bottom:1px solid var(--f-rule);padding:5px 0 8px;margin-top:22px}
.depth-inline-link>span{font-size:20px;color:var(--f-wine);transition:transform .2s}
.depth-inline-link:hover>span{transform:translate(3px,-3px)}
.depth-product-group{display:grid;grid-template-columns:minmax(210px,.72fr) minmax(0,1.6fr);gap:8%;border-top:1px solid var(--f-rule);padding-top:22px}
.depth-product-group+.depth-product-group{margin-top:55px}
.depth-group-intro{position:sticky;top:125px;align-self:start;padding-top:14px}
.depth-group-intro>.tiny-label{color:var(--f-wine);text-transform:uppercase;letter-spacing:1.5px}
.depth-group-intro h3{font-size:32px;line-height:1.13;letter-spacing:-1.2px;max-width:265px;margin:17px 0}
.depth-group-intro>p:not(.tiny-label){font-size:14px;line-height:1.8;color:var(--f-muted);max-width:270px}
.depth-group-count{display:block;font-size:11px;font-weight:700;letter-spacing:.5px;color:var(--f-wine);margin-top:27px}
.depth-product-row{display:grid;grid-template-columns:30px minmax(0,1fr);gap:18px;padding:24px 0 29px;border-bottom:1px solid var(--f-rule)}
.depth-product-row:last-child{border-bottom:0}
.depth-product-number{font-size:11px;font-weight:700;color:var(--f-wine);padding-top:4px}
.depth-product-meta{display:flex;align-items:center;justify-content:space-between;gap:10px 16px;flex-wrap:wrap;color:var(--f-muted);font-size:10px;line-height:1.6;letter-spacing:.2px}
.depth-availability{color:var(--f-wine);font-weight:700}
.depth-product-body h4{font-size:26px;line-height:1.2;letter-spacing:-.8px;margin:13px 0 14px}
.depth-product-body h4>a{display:flex;gap:18px;align-items:baseline;justify-content:space-between;padding-right:3px}
.depth-product-arrow{font-size:28px;line-height:1;font-weight:400;color:var(--f-wine);transition:transform .2s}
.depth-product-body h4>a:hover .depth-product-arrow{transform:translate(4px,-4px)}
.depth-product-body>p{font-size:14px;line-height:1.85;color:var(--f-muted);max-width:660px}
.depth-feature-tags{display:flex;flex-wrap:wrap;gap:7px;list-style:none;padding:0;margin:19px 0 0}
.depth-feature-tags>li{font-size:11px;line-height:1.55;padding:6px 10px;background:var(--depth-tag);color:var(--depth-tag-ink);border:1px solid transparent;border-radius:5px;max-width:100%;overflow-wrap:anywhere}
.depth-journey{background:var(--depth-soft)}
.depth-journey-steps{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));list-style:none;margin:0;padding:0;gap:28px}
.depth-journey-step{min-width:0}
.depth-step-track{display:flex;justify-content:space-between;align-items:center;padding-bottom:20px;margin-bottom:25px;border-bottom:1px solid var(--f-rule);color:var(--f-wine)}
.depth-step-track>span{font-family:var(--f-font-display);font-size:38px;font-weight:500;letter-spacing:-2px}
.depth-step-track>i{font-size:24px;font-style:normal}
.depth-journey-step>.tiny-label{font-size:9px;letter-spacing:.9px;text-transform:uppercase;color:var(--f-muted)}
.depth-journey-step h3{font-size:25px;line-height:1.15;letter-spacing:-.8px;margin:14px 0 17px;min-height:57px}
.depth-step-description{font-size:13px;line-height:1.85;color:var(--f-muted)}
.depth-step-outcome{display:block;color:var(--f-wine);font-size:10px;font-weight:700;line-height:1.7;margin-top:22px;padding-top:16px;border-top:1px solid var(--f-rule)}
.depth-journey-end{display:flex;align-items:center;justify-content:space-between;gap:30px;margin-top:62px;padding-top:31px;border-top:1px solid var(--f-rule)}
.depth-journey-end>p{font-size:17px;line-height:1.65}
.depth-journey-end .future-button{gap:24px;flex-shrink:0}
.depth-questions{display:grid;grid-template-columns:minmax(230px,.85fr) minmax(0,1.15fr);gap:8%}
.depth-questions-intro{align-self:start;position:sticky;top:125px}
.depth-questions-intro h2{font-size:clamp(43px,4.4vw,66px);margin:22px 0}
.depth-faq{border-top:1px solid var(--f-rule)}
.depth-faq:last-child{border-bottom:1px solid var(--f-rule)}
.depth-faq>summary{display:grid;grid-template-columns:25px minmax(0,1fr) 20px;align-items:start;gap:13px;padding:25px 0;list-style:none;cursor:pointer;font-size:16px;line-height:1.6;font-weight:600}
.depth-faq>summary::-webkit-details-marker{display:none}
.depth-faq>summary::marker{content:''}
.depth-faq>summary:focus-visible{outline:3px solid var(--f-wine);outline-offset:5px;border-radius:2px}
.depth-faq-number{font-size:10px;font-weight:700;line-height:2.7;color:var(--f-muted)}
.depth-faq-toggle{position:relative;width:18px;height:18px;margin-top:4px;color:var(--f-wine)}
.depth-faq-toggle:before,.depth-faq-toggle:after{content:'';position:absolute;left:3px;right:3px;top:8px;height:1px;background:currentColor}
.depth-faq-toggle:after{transform:rotate(90deg);transition:transform .2s}
.depth-faq[open] .depth-faq-toggle:after{transform:rotate(0)}
.depth-faq[open]>summary{color:var(--f-wine)}
.depth-faq-answer{padding:0 30px 28px 38px;color:var(--f-muted)}
.depth-faq-answer>p{font-size:14px;line-height:1.9}
.depth-faq-answer .depth-inline-link{margin-top:15px;color:var(--f-ink)}
html[data-theme=dark] .depth-section{--depth-soft:#242026;--depth-tag:#2d2830;--depth-tag-ink:#ddd0d9}
@media(min-width:1500px){.depth-section{padding-left:max(9%,calc((100vw - 1360px)/2));padding-right:max(9%,calc((100vw - 1360px)/2))}}
@media(max-width:1100px){.depth-section{padding:95px 8%}.depth-heading{column-gap:6%}.depth-product-group{grid-template-columns:minmax(180px,.65fr) minmax(0,1.5fr);gap:6%}.depth-group-intro h3{font-size:27px}.depth-product-body h4{font-size:23px}.depth-journey-steps{gap:22px}.depth-journey-step h3{font-size:22px;min-height:51px}.depth-questions{gap:6%;grid-template-columns:minmax(205px,.8fr) minmax(0,1.2fr)}}
@media(max-width:850px){.depth-heading{grid-template-columns:1fr;padding-bottom:44px}.depth-heading h2{font-size:58px}.depth-heading-note{margin-top:26px;max-width:480px}.depth-heading-note>p{font-size:15px}.depth-product-group{grid-template-columns:1fr;gap:9px}.depth-group-intro{position:static;padding-top:8px;display:grid;grid-template-columns:1fr 1fr;gap:0 30px}.depth-group-intro>.tiny-label{grid-column:1/-1}.depth-group-intro h3{max-width:300px}.depth-group-intro>p:not(.tiny-label){align-self:center;max-width:340px;grid-column:2;grid-row:2/4}.depth-group-count{margin:0 0 20px}.depth-journey-steps{grid-template-columns:repeat(2,minmax(0,1fr));gap:34px}.depth-journey-step h3{font-size:28px;min-height:0}.depth-step-description{font-size:14px}.depth-journey-end{align-items:flex-start;flex-direction:column}.depth-questions{display:block}.depth-questions-intro{position:static;margin-bottom:40px}.depth-questions-intro h2{font-size:58px}.depth-faq>summary{font-size:17px}}
@media(max-width:520px){.depth-section{padding:78px 7%}.depth-heading h2,.depth-questions-intro h2{font-size:44px}.depth-heading>.tiny-label,.depth-questions-intro>.tiny-label{font-size:9px;letter-spacing:1.3px}.depth-product-group+.depth-product-group{margin-top:37px}.depth-group-intro{display:block}.depth-group-intro h3{font-size:28px;max-width:none}.depth-group-intro>p:not(.tiny-label){max-width:none}.depth-group-count{margin:18px 0 10px}.depth-product-row{grid-template-columns:23px minmax(0,1fr);gap:10px;padding:23px 0 27px}.depth-product-body h4{font-size:23px}.depth-product-meta{display:block;font-size:10px}.depth-availability{display:block;margin-top:5px}.depth-product-body>p{font-size:13px;line-height:1.8}.depth-feature-tags{gap:6px}.depth-feature-tags>li{font-size:10px;padding:5px 8px}.depth-product-arrow{font-size:23px}.depth-journey-steps{grid-template-columns:1fr;gap:27px}.depth-step-track{margin-bottom:16px;padding-bottom:11px}.depth-step-track>span{font-size:34px}.depth-journey-step h3{margin:10px 0 14px;font-size:29px}.depth-step-outcome{margin-top:17px;padding-top:13px}.depth-journey-end{margin-top:35px;padding-top:25px;gap:23px}.depth-journey-end>p{font-size:15px}.depth-journey-end .future-button{max-width:100%;font-size:12px;gap:17px;padding:15px 18px}.depth-faq>summary{grid-template-columns:22px minmax(0,1fr) 17px;gap:9px;font-size:15px;padding:22px 0}.depth-faq-answer{padding:0 23px 24px 31px}.depth-faq-answer>p{font-size:13px;line-height:1.85}}
@media(prefers-reduced-motion:reduce){.depth-inline-link>span,.depth-product-arrow,.depth-faq-toggle:after{transition:none}}

/* source: assets/css/modern-payments.css */
.pay-hero{padding:35px 8% 95px;display:grid;grid-template-columns:1.15fr 1fr;gap:5%;align-items:center;color:var(--f-ink);overflow:hidden}
.pay-breadcrumb{display:flex;gap:12px;font-size:12px;color:var(--f-muted);margin-bottom:54px}.pay-hero h1{font:700 clamp(46px,5.2vw,78px)/1.01 var(--f-font-display);letter-spacing:-.065em;margin:23px 0 28px}.pay-hero h1 em{display:inline-block}.pay-lead{font-size:16px;line-height:1.8;color:var(--f-muted);max-width:490px}.pay-hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:25px;margin-top:30px}.pay-hero-note{font-size:11px;margin-top:25px!important;color:var(--f-muted)}
.pay-art{min-height:570px;position:relative;perspective:1000px}.pay-art-orbit{position:absolute;inset:6% 0;border:1px solid var(--f-rule);border-radius:50%;transform:rotate(-20deg)}.pay-art-hub{position:absolute;top:42%;left:36%;display:flex;flex-direction:column;align-items:center;gap:15px}.pay-art-hub img{width:76px;height:76px;object-fit:contain}.pay-art-hub span{font-size:6px;letter-spacing:1.5px;font-weight:700}.pay-art-card{position:absolute;max-width:260px;padding:26px;border:1px solid #b8a089;border-radius:17px;box-shadow:0 22px 40px #3313241a;color:#412132;background:#e4c192;width:62%}.pay-art-request{top:20px;left:0;transform:rotate(-9deg)}.pay-art-card>span{font-size:8px;letter-spacing:1.3px;display:block}.pay-art-card>b{display:block;font:700 31px/1.03 var(--f-font-display);letter-spacing:-1.4px;margin:25px 0}.pay-art-card>small{font-size:10px;line-height:1.7;display:block}.pay-art-card>i{position:absolute;right:23px;top:43px;font-size:31px;font-style:normal}.pay-art-receipt{bottom:8px;right:0;transform:rotate(8deg);background:#e6ebd9;color:#2b412b}.pay-art-receipt>b{font-size:29px}.pay-art-check{position:absolute;right:18px;top:39px;width:33px;height:33px;border-radius:50%;border:1px solid #7c9270;display:grid;place-items:center;font-size:20px}
.pay-providers,.pay-workflows,.pay-start{padding:90px 8%;color:var(--f-ink)}.pay-providers{background:#ebe5db}.pay-section-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:10%;align-items:end;margin-bottom:45px}.pay-section-heading h2,.pay-start h2{font:700 clamp(40px,4.7vw,70px)/1.03 var(--f-font-display);letter-spacing:-.055em;margin:22px 0 0}.pay-section-heading>p,.pay-start>div>p:not(.tiny-label){font-size:14px;line-height:1.85;color:var(--f-muted);max-width:460px}.pay-provider-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.pay-provider{margin:0;min-width:0}.pay-provider-logo{height:130px;padding:28px;display:flex;align-items:center;justify-content:center;background:#fff;border:1px solid #d8d0c5;border-radius:14px;transition:transform .2s}.pay-provider:hover .pay-provider-logo{transform:translateY(-4px)}.pay-provider-logo img{display:block;max-width:100%;max-height:65px;width:auto;height:auto;object-fit:contain}.pay-logo-dark{background:#153e62;border-color:#436484}.pay-provider figcaption{font-size:12px;font-weight:600;margin-top:13px;padding-left:3px;color:var(--f-ink)}
.pay-feature-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:30px}.pay-feature-grid article{border-top:1px solid var(--f-rule);padding-top:23px}.pay-feature-grid article>span{color:var(--f-wine);font:500 27px var(--f-font-display)}.pay-feature-grid h3{font:700 22px/1.2 var(--f-font-display);letter-spacing:-.7px;margin:23px 0 15px}.pay-feature-grid article>p{font-size:13px;line-height:1.9;color:var(--f-muted)}.pay-start{display:grid;grid-template-columns:1fr 1fr;gap:12%;background:#e0e7d4}.pay-start h2{margin-bottom:25px}.pay-start .future-button{margin-top:30px}.pay-setup-list{align-self:center}.pay-setup-list>p{display:flex;align-items:start;gap:22px;padding:28px 0;border-top:1px solid var(--f-rule)}.pay-setup-list>p>b{font:500 23px var(--f-font-display);color:var(--f-wine)}.pay-setup-list span{font-size:13px;line-height:1.8;color:var(--f-muted)}.pay-setup-list strong{display:block;color:var(--f-ink);font:700 23px var(--f-font-display);letter-spacing:-.8px;margin-bottom:9px}.pay-related{display:flex;align-items:center;flex-wrap:wrap;gap:25px;padding:48px 8%;color:var(--f-ink)}.pay-related>span{font-size:9px;letter-spacing:1.5px;margin-right:auto}.pay-related a{font-size:13px;border-bottom:1px solid var(--f-rule);padding-bottom:5px}
.connection-stage.has-payments{min-height:680px}.has-payments .node-c,.has-payments .node-d{bottom:27%}.has-payments .node-payment{left:50%;bottom:0;transform:translateX(-50%) rotate(-3deg)}.has-payments .node-payment:hover{transform:translateX(-50%) rotate(0) translateY(-5px)}.has-payments .connection-core{top:31%}
.home-payment-providers{max-width:1100px;margin:15px auto 75px;border-top:1px solid var(--f-rule);padding-top:26px}.home-provider-heading{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:23px}.home-provider-heading>span{font-size:9px;letter-spacing:1.6px;font-weight:700}.home-provider-heading>a{font-size:12px;color:var(--f-wine);border-bottom:1px solid var(--f-rule);padding-bottom:5px}.home-payment-providers .pay-provider-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}.home-payment-providers .pay-provider-logo{height:100px;padding:23px}.home-payment-providers .pay-provider-logo img{max-height:45px}.home-payment-providers .pay-provider figcaption{font-size:10px}
html[data-theme=dark] .pay-providers{background:#211e26}html[data-theme=dark] .pay-start{background:#22291f}html[data-theme=dark] .pay-provider-logo{border-color:#706378}html[data-theme=dark] .pay-logo-dark{background:#153e62;border-color:#60738e}
@media(max-width:1050px){.pay-hero{grid-template-columns:1.1fr .9fr;gap:3%;padding-left:6%;padding-right:6%}.pay-art-card{padding:22px;width:75%}.pay-art-card>b{font-size:26px}.pay-art{min-height:530px}.pay-art-hub{left:28%}.pay-provider-logo{padding:20px;height:115px}.pay-feature-grid{grid-template-columns:1fr 1fr;gap:35px}.pay-section-heading{gap:6%}}
@media(max-width:760px){.pay-hero{display:block;padding:5px 7% 65px}.pay-breadcrumb{margin-bottom:40px;font-size:11px}.pay-hero h1{font-size:47px;letter-spacing:-.07em}.pay-lead{font-size:14px}.pay-hero-actions{gap:22px}.pay-hero-actions .future-button{font-size:12px}.pay-hero-note{font-size:10px}.pay-art{min-height:475px;margin-top:45px;max-width:370px;margin-left:auto;margin-right:auto}.pay-art-card{width:68%;padding:22px;max-width:230px}.pay-art-card>b{font-size:27px}.pay-art-card>span{font-size:7px}.pay-art-card>small{font-size:9px}.pay-art-card>i{font-size:24px}.pay-art-request{top:10px}.pay-art-hub{top:40%;left:37%}.pay-art-hub img{width:63px;height:63px}.pay-art-hub span{font-size:5px;letter-spacing:1px}.pay-art-receipt{bottom:0}.pay-art-receipt>b{font-size:26px}.pay-art-check{width:26px;height:26px;font-size:16px;top:37px}.pay-providers,.pay-workflows,.pay-start{padding:65px 7%}.pay-section-heading{display:block;margin-bottom:30px}.pay-section-heading h2,.pay-start h2{font-size:43px}.pay-section-heading>p{font-size:13px;margin-top:22px}.pay-provider-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px 14px}.pay-provider-logo{height:93px;padding:17px;border-radius:11px}.pay-provider-logo img{max-height:50px}.pay-provider figcaption{font-size:11px}.pay-feature-grid{grid-template-columns:1fr;gap:26px}.pay-feature-grid h3{margin-top:15px}.pay-start{grid-template-columns:1fr;gap:40px}.pay-related{padding:35px 7%;gap:20px}.pay-related>span{width:100%;font-size:8px}.pay-related a{font-size:11px}.connection-stage.has-payments{min-height:700px;margin-bottom:45px}.has-payments .node-c,.has-payments .node-d{bottom:25%}.has-payments .node-payment{width:52%}.has-payments .connection-core{top:27%}.home-payment-providers{margin-bottom:50px}.home-provider-heading{align-items:start}.home-provider-heading>span{font-size:8px;max-width:140px;line-height:1.8}.home-provider-heading>a{font-size:10px}.home-payment-providers .pay-provider-grid{grid-template-columns:1fr 1fr;gap:20px 12px}.home-payment-providers .pay-provider-logo{height:82px;padding:16px}}
/* Compact full-width technology rows: six logos across on desktop. */
.technology-section{padding:80px 9%;background:#eee8de;color:var(--f-ink)}
.technology-heading{padding-bottom:30px}.technology-heading h2{font:700 clamp(38px,4.7vw,70px)/1.04 var(--f-font-display);letter-spacing:-.055em;margin:22px 0}.technology-heading>p:not(.tiny-label){font-size:15px;line-height:1.8;color:var(--f-muted)}
.technology-group{display:block;padding:28px 0 32px;border-top:1px solid var(--f-rule)}.technology-group:last-child{padding-bottom:0}.technology-group-copy{display:grid;grid-template-columns:minmax(180px,1fr) minmax(240px,1.55fr) auto;align-items:center;gap:10px 26px;margin-bottom:21px}.technology-group-copy>span{grid-column:1/-1;font-size:8px;letter-spacing:1.5px;color:var(--f-wine);font-weight:700}.technology-group-copy h3{font:700 26px/1.15 var(--f-font-display);letter-spacing:-.9px;margin:0}.technology-group-copy>p{font-size:12px;line-height:1.8;color:var(--f-muted);max-width:490px;margin:0}.technology-group-copy>a{display:inline-block;justify-self:end;font-size:11px;font-weight:600;border-bottom:1px solid var(--f-rule);padding-bottom:6px;color:var(--f-wine);white-space:nowrap}
.technology-logos{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:18px 14px;align-content:start}.technology-logos figure{margin:0;min-width:0}.technology-logo{height:72px;background:#fff;border:1px solid #d4c9bd;border-radius:10px;padding:15px 16px;display:flex;justify-content:center;align-items:center}.technology-logo img{display:block;max-width:114px;max-height:40px;width:auto;height:auto;object-fit:contain;min-width:0}.technology-logo.logo-surface-dark{background:#233342;border-color:#627183}.technology-logos figcaption{font-size:11px;font-weight:600;color:var(--f-ink);margin-top:8px;line-height:1.5;text-align:center;overflow-wrap:anywhere}.technology-logo.technology-logo--icon img{width:40px;height:40px;max-height:40px;object-fit:contain}
html[data-theme=dark] .technology-section{background:#211d25}html[data-theme=dark] .technology-logo{border-color:#695971}html[data-theme=dark] .technology-logo.logo-surface-dark{border-color:#758697}
@media(max-width:1150px){.technology-section{padding-left:7%;padding-right:7%}.technology-group-copy{grid-template-columns:1fr 1.4fr;gap:9px 24px}.technology-group-copy>span{grid-column:1}.technology-group-copy h3{grid-column:1;grid-row:2;font-size:24px}.technology-group-copy>p{grid-column:2;grid-row:1/3}.technology-group-copy>a{grid-column:1/-1;justify-self:start;margin-top:3px}.technology-logo{padding:14px 10px}.technology-logo img{max-width:100%;max-height:36px}.technology-logos{gap:18px 11px}.technology-logos figcaption{font-size:10px}}
@media(max-width:950px){.technology-logos{grid-template-columns:repeat(3,minmax(0,1fr));gap:19px 14px}.technology-logo{height:69px;padding:15px}.technology-logo img{max-width:125px;max-height:37px}}
@media(max-width:600px){.technology-section{padding:58px 7%}.technology-heading{padding-bottom:24px}.technology-heading h2{font-size:40px}.technology-heading .tiny-label{font-size:8px;letter-spacing:1px;line-height:1.7}.technology-heading>p:not(.tiny-label){font-size:13px}.technology-group{padding:26px 0 29px}.technology-group-copy{display:block;margin-bottom:18px}.technology-group-copy h3{font-size:25px;margin:11px 0}.technology-group-copy>p{font-size:12px;max-width:100%}.technology-group-copy>a{font-size:11px;margin-top:13px}.technology-logos{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px 12px}.technology-logo{height:68px;padding:14px}.technology-logo img{max-width:100%;max-height:38px}.technology-logos figcaption{font-size:11px;margin-top:7px}.technology-logo.technology-logo--icon img{width:37px;height:37px;max-height:37px}}

/* source: assets/css/modern-availability.css */
/* Clear, consistent release labels across the preview catalogue and product pages. */
html[data-theme] body.future-site :is(.availability-badge, .product-status, .depth-availability, .catalogue-download-card__availability) {
  --status-ink: #51345f;
  --status-paper: #eee2f3;
  --status-edge: #aa87b3;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 9px;
  width: max-content;
  max-width: 100%;
  min-height: 34px;
  padding: 9px 13px;
  border: 1px solid var(--status-edge);
  border-radius: 9px;
  background: var(--status-paper);
  color: var(--status-ink);
  font: 800 12px/1.35 var(--f-font-body, Manrope, sans-serif);
  letter-spacing: .055em;
  text-transform: uppercase;
  text-align: left;
  vertical-align: middle;
  box-shadow: 0 3px 0 color-mix(in srgb, var(--status-edge) 22%, transparent);
  opacity: 1;
}
html[data-theme] body.future-site :is(.availability-badge, .product-status, .depth-availability, .catalogue-download-card__availability)::before {
  content: '';
  width: 7px;
  height: 7px;
  flex: 0 0 7px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 0 3px color-mix(in srgb, currentColor 13%, transparent);
}
html[data-theme] body.future-site :is(.availability-badge--available, .catalogue-download-card__availability.is-available, [data-availability="Available now" i]) {
  --status-ink: #06492f;
  --status-paper: #d7f4e3;
  --status-edge: #61a883;
}
html[data-theme] body.future-site :is(.availability-badge--coming, .catalogue-download-card__availability.is-coming, [data-availability="Coming soon" i]) {
  --status-ink: #5a3006;
  --status-paper: #ffe2a5;
  --status-edge: #c88832;
}
html[data-theme] body.future-site [data-availability="Available on request" i] {
  --status-ink: #51345f;
  --status-paper: #eee2f3;
  --status-edge: #aa87b3;
}
/* Product panels are burgundy in both modes; solid badge surfaces stay readable. */
html[data-theme] body.future-site .product-panel-head { flex-wrap: wrap; gap: 16px; }
html[data-theme] body.future-site .product-identity { min-width: 0; }
html[data-theme] body.future-site .product-identity b { line-height: 1.5; }
html[data-theme] body.future-site .product-status { flex-shrink: 0; }
@media (max-width: 760px) {
  html[data-theme] body.future-site :is(.availability-badge, .product-status, .depth-availability, .catalogue-download-card__availability) {
    font-size: 11px;
    padding: 8px 11px;
    min-height: 32px;
  }
  html[data-theme] body.future-site .product-tabs [data-product-tab="web"] { grid-column: 1 / -1; }
  html[data-theme] body.future-site .product-panel-head { align-items: flex-start; }
  html[data-theme] body.future-site .product-status { margin-left: auto; }
}

/* source: assets/css/modern-header-contact.css */
/* Persistent direct email access alongside the phone and theme controls. */
.future-site .contact-corner { gap: 12px; }
.future-site .corner-email {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  gap: 9px;
  padding: 13px 16px;
  border: 1px solid #d5cdc5;
  border-radius: 30px;
  background: rgba(244, 241, 232, .96);
  color: #3f2632;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.5;
  text-decoration: none;
  white-space: nowrap;
  backdrop-filter: blur(12px);
}
.future-site .corner-email svg { width: 19px; height: 19px; fill: none; stroke: currentColor; stroke-width: 1.6; stroke-linecap: round; stroke-linejoin: round; }
.future-site .corner-email:hover { background: #e6dfd2; }
.future-site .corner-email:focus-visible { outline: 3px solid var(--f-wine); outline-offset: 4px; }
html[data-theme="dark"] .future-site .corner-email { background: #242127f5; color: #f3eee5; border-color: #59505b; }
html[data-theme="dark"] .future-site .corner-email:hover { background: #38323b; }
@media (max-width: 860px) {
  .future-site .corner-email { width: 49px; height: 49px; padding: 0; border-radius: 50%; }
  .future-site .corner-email span { display: none; }
}
@media (max-width: 760px) {
  .future-site .contact-corner { gap: 6px; }
  .future-site .corner-email { width: 39px; height: 39px; }
}
@media (max-width: 400px) {
  .future-site .contact-trigger > span:last-child { display: none; }
}
@media (max-width: 370px) {
  .future-site .floating-brand { left: 12px; gap: 6px; }
  .future-site .contact-corner { gap: 5px; }
  .future-site .corner-email { width: 35px; height: 35px; }
  .future-site .contact-trigger { padding: 10px 9px; }
  .future-site .contact-trigger > span:last-child { display: none; }
}

/* "Talk to us" sized like the dock's "Book a demo" (13px / 700, 15px 22px).
   `.future-site button { font: inherit }` used to beat `.contact-trigger` on
   inner pages, which is why the pill rendered at the body's 17px / 400. */
.future-site .contact-trigger {
  padding: 15px 22px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.55;
}
.future-site .contact-trigger > span:last-child { margin-left: 14px; font-size: 13px; }
@media (max-width: 760px) {
  .future-site .contact-trigger { padding: 10px 11px; font-size: 11px; }
  .future-site .contact-trigger > span:last-child { margin-left: 3px; font-size: 12px; }
}
@media (max-width: 370px) {
  .future-site .contact-trigger { padding: 10px 9px; font-size: 10px; }
}

/* "Ask ConnectX" sits on the dock's own line: dock bottom 24px + height 67px
   puts its centre 57px up; a 49px launcher centres there at bottom 33px.
   Below 960px the dock's right end would meet the launcher, so it keeps its
   place above the dock there. */
@media (min-width: 960px) {
  .future-site .cx-launch { bottom: 33px !important; }
  .future-site .cx-panel { bottom: 96px !important; }
}

/* <button class="future-button"> lost to `.future-site button { font: inherit }`
   on inner pages (17px / 400 instead of the pill's 13px / 700). */
.future-site button.future-button {
  font-size: 13px;
  font-weight: 700;
  line-height: 1.4;
}

/* "Talk to JPRAXC" (page end) matches the dock's "Book a demo". */
.future-site .page-contact-end .future-button {
  gap: 18px;
  padding: 15px 22px;
  font-size: 13px;
  font-weight: 700;
  line-height: 1.55;
}
.future-site .page-contact-end .future-button span { font-size: 13px; font-weight: 700; }

/* source: assets/css/modern-erp-illustrations.css */
/* Preview-only, CSS-native ERP product illustrations. No product screenshots. */
.future-site .erp-concept { position: relative; min-height: 435px; margin: 30px 0; overflow: hidden; isolation: isolate; border: 1px solid #fff5e31a; border-radius: 20px; box-shadow: 0 20px 50px #08041024; }
.future-site .erp-art-canvas { position: absolute; inset: 0; color: #3c2530; font-family: var(--f-font-body, Manrope, sans-serif); }
.future-site .erp-art-kicker { position: absolute; left: 28px; top: 26px; right: 26px; font-size: 8px; font-weight: 700; letter-spacing: .16em; line-height: 1.6; z-index: 6; color: #5b4849; }
.future-site .erp-art-caption { position: absolute; bottom: 25px; left: 26px; right: 26px; padding-top: 14px; border-top: 1px solid #6b4c542e; text-align: center; font-size: 7.5px; font-weight: 700; letter-spacing: .14em; line-height: 1.6; color: #5b4849; z-index: 6; }
.future-site .erp-art-canvas strong,
.future-site .erp-art-canvas b { font-family: var(--f-font-display, 'Space Grotesk', sans-serif); }
.future-site .erp-art-canvas i { font-style: normal; }

/* Hospital: a continuous care orbit, with the patient as the central object. */
.future-site .erp-concept--care { background: #dce1d2; }
.future-site .erp-care-orbit { position: absolute; left: 50%; top: 49%; width: 270px; height: 270px; border: 1px solid #82907769; border-radius: 50%; transform: translate(-50%, -50%); }
.future-site .erp-care-orbit--inner { width: 340px; height: 340px; border-style: dashed; border-color: #8e977c44; transform: translate(-50%, -50%) rotate(-35deg) scaleX(1.3); }
.future-site .erp-care-cross { position: absolute; width: 58px; height: 58px; left: calc(50% - 29px); top: 70px; opacity: .22; transform: rotate(-12deg); }
.future-site .erp-care-cross i { display: block; position: absolute; left: 21px; top: 0; width: 16px; height: 58px; border-radius: 4px; background: #617952; }
.future-site .erp-care-cross i + i { transform: rotate(90deg); }
.future-site .erp-care-patient { position: absolute; width: 166px; height: 191px; left: calc(50% - 83px); top: 136px; z-index: 3; border-radius: 21px; background: #542236; color: #f7e9d6; box-shadow: 10px 12px 0 #b4bd9a, 0 16px 40px #40503f1f; transform: rotate(-6deg); }
.future-site .erp-care-person { position: relative; display: block; width: 62px; height: 73px; margin: 24px auto 12px; }
.future-site .erp-care-person i { position: absolute; left: 20px; top: 0; width: 26px; height: 26px; border-radius: 50%; background: #d8ba8d; }
.future-site .erp-care-person b { position: absolute; bottom: 0; left: 2px; width: 60px; height: 39px; border-radius: 35px 35px 10px 10px; background: #ead8b9; }
.future-site .erp-care-patient strong { display: block; text-align: center; font-size: 18px; font-weight: 700; letter-spacing: -.025em; line-height: 1.2; }
.future-site .erp-care-point { position: absolute; z-index: 4; width: 154px; padding: 16px 16px 17px; border: 1px solid #b1b59f; border-radius: 11px; background: #f5f1e5; color: #3c2530; box-shadow: 0 10px 20px #57694c0c; }
.future-site .erp-care-point > span { display: block; font-size: 7px; font-weight: 700; letter-spacing: .12em; color: #796053; }
.future-site .erp-care-point > b { display: block; font-size: 16px; font-weight: 700; letter-spacing: -.035em; line-height: 1.15; margin-top: 10px; }
.future-site .erp-care-point > i { position: absolute; right: 13px; top: 13px; color: #7c5f64; font-size: 18px; }
.future-site .erp-care-point--arrival { left: 6%; top: 86px; transform: rotate(-6deg); }
.future-site .erp-care-point--consult { right: 5%; top: 95px; transform: rotate(6deg); }
.future-site .erp-care-point--labs { left: 4%; bottom: 86px; transform: rotate(4deg); }
.future-site .erp-care-point--pharmacy { right: 4%; bottom: 73px; transform: rotate(-5deg); }

/* Billing: a paper invoice with a stock object and an account ledger. */
.future-site .erp-concept--billing { background: #e4d5c4; }
.future-site .erp-bill-orbit { position: absolute; width: 350px; height: 310px; border: 1px solid #a8866e56; border-radius: 50%; left: calc(50% - 175px); top: 63px; transform: rotate(-28deg) scaleX(1.2); }
.future-site .erp-bill-sheet { position: absolute; width: 213px; height: 283px; left: calc(50% - 107px); top: 74px; border-radius: 5px; }
.future-site .erp-bill-sheet--back { transform: rotate(6deg) translate(12px, 10px); background: #c6a078; border: 1px solid #a88a70; }
.future-site .erp-bill-sheet--front { transform: rotate(-7deg); z-index: 4; background: #fbf2df; color: #3e2532; border: 1px solid #d4c2a7; padding: 21px; box-shadow: 0 18px 27px #67413524; }
.future-site .erp-bill-paper-head { display: flex; justify-content: space-between; align-items: center; margin-bottom: 17px; }
.future-site .erp-bill-paper-head > span { font-weight: 800; font-size: 12px; letter-spacing: .15em; }
.future-site .erp-bill-paper-head > i { padding: 4px 6px; border: 1px solid #a7807e; color: #5b283e; font-size: 10px; line-height: 1; font-weight: 700; transform: rotate(4deg); }
.future-site .erp-bill-sheet--front > strong { display: block; font-size: 31px; letter-spacing: -.045em; line-height: 1.1; }
.future-site .erp-bill-paper-note { display: block; font-size: 5.5px; font-weight: 800; letter-spacing: .06em; line-height: 1.8; margin-top: 5px; margin-bottom: 17px; color: #765a58; }
.future-site .erp-bill-line { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 0; border-bottom: 1px solid #d6c6b0; font-size: 8px; font-weight: 700; color: #5c4146; }
.future-site .erp-bill-line > i { display: block; height: 4px; width: 44px; border-radius: 2px; background: #c6b6a5; }
.future-site .erp-bill-line--total { border: 0; color: #3e2532; font-weight: 800; }
.future-site .erp-bill-line--total > i { background: #713f4c; width: 54px; }
.future-site .erp-bill-paper-end { display: flex; justify-content: space-between; align-items: end; margin-top: 10px; }
.future-site .erp-bill-barcode { display: block; width: 57px; height: 17px; background: repeating-linear-gradient(90deg, #694653 0, #694653 1px, transparent 1px, transparent 3px, #694653 3px, #694653 5px, transparent 5px, transparent 8px); opacity: .65; }
.future-site .erp-bill-paper-end > b { font-size: 11px; padding: 3px 6px; color: #5b283e; border: 1px solid #a7807e; transform: rotate(5deg); }
.future-site .erp-bill-stock { position: absolute; z-index: 5; left: 6%; bottom: 76px; width: 119px; padding: 15px 14px; border-radius: 12px; background: #532337; color: #f5e5cd; transform: rotate(7deg); box-shadow: 5px 8px 0 #b7997c; }
.future-site .erp-stock-cubes { position: relative; height: 54px; margin: 2px 0 15px; }
.future-site .erp-stock-cubes i { position: absolute; display: block; width: 28px; height: 29px; top: 22px; left: 7px; background: #c59b6d; border: 1px solid #f1d7ac; box-shadow: 5px 4px 0 #8c5b4e; transform: skewY(-9deg); }
.future-site .erp-stock-cubes i:nth-child(2) { left: 39px; }
.future-site .erp-stock-cubes i:nth-child(3) { top: -1px; left: 23px; }
.future-site .erp-bill-stock > strong { display: block; font-size: 18px; line-height: 1; letter-spacing: -.03em; }
.future-site .erp-bill-stock > span { display: block; margin-top: 8px; font-size: 7.5px; line-height: 1.5; color: #e1cbb9; }
.future-site .erp-bill-account { position: absolute; z-index: 6; right: 4%; top: 149px; width: 124px; height: 158px; padding: 17px; border: 1px solid #b7967c; border-radius: 11px; color: #432e36; background: #eaddc8; transform: rotate(8deg); }
.future-site .erp-bill-account > i { display: block; font-size: 23px; line-height: 1; margin-bottom: 13px; color: #765158; }
.future-site .erp-bill-account > strong { font-size: 17px; font-weight: 700; letter-spacing: -.03em; }
.future-site .erp-bill-account > span { display: block; margin-top: 6px; font-size: 8px; line-height: 1.55; color: #765758; }
.future-site .erp-account-lines { display: flex; gap: 5px; margin-top: 14px; }
.future-site .erp-account-lines b { height: 4px; width: 20px; background: #a98270; border-radius: 2px; }

/* Custom business: a physical set of modules, connected by an approval route. */
.future-site .erp-concept--business { background: #dfd4dd; }
.future-site .erp-business-orbit { position: absolute; width: 355px; height: 275px; top: 66px; left: calc(50% - 178px); border: 1px solid #a1809252; border-radius: 32%; transform: rotate(-27deg); }
.future-site .erp-business-orbit--second { transform: rotate(26deg) scale(.84, 1.07); }
.future-site .erp-business-anchor { position: absolute; left: 5%; top: 128px; z-index: 3; width: 122px; height: 140px; padding: 19px; border-radius: 13px; color: #503246; background: #f1e7dc; transform: rotate(-12deg); box-shadow: 8px 10px 0 #b6a2aa; }
.future-site .erp-business-anchor > span { font-size: 8px; font-weight: 700; letter-spacing: .21em; }
.future-site .erp-business-anchor > strong { display: block; font-size: 42px; line-height: 1; letter-spacing: -.055em; margin-top: 13px; }
.future-site .erp-business-anchor > i { display: block; font-size: 29px; line-height: 1; margin-top: 7px; }
.future-site .erp-business-stack { position: absolute; left: 34%; top: 78px; width: 51%; height: 258px; transform: rotate(-9deg); }
.future-site .erp-business-block { position: absolute; left: 0; right: 0; height: 82px; padding: 22px; border: 1px solid #936579; border-radius: 10px; box-shadow: 6px 9px 0 #886274, 7px 10px 0 #bc99a6; display: flex; align-items: center; gap: 16px; }
.future-site .erp-business-block > span { align-self: start; padding-top: 3px; font-size: 8px; letter-spacing: .1em; }
.future-site .erp-business-block > strong { font-size: 23px; letter-spacing: -.035em; line-height: 1; }
.future-site .erp-business-block > i { margin-left: auto; font-size: 23px; font-family: var(--f-font-display, 'Space Grotesk', sans-serif); white-space: nowrap; }
.future-site .erp-business-block--teams { top: 0; left: 0; right: 30px; z-index: 5; background: #542438; color: #f5e5cf; }
.future-site .erp-business-block--teams > i { font-size: 14px; letter-spacing: -4px; }
.future-site .erp-business-block--projects { top: 79px; left: 16px; right: 14px; z-index: 4; background: #c29974; color: #3f2133; box-shadow: 6px 9px 0 #977256, 7px 10px 0 #d3b9a5; }
.future-site .erp-business-block--finance { top: 158px; left: 32px; right: 0; z-index: 3; background: #eee1ca; color: #4b2b3d; box-shadow: 6px 9px 0 #ae8d78, 7px 10px 0 #d3b9a5; }
.future-site .erp-business-ribbon { position: absolute; z-index: 6; left: 13%; bottom: 75px; display: flex; align-items: center; gap: 11px; padding: 13px 17px; border: 1px solid #967e89; border-radius: 999px; background: #efe8da; color: #492e3e; transform: rotate(3deg); box-shadow: 0 8px 23px #482e4912; }
.future-site .erp-business-ribbon > span { display: grid; place-items: center; width: 23px; height: 23px; border-radius: 50%; background: #dce3c8; color: #405c37; font-size: 14px; }
.future-site .erp-business-ribbon > strong { font-size: 14px; letter-spacing: -.02em; }
.future-site .erp-business-ribbon > i { max-width: 95px; font-size: 5.5px; font-weight: 700; line-height: 1.5; letter-spacing: .08em; padding-left: 10px; border-left: 1px solid #beaeb1; }

/* Intentionally contained palettes remain legible in either website theme. */
html[data-theme=dark] .future-site .erp-concept--care { background: #ced5c4; }
html[data-theme=dark] .future-site .erp-concept--billing { background: #d8c7b3; }
html[data-theme=dark] .future-site .erp-concept--business { background: #cdbfc9; }
@media (max-width: 1080px) and (min-width: 761px) {
  .future-site .erp-care-point { width: 135px; padding: 14px; }
  .future-site .erp-care-point > b { font-size: 14px; }
  .future-site .erp-care-patient { width: 150px; left: calc(50% - 75px); }
  .future-site .erp-bill-stock { left: 3%; width: 105px; }
  .future-site .erp-bill-account { right: 2%; width: 106px; padding: 13px; }
  .future-site .erp-business-block { padding: 18px 14px; gap: 10px; }
  .future-site .erp-business-block > strong { font-size: 21px; }
}
@media (max-width: 760px) {
  .future-site .erp-concept { min-height: 395px; border-radius: 17px; }
  .future-site .erp-art-kicker { top: 22px; left: 20px; right: 20px; font-size: 6.5px; letter-spacing: .1em; }
  .future-site .erp-art-caption { left: 20px; right: 20px; bottom: 21px; font-size: 6px; line-height: 1.6; letter-spacing: .08em; }
  .future-site .erp-care-orbit { width: 230px; height: 230px; top: 48%; }
  .future-site .erp-care-orbit--inner { width: 280px; height: 280px; }
  .future-site .erp-care-cross { top: 58px; width: 40px; height: 40px; left: calc(50% - 20px); }
  .future-site .erp-care-cross i { height: 40px; width: 12px; left: 14px; }
  .future-site .erp-care-patient { top: 123px; width: 135px; height: 159px; left: calc(50% - 67px); box-shadow: 7px 9px 0 #b4bd9a; border-radius: 18px; }
  .future-site .erp-care-person { transform: scale(.8); margin: 13px auto 0; }
  .future-site .erp-care-patient strong { font-size: 15px; }
  .future-site .erp-care-point { width: 120px; padding: 13px 11px 14px; border-radius: 10px; }
  .future-site .erp-care-point > span { font-size: 6px; letter-spacing: .07em; }
  .future-site .erp-care-point > b { font-size: 13px; margin-top: 9px; }
  .future-site .erp-care-point > i { right: 8px; top: 10px; font-size: 13px; }
  .future-site .erp-care-point--arrival { top: 71px; left: 4%; }
  .future-site .erp-care-point--consult { top: 77px; right: 3%; }
  .future-site .erp-care-point--labs { bottom: 86px; left: 3%; }
  .future-site .erp-care-point--pharmacy { bottom: 68px; right: 3%; }
  .future-site .erp-bill-sheet { width: 185px; height: 263px; left: calc(50% - 92px); top: 63px; }
  .future-site .erp-bill-sheet--front { padding: 18px; }
  .future-site .erp-bill-paper-head { margin-bottom: 15px; }
  .future-site .erp-bill-sheet--front > strong { font-size: 29px; }
  .future-site .erp-bill-paper-note { font-size: 5px; margin-bottom: 14px; }
  .future-site .erp-bill-line { font-size: 7px; padding-block: 10px; }
  .future-site .erp-bill-paper-end { margin-top: 7px; }
  .future-site .erp-bill-stock { left: 2%; bottom: 69px; width: 84px; padding: 12px 10px; }
  .future-site .erp-stock-cubes { transform: scale(.8); margin-left: -7px; margin-bottom: 8px; }
  .future-site .erp-bill-stock > strong { font-size: 16px; }
  .future-site .erp-bill-stock > span { font-size: 6.5px; }
  .future-site .erp-bill-account { right: 3%; top: 154px; width: 97px; height: 143px; padding: 12px; }
  .future-site .erp-bill-account > i { font-size: 20px; margin-bottom: 9px; }
  .future-site .erp-bill-account > strong { font-size: 14px; }
  .future-site .erp-bill-account > span { font-size: 7px; }
  .future-site .erp-account-lines { gap: 4px; margin-top: 12px; }
  .future-site .erp-account-lines b { width: 15px; }
  .future-site .erp-business-orbit { width: 285px; height: 245px; left: calc(50% - 142px); top: 61px; }
  .future-site .erp-business-anchor { left: 4%; top: 117px; width: 96px; height: 121px; padding: 15px; }
  .future-site .erp-business-anchor > span { font-size: 7px; }
  .future-site .erp-business-anchor > strong { font-size: 34px; margin-top: 12px; }
  .future-site .erp-business-anchor > i { font-size: 24px; }
  .future-site .erp-business-stack { top: 76px; left: 34%; width: 56%; }
  .future-site .erp-business-block { height: 74px; padding: 17px 13px; gap: 9px; border-radius: 9px; }
  .future-site .erp-business-block > span { font-size: 6px; }
  .future-site .erp-business-block > strong { font-size: 18px; }
  .future-site .erp-business-block > i { font-size: 19px; }
  .future-site .erp-business-block--teams { right: 20px; }
  .future-site .erp-business-block--teams > i { font-size: 10px; letter-spacing: -3px; }
  .future-site .erp-business-block--projects { top: 73px; left: 10px; right: 10px; }
  .future-site .erp-business-block--finance { top: 146px; left: 20px; }
  .future-site .erp-business-ribbon { left: 9%; bottom: 66px; gap: 8px; padding: 11px 13px; }
  .future-site .erp-business-ribbon > strong { font-size: 12px; }
  .future-site .erp-business-ribbon > i { max-width: 81px; font-size: 5px; padding-left: 8px; }
}
@media (max-width: 360px) {
  .future-site .erp-care-point { width: 109px; }
  .future-site .erp-care-point > b { font-size: 12px; }
  .future-site .erp-business-block { gap: 6px; padding-left: 10px; padding-right: 10px; }
  .future-site .erp-business-block > strong { font-size: 16px; }
  .future-site .erp-bill-account { width: 89px; right: 2%; }
}
@media (prefers-reduced-motion: reduce) {
  .future-site .erp-concept,
  .future-site .erp-art-canvas * { animation: none; transition: none; }
}

/* source: assets/css/modern-spacing.css */
/* Preview rhythm: more room around content, without altering artwork or controls. */
body.future-site {
  --space-section: clamp(110px, 11.2vw, 164px);
  --space-card: clamp(30px, 3vw, 42px);
  --space-grid: clamp(26px, 2.8vw, 40px);
}
body.future-site.future-page {
  --band-y: clamp(88px, 10.6vw, 156px);
  --band-y-tight: clamp(54px, 6vw, 86px);
}

/* Homepage chapters retain their unboxing sequence and illustration geometry. */
.future-site.future-home :is(.product-universe, .connections, .deployment-scene, .mobile-scene, .depth-section) {
  padding-block: var(--space-section);
}
.future-site.future-home .product-universe { padding-bottom: calc(var(--space-section) + 20px); }
.future-site.future-home .product-universe .section-intro { padding-bottom: 82px; }
.future-site.future-home .product-universe .section-intro > p:last-child { bottom: 92px; line-height: 1.85; }
.future-site.future-home .product-explorer { padding-top: 58px; }
.future-site.future-home .product-tab { padding-block: 31px; }
.future-site.future-home .product-panel > p { max-width: 62ch; line-height: 1.85; }
.future-site.future-home .product-highlights { gap: 12px 20px; margin-block: 30px; }
.future-site.future-home .depth-heading { padding-bottom: 80px; }
.future-site.future-home .depth-product-group + .depth-product-group { margin-top: 74px; }
.future-site.future-home .depth-product-row { padding-block: 34px 40px; row-gap: 22px; }
.future-site.future-home .depth-product-body h4 { margin-block: 20px; }
.future-site.future-home .depth-product-body > p { max-width: 62ch; line-height: 1.9; }
.future-site.future-home .depth-feature-tags { margin-top: 24px; gap: 10px; }
.future-site.future-home .depth-journey-steps { gap: 36px; }
.future-site.future-home .depth-journey-end { margin-top: 76px; padding-top: 40px; }
.future-site.future-home .depth-faq > summary { padding-block: 31px; }
.future-site.future-home .depth-faq-answer { padding-bottom: 36px; }
.future-site.future-home .technology-section { padding-block: clamp(82px, 8vw, 116px); }
.future-site.future-home .contact-finale { padding-top: var(--space-section); padding-bottom: 180px; }
.future-site.future-home .finale-links { padding-block: 18px; }
.future-site.future-home .finale-bottom { margin-top: 60px; }

/* Secondary pages share a calmer hero-to-content transition. */
body.future-site.future-page .band.page-hero {
  padding-top: 50px;
  padding-bottom: clamp(76px, 8.6vw, 126px);
}
body.future-site.future-page:is(.page-buy, .page-pricing, .page-demo) .page-hero { padding-bottom: 74px; }
body.future-site.future-page .page-title { margin-block: 28px 34px; }
body.future-site.future-page .page-hero .lead { max-width: 58ch; line-height: 1.75; }
body.future-site.future-page .section-head { margin-bottom: clamp(46px, 6vw, 82px); }
body.future-site.future-page .section-lead { max-width: 64ch; line-height: 1.8; }
body.future-site.future-page .hero__actions { gap: 18px; margin-top: 42px; }
body.future-site.future-page .hero__micro { margin-top: 22px; line-height: 1.8; }
body.future-site.future-page .page-hero__grid { row-gap: 58px; }
body.future-site.future-page .grid:not(.grid--products) { gap: var(--space-grid); }
body.future-site.future-page .card:not(.card--flush):not(.about-reach-card):not(.about-care-card),
body.future-site.future-page :is(.version-option, .quote-card, .download-card, .catalogue-download-card) {
  padding: var(--space-card);
}
body.future-site.future-page .card__head { margin-bottom: 24px; gap: 18px; }
body.future-site.future-page :is(.card__text, .version-option__desc, .product-card__short) { line-height: 1.8; }
body.future-site.future-page .card__foot { margin-top: 28px; padding-top: 24px; }
body.future-site.future-page .product-card { padding-block: 56px; row-gap: 18px; }
body.future-site.future-page .product-card__short { max-width: 64ch; }
body.future-site.future-page .product-card__cta { margin-top: 18px; }
body.future-site.future-page .product-card__modules { gap: 9px; margin-top: 6px; }
body.future-site.future-page .catalogue-download-grid { gap: var(--space-grid); }
body.future-site.future-page .module { padding: 34px 28px; }
body.future-site.future-page .app-feature-list { gap: 28px; }
body.future-site.future-page .anchor-nav { margin-top: 36px; }
body.future-site.future-page .anchor-nav__inner { gap: 12px; }
body.future-site.future-page .prose { max-width: 68ch; }
body.future-site.future-page .prose > * + * { margin-top: 30px; }
body.future-site.future-page .prose h2 { margin-top: 62px; }
body.future-site.future-page .prose :is(p, li) { line-height: 1.85; }
body.future-site.future-page .faq__q { padding-block: 32px; }
body.future-site.future-page .faq__a { padding-bottom: 38px; max-width: 74ch; line-height: 1.85; }
body.future-site.future-page .cta-band__inner { gap: 42px; }
body.future-site.future-page .cta-band__text { line-height: 1.8; max-width: 58ch; }

/* Field groups breathe while labels, validation and form behaviour stay intact. */
body.future-site.future-page :is(.form-card, .feedback-form, .pricing-success) { padding: clamp(34px, 4.7vw, 66px); }
body.future-site.future-page .form-card__head { padding-bottom: 36px; margin-bottom: 44px; }
body.future-site.future-page .form-grid,
body.future-site.future-page .buy-form-section .form-grid { row-gap: 34px; column-gap: 36px; }
body.future-site.future-page .field__label { margin-bottom: 10px; }
body.future-site.future-page :is(.field__hint, .form-note) { line-height: 1.75; }
body.future-site.future-page .buy-form-section { padding-block: 44px; }
body.future-site.future-page .buy-form-section:first-of-type { padding-top: 0; }
body.future-site.future-page .buy-form-section > p { margin-block: 18px 32px; line-height: 1.75; }
body.future-site.future-page .buy-renew-choice { gap: 22px; margin-bottom: 36px; }
body.future-site.future-page .buy-renew-choice__card { padding: 32px; }
body.future-site.future-page .buy-submit-row { padding-top: 22px; gap: 26px; }
body.future-site.future-page .pricing-workspace { gap: 38px; }
body.future-site.future-page .pricing-summary { padding: 36px; }
body.future-site.future-page.page-about .about-contact-layout { gap: 32px; }
body.future-site.future-page.page-about .about-reach-card { padding: 36px; }
body.future-site.future-page.page-about .about-reach-heading { padding-bottom: 32px; }
body.future-site.future-page.page-about .about-team-contacts { margin-top: 32px; row-gap: 34px; }

/* Service-page content margins only: provider grids and artwork are untouched. */
.future-site .pay-hero { padding-top: 48px; padding-bottom: 116px; }
.future-site :is(.pay-providers, .pay-workflows, .pay-start) { padding-block: clamp(86px, 8vw, 116px); }
.future-site .pay-section-heading { margin-bottom: 58px; }
.future-site .pay-hero-actions { margin-top: 38px; gap: 28px; }
.future-site .pay-setup-list > p { padding-block: 35px; }
.future-site .pay-related { padding-block: 58px; }
.future-site .page-contact-end { padding-top: 120px; padding-bottom: 174px; }
.future-site .contact-methods { padding-block: 32px; gap: 40px; }
.future-site .contact-methods > div { gap: 13px; }

@media (max-width: 1000px) {
  body.future-site { --space-section: 116px; --space-card: 32px; --space-grid: 30px; }
  body.future-site.future-page { --band-y: 96px; }
  body.future-site.future-page .product-card { padding-block: 46px; }
  body.future-site.future-page.page-about .about-reach-card { padding: 30px; }
}
@media (max-width: 760px) {
  body.future-site { --space-section: 96px; --space-card: 28px; --space-grid: 26px; }
  body.future-site.future-page { --band-y: 78px; --band-y-tight: 52px; }
  .future-site.future-home .product-universe { padding-bottom: 106px; }
  .future-site.future-home .product-universe .section-intro { padding-bottom: 42px; }
  .future-site.future-home .product-universe .section-intro > p:last-child { position: static; }
  .future-site.future-home .product-explorer { padding-top: 24px; }
  .future-site.future-home .product-tab { padding-block: 24px; }
  .future-site.future-home .product-highlights { gap: 10px 12px; margin-block: 26px; }
  .future-site.future-home .depth-heading { padding-bottom: 50px; }
  .future-site.future-home .depth-product-group + .depth-product-group { margin-top: 46px; }
  .future-site.future-home .depth-product-row { padding-block: 28px 33px; row-gap: 14px; }
  .future-site.future-home .depth-product-body h4 { margin-block: 17px; }
  .future-site.future-home .depth-feature-tags { margin-top: 22px; gap: 8px; }
  .future-site.future-home .depth-journey-steps { gap: 34px; }
  .future-site.future-home .depth-journey-end { margin-top: 46px; padding-top: 32px; }
  .future-site.future-home .depth-faq > summary { padding-block: 27px; }
  .future-site.future-home .depth-faq-answer { padding-bottom: 30px; }
  .future-site.future-home .technology-section { padding-block: 72px; }
  .future-site.future-home .contact-finale { padding-bottom: 152px; }
  .future-site.future-home .finale-bottom { margin-top: 46px; }
  body.future-site.future-page .band.page-hero { padding-top: 36px; padding-bottom: 60px; }
  body.future-site.future-page:is(.page-buy, .page-pricing, .page-demo) .page-hero { padding-bottom: 60px; }
  body.future-site.future-page .page-title { margin-block: 25px 29px; }
  body.future-site.future-page .section-head { margin-bottom: 44px; }
  body.future-site.future-page .hero__actions { gap: 16px; margin-top: 34px; }
  body.future-site.future-page .page-hero__grid { row-gap: 44px; }
  body.future-site.future-page .product-card { padding-block: 40px; row-gap: 15px; }
  body.future-site.future-page .module { padding: 29px 24px; }
  body.future-site.future-page .faq__q { padding-block: 27px; }
  body.future-site.future-page .faq__a { padding-bottom: 32px; }
  body.future-site.future-page :is(.form-card, .feedback-form, .pricing-success) { padding: 30px 26px; }
  body.future-site.future-page .form-card__head { padding-bottom: 30px; margin-bottom: 34px; }
  body.future-site.future-page .form-grid,
  body.future-site.future-page .buy-form-section .form-grid { gap: 28px; }
  body.future-site.future-page .buy-form-section { padding-block: 38px; }
  body.future-site.future-page .buy-form-section > p { margin-block: 16px 28px; }
  body.future-site.future-page .buy-renew-choice__card { padding: 26px; }
  body.future-site.future-page .buy-renew-choice { gap: 18px; margin-bottom: 32px; }
  body.future-site.future-page.page-about .about-contact-layout { gap: 24px; }
  body.future-site.future-page.page-about .about-reach-card { padding: 28px; }
  .future-site .pay-hero { padding-top: 16px; padding-bottom: 78px; }
  .future-site :is(.pay-providers, .pay-workflows, .pay-start) { padding-block: 78px; }
  .future-site .pay-section-heading { margin-bottom: 40px; }
  .future-site .pay-setup-list > p { padding-block: 30px; }
  .future-site .pay-related { padding-block: 44px; }
  .future-site .page-contact-end { padding-top: 88px; padding-bottom: 156px; }
  .future-site .contact-methods { gap: 32px; padding-block: 28px; }
}
@media (max-width: 430px) {
  body.future-site { --space-card: 24px; }
  body.future-site.future-page :is(.form-card, .feedback-form, .pricing-success) { padding: 27px 20px; }
  body.future-site.future-page.page-about .about-reach-card { padding: 25px; }
  body.future-site.future-page .module { padding: 27px 20px; }
}
@media print {
  body.future-site.future-page { --band-y: 36px; --band-y-tight: 24px; }
  body.future-site.future-page .band.page-hero { padding-top: 0; padding-bottom: 36px; }
}

/* Compact rhythm (17 September): about a third less air between sections; what is inside them keeps its own. */
body.future-site { --space-section: clamp(76px, 7.8vw, 112px); }
body.future-site.future-page { --band-y: clamp(62px, 7.4vw, 108px); --band-y-tight: clamp(42px, 4.6vw, 62px); }
.future-site.future-home .product-universe { padding-bottom: var(--space-section); }
.future-site.future-home .technology-section { padding-block: clamp(62px, 6vw, 88px); }
.future-site.future-home .contact-finale { padding-bottom: 140px; }
.future-site.future-home .depth-heading { padding-bottom: 56px; }
.future-site.future-home .depth-product-group + .depth-product-group { margin-top: 54px; }
.future-site.future-home .depth-journey-end { margin-top: 54px; }
body.future-site.future-page .band.page-hero { padding-bottom: clamp(56px, 6.4vw, 92px); }
body.future-site.future-page .section-head { margin-bottom: clamp(34px, 4.4vw, 58px); }
.future-site .pay-hero { padding-bottom: 88px; }
.future-site :is(.pay-providers, .pay-workflows, .pay-start) { padding-block: clamp(62px, 6vw, 88px); }
.future-site .pay-section-heading { margin-bottom: 44px; }
.future-site .page-contact-end { padding-top: 92px; padding-bottom: 136px; }
@media (max-width: 1000px) {
  body.future-site { --space-section: 84px; }
  body.future-site.future-page { --band-y: 74px; }
}
@media (max-width: 760px) {
  body.future-site { --space-section: 70px; }
  body.future-site.future-page { --band-y: 60px; --band-y-tight: 42px; }
  .future-site.future-home .product-universe { padding-bottom: 80px; }
  .future-site.future-home .technology-section { padding-block: 56px; }
  .future-site.future-home .contact-finale { padding-bottom: 124px; }
  .future-site .page-contact-end { padding-top: 70px; padding-bottom: 124px; }
}

/* source: assets/css/modern-current-content.css */
.mobile-catalogue{padding:var(--space-section,120px) 9%;background:var(--f-paper);color:var(--f-ink);scroll-margin-top:100px}
.mobile-catalogue-heading{display:grid;grid-template-columns:1.1fr .9fr;column-gap:10%;align-items:end;margin-bottom:64px}
.mobile-catalogue-heading>.tiny-label{grid-column:1/-1;margin-bottom:24px}
.mobile-catalogue-heading h2{font:700 clamp(44px,5.4vw,78px)/1.05 var(--f-font-display);letter-spacing:-.055em;margin:0}
.mobile-catalogue-heading h2 em{color:var(--f-wine);font-style:normal}
.mobile-catalogue-heading>p:last-child{font-size:16px;line-height:1.9;color:var(--f-muted);max-width:44ch;margin:0}
.mobile-catalogue-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:30px}
.mobile-catalogue-card{display:flex;flex-direction:column;min-width:0;padding:36px;border:1px solid var(--f-rule);border-radius:22px;background:#fcfaf5;scroll-margin-top:110px}
.mobile-catalogue-identity{display:flex;gap:19px;align-items:center;min-width:0}
.mobile-catalogue-identity img{width:60px;height:60px;object-fit:contain;flex:none;border:0;box-shadow:none}
.mobile-catalogue-identity span{font-size:10px;font-weight:700;letter-spacing:.06em;color:var(--f-muted);line-height:1.7}
.mobile-catalogue-identity h3{font:700 clamp(23px,2.1vw,30px)/1.2 var(--f-font-display);letter-spacing:-.04em;margin:9px 0 0;color:var(--f-ink)}
.mobile-catalogue .mobile-catalogue-summary{font-size:15px;line-height:1.85;margin:28px 0;color:var(--f-muted)}
.mobile-catalogue-card>ul{list-style:none;padding:0;margin:0 0 32px}
.mobile-catalogue-card>ul>li{position:relative;padding:13px 0 13px 23px;border-top:1px solid var(--f-rule);font-size:13px;line-height:1.75}
.mobile-catalogue-card>ul>li:before{content:'+';position:absolute;left:0;top:13px;color:var(--f-wine);font-weight:700}
.mobile-catalogue-foot{margin-top:auto;padding-top:25px;border-top:1px solid var(--f-rule)}
.mobile-catalogue-foot>p{font-size:12px;line-height:1.9;color:var(--f-muted);margin:0 0 23px}
.mobile-catalogue-foot>a{display:inline-flex;align-items:center;gap:28px;font-size:13px;font-weight:700;color:var(--f-wine);padding-bottom:7px;border-bottom:1px solid currentColor}
.mobile-catalogue-foot>a>span{font-size:22px;font-weight:400}
html[data-theme=dark] .mobile-catalogue-card{background:#211d25}
.company-cin{display:block;font-size:11px;line-height:1.8;letter-spacing:.045em;font-weight:600;overflow-wrap:anywhere}
.brand-story-top .company-cin{display:inline-block;font-size:10px;letter-spacing:.06em;margin-top:5px}
.contact-dialog .company-cin{display:inline-block}
.company-registration{display:flex;flex-direction:column;gap:9px;margin-top:42px;font-size:12px;line-height:1.7;position:relative;z-index:1}
.company-registration>span{font-size:11px;letter-spacing:.06em}
.finale-bottom .company-cin{margin-top:9px}
.future-site .payment-brand-logo{display:block;width:108px;height:108px;object-fit:contain;border:0;box-shadow:none;border-radius:0;background:none;margin-bottom:26px}
/* Display the original pixels; clip only the baked-in checkerboard outside the badge. */
.future-site img[src*="jpraxc-payments-exact-v2"]{border:0;box-shadow:none;border-radius:0;object-fit:contain;clip-path:inset(1.95% 1.85% 2.75% 1.75% round 15%)}
.future-site .node-payment>img{width:62px;height:62px}
.erp-current-workflows .workflow-detail-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:36px}
.erp-current-workflows .workflow-detail{padding:34px;border-top:2px solid var(--f-wine);background:var(--surface,#fcfaf5);border-radius:0 0 18px 18px}
.workflow-detail>span{font-size:11px;font-weight:700;color:var(--f-wine);letter-spacing:.08em}
.workflow-detail h3{font:700 28px/1.2 var(--f-font-display);letter-spacing:-.04em;color:var(--f-ink);margin:24px 0 20px}
.workflow-detail>p{font-size:15px;line-height:1.85;color:var(--f-muted);margin-bottom:24px}
.workflow-detail>ul{list-style:none;padding:0;margin:0}
.workflow-detail>ul>li{border-top:1px solid var(--f-rule);padding:13px 0;font-size:13px;line-height:1.8;color:var(--f-ink)}
html[data-theme=dark] .erp-current-workflows .workflow-detail{background:#211d25}
@media(max-width:900px){.mobile-catalogue{padding-inline:7%}.mobile-catalogue-grid{gap:24px}.mobile-catalogue-card{padding:28px}.mobile-catalogue-heading{gap:26px;grid-template-columns:1fr}.mobile-catalogue-heading>.tiny-label{margin:0}.mobile-catalogue-heading>p:last-child{max-width:55ch}.mobile-catalogue-identity{align-items:flex-start;gap:14px}.mobile-catalogue-identity img{width:48px;height:48px}}
@media(max-width:640px){.mobile-catalogue{padding-block:92px}.mobile-catalogue-heading{margin-bottom:42px}.mobile-catalogue-heading h2{font-size:47px}.mobile-catalogue-heading>p:last-child{font-size:14px}.mobile-catalogue-grid{grid-template-columns:1fr;gap:26px}.mobile-catalogue-card{padding:28px 24px}.mobile-catalogue .mobile-catalogue-summary{font-size:14px;margin-block:24px}.mobile-catalogue-identity h3{font-size:25px}.mobile-catalogue-identity span{font-size:9px}.mobile-catalogue-foot>p{font-size:12px}.brand-story-top .company-cin{font-size:8px}.company-registration{font-size:10px}.company-registration>span{font-size:10px}.future-site .payment-brand-logo{width:86px;height:86px}.erp-current-workflows .workflow-detail-grid{grid-template-columns:1fr;gap:28px}.erp-current-workflows .workflow-detail{padding:28px 24px}.workflow-detail h3{font-size:25px}.workflow-detail>p{font-size:14px}}

/* source: assets/css/modern-footer.css */
/* Site footer (every page) and the four-column website index dialog. */

body.future-page {
  padding-bottom: 0;
}

.future-site.future-home .contact-finale,
.future-site .page-contact-end {
  padding-bottom: 64px;
}

/* ---- Footer ------------------------------------------------------------- */

.future-site .site-footer {
  padding: 56px 7% calc(118px + env(safe-area-inset-bottom, 0px));
  border-top: 1px solid #916575;
  background: #47182d;
  color: #f2e7d9;
  font-size: 13px;
  line-height: 1.7;
}

.future-site .site-footer__grid {
  display: grid;
  grid-template-columns: 1.7fr 1.1fr 1fr 1fr;
  gap: 40px 48px;
  align-items: start;
}

.future-site .site-footer__brand > a {
  display: inline-flex;
  align-items: center;
  gap: 12px;
  color: inherit;
}

.future-site .site-footer__brand img {
  width: 44px;
  height: 44px;
  object-fit: contain;
  border: 0;
  border-radius: 0;
}

.future-site .site-footer__brand > a > span {
  font-weight: 900;
  font-size: 22px;
  letter-spacing: 1px;
  line-height: 1.15;
}

.future-site .site-footer__brand small {
  display: block;
  font-size: 7.5px;
  letter-spacing: 2px;
  font-weight: 700;
  margin-top: 5px;
  color: #dbc7d0;
}

.future-site .site-footer__brand p {
  max-width: 40ch;
  margin: 20px 0 0;
  color: #dbc7d0;
}

.future-site .site-footer__col {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 8px;
}

.future-site .site-footer__col > span {
  font-size: 10px;
  letter-spacing: 1.8px;
  font-weight: 700;
  text-transform: uppercase;
  color: #dbc7d0;
  margin-bottom: 8px;
}

.future-site .site-footer__col address {
  font-style: normal;
  color: #f2e7d9;
}

.future-site .site-footer__col strong {
  display: block;
  margin-bottom: 6px;
  font-weight: 700;
  letter-spacing: .04em;
}

.future-site .site-footer__col a {
  color: #f2e7d9;
  text-decoration: none;
  text-underline-offset: 4px;
}

.future-site .site-footer__col a:hover,
.future-site .site-footer__col a:focus-visible {
  text-decoration: underline;
}

.future-site .site-footer__col a i {
  font-style: normal;
  margin-left: 4px;
}

.future-site .site-footer__bar {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  gap: 8px 32px;
  margin-top: 44px;
  padding-top: 22px;
  border-top: 1px solid #7a4a5f;
  font-size: 11.5px;
  letter-spacing: .04em;
  color: #dbc7d0;
}

.future-site .site-footer__legal { display: flex; flex-wrap: wrap; gap: 6px 18px; }
.future-site .site-footer__legal a { color: inherit; text-decoration: underline; text-underline-offset: 3px; text-decoration-color: currentColor; }
.future-site .site-footer__legal a:hover { text-decoration-thickness: 2px; }
.future-site .site-footer__bar p {
  margin: 0;
}

html[data-theme=dark] .future-site .site-footer {
  background: #301422;
  border-color: #795362;
}

html[data-theme=dark] .future-site .site-footer__bar {
  border-color: #5f3d4d;
}

@media (max-width: 1000px) {
  .future-site .site-footer__grid {
    grid-template-columns: 1fr 1fr;
    gap: 36px 40px;
  }

  .future-site .site-footer__brand {
    grid-column: 1 / -1;
  }
}

@media (max-width: 760px) {
  .future-site.future-home .contact-finale,
  .future-site .page-contact-end {
    padding-bottom: 48px;
  }

  .future-site .site-footer {
    padding: 44px 7% calc(132px + env(safe-area-inset-bottom, 0px));
    font-size: 12px;
  }

  .future-site .site-footer__bar {
    margin-top: 36px;
    font-size: 10.5px;
  }
}

@media (max-width: 560px) {
  .future-site .site-footer__grid {
    grid-template-columns: 1fr;
    gap: 30px;
  }

  .future-site .site-footer__bar {
    flex-direction: column;
    align-items: flex-start;
  }
}

/* ---- Website index dialog: four columns ---------------------------------- */

.future-site .index-columns {
  grid-template-columns: repeat(4, 1fr);
  gap: 40px 28px;
}

@media (max-width: 760px) {
  .future-site .index-columns {
    grid-template-columns: 1fr 1fr;
    gap: 32px 18px;
  }

  .future-site .index-columns > div:last-child {
    grid-column: auto;
  }
}

@media (max-width: 420px) {
  .future-site .index-columns {
    grid-template-columns: 1fr;
    gap: 28px;
  }
}

/* source: assets/css/modern-complaint.css */
/* JPRAXC public website — the complaint box: the note and button in the
   "Talk to us" popup, the complaint popup it opens, and the shared
   complaint-box form wherever it is drawn. Loaded on every page. */
.contact-bottom{display:grid;grid-template-columns:1fr 1fr;gap:35px;align-items:start;margin:28px 0}
.contact-dialog .contact-bottom address{margin:0}
.contact-complaint-note{display:flex;flex-direction:column;gap:9px;padding-left:35px;border-left:1px solid var(--f-rule,#e5d9d0)}
.contact-complaint-note>span{font-size:9px;letter-spacing:1px;color:#5e5058;margin-bottom:1px}
.contact-complaint-note>b{font-size:18px;font-weight:700;line-height:1.25}
.contact-complaint-note>p{margin:0;font-size:12px;line-height:1.8;color:#5e5058}
.contact-actions{display:flex;flex-wrap:wrap;gap:12px 14px;align-items:center}
.contact-actions .future-button{margin:0}
.future-button--complaint{background:transparent;color:inherit;border:1px solid currentColor}
.complaint-dialog{width:820px}
.complaint-dialog h2{font-size:56px;letter-spacing:-2.5px;font-weight:900;line-height:1;margin:18px 0 12px}
.complaint-dialog .complaint-dialog__lead{font-size:14px;line-height:1.7;color:#5e5058;margin:0 0 24px;max-width:60ch}
.complaint-dialog .complaint-dialog__lead a{text-decoration:underline}
.complaint-box{margin:0}
.complaint-box .form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 16px}
.complaint-box .form-row--full{grid-column:1 / -1}
.complaint-box .field{display:grid;gap:4px}
.complaint-box .field__label{font-size:12px;font-weight:600;color:inherit}
.complaint-box .required-mark{color:#8f1022}
.complaint-box .input{width:100%;box-sizing:border-box;font:inherit;font-size:14px;line-height:1.4;padding:10px 12px;border:1px solid #cbbcad;border-radius:10px;background:#fff;color:inherit;min-height:0}
.complaint-box .input:focus{outline:2px solid #8f1022;outline-offset:1px}
.complaint-box textarea.input{min-height:110px;resize:vertical}
.complaint-box .form-actions{margin-top:16px;display:flex;flex-wrap:wrap;gap:12px;align-items:center}
.complaint-box .form-alert{margin:0 0 12px;padding:10px 12px;border-radius:10px;font-size:14px;line-height:1.5}
.complaint-box .form-alert--error{background:rgba(143,16,34,.08);color:#8f1022;border-left:3px solid #8f1022}
.complaint-box .form-alert[hidden]{display:none}
.complaint-box .form-note{margin:12px 0 0;font-size:12px;line-height:1.5;color:#5e5058}
.complaint-box .form-note a{text-decoration:underline}
.complaint-box .hp-field{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
.complaint-box .legal-accept{grid-column:1 / -1;margin-top:2px}
.complaint-box .legal-accept .checkbox{display:flex;gap:10px;align-items:flex-start;font-size:13px;line-height:1.5;cursor:pointer}
.complaint-box .legal-accept input{width:18px;height:18px;margin:2px 0 0;flex:none;accent-color:#8f1022}
.complaint-box .legal-accept a{white-space:nowrap;text-decoration:underline}
.complaint-box .field__hint{margin:4px 0 0;font-size:12px;color:#5e5058}
.complaint-box .field__error{margin:4px 0 0;font-size:12px;color:#8f1022}
.complaint-dialog .legal-ticket{margin:8px 0 16px;padding:16px 20px;border-radius:14px;background:rgba(143,16,34,.06);border:1px solid rgba(143,16,34,.3)}
.complaint-dialog .legal-ticket small{display:block;font-size:10px;letter-spacing:1px;text-transform:uppercase;color:#5e5058}
.complaint-dialog .legal-ticket strong{display:block;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:40px;letter-spacing:.06em;line-height:1.2;color:#8f1022}
.complaint-dialog [data-complaint-host]>p{font-size:15px;line-height:1.6;margin:0 0 14px;max-width:62ch}
.complaint-dialog [data-complaint-host]>p a{text-decoration:underline}
.complaint-dialog .future-button{margin-top:6px}
@media(max-width:760px){.contact-bottom{grid-template-columns:1fr;gap:20px}.contact-complaint-note{padding-left:0;border-left:0;padding-top:18px;border-top:1px solid var(--f-rule,#e5d9d0)}.complaint-dialog h2{font-size:38px;letter-spacing:-1.5px}.complaint-box .form-grid{grid-template-columns:1fr}}
html[data-theme=dark] .complaint-box .input{background:#241a1e;border-color:#5a4550;color:#f3e9ec}
html[data-theme=dark] .complaint-dialog .legal-ticket{background:rgba(255,255,255,.05)}
html[data-theme=dark] .complaint-dialog .legal-ticket strong{color:#f0c4cc}
html[data-theme=dark] .contact-complaint-note{border-color:#5a4550}

/* the five legal names inside an acceptance sentence read in the brand colour, apart from the words around them */
.legal-link,.legal-accept a,.checkbox a.legal-link{color:#8f1022;font-weight:600;text-decoration:underline;text-underline-offset:2px;text-decoration-thickness:1px}
.legal-link:hover{color:#5f0a17}
html[data-theme=dark] .legal-link,html[data-theme=dark] .legal-accept a{color:#f0c4cc}

/* popup layout, second pass: the divider dead-centre, both columns in the same type, each button centred under its own column, the social cards on one line */
.contact-bottom{grid-template-columns:1fr 1fr;gap:0;margin:28px 0 24px}
.contact-dialog .contact-bottom address{padding-right:35px;font-size:12px;line-height:1.8}
.contact-complaint-note{padding-left:35px;gap:0;font-size:12px;line-height:1.8;color:#5e5058}
.contact-complaint-note>span{font-size:10px;letter-spacing:1px;font-weight:700;color:#4e3742;margin:0}
.contact-complaint-note>b{font-size:12px;line-height:1.8;font-weight:700;color:#4e3742}
.contact-complaint-note>p{font-size:12px;line-height:1.8}
.contact-actions{display:grid;grid-template-columns:1fr 1fr;gap:0;align-items:start}
.contact-actions>*{justify-self:center}
.contact-actions .future-button{margin:0}
.future-button--complaint{background:var(--f-wine);color:#fff!important;border:0}
.contact-dialog .future-social>div{flex-wrap:nowrap;gap:8px}
.contact-dialog .future-social a{flex:1 1 0;min-width:0;justify-content:center;padding:9px 8px;gap:6px;white-space:nowrap}
.contact-dialog .future-social a>*:not(img):not(b){display:none}
@media(max-width:760px){.contact-actions{grid-template-columns:1fr;gap:12px}.contact-dialog .future-social>div{flex-wrap:wrap}.contact-dialog .future-social a{flex:0 1 auto}}
html[data-theme=dark] .contact-complaint-note>span,html[data-theme=dark] .contact-complaint-note>b{color:#f3e9ec}

/* source: assets/css/modern-context-cards.css */
body.future-site.future-page .context-card {
  gap: 18px;
  min-width: 0;
}

body.future-site.future-page .context-card > .outcome-list {
  margin: 0;
  padding: 0;
  gap: 14px;
}

body.future-site.future-page .context-card__details {
  display: grid;
  gap: 18px;
  margin-top: 18px;
  padding-top: 30px;
  border-top: 1px solid var(--line);
}

.future-page .context-card__details > .eyebrow {
  margin: 0;
  color: var(--f-wine);
  font-size: 10px;
  line-height: 1.7;
  letter-spacing: .12em;
}

.future-page .context-card__heading {
  margin: 0;
  color: var(--text);
  font: 700 clamp(23px, 2.1vw, 29px)/1.18 var(--f-font-display);
  letter-spacing: -.025em;
}

.future-page .context-card__steps {
  display: grid;
  gap: 23px;
  margin: 6px 0 0;
  padding: 0;
  list-style: none;
}

.future-page .context-card__steps > li {
  display: grid;
  grid-template-columns: 32px minmax(0, 1fr);
  gap: 14px;
  align-items: start;
}

.future-page .context-card__step-number {
  display: grid;
  place-items: center;
  width: 32px;
  height: 32px;
  border: 1px solid var(--line);
  border-radius: 50%;
  color: var(--f-wine);
  background: var(--surface-2);
  font: 700 11px/1 var(--f-font-display);
}

.future-page .context-card__steps strong {
  display: block;
  padding-top: 3px;
  color: var(--text);
  font-size: 15px;
  line-height: 1.5;
}

.future-page .context-card__steps p {
  margin: 7px 0 0;
  color: var(--text-soft);
  font-size: 14px;
  line-height: 1.8;
}

.future-page .context-card__note {
  margin: 2px 0 0;
  padding: 16px 18px;
  border-radius: 10px;
  background: var(--surface-2);
  color: var(--text-muted);
  font-size: 12px;
  line-height: 1.8;
}

body.future-site.future-page .context-card > .card__foot {
  margin-top: 10px;
  padding-top: 22px;
  border-top: 1px solid var(--line);
}

body.future-site.future-page .context-card--migration .context-card__details {
  margin-top: 22px;
}

@media (max-width: 760px) {
  body.future-site.future-page .context-card__details {
    padding-top: 24px;
  }

  .future-page .context-card__steps > li {
    grid-template-columns: 28px minmax(0, 1fr);
    gap: 12px;
  }

  .future-page .context-card__step-number {
    width: 28px;
    height: 28px;
    font-size: 10px;
  }

  .future-page .context-card__steps strong {
    padding-top: 1px;
    font-size: 14px;
  }

  .future-page .context-card__steps p {
    font-size: 13px;
  }

  .future-page .context-card__note {
    padding: 14px;
  }
}

/* source: assets/css/modern-demo-portals.css */
.future-site .dock-portals {
  box-shadow: inset 0 0 0 1px #9e899357;
}

body.future-page.page-demo-portals .page-hero .lead {
  max-width: 52ch;
}

body.future-page.page-demo-portals .demo-portal-grid {
  align-items: stretch;
}

body.future-page.page-demo-portals .demo-portal-card {
  gap: 24px;
  scroll-margin-top: 130px;
}

.demo-portal-card__head {
  display: flex;
  align-items: center;
  gap: 22px;
}

.demo-portal-card__head > img {
  width: 64px;
  height: 64px;
  flex: 0 0 64px;
  object-fit: contain;
}

.demo-portal-card__head > div {
  min-width: 0;
}

.demo-portal-card__badge {
  display: inline-block;
  margin-bottom: 12px;
  color: var(--f-wine);
  font-size: 10px;
  font-weight: 700;
  line-height: 1.7;
  letter-spacing: .07em;
  text-transform: uppercase;
}

.demo-portal-card__actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 18px 24px;
  margin-top: auto;
  padding-top: 10px;
}

.demo-portal-card__actions .link-arrow {
  font-size: 12px;
}

.future-page .demo-portal-card__note {
  color: var(--text-muted);
  font-size: 11px;
  line-height: 1.7;
}

@media (max-width: 900px) {
  .future-site .explore-dock .dock-portals {
    display: none;
  }
}

@media (max-width: 760px) {
  .demo-portal-card__head {
    gap: 16px;
  }

  .demo-portal-card__head > img {
    width: 50px;
    height: 50px;
    flex-basis: 50px;
  }

}

/* source: assets/css/modern-concept-art.css */
/* Concept art in place of the old mock-interface graphics.
   - Product heroes (Hospital, Billing & GST, Business) reuse the home
     explorer's .erp-concept scenes, sized like the School hero figure.
   - The story rows of every suite use the School flow figure.
   - The deployments page reuses the home page's deployment-art scene. */

/* ---- Product hero ------------------------------------------------------- */

body.future-page .product-concept-hero .erp-concept {
  min-height: 550px;
  margin: 0;
  border-radius: 24px;
  box-shadow: none;
}

@media (max-width: 1000px) {
  body.future-page .product-concept-hero .erp-concept {
    min-height: 470px;
  }
}

@media (max-width: 760px) {
  body.future-page .product-concept-hero .erp-concept {
    min-height: 420px;
    border-radius: 18px;
  }
}

/* ---- Deployments: Offline / Local vs Cloud ------------------------------- */

body.future-page .deploy-concept {
  position: relative;
  height: 520px;
  margin: 0;
  overflow: hidden;
  border-radius: 20px;
  background: #e8decd;
  color: #521329;
}

body.future-page .deploy-concept--cloud {
  background: #521329;
  color: #f4e7d5;
}

body.future-page .deploy-concept__badge {
  position: absolute;
  z-index: 4;
  top: 24px;
  left: 28px;
  font-size: 11px;
  font-weight: 700;
  letter-spacing: .18em;
  text-transform: uppercase;
}

body.future-page .deploy-concept .deployment-art {
  position: absolute;
  inset: 54px 12% 70px;
  margin: 0;
}

/* The home scene is drawn for a taller stage; scale the stack to this one. */
body.future-page .deploy-concept .server-stack {
  top: 12%;
  left: 19%;
  width: 62%;
}

body.future-page .deploy-concept .server-stack > div {
  height: 52px;
  margin: 12px 0;
  padding: 14px 18px;
}

body.future-page .deploy-concept .server-stack > div:first-child {
  height: 122px;
}

body.future-page .deploy-concept .server-stack > div:first-child > span {
  font-size: 44px;
  letter-spacing: -5px;
}

body.future-page .deploy-concept .connection-ticket {
  left: 5%;
  bottom: -4px;
  color: #3f2632;
}

body.future-page .deploy-concept--cloud .world-ring {
  border-color: #a36f78;
}

body.future-page .deploy-concept--cloud .ring-b {
  border-color: #c39aa3;
}

body.future-page .deploy-concept--cloud .world-dot {
  background: #e4c09b;
  box-shadow: 0 0 0 7px #e4c09b14;
}

body.future-page .deploy-concept.is-local .server-stack {
  transform: rotateX(0) rotateY(0) rotateZ(0);
}

body.future-page .deploy-concept.is-local .world-ring {
  border-style: dashed;
  opacity: .45;
}

body.future-page .deploy-concept figcaption {
  position: absolute;
  z-index: 4;
  left: 28px;
  right: 28px;
  bottom: 22px;
  font-size: 12px;
  letter-spacing: .04em;
  opacity: .85;
}

html[data-theme=dark] body.future-page .deploy-concept {
  background: #2c2229;
  color: #f0e4dc;
}

html[data-theme=dark] body.future-page .deploy-concept--cloud {
  background: #3a1628;
}

html[data-theme=dark] body.future-page .deploy-concept .connection-ticket {
  color: #eee2d8;
}

@media (max-width: 760px) {
  body.future-page .deploy-concept {
    height: 440px;
  }

  body.future-page .deploy-concept .deployment-art {
    inset: 50px 8% 66px;
  }

  body.future-page .deploy-concept .server-stack > div {
    height: 44px;
    padding: 12px 15px;
  }

  body.future-page .deploy-concept .server-stack > div:first-child {
    height: 100px;
  }

  body.future-page .deploy-concept .server-stack > div:first-child > span {
    font-size: 36px;
  }

  body.future-page .deploy-concept figcaption {
    font-size: 11px;
  }
}

/* source: assets/css/modern-module-art.css */
/* School ERP module illustrations (includes/school-modules.php).
   Line art in currentColor with two tints, on the paper page and the dark one.
   The drawings replace the abstract capability shapes on the School page and
   give every one of the 28 module cards a picture of its own. */

.module-art { display: block; width: 100%; height: auto; overflow: visible; }
.module-art .ma-plate { fill: rgba(255, 255, 255, .42); stroke: none; }
.module-art .ma-tan { fill: #c69b68; }
.module-art .ma-paper { fill: #f8f2e8; }
.module-art text { font-family: var(--ff-display); }

/* ---- the 28 module cards -------------------------------------------------- */
body.future-page .module-grid--illustrated { grid-template-columns: repeat(4, minmax(0, 1fr)); }
body.future-page .module--illustrated { padding: 0; gap: 0; min-height: 0; }
body.future-page .module--illustrated .module__art { padding: 22px 26px 6px; color: #521329; background: #e8decd; transition: background var(--t) var(--ease); }
body.future-page .module--illustrated .module__art--1 { background: #e0e5d4; }
body.future-page .module--illustrated .module__art--2 { background: #ead9d5; }
body.future-page .module--illustrated .module__meta { display: flex; align-items: baseline; justify-content: space-between; gap: 12px; padding: 20px 22px 0; }
body.future-page .module--illustrated .module__num { font-size: 12px; }
body.future-page .module--illustrated .module__group { font-size: 10px; font-weight: 700; letter-spacing: .16em; text-transform: uppercase; color: #714523; white-space: nowrap; }
body.future-page .module--illustrated .module__name { padding: 10px 22px 0; font-size: 18px; }
body.future-page .module--illustrated .module__text { margin: 0; padding: 8px 22px 24px; font-size: 14.5px; line-height: 1.6; color: #57494f; }
body.future-page .module--illustrated:hover .module__art { background: #f0e6d3; }
body.future-page .module--illustrated:hover .module__art--1 { background: #e7ecda; }
body.future-page .module--illustrated:hover .module__art--2 { background: #f1e1dc; }

/* ---- the 14 capability cards: the drawing where the shapes were ----------- */
body.future-page .capability-art--drawn .module-art { position: absolute; width: 58%; max-width: 300px; right: 7%; top: 50%; transform: translateY(-50%); }
body.future-page .capability-art--drawn .module-art .ma-plate { fill: rgba(255, 255, 255, .34); }

/* ---- widths ---------------------------------------------------------------- */
@media (max-width: 1100px) { body.future-page .module-grid--illustrated { grid-template-columns: repeat(3, minmax(0, 1fr)); } }
@media (max-width: 820px)  { body.future-page .module-grid--illustrated { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 520px)  {
  body.future-page .module-grid--illustrated { grid-template-columns: 1fr; }
  body.future-page .module--illustrated .module__art { padding: 18px 22px 4px; }
  body.future-page .capability-art--drawn .module-art { width: 52%; right: 6%; }
}

/* ---- dark ------------------------------------------------------------------ */
html[data-theme="dark"] body.future-page .module-art .ma-plate { fill: rgba(255, 255, 255, .05); }
html[data-theme="dark"] body.future-page .module-art .ma-tan { fill: #7a5840; }
html[data-theme="dark"] body.future-page .module-art .ma-paper { fill: #4a3c47; }
html[data-theme="dark"] body.future-page .module--illustrated .module__art { color: #e4c09b; background: #342934; }
html[data-theme="dark"] body.future-page .module--illustrated .module__art--1 { background: #2a342d; }
html[data-theme="dark"] body.future-page .module--illustrated .module__art--2 { background: #3a2a30; }
html[data-theme="dark"] body.future-page .module--illustrated:hover .module__art { background: #3c2f3c; }
html[data-theme="dark"] body.future-page .module--illustrated:hover .module__art--1 { background: #313c34; }
html[data-theme="dark"] body.future-page .module--illustrated:hover .module__art--2 { background: #433037; }
html[data-theme="dark"] body.future-page .module--illustrated .module__group { color: #d9b790; }
html[data-theme="dark"] body.future-page .module--illustrated .module__text { color: #c9bfc5; }
html[data-theme="dark"] body.future-page .capability-art--drawn .module-art .ma-plate { fill: rgba(255, 255, 255, .06); }

/* ---- capability feature lines, folded onto the module cards ---------------- */
body.future-page .module--illustrated .module__features { display: grid; gap: 7px; margin: 0; padding: 4px 22px 26px; list-style: none; }
body.future-page .module--illustrated .module__features li { position: relative; padding-left: 18px; font-size: 13.5px; line-height: 1.5; color: #57494f; }
body.future-page .module--illustrated .module__features li::before { content: ""; position: absolute; left: 0; top: .5em; width: 7px; height: 7px; border-radius: 50%; background: #c69b68; }
body.future-page .module--illustrated .module__text:has(+ .module__features) { padding-bottom: 8px; }
html[data-theme="dark"] body.future-page .module--illustrated .module__features li { color: #c9bfc5; }
html[data-theme="dark"] body.future-page .module--illustrated .module__features li::before { background: #7a5840; }

/* source: assets/css/modern-visual-system.css */
/* Shared visual language for every public page.
   Product/provider logos retain their own colours; the surrounding UI uses
   JPRAXC wine, warm paper, ink and amber throughout. */
:root {
  --jpx-paper: #f4f1e8;
  --jpx-paper-raised: #fffdf8;
  --jpx-paper-soft: #eee7dc;
  --jpx-wine: #521329;
  --jpx-wine-deep: #2b111d;
  --jpx-wine-surface: #521329; /* wine as a surface: stays wine in dark mode, where --jpx-wine becomes the tan accent */
  --jpx-on-amber: #2b111d;     /* text on an amber surface, both themes */
  --jpx-amber: #c39a62;
  --jpx-amber-soft: #ead7bb;
  --jpx-ink: #211b20;
  --jpx-muted: #57494f;
  --jpx-line: rgba(45, 32, 39, .17);
  --jpx-line-strong: rgba(82, 19, 41, .34);
  --jpx-radius: 20px;
  --jpx-radius-small: 11px;
  --jpx-shadow: 0 18px 48px rgba(54, 28, 38, .09);
}

body.future-site {
  --f-paper: var(--jpx-paper);
  --f-ink: var(--jpx-ink);
  --f-wine: var(--jpx-wine);
  --f-gold: var(--jpx-amber);
  --f-muted: var(--jpx-muted);
  --f-rule: var(--jpx-line);
  accent-color: var(--jpx-wine);
}

body.future-page {
  --paper: var(--jpx-paper);
  --cream: var(--jpx-paper-soft);
  --bg: var(--jpx-paper);
  --white: var(--jpx-paper-raised);
  --ink: var(--jpx-ink);
  --muted: var(--jpx-muted);
  --wine-950: var(--jpx-wine-deep);
  --wine-900: #38101f;
  --wine-800: var(--jpx-wine);
  --wine-700: var(--jpx-wine);
  --orange: var(--jpx-amber);
  --gold: var(--jpx-amber);
  --accent: var(--jpx-amber);
  --accent-ink: var(--jpx-wine);
  --surface: var(--jpx-paper-raised);
  --surface-2: var(--jpx-paper-soft);
  --elevated: var(--jpx-paper-raised);
  --text: var(--jpx-ink);
  --text-muted: var(--jpx-muted);
  --line: var(--jpx-line);
  --line-strong: var(--jpx-line-strong);
  --focus: var(--jpx-wine);
  --focus-offset: var(--jpx-paper);
}

/* Page and section surfaces use a predictable paper / cream / wine rhythm. */
body.future-page .band,
body.future-page .depth-section,
body.future-page .mobile-catalogue { background-color: var(--jpx-paper); }
body.future-page :is(.band--cream, .band--soft) { background-color: var(--jpx-paper-soft); }
body.future-page :is(.band--wine, .band--deep),
.future-home :is(.product-universe, .contact-finale),
.future-page .page-contact-end { background-color: var(--jpx-wine-surface); }

/* One card construction across catalogues, forms, contact blocks and modules. */
body.future-page :is(
  .card,
  .bento__cell,
  .download-card,
  .catalogue-download-card,
  .mobile-catalogue-card,
  .about-build__card,
  .about-fact,
  .pricing-card,
  .plan-card,
  .partner-card,
  .support-card,
  .step-card,
  .form-card
) {
  border-color: var(--jpx-line);
  background-color: var(--jpx-paper-raised);
  box-shadow: none;
}
body.future-page :is(.card, .bento__cell, .download-card, .catalogue-download-card, .mobile-catalogue-card) {
  border-radius: var(--jpx-radius);
}
body.future-page :is(.card, .bento__cell, .download-card, .catalogue-download-card, .mobile-catalogue-card):hover {
  border-color: var(--jpx-line-strong);
  box-shadow: var(--jpx-shadow);
}

/* Buttons and compact actions all carry the same silhouette and interaction. */
.future-site :is(.future-button, .button, .contact-trigger, .dock-demo),
body.future-page :is(.anchor-nav__link, .about-team-actions > a) {
  border-radius: 999px;
}
.future-site :is(.future-button, .button-primary) {
  background-color: var(--jpx-wine);
  color: #fff8ec !important;
  border-color: var(--jpx-wine);
}
.future-site :is(.future-button, .button-primary):hover {
  background-color: #6c203c;
  border-color: #6c203c;
}
body.future-page :is(.button-outline, .button-outline-light, .button-light, .anchor-nav__link) {
  color: var(--jpx-wine);
  background-color: transparent;
  border-color: var(--jpx-line-strong);
}
body.future-page :is(.button-outline, .button-outline-light, .button-light, .anchor-nav__link):hover {
  color: var(--jpx-wine);
  background-color: var(--jpx-amber-soft);
  border-color: var(--jpx-wine);
}
.future-site :is(.band--wine:not(.page-hero), .band--deep) :is(.button-primary, .button-light),
.future-site :is(.page-contact-end, .contact-finale, .product-universe) .future-button {
  color: #2b111d !important;
  background-color: #eddbc0;
  border-color: #eddbc0;
}
.future-site :is(.band--wine:not(.page-hero), .band--deep) :is(.button-primary, .button-light):hover,
.future-site :is(.page-contact-end, .contact-finale, .product-universe) .future-button:hover {
  color: #21151c !important;
  background-color: #fff1d9;
  border-color: #fff1d9;
}
.future-site :is(.band--wine:not(.page-hero), .band--deep) :is(.button-outline, .button-outline-light) {
  color: #fff8ec;
  background-color: transparent;
  border-color: rgba(255, 248, 236, .5);
}
.future-site :is(.band--wine:not(.page-hero), .band--deep) :is(.button-outline, .button-outline-light):hover {
  color: #2b111d;
  background-color: #fff1d9;
  border-color: #fff1d9;
}
.future-site .dock-index { color: #fff8ec; }
.future-site :is(.text-link, .link-arrow) { text-decoration-color: var(--jpx-amber); }

/* A single icon treatment: warm tile, wine drawing, amber detail. */
body.future-page :is(.card__icon-tile, .download-card__icon, .module__icon, .step__icon, .feature-icon, .capability-icon),
.future-home .integration-service__mark {
  color: var(--jpx-wine);
  background: linear-gradient(145deg, #f7eee2, #eadac8);
  border: 1px solid rgba(82, 19, 41, .14);
  border-radius: 14px;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .72);
}
body.future-page :is(.card__icon-tile, .download-card__icon, .module__icon, .step__icon, .feature-icon, .capability-icon) :is(svg, path, rect, circle, line, polyline),
.future-home .integration-service__mark :is(svg, path, rect, circle, line, polyline) {
  stroke: currentColor;
}
body.future-page :is(.card__icon-tile, .download-card__icon, .module__icon, .step__icon, .feature-icon, .capability-icon) svg,
.future-home .integration-service__mark svg { fill: none; }
body.future-page :is(.product-card__logo, .mobile-catalogue-logo, .about-technology__item img),
.future-home :is(.product-identity img, .connection-node > img) {
  border: 0;
  background: transparent;
  box-shadow: none;
}

/* CSS-native illustrations share the same frame, canvas and object palette. */
.future-site :is(
  .erp-concept,
  .school-concept,
  .school-flow-art,
  .capability-art,
  .about-art,
  .about-map,
  .browser-object,
  .software-window,
  .workflow-window
) {
  border-color: var(--jpx-line-strong);
  box-shadow: var(--jpx-shadow);
}
.future-site :is(
  .erp-concept--care,
  .erp-concept--billing,
  .erp-concept--business,
  .school-concept,
  .school-flow-art,
  .capability-art,
  .about-art--web,
  .about-map
) { background-color: #e9e0d4; }
.future-site :is(
  .erp-care-patient,
  .erp-bill-stock,
  .erp-business-block--teams,
  .school-heart,
  .mobile-art-core
) { --illustration-accent: var(--jpx-amber); }
.future-site :is(.erp-care-patient, .erp-bill-stock, .erp-business-block--teams) {
  background-color: var(--jpx-wine-surface);
  color: #fff8ec;
}
.future-site :is(
  .erp-care-point,
  .erp-bill-sheet--front,
  .erp-bill-account,
  .erp-business-anchor,
  .erp-business-ribbon,
  .school-moment,
  .mobile-art-card,
  .inside-card,
  .connection-node
) {
  background-color: #fffaf0;
  border-color: rgba(82, 19, 41, .22);
}
.future-site :is(.erp-business-block--projects, .mobile-art-core, .browser-object) {
  background-color: var(--jpx-amber);
  color: var(--jpx-on-amber);
}
.future-site .erp-business-block--finance { background-color: #efe2ce; color: var(--jpx-on-amber); }
.future-home :is(.deployment-scene, .mobile-scene) { background-color: #e9e0d4; }
.future-home :is(.world-ring, .mobile-path, .connection-line, .case-orbit) { border-color: rgba(82, 19, 41, .24); }
.future-home :is(.connection-line, .mobile-path)::before,
.future-home :is(.connection-line, .mobile-path)::after { background-color: rgba(82, 19, 41, .22); }

/* Forms and popups use the same controls as the public pages. */
.future-site dialog {
  border-color: var(--jpx-line-strong);
  background-color: var(--jpx-paper);
}
.future-site :is(input, select, textarea) { accent-color: var(--jpx-wine); }
body.future-page :is(.input, .select, .textarea),
.future-site dialog :is(input:not([type=checkbox]):not([type=radio]), select, textarea) {
  border-color: rgba(82, 19, 41, .24);
  background-color: var(--jpx-paper-raised);
}
body.future-page :is(.input, .select, .textarea):focus,
.future-site dialog :is(input:not([type=checkbox]):not([type=radio]), select, textarea):focus {
  border-color: var(--jpx-wine);
  box-shadow: 0 0 0 3px rgba(82, 19, 41, .1);
}

html[data-theme=dark] body.future-site {
  --jpx-paper: #211e26;
  --jpx-paper-raised: #29242c;
  --jpx-paper-soft: #332b33;
  --jpx-wine: #e4c09b;
  --jpx-wine-deep: #f2ddc5;
  --jpx-wine-surface: #321522;
  --jpx-amber: #d7ad79;
  --jpx-amber-soft: #3c3032;
  --jpx-ink: #f3eee5;
  --jpx-muted: #bcb1bc;
  --jpx-line: rgba(235, 220, 230, .18);
  --jpx-line-strong: rgba(228, 192, 155, .44);
  --jpx-shadow: 0 20px 52px rgba(0, 0, 0, .22);
}
html[data-theme=dark] .future-site :is(.future-button, .button-primary) {
  color: #291622 !important;
  background-color: #e4c09b;
  border-color: #e4c09b;
}
html[data-theme=dark] .future-site :is(.future-button, .button-primary):hover { background-color: #f3d7b8; border-color: #f3d7b8; }
html[data-theme=dark] body.future-page :is(.button-outline, .button-outline-light, .button-light, .anchor-nav__link) { color: #edceb0; }
html[data-theme=dark] body.future-page :is(.card__icon-tile, .download-card__icon, .module__icon, .step__icon, .feature-icon, .capability-icon),
html[data-theme=dark] .future-home .integration-service__mark {
  color: #e4c09b;
  background: #332831;
  border-color: #5a4753;
  box-shadow: none;
}
html[data-theme=dark] .future-site :is(.erp-concept--care, .erp-concept--billing, .erp-concept--business, .school-concept, .school-flow-art, .capability-art, .about-art--web, .about-map),
html[data-theme=dark] .future-home :is(.deployment-scene, .mobile-scene) { background-color: #2d252d; }
html[data-theme=dark] .future-site :is(.erp-care-point, .erp-bill-sheet--front, .erp-bill-account, .erp-business-anchor, .erp-business-ribbon, .school-moment, .mobile-art-card, .inside-card, .connection-node) {
  background-color: #f0e5d6;
  color: #2d1c26;
}

@media (prefers-reduced-motion: reduce) {
  .future-site :is(.card, .button, .future-button, .connection-node, .integration-service) { transition: none !important; }
}

/* source: assets/css/modern-blog.css */
/* Blog stylesheet (index and article routes). Recovered in 3.9.38 from the shipped
   public.css bundle, where the r57-r59 blog rounds had appended it after the
   visual-system section without a source file of its own. */

/* Blog: editorial pages use the public site's paper, wine and amber system. */
.page-blog .page-contact-end { margin-top: 0; }
.blog-index-hero,
.blog-article-hero {
  position: relative;
  overflow: hidden;
  color: var(--jpx-ink);
  background: var(--jpx-paper);
}
.blog-index-hero::before,
.blog-article-hero::before {
  position: absolute;
  inset: 0;
  content: "";
  pointer-events: none;
  background: radial-gradient(circle at 76% 48%, rgba(82,19,41,.06), transparent 33%);
}
.blog-index-hero__grid {
  position: relative;
  z-index: 1;
  min-height: min(760px, 78vh);
  display: grid;
  grid-template-columns: minmax(0, 1.1fr) minmax(360px, .9fr);
  align-items: center;
  gap: clamp(50px, 8vw, 130px);
  padding-top: clamp(135px, 15vw, 190px);
  padding-bottom: clamp(100px, 11vw, 150px);
}
.blog-index-hero h1,
.blog-article-hero h1 {
  margin: 20px 0 24px;
  max-width: 950px;
  color: var(--jpx-ink);
  font-size: clamp(58px, 6.4vw, 96px);
  line-height: .94;
  letter-spacing: -.065em;
}
.blog-index-hero .lead { max-width: 720px; color: var(--jpx-muted); font-size: clamp(17px, 1.5vw, 23px); line-height: 1.6; }
body.future-page .blog-index-hero :is(.breadcrumb__item, .eyebrow--light),
body.future-page .blog-article-hero .breadcrumb__item { color: var(--jpx-muted); }
body.future-page .blog-index-hero .eyebrow--light { color: var(--jpx-wine); }
body.future-page .blog-index-hero .breadcrumb__item.is-current,
body.future-page .blog-article-hero .breadcrumb__item.is-current { color: var(--jpx-ink); }
body.future-page .blog-article-hero .blog-category--light { color: var(--jpx-wine); border-color: var(--jpx-line-strong); }
.blog-orbit {
  position: relative;
  width: min(520px, 40vw);
  min-height: 450px;
  justify-self: center;
  display: grid;
  place-items: center;
  overflow: hidden;
  border: 1px solid var(--jpx-line-strong);
  border-radius: 28px;
  background: linear-gradient(145deg, #4a1027, #67183a);
  box-shadow: var(--jpx-shadow);
}
.blog-orbit::before,
.blog-orbit::after { position: absolute; content: ""; border: 1px solid rgba(255,248,236,.16); border-radius: 50%; }
.blog-orbit::before { inset: 12%; }
.blog-orbit::after { inset: 29%; }
.blog-orbit__core {
  position: relative;
  z-index: 2;
  width: 31%;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border-radius: 30%;
  color: #3a1020;
  background: #f4e6d1;
  box-shadow: 0 28px 70px rgba(20,0,8,.35);
  font: 800 clamp(22px, 3vw, 42px)/1 var(--f-font-display);
}
.blog-orbit > i { position: absolute; inset: 50% auto auto 50%; width: 50%; height: 1px; transform-origin: left; background: rgba(255,248,236,.2); }
.blog-orbit > i:nth-of-type(1) { transform: rotate(25deg); }
.blog-orbit > i:nth-of-type(2) { transform: rotate(145deg); }
.blog-orbit > i:nth-of-type(3) { transform: rotate(255deg); }
.blog-orbit > b {
  position: absolute;
  width: 68px;
  aspect-ratio: 1;
  display: grid;
  place-items: center;
  border: 1px solid rgba(255,248,236,.32);
  border-radius: 20px;
  color: #fff8ec;
  background: rgba(28,8,17,.34);
  backdrop-filter: blur(12px);
  font: 800 16px/1 var(--f-font-display);
}
.blog-orbit > b:nth-of-type(1) { top: 1%; left: 30%; }
.blog-orbit > b:nth-of-type(2) { top: 31%; right: -4%; }
.blog-orbit > b:nth-of-type(3) { bottom: 4%; right: 23%; }
.blog-orbit > b:nth-of-type(4) { bottom: 22%; left: -4%; }

.blog-feature { padding-block: clamp(80px, 9vw, 130px); }
.blog-feature-card {
  display: grid;
  grid-template-columns: minmax(340px, .9fr) minmax(0, 1.1fr);
  min-height: 480px;
  margin-top: 24px;
  overflow: hidden;
  border: 1px solid var(--jpx-line-strong);
  border-radius: 30px;
  color: var(--jpx-ink);
  background: var(--jpx-paper-raised);
  text-decoration: none;
  box-shadow: var(--jpx-shadow);
}
.blog-feature-card__copy { display: flex; flex-direction: column; justify-content: center; padding: clamp(36px, 6vw, 86px); }
.blog-feature-card__copy strong { display: block; margin: 18px 0; max-width: 800px; font-size: clamp(36px, 4vw, 64px); line-height: .98; letter-spacing: -.045em; }
.blog-feature-card__copy em { max-width: 690px; color: var(--jpx-muted); font: inherit; font-size: 18px; line-height: 1.7; }
.blog-meta { color: var(--jpx-wine); font-size: 11px; font-weight: 800; letter-spacing: .12em; text-transform: uppercase; }
.blog-read { margin-top: 32px; color: var(--jpx-wine); font-weight: 800; }
.blog-read i { margin-left: 8px; color: #7a4414; font-style: normal; }

.blog-art {
  position: relative;
  min-height: 280px;
  overflow: hidden;
  color: #fff8ec;
  background: #4f122b;
  isolation: isolate;
}
.blog-art::before,
.blog-art::after { position: absolute; content: ""; border-radius: 50%; }
.blog-art::before { width: 78%; aspect-ratio: 1; right: -24%; top: -20%; border: 34px solid rgba(224,173,109,.3); }
.blog-art::after { width: 42%; aspect-ratio: 1; left: -12%; bottom: -20%; background: rgba(224,173,109,.18); }
.blog-art > i { position: absolute; z-index: 1; width: 44%; height: 14%; border: 1px solid rgba(255,248,236,.3); border-radius: 999px; transform: rotate(-24deg); background: rgba(255,255,255,.04); }
.blog-art > i:nth-child(1) { top: 25%; left: 17%; }
.blog-art > i:nth-child(2) { top: 46%; left: 30%; width: 52%; }
.blog-art > i:nth-child(3) { top: 68%; left: 12%; width: 37%; }
.blog-art > b { position: absolute; z-index: 2; top: 28px; left: 30px; color: #fff8ec; font: 800 50px/1 var(--f-font-display); letter-spacing: -.05em; text-shadow: 0 2px 18px rgba(20,0,8,.3); }
.blog-art--whatsapp { background: #173f38; }
.blog-art--mail { background: #203757; }
.blog-art--deployment { background: #4d2a20; }
.blog-art--fees,
.blog-art--payments { background: #2e3a29; }
.blog-art--admission { background: #533122; }
.blog-art--communication { background: #372b57; }
.blog-art--migration { background: #17414d; }
.blog-art--support { background: #421b2d; }
.blog-art--checklist { background: #342e27; }

.blog-library { padding-block: clamp(85px, 10vw, 150px); }
.blog-grid { display: grid; grid-template-columns: repeat(2, minmax(0,1fr)); gap: 24px; }
.blog-card { overflow: hidden; border: 1px solid var(--jpx-line); border-radius: 24px; background: var(--jpx-paper-raised); transition: transform .25s ease, box-shadow .25s ease, border-color .25s ease; }
.blog-card:hover { transform: translateY(-5px); border-color: var(--jpx-line-strong); box-shadow: var(--jpx-shadow); }
.blog-card__art { display: block; min-height: 220px; }
.blog-card__body { padding: 30px; }
.blog-category { display: inline-flex; align-items: center; min-height: 29px; padding: 0 12px; border: 1px solid var(--jpx-line-strong); border-radius: 999px; color: var(--jpx-wine); font-size: 10px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.blog-category--light { color: #f7dec0; border-color: rgba(255,248,236,.35); }
.blog-card h2 { margin: 18px 0 12px; font-size: clamp(25px, 2.4vw, 38px); line-height: 1.04; letter-spacing: -.035em; }
.blog-card h2 a { color: inherit; text-decoration: none; }
.blog-card p { min-height: 82px; margin: 0; color: var(--jpx-muted); font-size: 15px; line-height: 1.7; }
.blog-card__body > div { display: flex; justify-content: space-between; gap: 18px; margin-top: 26px; padding-top: 18px; border-top: 1px solid var(--jpx-line); color: var(--jpx-muted); font-size: 12px; }
.blog-card__body > div a { color: var(--jpx-wine); font-weight: 800; text-decoration: none; }
.blog-card__body i { color: #7a4414; font-style: normal; }
.blog-index-cta { color: #fff8ec; background: #5b1632; }
.blog-index-cta .container { min-height: 420px; display: flex; align-items: center; justify-content: space-between; gap: 60px; }
.blog-index-cta .container > div > span { color: #efc68f; font-size: 11px; font-weight: 850; letter-spacing: .13em; }
.blog-index-cta h2 { max-width: 740px; margin: 14px 0; color: #fff8ec; font-size: clamp(42px, 5vw, 76px); line-height: .98; letter-spacing: -.05em; }
.blog-index-cta p { max-width: 690px; color: rgba(255,248,236,.72); font-size: 17px; line-height: 1.7; }
.blog-index-cta .future-button { flex: none; }
.blog-index-cta .future-button span { color: inherit; font: inherit; letter-spacing: inherit; }

.blog-article-hero { padding-top: clamp(130px, 14vw, 180px); padding-bottom: clamp(85px, 9vw, 130px); }
.blog-article-hero .container { position: relative; z-index: 1; }
.blog-article-hero__grid { display: grid; grid-template-columns: minmax(0, 1.25fr) minmax(300px, .75fr); gap: clamp(50px, 8vw, 120px); align-items: center; margin-top: 60px; }
.blog-article-hero h1 { margin-top: 24px; font-size: clamp(50px, 5.3vw, 78px); }
.blog-article-hero__grid > div:first-child > p { max-width: 830px; color: var(--jpx-muted); font-size: clamp(17px, 1.45vw, 22px); line-height: 1.65; }
.blog-byline { display: flex; flex-wrap: wrap; gap: 10px 25px; margin-top: 32px; color: var(--jpx-muted); font-size: 12px; }
.blog-byline span:first-child { color: var(--jpx-wine); font-weight: 800; }
.blog-article-hero__art { min-height: 420px; border: 1px solid rgba(255,248,236,.25); border-radius: 28px; box-shadow: 0 36px 90px rgba(18,0,8,.28); }
.blog-article-hero__art > b { color: #fff8ec; font-size: 42px; }
.blog-article-hero__art > em { position: absolute; z-index: 2; right: 25px; bottom: 25px; max-width: 160px; color: rgba(255,248,236,.76); font-size: 10px; font-style: normal; font-weight: 800; letter-spacing: .14em; text-align: right; }

.blog-article-layout { display: grid; grid-template-columns: 230px minmax(0, 820px); justify-content: center; gap: clamp(45px, 7vw, 100px); padding-top: clamp(75px, 9vw, 125px); padding-bottom: clamp(100px, 12vw, 170px); }
.blog-toc { position: sticky; top: 120px; align-self: start; display: grid; gap: 12px; padding: 22px; border: 1px solid var(--jpx-line); border-radius: 18px; background: var(--jpx-paper-soft); }
.blog-toc > span { margin-bottom: 5px; color: var(--jpx-wine); font-size: 10px; font-weight: 850; letter-spacing: .12em; }
.blog-toc a { color: var(--jpx-muted); font-size: 12px; line-height: 1.45; text-decoration: none; }
.blog-toc a:hover,
.blog-toc a:focus-visible { color: var(--jpx-wine); }
.blog-prose { min-width: 0; }
.blog-takeaways { margin-bottom: 70px; padding: 30px; border: 1px solid var(--jpx-line-strong); border-radius: 22px; background: var(--jpx-paper-soft); }
.blog-takeaways > span,
.blog-jpraxc > span { color: var(--jpx-wine); font-size: 10px; font-weight: 850; letter-spacing: .13em; }
.blog-takeaways ul { display: grid; gap: 13px; margin: 20px 0 0; padding: 0; list-style: none; }
.blog-takeaways li { position: relative; padding-left: 28px; color: var(--jpx-ink); font-size: 16px; line-height: 1.55; }
.blog-takeaways li::before { position: absolute; left: 0; top: .55em; width: 10px; height: 10px; content: ""; border-radius: 50%; background: var(--jpx-amber); box-shadow: 0 0 0 5px rgba(207,142,61,.13); }
.blog-section { margin-top: 75px; scroll-margin-top: 120px; }
.blog-section > h2,
.blog-jpraxc h2,
.blog-sources h2 { margin: 0 0 24px; color: var(--jpx-ink); font-size: clamp(34px, 4vw, 54px); line-height: 1.02; letter-spacing: -.045em; }
.blog-section > p,
.blog-jpraxc > p,
.blog-sources > p { margin: 0 0 22px; color: var(--jpx-muted); font-size: 18px; line-height: 1.84; }
.blog-checklist { display: grid; gap: 13px; margin: 30px 0; padding: 0; list-style: none; }
.blog-checklist li { position: relative; padding: 18px 20px 18px 52px; border: 1px solid var(--jpx-line); border-radius: 15px; color: var(--jpx-ink); background: var(--jpx-paper-raised); font-size: 15px; line-height: 1.55; }
.blog-checklist li::before { position: absolute; left: 19px; top: 19px; content: "✓"; color: var(--jpx-wine); font-weight: 900; }
.blog-steps { display: grid; gap: 16px; margin: 32px 0; padding: 0; list-style: none; }
.blog-steps li { display: grid; grid-template-columns: 48px 1fr; gap: 18px; padding: 22px; border: 1px solid var(--jpx-line); border-radius: 18px; background: var(--jpx-paper-raised); }
.blog-steps li > span { width: 45px; height: 45px; display: grid; place-items: center; border-radius: 14px; color: #fff8ec; background: #5b1632; font-size: 11px; font-weight: 850; }
.blog-steps h3 { margin: 1px 0 8px; color: var(--jpx-ink); font-size: 19px; }
.blog-steps p { margin: 0; color: var(--jpx-muted); font-size: 15px; line-height: 1.65; }
.blog-comparison { display: grid; gap: 15px; margin-top: 30px; }
.blog-comparison article { padding: 25px; border: 1px solid var(--jpx-line); border-radius: 18px; background: var(--jpx-paper-raised); }
.blog-comparison article > span { color: var(--jpx-wine); font-size: 10px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.blog-comparison h3 { margin: 10px 0; color: var(--jpx-ink); font-size: 23px; letter-spacing: -.02em; }
.blog-comparison p { margin: 0; color: var(--jpx-muted); font-size: 15px; line-height: 1.66; }
.blog-comparison a { display: inline-flex; gap: 8px; margin-top: 16px; color: var(--jpx-wine); font-size: 12px; font-weight: 800; text-decoration: none; }
.blog-comparison i { color: #7a4414; font-style: normal; }
.blog-source-note { display: block; margin-top: 16px; color: var(--jpx-muted); font-size: 11px; line-height: 1.5; }
.blog-jpraxc { margin-top: 85px; padding: clamp(35px, 5vw, 60px); scroll-margin-top: 120px; border-radius: 26px; color: #fff8ec; background: linear-gradient(145deg, #4e122a, #661d3b); }
.blog-jpraxc > span { color: #efc68f; }
.blog-jpraxc h2 { margin-top: 16px; color: #fff8ec; }
.blog-jpraxc > p { color: rgba(255,248,236,.78); }
.blog-jpraxc > div { display: flex; flex-wrap: wrap; align-items: center; gap: 22px; margin-top: 30px; }
.future-site .blog-jpraxc .button-primary { color: #2b111d !important; background: #eddbc0 !important; border-color: #eddbc0 !important; }
.future-site .blog-jpraxc .button-primary:hover { color: #2b111d !important; background: #f7ead6 !important; border-color: #f7ead6 !important; }
.blog-jpraxc .link-arrow { color: #fff8ec; }
.blog-sources { margin-top: 70px; padding-top: 35px; border-top: 1px solid var(--jpx-line); }
.blog-sources h2 { font-size: 28px; }
.blog-sources > p { font-size: 14px; }
.blog-sources ul { display: flex; flex-wrap: wrap; gap: 9px; margin: 20px 0 0; padding: 0; list-style: none; }
.blog-sources li > span { display: inline-flex; padding: 9px 13px; border: 1px solid var(--jpx-line); border-radius: 999px; color: var(--jpx-ink); background: var(--jpx-paper-soft); font-size: 11px; font-weight: 750; }
.blog-share { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 50px; padding-top: 25px; border-top: 1px solid var(--jpx-line); }
.blog-share a { padding: 10px 14px; border: 1px solid var(--jpx-line); border-radius: 999px; color: var(--jpx-wine); font-size: 12px; font-weight: 750; text-decoration: none; }
.blog-related { padding-block: clamp(80px, 9vw, 125px); }
.blog-related__grid { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 18px; }
.blog-related__grid > a { min-height: 230px; display: flex; flex-direction: column; padding: 28px; border: 1px solid var(--jpx-line); border-radius: 20px; color: var(--jpx-ink); background: var(--jpx-paper-raised); text-decoration: none; }
.blog-related__grid span { color: var(--jpx-wine); font-size: 10px; font-weight: 850; letter-spacing: .1em; text-transform: uppercase; }
.blog-related__grid strong { margin: 18px 0; font-size: 25px; line-height: 1.08; letter-spacing: -.03em; }
.blog-related__grid em { margin-top: auto; color: var(--jpx-muted); font-size: 12px; font-style: normal; }
.blog-related__grid i { color: #7a4414; font-style: normal; }
.blog-missing { min-height: 74vh; display: grid; align-items: center; padding: 150px 0 100px; }
.blog-missing h1 { margin: 15px 0; font-size: clamp(48px, 7vw, 90px); letter-spacing: -.055em; }
.blog-missing p { margin-bottom: 30px; color: var(--jpx-muted); font-size: 18px; }

html[data-theme=dark] .blog-feature-card,
html[data-theme=dark] .blog-card,
html[data-theme=dark] .blog-checklist li,
html[data-theme=dark] .blog-steps li,
html[data-theme=dark] .blog-comparison article,
html[data-theme=dark] .blog-related__grid > a { background: var(--jpx-paper-raised); }
html[data-theme=dark] .blog-jpraxc { background: linear-gradient(145deg, #382331, #4a293a); }
html[data-theme=dark] .page-blog :is(.blog-read i, .blog-card__body i, .blog-comparison i, .blog-related__grid i) { color: #d7ad79; }

@media (max-width: 1050px) {
  .blog-index-hero__grid,
  .blog-article-hero__grid { grid-template-columns: 1fr; }
  .blog-orbit { width: min(520px, 78vw); }
  .blog-article-hero__art { min-height: 320px; }
  .blog-article-layout { grid-template-columns: minmax(0, 820px); }
  .blog-toc { position: static; grid-template-columns: repeat(2, minmax(0,1fr)); }
  .blog-toc > span { grid-column: 1 / -1; }
}
@media (max-width: 760px) {
  .blog-index-hero__grid { min-height: auto; grid-template-columns: 1fr; padding-top: 130px; padding-bottom: 85px; }
  .blog-index-hero h1 { font-size: clamp(50px, 15vw, 74px); }
  .blog-orbit { width: min(330px, 86vw); min-height: 320px; }
  .blog-orbit > b { width: 52px; border-radius: 15px; font-size: 12px; }
  .blog-feature-card { grid-template-columns: 1fr; min-height: 0; border-radius: 22px; }
  .blog-feature-card__art { min-height: 270px; }
  .blog-feature-card__copy { padding: 32px 25px; }
  .blog-grid { grid-template-columns: 1fr; }
  .blog-card p { min-height: 0; }
  .blog-index-cta .container { min-height: 520px; align-items: flex-start; justify-content: center; flex-direction: column; }
  .blog-article-hero { padding-top: 120px; }
  .blog-article-hero__grid { margin-top: 40px; }
  .blog-article-hero h1 { font-size: clamp(46px, 13vw, 68px); }
  .blog-article-hero__art { min-height: 270px; }
  .blog-article-layout { padding-top: 65px; }
  .blog-toc { grid-template-columns: 1fr; }
  .blog-prose :is(.blog-section > p, .blog-jpraxc > p) { font-size: 17px; }
  .blog-related__grid { grid-template-columns: 1fr; }
}

/* source: assets/css/modern-identity.css */
/* Brand identity (3.9.38). The homepage's one h1 names the brand and what it
   makes; "Unbox a better way to work." stays the display line under it as a
   paragraph (.hero-slogan carries every size the h1 used to have, in
   modern.css and modern-theme.css). The brand section says whose brand
   JPRAXC is and lists the catalogue by its availability label
   (includes/brand-identity.php). */

/* ---- Homepage hero ------------------------------------------------------- */
.future-site .hero-copy .hero-slogan { font-family: var(--f-font-display); font-weight: 700; }
.future-site .hero-copy .hero-title { margin: 0; max-width: 600px; font-size: clamp(17px, 1.55vw, 23px); line-height: 1.3; letter-spacing: -.015em; color: inherit; text-wrap: balance; }
.future-site .hero-copy .hero-title .mini-line { margin-right: 12px; vertical-align: .32em; }
@media (max-height: 860px) { .future-site .hero-copy .hero-title { font-size: clamp(16px, 1.35vw, 20px); } }
/* Phones: the two-line h1 takes the room the one-line label had, so the hero
   starts a little higher, the slogan steps down a size and the product case
   sits a little lower (47% before) — the description still ends above it. */
@media (max-width: 760px) {
  .future-site .hero-copy { top: 134px; }
  .future-site .case-scene { top: 51%; }
  .future-site .hero-copy .hero-title { font-size: 16px; max-width: 300px; }
  .future-site .hero-copy .hero-title .mini-line { width: 16px; margin-right: 8px; }
  .future-site .hero-copy .hero-slogan { font-size: 52px; margin: 10px 0 12px; }
}
@media (max-width: 370px) { .future-site .hero-copy .hero-slogan { font-size: 48px; } }

/* ---- Homepage brand section ("Built here. Connected everywhere.") ---------- */
.brand-story-main > p strong { color: #faefdf; font-weight: 700; }
.brand-story-main > p { max-width: 560px; }
.brand-offer { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 26px 40px; margin: 36px 0 0; max-width: 1000px; }
.brand-offer__group { border-top: 1px solid #976178; padding-top: 16px; }
.brand-offer dt { font-size: 9px; font-weight: 700; letter-spacing: 1.6px; text-transform: uppercase; color: #f0cd95; margin-bottom: 11px; }
.brand-offer__group--soon dt { color: #e3cbd5; }
.brand-offer dd { margin: 0 0 7px; font-size: 14px; line-height: 1.5; color: #ead2dc; }
.brand-offer dd a { color: #faefdf; border-bottom: 1px solid #b9937b; padding-bottom: 1px; }
.brand-offer dd a:hover, .brand-offer dd a:focus-visible { color: #f0cd95; border-bottom-color: #f0cd95; }
.brand-offer dd span { color: #e3cbd5; font-size: 12px; }
@media (max-width: 760px) { .brand-offer { grid-template-columns: 1fr; gap: 18px; margin-top: 26px; } .brand-offer dt { font-size: 8px; } .brand-offer dd { font-size: 13px; } .brand-story-main > p { max-width: none; } }

/* source: assets/css/modern-contrast.css */
/* Text contrast corrections (3.9.38), measured from rendered computed colours
   on every route in both themes (harness/contrast-audit.cjs). Loaded last in
   the public.css bundle so each rule wins on cascade order alone; the
   selectors repeat the ones the audit reported. WCAG AA: 4.5:1 for text,
   3:1 for large text (>= 24px, or >= 18.66px bold). The palette is unchanged:
   cream, wine, brown and tan, one step darker or lighter where a pair failed. */

/* ---- Both themes ---------------------------------------------------------- */

/* The tan "mail" card on the Hospital / Billing / Business on-the-move scenes
   kept its pale text after the shared visual system made every card cream. */
.future-site .mobile-connection-art :is(.mail-art, .staff-art) { color: #2f3025; }
.future-site .mobile-connection-art :is(.mail-art, .staff-art) p { color: #3a3b30; }

/* Server rack captions on the deployment art: the lower shelves are cream. */
.future-site .server-stack > div:not(:first-child) > span { color: #4a3946; }

/* Numbered steps inside context cards sat wine-on-wine. */
.future-site .context-card__steps .context-card__step-number { color: #fff8ec; background: #521329; }

/* "Registered office" over the address on the Book-a-demo card. */
body.future-page .footer-address b { color: #714523; }

/* Index-dialog column headings and the demo dialog's fine print. */
.future-site .index-columns > div > span { color: #6e5854; }
.future-site .demo-dialog__products small, .future-site .demo-dialog__actions p { color: #63555c; }

/* Decorative full stop after the HELLO, WORLD wordmark (amber on cream). */
body.future-page .about-browser__hero b span { color: #a86a12; }

/* Home hero: the coordinate line, scene labels, counter and edition dash
   (light theme only; the dark theme keeps its own values from modern-theme.css). */
html:not([data-theme=dark]) .future-site.future-home .hero-coordinates span { color: #5f5559; }
html:not([data-theme=dark]) .future-site.future-home .scene-label { color: #5f5052; }
html:not([data-theme=dark]) .future-site.future-home .hero-counter { color: #655a60; }
html:not([data-theme=dark]) .future-site.future-home .case-edition b { color: #6f625a; }
html:not([data-theme=dark]) .future-site :is(#demo-dialog-legal-accept-hint, .demo-dialog .legal-accept p) { color: #655a60; }
html[data-theme=dark] .future-site.future-home .case-edition b { color: #b3a49c; }
html[data-theme=dark] .future-site :is(#demo-dialog-legal-accept-hint, .demo-dialog .legal-accept p) { color: #b5a7ae; }

/* Product cards: the two orange accent inks (billing; the connected services)
   sat on their own pale tints below 4.5:1 at tag size. */
body.future-page .accent-billing { --pa-ink: #a33e00; }
body.future-page :is(.accent-connectx, .accent-whatsapp, .accent-sms, .accent-payment_gateway, .accent-mail) { --pa-ink: #9a3d00; --orange-ink: #9a3d00; }

/* ---- Dark theme ----------------------------------------------------------- */

/* Home: the product stage, contact finale and the page-end contact sit on the
   wine surface token now; the tabs and controls on it keep their cream ink. */
html[data-theme=dark] .future-site.future-home .product-universe { color: #f4f1e8; }
html[data-theme=dark] .future-site.future-home .product-tab { color: #cdbcc6; }
html[data-theme=dark] .future-site.future-home .product-tab > span { color: #d9b790; }
html[data-theme=dark] .future-site.future-home .product-tab.is-active { color: #f4e4c9; }
html[data-theme=dark] .future-site.future-home .all-products-link { color: #e4c09b !important; }
html[data-theme=dark] body.future-site.future-home .product-universe.is-pinned .stage-counter,
html[data-theme=dark] body.future-site.future-home .product-universe.is-swipe .product-slide-controls p { color: #c9b7c2; }

/* Home: the school concept card and the ERP concept canvases are dark in the
   dark theme; their captions, kicker and heart read in cream and tan. */
html[data-theme=dark] .future-site .school-concept { color: #f2e6dc; }
html[data-theme=dark] .future-site .school-concept :is(.concept-kicker, .concept-end) { color: #e4c09b; }
html[data-theme=dark] .future-site .school-heart > span { color: #e4c09b; }
html[data-theme=dark] .future-site .erp-art-kicker,
html[data-theme=dark] .future-site .erp-art-caption { color: #cdb8ba; border-top-color: #cdb8ba55; }
html[data-theme=dark] .future-site .erp-bill-stock > span { color: #f1dfcd; }

/* Home: "Better together" labels, arrows and numerals on the dark boards. */
html[data-theme=dark] .future-site .connections > .section-intro > p.tiny-label,
html[data-theme=dark] .future-site .integration-proof-head span { color: #d0b39b; }
html[data-theme=dark] .future-site .integration-service small { color: #d0b39b; }
html[data-theme=dark] .future-site .integration-service > i { color: #d9b790; }
html[data-theme=dark] .future-site .together-flows b { color: #d9b790; }

/* Home: the on-the-move label. */
html[data-theme=dark] .future-site .mobile-copy .tiny-label { color: #b7c8aa; }

/* Home: the "." of the HELLO, WORLD wordmark on the tan browser object. */
html[data-theme=dark] .future-site .browser-object > b > span { color: #521329; }

/* Dialogs: fine print, complaint notes and the required-field marks. */
html[data-theme=dark] .future-site :is(.contact-complaint-note > p, .complaint-dialog .complaint-dialog__lead, .complaint-dialog .complaint-dialog__lead a, .complaint-box .form-note, .complaint-box .form-note a, .complaint-box .legal-accept p, .legal-accept .checkbox > span) { color: #c1b3ba; }
html[data-theme=dark] .future-site :is(.demo-dialog__products small, .demo-dialog__actions p, .demo-dialog .legal-accept p) { color: #b5a7ae; }
html[data-theme=dark] .future-site :is(.complaint-box .required-mark, .demo-dialog__field > span b, .field__label .required-mark, .checkbox .required-mark) { color: #f29aa8; }

/* Book a demo: card links on the wine band (the light rule outranked the dark one). */
html[data-theme=dark] body.future-page .band--wine .card .card__text,
html[data-theme=dark] body.future-page .band--wine .card .card__text a { color: #bcb1bc; }
html[data-theme=dark] body.future-page .band--wine .card .card__text a { color: #e4c09b; }

/* Book a demo: "Registered office" on the dark card (the brown of the light
   theme measured 2.02:1 on #211e26). */
html[data-theme=dark] body.future-page .footer-address b { color: #e4c09b; }

/* Partner application: the app aside stays cream in the dark theme. */
html[data-theme=dark] body.future-page .apply-app .eyebrow { color: #8f1027; }

/* About: art kicker on the dark web card, principle numerals and small print. */
html[data-theme=dark] body.future-page .about-art--web .about-art__kicker { color: #dcb89a; }
html[data-theme=dark] body.future-page.page-about .about-principle__top i { color: #b9a394; }
html[data-theme=dark] body.future-page.page-about .about-principle > small { color: #c2a999; }
