/* Fonts are loaded from the document head with display=swap. */

:root{
  --paper:#d7e7fb;
  --paper-light:#edf5ff;
  --canvas:#f4f9ff;
  --ink:#34516f;
  --ink-strong:#12395f;
  --muted:#55708c;
  --line:#c9d9ea;
  --accent:#075db7;
  --white:#fff;
  --shadow:0 22px 70px rgba(47,54,64,.12);
}

*{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:90px}
body{margin:0;background:var(--paper);color:var(--ink);font-family:"DM Sans",sans-serif;font-weight:300;-webkit-font-smoothing:antialiased}
button,input{font:inherit}
button{cursor:pointer}

.site-shell{
  width:min(1440px,calc(100% - 56px));
  min-height:calc(100svh - 56px);
  margin:28px auto;
  overflow:hidden;
  border-radius:15px;
  background:var(--white);
  box-shadow:var(--shadow);
}

.topbar{
  position:absolute;
  z-index:10;
  top:28px;
  left:max(4.6%,calc((100vw - 1440px)/2 + 4.6%));
  right:max(4.6%,calc((100vw - 1440px)/2 + 4.6%));
  padding:24px 0;
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
}
.brand{display:flex;align-items:center;gap:19px;color:var(--ink-strong);text-decoration:none}
.brand>span{font:400 24px/1 "Manrope",sans-serif;letter-spacing:.25em}
.brand i{width:1px;height:37px;background:#cdd2d9}
.brand small{font-size:8px;line-height:1.5;letter-spacing:.31em;color:var(--muted)}
.top-actions{display:flex;gap:26px;align-items:center}
.languages{display:flex;gap:17px}
.lang{border:0;background:transparent;padding:6px 0;font:400 11px "DM Sans",sans-serif;color:#777d85}
.lang.active{color:var(--ink-strong);border-bottom:1px solid var(--ink-strong)}
.login{padding:10px 22px;border:1px solid #c0c5cc;border-radius:30px;color:var(--ink);text-decoration:none;font-size:11px;background:rgba(255,255,255,.72);transition:.2s ease}
.login:hover{background:#fff;border-color:#aeb4bd}

.hero{
  position:relative;
  min-height:calc(100svh - 56px);
  display:grid;
  grid-template-columns:38% 20% 42%;
  align-items:center;
  padding:118px 4.6% 48px;
  overflow:hidden;
  background:linear-gradient(108deg,#f9fbff 0%,var(--canvas) 56%,#e8edf3 100%);
}
.hero-copy{position:relative;z-index:4;max-width:520px}
.eyebrow span{font-size:45px;line-height:1;color:#c4cbd4;font-weight:300}
.hero h1{margin:11px 0 23px;font:300 clamp(60px,6.1vw,88px)/.9 "Manrope",sans-serif;letter-spacing:-.058em;color:var(--ink-strong)}
.hero h1 span{color:#9b968b}
.hero-copy>p{margin:0;font-size:15px;line-height:1.65;color:#656d76;letter-spacing:.025em}
.primary{display:inline-flex;align-items:center;gap:28px;margin-top:27px;padding:14px 19px 14px 25px;border:0;border-radius:30px;background:var(--accent);color:#fff;text-decoration:none;font-size:12px;transition:transform .2s ease,box-shadow .2s ease}
.primary:hover{transform:translateY(-1px);box-shadow:0 9px 24px rgba(83,78,69,.18)}
.primary b{font-size:21px;font-weight:300;line-height:1}
.scroll-note{display:flex;align-items:center;gap:17px;margin-top:35px}
.scroll-note span{width:28px;height:1px;background:#8f949c}
.scroll-note small,.flow-label,.continues small{font-size:9px;letter-spacing:.34em;color:#69717b}

.flow{position:relative;z-index:4;height:560px}
.flow-label{text-align:center;line-height:1.8;margin-bottom:27px}
.flow-line{height:465px;margin-left:50%;border-left:1px solid #7f858d;display:flex;flex-direction:column;justify-content:space-around}
.node{position:relative;margin-left:35px;padding:9px 0;border:0;background:transparent;text-align:left;color:var(--ink)}
.node b{position:absolute;left:-43px;top:14px;width:12px;height:12px;border:1px solid #aab0b8;border-radius:50%;background:#fff;transition:.22s ease}
.node:hover b,.node:focus-visible b{background:var(--accent);border-color:var(--accent);transform:scale(1.22)}
.node strong{display:block;font-size:13px;letter-spacing:.18em;font-weight:400}
.node small{display:block;margin-top:4px;color:#69717b;font-size:11px}
.continues{text-align:center;margin-top:5px}
.continues span{display:block;width:11px;height:11px;margin:0 auto 14px;border:1px solid #777e87;border-radius:50%}

.hero-image{position:absolute;inset:0 0 0 58%;overflow:hidden;background:#e2e7ed}
.hero-image img{width:100%;height:100%;display:block;object-fit:cover;object-position:center;opacity:.84;filter:saturate(.62) contrast(.96)}
.image-overlay{position:absolute;inset:0;background:linear-gradient(90deg,var(--canvas) 0%,rgba(241,245,252,.78) 16%,rgba(241,245,252,.30) 50%,rgba(241,245,252,.04) 78%,transparent 100%)}
.side-note{position:absolute;right:8%;top:27%;display:flex;flex-direction:column;gap:9px;color:#626971;font-size:10px;letter-spacing:.32em}
.side-note i{width:35px;height:1px;background:#7e858e;margin-top:14px}
.launch-card{position:absolute;right:4%;bottom:6%;min-width:220px;padding:20px 24px;border-radius:8px;background:rgba(255,255,255,.96);box-shadow:0 13px 35px rgba(40,45,50,.10)}
.launch-card small{display:block;color:#69717b;letter-spacing:.34em;font-size:8px}
.launch-card strong{display:block;margin:8px 0 5px;font:400 25px/1 "Manrope",sans-serif;color:var(--ink-strong)}
.launch-card em{font-style:normal;color:#8b9097;letter-spacing:.28em;font-size:8px}

.module-modal{position:fixed;inset:0;z-index:80;display:none;align-items:center;justify-content:center;padding:20px;background:rgba(35,39,45,.25);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}
.module-modal.open{display:flex}
.modal-open{overflow:hidden}
.modal-box{position:relative;width:min(520px,100%);padding:48px;border:1px solid #dfe3e9;border-radius:12px;background:#fbfcff;box-shadow:0 25px 80px rgba(30,35,40,.15)}
.modal-box>small{font-size:9px;letter-spacing:.32em;color:var(--muted)}
.modal-box h2{margin:12px 0;font:300 48px/1 "Manrope",sans-serif;letter-spacing:-.04em;color:var(--ink-strong)}
.modal-box p{margin:0;color:#656d76;font-size:14px;line-height:1.8}
.close{position:absolute;right:18px;top:13px;border:0;background:transparent;color:#69717b;font-size:28px}

.consultant-trigger{position:fixed;right:24px;bottom:24px;z-index:100;display:flex;align-items:center;gap:9px;padding:11px 16px;border:1px solid #d7dce3;border-radius:25px;background:rgba(255,255,255,.96);color:#4c504d;box-shadow:0 9px 30px rgba(45,50,58,.14);font:400 12px "DM Sans",sans-serif}
.consultant-dot{width:8px;height:8px;border-radius:50%;background:var(--accent)}
.consultant{position:fixed;right:24px;bottom:72px;z-index:101;width:370px;height:530px;display:none;flex-direction:column;overflow:hidden;border:1px solid #dce1e7;border-radius:14px;background:rgba(255,255,255,.98);box-shadow:0 20px 65px rgba(45,50,58,.18)}
.consultant.open{display:flex}
.consultant header{display:flex;justify-content:space-between;align-items:flex-start;padding:20px;border-bottom:1px solid #e5e8ec}
.consultant header small{display:block;color:#69717b;font-size:8px;letter-spacing:.28em}
.consultant header strong{display:block;margin-top:5px;font:400 16px "Manrope",sans-serif;color:var(--ink-strong)}
.consultant header button{border:0;background:transparent;color:#69717b;font-size:25px}
.chat{flex:1;overflow:auto;padding:18px;background:#f5f7fa}
.chat-message{max-width:83%;margin:7px 0;padding:11px 13px;border-radius:10px;font-size:12px;line-height:1.55;white-space:pre-wrap}
.chat-message.user{margin-left:auto;color:#fff;background:var(--accent);border-bottom-right-radius:3px}
.chat-message.assistant{border:1px solid #e0e4e9;background:#fff;color:#4d524e;border-bottom-left-radius:3px}
.chat-message.typing{color:#a0a6ae}
.consultant form{display:flex;padding:12px;border-top:1px solid #e2e6eb;background:#fff}
.consultant form input{flex:1;min-width:0;border:0;outline:0;padding:11px 12px;border-radius:7px 0 0 7px;background:#f3f5f8;font:13px "DM Sans",sans-serif}
.consultant form button{width:46px;border:0;border-radius:0 7px 7px 0;background:var(--accent);color:#fff;font-size:18px}

/* Tablet: preserve the composition while giving the flow more room. */
@media (max-width:1100px) and (min-width:601px){
  .site-shell{width:min(1440px,calc(100% - 32px));margin:16px auto;min-height:calc(100svh - 32px)}
  .topbar{top:16px;left:5%;right:5%;padding:22px 0}
  .hero{min-height:calc(100svh - 32px);grid-template-columns:42% 23% 35%;padding:110px 5% 38px}
  .hero h1{font-size:clamp(55px,7vw,76px)}
  .hero-image{inset:0 0 0 61%}
  .flow-line{margin-left:43%}
  .node{margin-left:29px}.node b{left:-37px}
}

/* Mobile: deliberately art-directed as a vertical sequence, not a squeezed desktop. */
@media (max-width:600px){
  html{scroll-padding-top:78px}
  body{background:var(--paper-light)}
  .site-shell{width:100%;margin:0;min-height:100svh;border-radius:0;background:var(--canvas);box-shadow:none}
  .topbar{position:fixed;top:0;left:0;right:0;height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 18px 0;align-items:center;background:rgba(241,245,252,.94);border-bottom:1px solid rgba(160,168,179,.22);box-shadow:0 6px 22px rgba(40,48,58,.05);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}
  .brand{gap:10px}.brand>span{font-size:20px;letter-spacing:.22em}.brand i{height:29px}.brand small{display:none}
  .top-actions{gap:11px}.languages{gap:10px}.lang{font-size:10px}.login{padding:8px 13px;font-size:10px;background:rgba(255,255,255,.82)}
  .hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:calc(88px + env(safe-area-inset-top)) 18px 36px;background:linear-gradient(155deg,#f9fbff 0%,#f1f5fc 72%,#e9edf3 100%)}
  .hero-copy{order:1;padding:0 2px;max-width:none}.eyebrow span{font-size:19px;margin-bottom:12px;color:#b7bec8}
  .hero h1{font-size:clamp(48px,14vw,62px);line-height:.89;letter-spacing:-.065em;max-width:340px;margin:0 0 16px}
  .hero-copy>p{font-size:13px;line-height:1.5;max-width:300px;margin:0;color:#656d76}
  .primary{margin-top:21px;padding:13px 18px 13px 21px;gap:25px;font-size:11px}.primary b{font-size:20px}
  .scroll-note{display:none}
  .hero-image{order:2;position:relative;inset:auto;width:100%;height:225px;margin:28px 0 0;border-radius:14px;background:#dfe4ea;box-shadow:0 12px 28px rgba(50,57,68,.09)}
  .hero-image img{object-position:58% center;opacity:.82;filter:saturate(.58) contrast(.97)}
  .image-overlay{background:linear-gradient(180deg,rgba(241,245,252,.05) 0%,rgba(241,245,252,.04) 48%,rgba(241,245,252,.72) 100%)}
  .side-note{display:none}
  .launch-card{left:10px;right:10px;bottom:10px;min-width:0;padding:12px 14px;border-radius:10px;display:grid;grid-template-columns:58px 1fr auto;align-items:center;gap:8px;background:rgba(255,255,255,.95)}
  .launch-card small{font-size:7px}.launch-card strong{margin:0;font-size:18px;line-height:1.1;text-align:center}.launch-card em{font-size:6.5px;text-align:right;line-height:1.5}
  .flow{order:3;position:relative;width:100%;height:auto;margin:30px 0 0}
  .flow-label{text-align:left;margin:0 0 12px;font-size:8px;line-height:1.65;letter-spacing:.28em}
  .flow-line{display:grid;grid-template-columns:1fr 1fr;gap:8px;height:auto;margin:0;border:0}
  .node{min-height:64px;margin:0;padding:14px 9px 12px 29px;border:1px solid #d8dde4;border-radius:13px;background:rgba(255,255,255,.68);text-align:left}
  .node b{left:11px;top:17px;width:9px;height:9px;background:#f9fbff}.node strong{font-size:10px;letter-spacing:.14em}.node small{font-size:8px;margin-top:4px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .continues{margin-top:23px}.continues span{width:9px;height:9px;margin-bottom:10px}.continues small{font-size:7px;letter-spacing:.28em}
  .consultant-trigger{right:14px;bottom:calc(14px + env(safe-area-inset-bottom));padding:10px 14px;font-size:11px}
  .consultant{left:10px;right:10px;bottom:10px;width:auto;height:min(76dvh,620px);border-radius:15px}
  .modal-box{padding:34px 22px;border-radius:12px}.modal-box h2{font-size:38px}
}

@media (max-width:380px){
  .topbar{padding-left:14px;padding-right:14px}.brand>span{font-size:17px}.top-actions{gap:7px}.languages{gap:8px}.login{padding:7px 10px}
  .hero{padding-left:14px;padding-right:14px}.hero h1{font-size:47px}.hero-image{height:202px;margin-top:24px}.launch-card{left:9px;right:9px;bottom:9px;padding:10px;grid-template-columns:50px 1fr}.launch-card em{display:none}.launch-card strong{font-size:16px}
  .node{min-height:58px;padding-left:27px}.node small{display:none}.consultant-trigger{right:12px}
}

/* FLOW module detail — content layer, not a visual redesign */
.modal-box{width:min(720px,100%);max-height:min(82vh,760px);overflow:auto}
.module-kicker{display:flex;justify-content:space-between;align-items:center;margin-bottom:4px}.module-kicker span{font-size:9px;letter-spacing:.22em;color:#69717b}
.module-lead{max-width:610px!important;font-size:15px!important;line-height:1.85!important;color:#646a73!important}
.module-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px;margin-top:28px;padding-top:22px;border-top:1px solid #e1e5ea}.module-grid>div>small,.module-question>small{font-size:8px;letter-spacing:.28em;color:#69717b}.module-grid p{font-size:12px;line-height:1.75;color:#656d76;margin:10px 0 0}.module-grid ul{margin:10px 0 0;padding:0;list-style:none}.module-grid li{position:relative;padding:0 0 9px 14px;font-size:12px;line-height:1.55;color:#656d76}.module-grid li:before{content:'—';position:absolute;left:0;color:#9a958a}.module-question{margin-top:24px;padding:18px 20px;background:#f3f5f8;border-radius:9px}.module-question p{margin:8px 0 0;font-size:13px;line-height:1.7;color:#50555c}.module-consult{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:20px;padding:13px 16px;border:1px solid #d7dce2;border-radius:8px;background:#fff;color:#464b50;font:400 11px "DM Sans",sans-serif;cursor:pointer}.module-consult b{font-size:18px;font-weight:300}.module-consult:hover{background:#f7f8fa}
@media(max-width:600px){.module-modal{padding:10px}.modal-box{max-height:88dvh;padding:30px 20px 20px}.modal-box h2{font-size:38px}.module-lead{font-size:13px!important}.module-grid{grid-template-columns:1fr;gap:18px;margin-top:22px;padding-top:18px}.module-question{margin-top:18px;padding:15px}.module-consult{margin-top:16px}.close{right:12px;top:9px}}
.module-entry{margin-top:24px;padding-top:18px;border-top:1px solid #D9DDE4}.module-entry small{display:block;font-size:9px;letter-spacing:.18em;color:#69717b;margin-bottom:9px}.module-entry textarea{width:100%;min-height:86px;resize:vertical;border:1px solid #D9DDE4;border-radius:10px;background:#fff;color:#252625;padding:12px;font:inherit;line-height:1.5;outline:none}.module-entry textarea:focus{border-color:#8F897D}.module-entry-row{display:flex;align-items:center;gap:9px;margin-top:9px}.module-entry-row select{border:1px solid #D9DDE4;border-radius:8px;background:#fff;padding:9px;color:#3F403C}.module-entry-row button{border:1px solid #8F897D;background:#8F897D;color:#fff;border-radius:18px;padding:9px 16px;cursor:pointer}.module-entry-row span{font-size:11px;color:#656d76}@media(max-width:600px){.module-entry textarea{min-height:100px}.module-entry-row{flex-wrap:wrap}}


/* DZIVS 4.0.19 — Accessibility + touch quality */
:where(a,button,input,textarea,select):focus-visible{outline:3px solid rgba(63,64,60,.55);outline-offset:3px}
.lang{min-width:44px;min-height:44px;padding:0;display:inline-grid;place-items:center;line-height:1}.languages{gap:4px}
.login{min-height:44px;display:inline-flex;align-items:center;justify-content:center}.primary{min-height:44px}.node{min-height:44px}
.close{width:44px;height:44px;display:grid;place-items:center;padding:0}.consultant header button{width:44px;min-width:44px;height:44px;display:grid;place-items:center;padding:0}
.consultant-trigger{min-height:44px}.consultant form button{min-width:48px;min-height:44px;width:48px}.module-consult{min-height:44px}.module-entry-row button,.module-entry-row select{min-height:44px}
@media (max-width:600px){.topbar{align-items:center}.top-actions{gap:6px}.languages{gap:2px}.lang{min-width:40px;min-height:44px}.login{min-height:44px;padding:8px 13px}.flow-line{gap:12px}.node{min-height:88px;padding-top:18px;padding-bottom:16px}.node b{top:22px}.consultant-trigger{min-height:44px}}
@media (max-width:380px){.top-actions{gap:3px}.languages{gap:0}.lang{min-width:36px}.login{min-width:44px;padding-left:9px;padding-right:9px}}
/* DZIVS 4.0.26 Live FLOW */
.live-flow{min-height:100vh;padding:7rem clamp(1.25rem,8vw,10rem) 4rem;background:#f1f3f6;color:#1d2630}.live-flow-inner{max-width:920px;margin:0 auto}.live-back{display:inline-flex;min-height:44px;align-items:center;color:#34414d;text-decoration:none;margin-bottom:3rem}.live-kicker{font-size:.72rem;letter-spacing:.18em;color:#6b7480;margin-bottom:1rem}.live-flow h1{font-size:clamp(3rem,8vw,7rem);font-weight:400;margin:0}.live-sub{font-size:1.1rem;color:#52606d;max-width:620px;margin:1rem 0 3rem}.live-content{background:#fff;padding:2rem;border-radius:20px;margin:1rem 0}.live-content h2,.live-actions-title{font-weight:500}.live-content p{line-height:1.7;color:#52606d}.live-actions{display:grid;gap:1rem}.live-action{background:#e8ebef;padding:1.25rem 1.5rem;border-radius:16px;display:flex;justify-content:space-between;gap:1rem;align-items:center}.live-action h3{margin:.35rem 0;font-weight:500}.live-action p{margin:0;color:#52606d}.live-action button{min-width:110px;min-height:44px;border:0;border-radius:999px;background:#26323d;color:#fff;padding:0 1rem;cursor:pointer}.live-action.completed{opacity:.72}.live-action.completed button{background:#5f7769}@media(max-width:700px){.live-flow{padding:6rem 1.25rem 2rem}.live-action{align-items:flex-start;flex-direction:column}.live-action button{width:100%}}


/* DZIVS 4.0.29 — BLUE HORIZON DESIGN SYSTEM */
:root{--blue-1:#f7fbff;--blue-2:#eaf4ff;--blue-3:#c9def5;--blue-4:#8bb6e2;--blue-5:#075db7;--blue-deep:#103a66;--glass:rgba(255,255,255,.72)}
body{background:radial-gradient(circle at 80% 0,#c8e1fb 0,transparent 34%),linear-gradient(135deg,#d9eaff 0%,#edf5ff 48%,#c8def4 100%);color:var(--ink)}
.site-shell{border:1px solid rgba(255,255,255,.7);background:#f7fbff;box-shadow:0 28px 90px rgba(26,79,132,.18)}
.topbar{align-items:center}.brand>span{letter-spacing:.22em;color:#12395f}.brand i{background:#b7cde4}.brand small{color:#4f6f90;font-weight:500}.top-actions{gap:18px}.search-link{width:44px;height:44px;display:grid;place-items:center;border:0;color:#0b4f96;text-decoration:none}.search-link svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.7;stroke-linecap:round}.top-divider{width:1px;height:30px;background:#b9cde2}.languages{gap:14px}.lang{color:#50708e}.lang.active{color:#0c4f96;border-color:#0c4f96}.login{min-width:88px;border:0;background:rgba(255,255,255,.78);box-shadow:0 10px 28px rgba(36,88,142,.10);color:#173f67}.login:hover{background:#fff;color:#075db7}
.hero{background:radial-gradient(circle at 87% 10%,rgba(132,181,229,.48),transparent 31%),linear-gradient(127deg,#f9fcff 0%,#edf6ff 42%,#dcecff 72%,#a9caeb 100%)}
.hero:before{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(48deg,rgba(255,255,255,.85) 0 16%,transparent 16% 48%,rgba(255,255,255,.12) 48% 100%);opacity:.72}
.hero-copy{max-width:560px}.eyebrow span{color:#799abf}.hero h1{color:#12395f;text-shadow:0 1px 0 rgba(255,255,255,.7)}.hero h1 span{color:#075db7}.hero-copy>p{color:#3d6288;font-size:16px;font-weight:400}.primary{background:linear-gradient(105deg,#0872ce,#064e9e);border:1px solid rgba(255,255,255,.28);box-shadow:0 16px 32px rgba(7,93,183,.23);padding:15px 20px 15px 28px}.primary:hover{box-shadow:0 20px 40px rgba(7,93,183,.3)}.scroll-note span{background:#0c5ca8}.scroll-note small,.flow-label,.continues small{color:#41658b;font-weight:500}
.flow{height:590px}.flow-label{color:#41658b;font-weight:600}.flow-line{height:500px;margin-left:38%;border-color:#4f82b6;justify-content:space-between}.node{display:flex;align-items:center;gap:16px;margin-left:30px;padding:6px 0;color:#183f68}.flow-dot{position:absolute!important;left:-37px!important;top:50%!important;transform:translateY(-50%);width:12px!important;height:12px!important;border:1.5px solid #2d6ca9!important;border-radius:50%;background:#f9fcff!important;transition:.22s ease}.node-icon{width:58px;height:58px;display:grid;place-items:center;flex:0 0 58px;border-radius:50%;background:rgba(255,255,255,.86);box-shadow:0 12px 28px rgba(23,82,136,.14);border:1px solid rgba(255,255,255,.9);color:#0755a0;transition:.22s ease}.node-icon svg{width:27px;height:27px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.node-copy{display:block}.node strong{color:#183f68;font-weight:600}.node small{color:#557391}.node:hover .node-icon,.node:focus-visible .node-icon{transform:translateY(-2px) scale(1.04);background:#fff;color:#075db7;box-shadow:0 17px 35px rgba(7,93,183,.22)}.node:hover .flow-dot,.node:focus-visible .flow-dot{background:#075db7!important;border-color:#075db7!important;transform:translateY(-50%) scale(1.2)!important}.continues span{border-color:#2d6ca9;background:#eff7ff}
.hero-image{inset:0 0 0 56%;background:#bcd7ef}.hero-image img{opacity:.72;filter:saturate(.75) contrast(.98) sepia(.02)}.image-overlay{background:linear-gradient(90deg,#eef7ff 0%,rgba(238,247,255,.95) 14%,rgba(218,236,252,.54) 43%,rgba(170,204,236,.12) 75%,transparent 100%)!important}.side-note{right:7%;top:22%;font-size:11px;letter-spacing:.38em;color:#2f6091;font-weight:500}.side-note i{background:#2f6ca7}.launch-card{right:5%;bottom:8%;min-width:240px;border:1px solid rgba(255,255,255,.85);background:rgba(248,252,255,.82);backdrop-filter:blur(16px);box-shadow:0 18px 50px rgba(23,73,121,.16)}.launch-card small{color:#517493}.launch-card strong{color:#12395f}.launch-card em{color:#52708d}
.consultant-trigger{border:1px solid rgba(255,255,255,.95);background:rgba(255,255,255,.88);color:#1d4e7d;box-shadow:0 16px 40px rgba(12,77,140,.20)}.consultant-dot{background:#0872ce}.consultant{border-color:#c8dcef;background:rgba(250,253,255,.98)}.consultant header{background:#f4f9ff}.chat{background:#edf5fd}.chat-message.user{background:linear-gradient(105deg,#0872ce,#064e9e)}.consultant form button{background:#075db7}
.modal-box{border-color:#c9dcef;background:#f8fbff}.module-question{background:#edf6ff!important;border-color:#c7dced!important}.module-consult{background:#075db7!important}.live-flow{background:linear-gradient(135deg,#f7fbff,#e5f1ff);color:#12395f}.live-content{border:1px solid #d7e6f5;box-shadow:0 10px 28px rgba(25,82,136,.07)}.live-action{background:#eaf4ff;border:1px solid #d4e5f5}.live-action button{background:#075db7}
@media(max-width:600px){body{background:#eef6ff}.site-shell{width:100%;margin:0;border-radius:0;border:0;min-height:100svh}.topbar{left:18px;right:18px;top:0;padding:18px 0}.brand{gap:10px}.brand>span{font-size:18px}.brand i{height:30px}.brand small{font-size:6px;letter-spacing:.22em}.search-link{display:none}.top-divider{display:none}.hero{background:radial-gradient(circle at 92% 0,rgba(132,181,229,.45),transparent 32%),linear-gradient(155deg,#f9fcff 0%,#eaf4ff 75%,#d4e7fa 100%)}.hero-copy>p{font-size:14px}.hero-image{border:1px solid rgba(255,255,255,.8)}.flow{height:auto}.flow-line{margin-left:0;height:auto;border:0;display:grid;grid-template-columns:1fr;gap:10px}.node{margin:0;min-height:78px;padding:10px 12px;border:1px solid rgba(193,215,236,.9);border-radius:16px;background:rgba(255,255,255,.58)}.flow-dot{display:none}.node-icon{width:48px;height:48px;flex-basis:48px}.node-icon svg{width:23px;height:23px}.node strong{font-size:11px}.node small{font-size:10px}.side-note{display:none}.launch-card{left:12px;right:12px;bottom:12px;min-width:0}.top-actions{gap:6px}.languages{gap:5px}.lang{min-width:38px}.login{min-width:64px;padding:9px 12px}}


/* DZIVS 4.0.30 — HORIZON ALIGNMENT FIX
   Desktop composition corrected to match the approved Blue Horizon reference. */
@media (min-width:1101px){
  .site-shell{width:min(1456px,calc(100% - 72px));min-height:calc(100svh - 56px);margin:28px auto;position:relative}
  .topbar{top:28px;left:calc((100vw - min(1456px,calc(100vw - 72px)))/2 + 4.6%);right:calc((100vw - min(1456px,calc(100vw - 72px)))/2 + 4.6%);padding:18px 0}
  .hero{grid-template-columns:41.5% 22.5% 36%;padding:112px 4.6% 42px;min-height:calc(100svh - 56px)}
  .hero-copy{align-self:center;transform:translateY(6px);max-width:500px}
  .hero h1{font-size:clamp(64px,5.7vw,86px);margin:8px 0 22px;line-height:.91}
  .eyebrow span{font-size:44px}
  .flow{height:570px;align-self:center;margin-top:6px}
  .flow-label{margin-bottom:23px}
  .flow-line{height:474px;margin-left:39%;}
  .node{margin-left:30px;gap:15px;padding:5px 0}
  .node-icon{width:58px;height:58px;flex-basis:58px}
  .node strong{font-size:12px;letter-spacing:.18em}
  .node small{font-size:10px;line-height:1.35}
  .hero-image{inset:0 0 0 56.8%}
  .hero-image img{opacity:.88;object-position:center center;filter:saturate(.86) contrast(1.02)}
  .image-overlay{background:linear-gradient(90deg,#edf7ff 0%,rgba(237,247,255,.88) 10%,rgba(220,237,252,.48) 34%,rgba(176,207,236,.12) 64%,transparent 88%)!important}
  .side-note{right:6.4%;top:19%;gap:10px;color:#315f8f}
  .launch-card{right:4.2%;bottom:7%;min-width:238px;padding:20px 24px}
}
/* Prevent the pale overlay from washing out the approved blue design. */
.hero:before{opacity:.48}
.flow{z-index:6}
.node{z-index:2}
.node-copy{min-width:0}
.flow-dot{z-index:3}
/* The vertical line must sit behind the module dots, never through the icons. */
.flow-line{position:relative}
.node-icon{position:relative;z-index:2}
/* Keep all desktop content inside the visual frame at intermediate widths. */
@media (min-width:601px) and (max-width:1100px){
  .hero{grid-template-columns:42% 25% 33%;padding-left:5%;padding-right:5%}
  .hero-image{inset:0 0 0 62%}
  .flow-line{margin-left:35%}
  .node{margin-left:24px;gap:11px}
  .node-icon{width:52px;height:52px;flex-basis:52px}
  .launch-card{right:4%;min-width:210px}
}

/* ============================================================
   DZIVS 4.0.31 — BLUE HORIZON DESIGN REBUILD
   Desktop composition rebuilt from the approved Blue Horizon art direction.
   Functional JS, language system and LIVE FLOW routing are intentionally untouched.
   ============================================================ */
:root{
  --horizon-ink:#12395f;
  --horizon-mid:#315f8f;
  --horizon-blue:#075db7;
  --horizon-soft:#dbeafa;
}

@media (min-width:1101px){
  body{
    background:
      radial-gradient(circle at 84% 2%,rgba(126,178,228,.36),transparent 30%),
      linear-gradient(135deg,#dcecff 0%,#edf6ff 48%,#c9def3 100%);
  }
  .site-shell{
    width:min(1456px,calc(100% - 72px));
    min-height:calc(100svh - 56px);
    margin:28px auto;
    border-radius:16px;
    box-shadow:0 30px 95px rgba(24,72,122,.20);
  }
  .topbar{
    top:28px;
    left:calc((100vw - min(1456px,calc(100vw - 72px)))/2 + 4.6%);
    right:calc((100vw - min(1456px,calc(100vw - 72px)))/2 + 4.6%);
    padding:18px 0;
  }
  .brand>span{font-size:25px;letter-spacing:.24em}
  .brand i{height:39px}
  .top-actions{gap:20px}
  .hero{
    grid-template-columns:38% 25% 37%;
    min-height:calc(100svh - 56px);
    padding:108px 4.6% 48px;
    background:
      radial-gradient(circle at 79% 11%,rgba(131,183,231,.42),transparent 29%),
      radial-gradient(circle at 8% 80%,rgba(255,255,255,.75),transparent 35%),
      linear-gradient(127deg,#f9fcff 0%,#eaf4ff 43%,#d8e9fb 72%,#a7c8e8 100%);
  }
  .hero:before{
    opacity:.58;
    background:
      linear-gradient(48deg,rgba(255,255,255,.80) 0 17%,transparent 17% 49%,rgba(255,255,255,.09) 49% 100%);
  }
  .hero-copy{
    align-self:center;
    max-width:520px;
    transform:translateY(10px);
  }
  .eyebrow span{font-size:46px;color:#6e96c0}
  .hero h1{
    max-width:520px;
    margin:12px 0 25px;
    font-size:clamp(70px,6.1vw,94px);
    line-height:.89;
    letter-spacing:-.061em;
    color:var(--horizon-ink);
  }
  .hero-copy>p{font-size:16px;line-height:1.6;color:#3e648a}
  .primary{margin-top:28px;min-width:205px;justify-content:space-between}
  .scroll-note{margin-top:39px}

  /* FLOW moves left and becomes a clear central architectural axis. */
  .flow{
    height:608px;
    align-self:center;
    z-index:7;
    margin-top:4px;
  }
  .flow-label{margin:0 0 27px 0;font-size:9px;letter-spacing:.34em}
  .flow-line{
    height:514px;
    margin-left:25%;
    border-color:#3f78ae;
    justify-content:space-between;
  }
  .node{
    margin-left:30px;
    gap:17px;
    padding:5px 0;
  }
  .flow-dot{left:-37px!important;width:13px!important;height:13px!important}
  .node-icon{
    width:62px;
    height:62px;
    flex-basis:62px;
    color:#0759a7;
    background:rgba(255,255,255,.90);
    box-shadow:0 15px 34px rgba(18,71,122,.16);
  }
  .node-icon svg{width:29px;height:29px;stroke-width:1.8}
  .node strong{font-size:13px;letter-spacing:.19em;color:#153f69}
  .node small{font-size:10px;margin-top:5px;color:#557796}
  .continues{margin-top:10px}

  /* Interior remains blue-toned but keeps its depth and contrast. */
  .hero-image{inset:0 0 0 56%;background:#b8d4ed}
  .hero-image img{
    opacity:.94;
    object-position:center center;
    filter:saturate(.88) contrast(1.05) brightness(1.02);
  }
  .image-overlay{
    background:
      linear-gradient(90deg,
        rgba(237,247,255,1) 0%,
        rgba(237,247,255,.88) 8%,
        rgba(220,237,252,.50) 28%,
        rgba(183,211,239,.13) 54%,
        rgba(176,206,235,.03) 76%,
        transparent 100%)!important;
  }
  .side-note{
    right:7%;
    top:18%;
    gap:11px;
    font-size:12px;
    letter-spacing:.36em;
    color:#315f8f;
    text-shadow:0 1px 0 rgba(255,255,255,.55);
  }
  .side-note i{width:48px;margin-top:18px;background:#386f9f}
  .launch-card{
    right:4.5%;
    bottom:7%;
    min-width:250px;
    padding:21px 25px;
    border-radius:10px;
    background:rgba(248,252,255,.84);
    box-shadow:0 20px 52px rgba(22,71,118,.18);
  }
  .launch-card strong{font-size:27px}
}

/* Rebuild breakpoint: avoid the squeezed 4.0.30 desktop layout on laptops. */
@media (min-width:801px) and (max-width:1100px){
  .hero{grid-template-columns:40% 25% 35%;padding:104px 4.8% 42px}
  .hero-image{inset:0 0 0 58%}
  .flow{height:548px}
  .flow-line{height:458px;margin-left:26%}
  .node{margin-left:25px;gap:12px}
  .node-icon{width:54px;height:54px;flex-basis:54px}
  .node strong{font-size:11px}.node small{font-size:9px}
  .hero h1{font-size:clamp(60px,7vw,80px)}
  .hero-image img{opacity:.90;filter:saturate(.84) contrast(1.03)}
  .image-overlay{background:linear-gradient(90deg,#edf7ff 0%,rgba(237,247,255,.82) 12%,rgba(220,237,252,.42) 37%,transparent 78%)!important}
}

/* Mobile remains intentionally independent; only strengthen the approved blue palette. */
@media (max-width:800px){
  .hero{background:radial-gradient(circle at 92% 0,rgba(119,174,226,.40),transparent 34%),linear-gradient(155deg,#f9fcff 0%,#e9f3ff 74%,#d1e5f9 100%)}
  .node-icon{color:#0759a7}
}

/* =========================================================
   DZIVS 4.0.32 — FLUID RESPONSIVE ALIGNMENT
   ========================================================= */
.site-shell{container-type:inline-size;container-name:dzivs-shell}
.hero,.topbar,.hero-copy,.flow,.node,.node-copy{min-width:0}
.hero{isolation:isolate}.node-copy{overflow:hidden}.node strong,.node small{overflow-wrap:anywhere}

@container dzivs-shell (max-width:0px){
  .topbar{left:5%;right:5%;padding-top:18px}.brand>span{font-size:22px}.brand small{font-size:7px;letter-spacing:.26em}.top-actions{gap:14px}
  .hero{grid-template-columns:minmax(0,44%) minmax(250px,33%) minmax(0,23%);padding:98px 5% 38px;min-height:calc(100svh - 56px)}
  .hero-copy{max-width:100%;transform:none}.eyebrow span{font-size:42px}.hero h1{font-size:clamp(54px,7.2cqw,78px);max-width:460px;margin:10px 0 20px}.hero-copy>p{font-size:15px;max-width:360px}
  .flow{height:548px;width:100%;margin:0;align-self:center}.flow-label{text-align:left;padding-left:18px;margin-bottom:22px}.flow-line{height:462px;margin-left:18px;justify-content:space-between}
  .node{margin-left:26px;gap:12px;padding:4px 0}.flow-dot{left:-33px!important;width:12px!important;height:12px!important}.node-icon{width:54px;height:54px;flex:0 0 54px}.node-icon svg{width:25px;height:25px}.node strong{font-size:11px;letter-spacing:.15em;white-space:nowrap}.node small{font-size:9px;white-space:normal;line-height:1.35}
  .continues{text-align:left;padding-left:18px}.continues span{margin-left:14px}
  .hero-image{inset:0 0 0 70%;z-index:1}.hero-image img{opacity:.82;object-position:58% center}.image-overlay{background:linear-gradient(90deg,#edf7ff 0%,rgba(237,247,255,.96) 14%,rgba(221,238,252,.68) 48%,rgba(180,211,240,.18) 82%,transparent 100%)!important}.side-note{display:none}.launch-card{right:3%;bottom:5%;min-width:200px;padding:16px 18px}.launch-card strong{font-size:22px}
}

@container dzivs-shell (max-width:0px){
  .site-shell{width:100%;margin:0;border-radius:0;min-height:100svh}.topbar{left:4%;right:4%;top:0;padding:16px 0}.top-divider,.search-link{display:none}
  .hero{grid-template-columns:minmax(0,47%) minmax(0,53%);padding:88px 5% 34px}.hero-image{inset:0 0 0 52%;opacity:.9}.hero-copy{align-self:center}.hero h1{font-size:clamp(50px,8.2cqw,70px)}
  .flow{grid-column:2;grid-row:1;height:510px;align-self:center}.flow-label{padding-left:10px}.flow-line{height:426px;margin-left:10px}.node{margin-left:22px}.node-icon{width:50px;height:50px;flex-basis:50px}.node strong{font-size:10px}.node small{font-size:8px}.launch-card{display:none}
}

@container dzivs-shell (max-width:0px){
  .topbar{align-items:center}.brand{gap:10px}.brand>span{font-size:19px}.brand i{height:30px}.brand small{font-size:6px}.top-actions{gap:5px}.languages{gap:2px}.lang{min-width:38px;min-height:44px}.login{min-width:58px;padding:9px 11px}
  .hero{display:flex;flex-direction:column;align-items:stretch;min-height:0;padding:84px 18px 34px}.hero-copy{order:1;width:100%}.hero h1{font-size:clamp(48px,14vw,62px);max-width:340px}.hero-image{order:2;position:relative;inset:auto;width:100%;height:220px;margin:28px 0 0;border-radius:14px;overflow:hidden}.flow{order:3;width:100%;height:auto;margin:30px 0 0}.flow-label{text-align:left;padding-left:0}.flow-line{display:grid;grid-template-columns:1fr;gap:10px;height:auto;margin:0;border:0}.node{margin:0;min-height:78px;padding:10px 12px;border:1px solid rgba(193,215,236,.9);border-radius:16px;background:rgba(255,255,255,.62)}.flow-dot{display:none}.node-icon{width:48px;height:48px;flex-basis:48px}.node strong{font-size:11px}.node small{font-size:10px}.continues{padding-left:0}.continues span{margin:0 auto 14px}
}


/* =========================================================
   DZIVS 4.0.37 — REAL VIEWPORT RESPONSIVE BREAKPOINTS
   Uses viewport media queries for Safari/desktop window resizing.
   ========================================================= */

@media (max-width:1120px){
  .topbar{left:5%;right:5%;padding-top:18px}
  .brand>span{font-size:22px}
  .brand small{font-size:7px;letter-spacing:.26em}
  .top-actions{gap:14px}

  .hero{
    grid-template-columns:minmax(0,44%) minmax(250px,33%) minmax(0,23%);
    padding:98px 5% 38px;
    min-height:calc(100svh - 56px);
  }

  .hero-copy{max-width:100%;transform:none}
  .hero h1{font-size:clamp(54px,7.2vw,78px);max-width:460px;margin:10px 0 20px}
  .hero-copy>p{font-size:15px;max-width:360px}

  .flow{height:548px;width:100%;margin:0;align-self:center}
  .flow-label{text-align:left;padding-left:18px;margin-bottom:22px}
  .flow-line{height:462px;margin-left:18px;justify-content:space-between}
  .node{margin-left:26px;gap:12px;padding:4px 0}
  .flow-dot{left:-33px!important;width:12px!important;height:12px!important}
  .node-icon{width:54px;height:54px;flex:0 0 54px}
  .node-icon svg{width:25px;height:25px}
  .node strong{font-size:11px;letter-spacing:.15em;white-space:nowrap}
  .node small{font-size:9px;white-space:normal;line-height:1.35}

  .hero-image{inset:0 0 0 70%;z-index:1}
  .hero-image img{opacity:.82;object-position:58% center}
  .image-overlay{background:linear-gradient(90deg,#edf7ff 0%,rgba(237,247,255,.96) 14%,rgba(221,238,252,.68) 48%,rgba(180,211,240,.18) 82%,transparent 100%)!important}
  .side-note{display:none}
  .launch-card{right:3%;bottom:5%;min-width:200px;padding:16px 18px}
  .launch-card strong{font-size:22px}
}

@media (max-width:900px){
  .topbar{left:4%;right:4%;top:0;padding:16px 0}
  .top-divider,.search-link{display:none}

  .hero{
    grid-template-columns:minmax(0,48%) minmax(0,52%);
    padding:88px 5% 34px;
  }

  .hero-image{inset:0 0 0 52%;opacity:.9}
  .hero-copy{align-self:center}
  .hero h1{font-size:clamp(50px,8.2vw,70px)}

  .flow{grid-column:2;grid-row:1;height:510px;align-self:center}
  .flow-label{padding-left:10px}
  .flow-line{height:426px;margin-left:10px}
  .node{margin-left:22px}
  .node-icon{width:50px;height:50px;flex-basis:50px}
  .node strong{font-size:10px}
  .node small{font-size:8px}
  .launch-card{display:none}
}

@media (max-width:760px){
  .site-shell{width:100%;margin:0;border-radius:0;min-height:100svh}
  .topbar{height:78px;padding:12px 18px}
  .brand{gap:10px}
  .brand>span{font-size:19px;letter-spacing:7px}
  .brand i{height:30px}
  .brand small{font-size:6px}
  .top-actions{gap:5px}
  .languages{gap:2px}
  .lang{min-width:38px;min-height:44px}
  .login{min-width:58px;padding:9px 11px}

  .hero{
    display:flex;
    flex-direction:column;
    align-items:stretch;
    min-height:0;
    padding:84px 18px 34px;
  }

  .hero-copy{order:1;width:100%;padding-right:0}
  .hero h1{font-size:clamp(48px,14vw,62px);max-width:340px}
  .hero-copy>p{max-width:360px}

  .hero-image{
    order:2;
    position:relative;
    inset:auto;
    width:100%;
    height:220px;
    margin:28px 0 0;
    border-radius:14px;
    overflow:hidden;
  }

  .flow{
    order:3;
    width:100%;
    height:auto;
    margin:30px 0 0;
  }

  .flow-label{text-align:left;padding-left:0}
  .flow-line{
    display:grid;
    grid-template-columns:1fr;
    gap:10px;
    height:auto;
    margin:0;
    border:0;
  }

  .node{
    margin:0;
    min-height:78px;
    padding:10px 12px;
    border:1px solid rgba(193,215,236,.9);
    border-radius:16px;
    background:rgba(255,255,255,.62);
  }

  .flow-dot{display:none}
  .node-icon{width:48px;height:48px;flex-basis:48px}
  .node strong{font-size:11px}
  .node small{font-size:10px}
  .continues{padding-left:0}
  .continues span{margin:0 auto 14px}
}

@media (max-width:420px){
  .topbar{padding:10px 14px}
  .brand>span{font-size:17px;letter-spacing:6px}
  .hero{padding:76px 14px 26px}
  .hero h1{font-size:48px;letter-spacing:-2.5px}
  .hero-copy>p{font-size:13px}
  .primary{width:100%;max-width:280px}
  .hero-image{height:190px}
}


/* =========================================================
   DZIVS 4.0.39 — MOTION + FLOW ENDPOINT REPAIR
   Purpose: preserve the quiet Blue Horizon design while adding
   restrained movement and fixing the "DZĪVE TURPINĀS" endpoint.
   ========================================================= */

/* The FLOW endpoint is part of the composition, not leftover text. */
@media (min-width:1101px){
  .flow{
    display:flex;
    flex-direction:column;
    height:608px;
    min-height:0;
  }
  .flow-label{flex:0 0 auto}
  .flow-line{
    flex:1 1 auto;
    height:auto;
    min-height:0;
    margin-bottom:0;
  }
  .continues{
    flex:0 0 62px;
    min-height:62px;
    margin:12px 0 0;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:flex-end;
    text-align:center;
    overflow:visible;
  }
  .continues span{
    width:12px;
    height:12px;
    flex:0 0 12px;
    margin:0 0 11px;
    border:1.5px solid #2d6ca9;
    background:#eff7ff;
  }
  .continues small{
    display:block;
    max-width:100%;
    white-space:nowrap;
    line-height:1.2;
    letter-spacing:.24em;
    font-size:8px;
    color:#41658b;
  }
}

/* Motion: slow, architectural and calm — never decorative noise. */
@media (prefers-reduced-motion:no-preference){
  .hero-copy{animation:dzivs-rise .85s cubic-bezier(.22,.7,.25,1) both}
  .flow{animation:dzivs-rise .95s .12s cubic-bezier(.22,.7,.25,1) both}
  .hero-image{animation:dzivs-image-in 1.2s .08s cubic-bezier(.22,.7,.25,1) both}
  .launch-card{animation:dzivs-rise .9s .45s cubic-bezier(.22,.7,.25,1) both}
  .side-note{animation:dzivs-fade .9s .55s ease both}

  .node{opacity:0;animation:dzivs-node-in .62s cubic-bezier(.22,.7,.25,1) forwards}
  .node:nth-child(1){animation-delay:.28s}
  .node:nth-child(2){animation-delay:.38s}
  .node:nth-child(3){animation-delay:.48s}
  .node:nth-child(4){animation-delay:.58s}
  .node:nth-child(5){animation-delay:.68s}

  .flow-dot{animation:dzivs-dot-breathe 3.8s ease-in-out infinite}
  .node:nth-child(2) .flow-dot{animation-delay:.55s}
  .node:nth-child(3) .flow-dot{animation-delay:1.1s}
  .node:nth-child(4) .flow-dot{animation-delay:1.65s}
  .node:nth-child(5) .flow-dot{animation-delay:2.2s}
  .continues span{animation:dzivs-endpoint 3.8s ease-in-out infinite 1.2s}

  .hero-image img{animation:dzivs-image-drift 14s ease-in-out 1.1s infinite alternate}
  .primary{transition:transform .28s ease,box-shadow .28s ease,filter .28s ease}
  .primary:hover{transform:translateY(-3px);filter:brightness(1.03)}
  .node{transition:transform .28s ease}
  .node:hover{transform:translateX(5px)}
}

@keyframes dzivs-rise{
  from{opacity:0;transform:translateY(18px)}
  to{opacity:1;transform:translateY(0)}
}
@keyframes dzivs-fade{from{opacity:0}to{opacity:1}}
@keyframes dzivs-image-in{from{opacity:0;transform:scale(1.025)}to{opacity:1;transform:scale(1)}}
@keyframes dzivs-node-in{from{opacity:0;transform:translateX(-12px)}to{opacity:1;transform:translateX(0)}}
@keyframes dzivs-dot-breathe{0%,100%{box-shadow:0 0 0 0 rgba(7,93,183,0)}50%{box-shadow:0 0 0 7px rgba(7,93,183,.09)}}
@keyframes dzivs-endpoint{0%,100%{transform:scale(1);box-shadow:0 0 0 0 rgba(7,93,183,0)}50%{transform:scale(1.14);box-shadow:0 0 0 8px rgba(7,93,183,.08)}}
@keyframes dzivs-image-drift{from{transform:scale(1) translate3d(0,0,0)}to{transform:scale(1.025) translate3d(-.7%,.3%,0)}}

/* Do not allow motion to shift the carefully positioned desktop hero copy. */
@media (min-width:1101px) and (prefers-reduced-motion:no-preference){
  .hero-copy{animation-name:dzivs-rise-desktop}
}
@keyframes dzivs-rise-desktop{
  from{opacity:0;transform:translateY(28px)}
  to{opacity:1;transform:translateY(10px)}
}

@media (prefers-reduced-motion:reduce){
  *,*::before,*::after{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}
}


/* DZIVS LIVE DESIGN MOTION — subtle, calm and accessible */
@media (prefers-reduced-motion:no-preference){
  .hero-image img{
    animation:dzivsPlantDrift 14s ease-in-out infinite alternate;
    transform-origin:58% 82%;
    will-change:transform;
  }
  .hero-image::after{
    content:"";
    position:absolute;inset:-12%;
    pointer-events:none;
    background:radial-gradient(circle at 72% 38%,rgba(255,255,255,.16),transparent 30%);
    animation:dzivsLightBreath 10s ease-in-out infinite alternate;
  }
  .flow-line{animation:dzivsLineIn 1.1s cubic-bezier(.2,.7,.2,1) both}
  .node{animation:dzivsNodeIn .65s ease both}
  .node:nth-child(1){animation-delay:.12s}.node:nth-child(2){animation-delay:.2s}
  .node:nth-child(3){animation-delay:.28s}.node:nth-child(4){animation-delay:.36s}
  .node:nth-child(5){animation-delay:.44s}
  .flow-dot{animation:dzivsPulse 3.6s ease-in-out infinite}
  .node:nth-child(2) .flow-dot{animation-delay:.45s}.node:nth-child(3) .flow-dot{animation-delay:.9s}
  .node:nth-child(4) .flow-dot{animation-delay:1.35s}.node:nth-child(5) .flow-dot{animation-delay:1.8s}
}
.hero-image img{transition:transform 1.2s ease,filter .8s ease}
.hero-image:hover img{filter:saturate(.72) contrast(.98)}
.node{transition:transform .22s ease,color .22s ease}
.node:hover,.node:focus-visible{transform:translateX(5px)}
.primary{position:relative;overflow:hidden}
.primary::after{content:"";position:absolute;inset:0;transform:translateX(-115%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transition:transform .7s ease}
.primary:hover::after{transform:translateX(115%)}
@keyframes dzivsPlantDrift{0%{transform:scale(1.015) translate3d(-.35%,0,0) rotate(-.12deg)}100%{transform:scale(1.045) translate3d(.45%,-.25%,0) rotate(.12deg)}}
@keyframes dzivsLightBreath{0%{opacity:.35;transform:translate3d(-1%,0,0)}100%{opacity:.75;transform:translate3d(1.5%,-1%,0)}}
@keyframes dzivsLineIn{from{transform:scaleY(.05);transform-origin:top;opacity:.15}to{transform:scaleY(1);opacity:1}}
@keyframes dzivsNodeIn{from{opacity:0;transform:translate3d(-10px,0,0)}to{opacity:1;transform:translate3d(0,0,0)}}
@keyframes dzivsPulse{0%,100%{box-shadow:0 0 0 0 rgba(7,93,183,0)}50%{box-shadow:0 0 0 6px rgba(7,93,183,.08)}}

/* DZIVS RESPONSIVE HOTFIX START */
/* DZIVS responsive hotfix — appended after the main stylesheet */

@media (max-width:1100px) and (min-width:901px){
  .site-shell{width:min(1440px,calc(100% - 32px));margin:16px auto;min-height:calc(100svh - 32px)}
  .topbar{top:16px;left:5%;right:5%;padding:20px 0}
  .hero{min-height:calc(100svh - 32px);grid-template-columns:44% 32% 24%;padding:105px 5% 36px}
  .hero h1{font-size:clamp(52px,6.5vw,72px);letter-spacing:-.055em}
  .hero-copy>p{font-size:14px}
  .flow{height:535px;min-width:0}
  .flow-label{text-align:left;padding-left:8px;margin-bottom:20px}
  .flow-line{height:450px;margin-left:12%;justify-content:space-between}
  .node{margin-left:28px;min-width:0}
  .node b{left:-36px}
  .node strong{font-size:10px;letter-spacing:.14em;white-space:nowrap}
  .node small{font-size:8px;white-space:nowrap}
  .node-icon{width:52px;height:52px;flex-basis:52px}
  .hero-image{inset:0 0 0 68%;z-index:1}
  .hero-image img{opacity:.76;object-position:58% center}
  .image-overlay{background:linear-gradient(90deg,var(--canvas) 0%,rgba(241,245,252,.96) 18%,rgba(241,245,252,.48) 62%,rgba(241,245,252,.08) 100%)!important}
  .side-note{display:none}
  .launch-card{right:3%;bottom:5%;min-width:190px;padding:15px 17px}
  .launch-card strong{font-size:21px}
}

@media (max-width:900px) and (min-width:601px){
  .site-shell{width:calc(100% - 24px);margin:12px auto;border-radius:12px;min-height:calc(100svh - 24px)}
  .topbar{top:12px;left:4%;right:4%;padding:16px 0}
  .top-actions{gap:12px}
  .search-link,.top-divider{display:none}
  .hero{min-height:calc(100svh - 24px);grid-template-columns:48% 52%;padding:92px 5% 32px}
  .hero-copy{align-self:center;max-width:100%}
  .hero h1{font-size:clamp(48px,8vw,66px);max-width:390px}
  .hero-copy>p{font-size:13px;max-width:310px}
  .primary{margin-top:22px}
  .flow{grid-column:2;grid-row:1;height:500px;align-self:center;min-width:0}
  .flow-label{text-align:left;padding-left:0;margin-bottom:15px}
  .flow-line{height:415px;margin-left:10%;justify-content:space-between}
  .node{margin-left:22px;min-width:0}
  .node b{left:-34px}
  .node-icon{width:50px;height:50px;flex-basis:50px}
  .node strong{font-size:10px;letter-spacing:.12em;white-space:nowrap}
  .node small{font-size:8px;white-space:nowrap}
  .hero-image{inset:0 0 0 63%;z-index:1}
  .hero-image img{opacity:.72}
  .image-overlay{background:linear-gradient(90deg,var(--canvas) 0%,rgba(241,245,252,.94) 22%,rgba(241,245,252,.45) 70%,transparent 100%)!important}
  .launch-card{display:none}
  .side-note{display:none}
}

@media (max-width:600px){
  .site-shell{width:100%;margin:0;border-radius:0;min-height:100svh}
  .topbar{position:fixed;top:0;left:0;right:0;height:calc(64px + env(safe-area-inset-top));padding:env(safe-area-inset-top) 16px 0;align-items:center;background:rgba(241,245,252,.96);z-index:50}
  .hero{display:flex;flex-direction:column;min-height:0;padding:calc(82px + env(safe-area-inset-top)) 16px 32px}
  .hero-copy{order:1;width:100%}
  .hero h1{font-size:clamp(46px,14vw,62px);max-width:350px}
  .hero-copy>p{font-size:13px;max-width:330px}
  .hero-image{order:2;position:relative;inset:auto;width:100%;height:220px;margin:26px 0 0;border-radius:14px;overflow:hidden}
  .hero-image img{opacity:.8;object-position:58% center}
  .image-overlay{background:linear-gradient(180deg,rgba(241,245,252,.03) 0%,rgba(241,245,252,.08) 50%,rgba(241,245,252,.72) 100%)!important}
  .flow{order:3;position:relative;width:100%;height:auto;margin:28px 0 0}
  .flow-label{text-align:left;margin:0 0 12px;padding:0}
  .flow-line{display:grid;grid-template-columns:1fr 1fr;gap:8px;height:auto;margin:0;border:0}
  .node{margin:0;min-height:68px;padding:13px 9px 11px 29px;border:1px solid #d8dde4;border-radius:13px;background:rgba(255,255,255,.72)}
  .node b{left:11px;top:17px;width:9px;height:9px}
  .node strong{font-size:10px;letter-spacing:.12em;white-space:nowrap}
  .node small{font-size:8px;margin-top:3px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
  .node-icon{display:none}
  .continues{margin-top:20px}
  .continues small{font-size:7px}
  .side-note{display:none}
}

@media (max-width:420px){
  .hero{padding-left:14px;padding-right:14px}
  .hero h1{font-size:47px}
  .hero-image{height:185px}
  .flow-line{grid-template-columns:1fr}
}
/* DZIVS RESPONSIVE HOTFIX END */
