/* Marketing stage uses the landing site's existing semantic tokens. */
.welcome{background:var(--blue-navy);color:var(--card);position:relative;overflow:hidden;min-height:620px;padding:24px 20px;text-align:center;isolation:isolate}
.welcome::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 50% 65%,var(--blue),transparent 65%)}
.welcome .welcome-kicker{font-size:.85rem;color:var(--deep-body)}
.welcome h2{color:var(--card);font-size:clamp(34px,4vw,56px);letter-spacing:-.065em;margin:8px 0;line-height:1}
.welcome-copy{color:var(--deep-body);font-size:1rem}
.cast-stage{height:285px;position:relative;max-width:1150px;margin:14px auto 0;perspective:1000px;touch-action:pan-y}
.cast-person{position:absolute;left:50%;top:0;width:255px;height:285px;margin-left:-127.5px;transform:translateX(var(--x,0px)) scale(var(--scale,1));opacity:var(--opacity,1);z-index:var(--layer,1);transition:transform .65s cubic-bezier(.22,.7,.2,1),opacity .5s;pointer-events:none;overflow:hidden}
.cast-art{width:100%;height:100%;background-image:url('/assets/industry-cast-mobile.webp');background-size:500% 300%;background-repeat:no-repeat;background-position:var(--sprite-x) var(--sprite-y);transform-origin:50% 85%;clip-path:inset(0 9%)}
@media(min-width:700px) and (pointer:fine){.cast-art{background-image:url('/assets/industry-cast.webp')}}
.cast-person.is-current .cast-art{filter:drop-shadow(0 12px 24px rgba(0,0,0,.2))}
.cast-floor{position:absolute;bottom:0;left:15%;width:70%;height:40px;border:1px solid var(--deep-hair);border-radius:50%;opacity:.45;pointer-events:none}
.cast-choice{position:relative;z-index:20;margin:-16px auto 0;max-width:480px;min-height:152px}
.cast-count{font-family:var(--mono);color:var(--deep-body);font-size:.75rem}
.cast-choice h3{color:var(--card);font-size:clamp(20px,3vw,27px);margin:5px 0 16px;height:64px;display:flex;align-items:center;justify-content:center}
.cast-confirm{background:var(--card);color:var(--blue-navy);border:0;border-radius:var(--r-ctl);padding:15px 30px;font:600 1rem var(--font);min-height:48px;cursor:pointer}
.cast-controls{display:flex;justify-content:center;align-items:center;gap:18px;margin-top:14px}
.cast-controls button,.cast-pause{min-width:44px;min-height:44px;border:1px solid var(--deep-line);border-radius:var(--r-ctl);background:transparent;color:var(--card);font:500 .85rem var(--font);cursor:pointer;padding:8px 12px}
.cast-controls span{color:var(--deep-body);font-size:.8rem}
.welcome button:focus-visible,.welcome a:focus-visible{outline:3px solid var(--card);outline-offset:4px}
.cast-browse{margin-top:18px;display:flex;justify-content:center;gap:20px;align-items:center}
.cast-browse a{color:var(--deep-body);font-size:.85rem;text-underline-offset:5px}
.welcome-intro{position:absolute;inset:0;background:var(--blue-navy);z-index:30;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden}
.welcome-intro[hidden]{display:none}
.welcome .welcome-intro{position:fixed;inset:64px 0 0;z-index:40}
@media(max-width:1100px){.welcome .welcome-intro{top:112px}}
.welcome-intro strong{color:var(--card);font-size:clamp(70px,14vw,200px);line-height:.88;letter-spacing:-.075em;display:block;position:relative}
.welcome-intro p{color:var(--deep-body);margin-top:30px}
.welcome-intro button{position:absolute;bottom:30px;background:transparent;border:1px solid var(--deep-line);color:var(--card);border-radius:var(--r-ctl);padding:12px 20px;min-height:44px;cursor:pointer}
.welcome-intro::before{content:"";position:absolute;width:80vw;height:80vw;border:1px solid var(--deep-hair);border-radius:50%;opacity:.6}
.welcome-intro.is-running strong{animation:take-control-in 1s both}
.welcome-intro.is-running strong:nth-child(2){animation-delay:.18s}
.welcome-intro.is-running::before{animation:control-orbit 2.8s both}
@keyframes take-control-in{from{opacity:.65;transform:translateY(25px) scale(1.04);filter:blur(0)}to{opacity:1;transform:none;filter:blur(0)}}
@keyframes control-orbit{from{transform:scale(.2);opacity:0}to{transform:scale(1.3);opacity:.6}}
.welcome-ready .hero{padding:48px 0}
.welcome-ready .hero .phone,.welcome-ready .hero-note{display:none}
.welcome-ready .hero-in{display:block;max-width:900px;text-align:center}
.welcome-ready .hero h1{font-size:clamp(30px,4vw,48px)}
.welcome-ready .hero .sub{margin-left:auto;margin-right:auto}
.welcome-ready .hero-acts{justify-content:center}
.welcome-ready .start>.wrap{padding:32px 20px!important}
.welcome-details{max-width:1120px;margin:16px auto;border-top:1px solid var(--line)}
.welcome-details>summary{padding:22px 20px;cursor:pointer;font-weight:600;color:var(--ink);min-height:44px}
.welcome-details>summary:focus-visible{outline:2px solid var(--blue);outline-offset:2px}
.welcome-details section{padding-top:24px;padding-bottom:32px}
.welcome-ready .waterline{display:none}
.industry-options>summary{padding:15px 0;cursor:pointer;font-weight:600;color:var(--ink)}
.welcome-ready .foot nav{flex-wrap:wrap;max-width:100%}
@media(min-width:700px) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .welcome.has-motion .cast-person.is-current .cast-art{animation:cast-greeting 2.8s ease-in-out both}
 @keyframes cast-greeting{0%{transform:rotateY(-15deg) translateY(12px)}35%{transform:rotateY(0) translateY(-4px) rotate(-1deg)}65%{transform:rotate(1deg)}100%{transform:none}}
}
@media(max-width:600px){.welcome{min-height:625px;padding-top:30px}.cast-stage{height:267px}.cast-person{width:240px;height:267px;margin-left:-120px}.cast-choice{margin-top:-6px}.cast-controls span{max-width:170px}.cast-pause{display:none}.welcome-details{margin:8px 16px}.welcome-ready .hero{padding:30px 0}}
@media(prefers-reduced-motion:reduce){.cast-person{transition:none}.welcome-intro{display:none}.cast-pause{display:none}}

/* Desktop stage: perspective belongs to the people, never to the fixed CTA. */
.motion-scenery{display:none}
/* Navigation is a persistent layer above every marketing scene. */
body{padding-top:64px}
header.nav{position:fixed;inset:0 0 auto;z-index:50;background:var(--card)}
nav.links a[href="#pricing"]{display:inline-flex}
@media(max-width:1100px){
 body{padding-top:112px}
 header.nav .nav-in{height:112px;flex-wrap:wrap;gap:0 12px;padding:8px 16px 0}
 header.nav .lockup{height:48px}
 header.nav .langctl{margin-inline-start:auto}
 header.nav nav.links{display:flex;order:10;flex:0 0 100%;margin:0;overflow-x:auto;overscroll-behavior-inline:contain;white-space:nowrap;height:48px;scrollbar-width:thin;align-items:center}
 header.nav nav.links a{flex:none}
 header.nav #menu-btn,header.nav #mobile-menu{display:none!important}
 section{scroll-margin-top:128px}
}
@media(min-width:700px) and (pointer:fine){
 .welcome{background:var(--deep);padding-top:22px}
 .welcome::before{background:radial-gradient(ellipse at var(--light-x,50%) 58%,var(--blue-navy),transparent 65%)}
 .welcome .cast-stage{height:340px;margin-top:24px;perspective:1050px}
 .welcome .cast-person{top:22px;overflow:visible;transform:translate3d(var(--depth-x,0px),var(--depth-y,0px),var(--depth-z,0px)) rotateY(var(--turn,0deg)) scale(var(--scale,1));transition:transform .95s cubic-bezier(.16,1,.3,1),opacity .8s;transform-origin:50% 90%}
 .welcome .cast-person.is-current{transform:translate3d(0,12px,120px) scale(1.14)}
 .welcome .cast-person::after{content:"";position:absolute;left:18%;right:18%;bottom:-9px;height:16px;background:var(--deep);filter:blur(8px);border-radius:50%;opacity:.8}
 .welcome .cast-person.is-current::after{background:var(--deep-hair);filter:blur(14px);height:12px;bottom:-10px;opacity:.65}
 .welcome .cast-person:not(.is-current) .cast-art{filter:brightness(.7) saturate(.7)}
 .welcome .cast-person.is-current .cast-art{filter:drop-shadow(0 0 18px color-mix(in srgb,var(--deep-hair) 35%,transparent))}
 .welcome .cast-floor{bottom:8px;left:8%;width:84%;height:70px;border-color:var(--deep-hair);box-shadow:0 0 30px color-mix(in srgb,var(--blue) 20%,transparent),inset 0 0 20px color-mix(in srgb,var(--blue) 20%,transparent)}
 .welcome .cast-choice{margin-top:6px}
 .welcome .cast-count{letter-spacing:.3em}
 .welcome .cast-choice h3{height:40px;margin-bottom:12px}
 .welcome .cast-confirm{box-shadow:0 0 38px color-mix(in srgb,var(--blue) 30%,transparent);transition:box-shadow .3s,transform .3s}
 .welcome .cast-confirm:hover{transform:translateY(-2px);box-shadow:0 0 50px color-mix(in srgb,var(--deep-hair) 50%,transparent)}
 .motion-scenery{display:block;position:absolute;inset:0;overflow:hidden;z-index:-1;pointer-events:none;perspective:700px}
 .stage-aurora{position:absolute;inset:-30%;background:conic-gradient(from 40deg at 50% 60%,transparent 0deg,var(--blue-navy) 60deg,transparent 120deg,var(--blue) 160deg,transparent 190deg,var(--blue-navy) 270deg,transparent 360deg);filter:blur(55px);opacity:.45;transform:translateX(var(--parallax,0px))}
 .stage-grid{position:absolute;left:-40%;right:-40%;height:90%;top:48%;background-image:linear-gradient(color-mix(in srgb,var(--deep-hair) 24%,transparent) 1px,transparent 1px),linear-gradient(90deg,color-mix(in srgb,var(--deep-hair) 24%,transparent) 1px,transparent 1px);background-size:72px 72px;transform:rotateX(68deg);transform-origin:50% 0;mask-image:linear-gradient(transparent,black 30%,transparent 90%)}
 .stage-orbit{position:absolute;left:50%;top:47%;width:850px;height:850px;margin:-425px;border:1px solid color-mix(in srgb,var(--deep-hair) 25%,transparent);border-radius:50%;transform:rotateX(68deg) rotateZ(-22deg)}
 .orbit-two{width:1100px;height:1100px;margin:-550px;transform:rotateX(72deg) rotateZ(30deg)}
 .orbit-three{width:650px;height:650px;margin:-325px;border-style:dashed;transform:rotateX(65deg) rotateZ(10deg)}
 .stage-beacon{position:absolute;left:50%;top:24%;width:440px;height:440px;margin-left:-220px;background:radial-gradient(ellipse,color-mix(in srgb,var(--blue) 30%,transparent),transparent 68%);filter:blur(15px)}
 .stage-sparks i{position:absolute;width:3px;height:3px;border-radius:50%;background:var(--deep-body);left:calc(5% + var(--spark)*6%);top:calc(18% + mod(var(--spark)*17,63)*1%);opacity:.3;box-shadow:0 0 12px var(--deep-hair)}
 .welcome.has-motion .stage-aurora{animation:aurora-drift 18s ease-in-out infinite alternate}
 .welcome.has-motion .orbit-three{animation:orbital-drift 30s linear infinite}
 .welcome.has-motion .stage-grid{animation:grid-travel 12s linear infinite}
 .welcome.has-motion .stage-sparks i{animation:spark-rise 6s ease-in-out infinite;animation-delay:calc(var(--spark)*-.7s)}
 .welcome.has-motion .cast-person.is-current .cast-art{animation:step-into-light 1.05s cubic-bezier(.16,1,.3,1) both}
 .welcome.motion-offscreen .cast-stage *, .welcome.motion-offscreen .motion-scenery *, .welcome:not(.has-motion) .motion-scenery *{animation-play-state:paused!important}
 @keyframes step-into-light{from{transform:translateY(-14px) rotateY(-12deg);filter:brightness(.75)}65%{transform:translateY(3px) rotateY(2deg)}to{transform:none}}
 @keyframes aurora-drift{to{transform:translateX(var(--parallax,0px)) rotate(24deg) scale(1.2)}}
 @keyframes orbital-drift{to{transform:rotateX(65deg) rotateZ(370deg)}}
 @keyframes grid-travel{to{background-position:0 72px}}
 @keyframes spark-rise{50%{transform:translateY(-28px);opacity:.8}to{transform:translateY(0);opacity:.3}}
}
@media(prefers-reduced-motion:reduce){.motion-scenery{display:none}.welcome .cast-person{transition:none}.welcome .cast-confirm:hover{transform:none}}

/* One spacing rhythm; avoid stacking section padding with container padding. */
.welcome-ready .hero{padding:0}
.welcome-ready .hero-in{padding:40px 24px}
.welcome-ready .hero h1{margin:0 auto}
.welcome-ready .hero .eyebrow{margin-bottom:12px}
.welcome-ready .hero .sub{margin-top:16px}
.welcome-ready .hero-acts{margin-top:24px}
.welcome-details{margin:0 auto}
.welcome-details>summary{padding:20px 24px}
.welcome-ready .pricing{padding-top:32px;padding-bottom:36px}
.welcome-ready .demo-sec{padding-top:40px;padding-bottom:40px}
.cast-choice{min-height:0}
.cast-controls{margin-top:16px}
.cast-browse{margin-top:10px}
@media(min-width:700px) and (pointer:fine) and (max-height:800px){
 .welcome{padding:16px 20px 20px;min-height:0}
 .welcome h2{font-size:36px;line-height:1.05}
 .welcome h2 br{display:none}
 .welcome-copy{font-size:.9rem}
 .welcome .cast-stage{height:242px;margin-top:16px}
 .welcome .cast-person{width:198px;height:220px;margin-left:-99px;top:14px}
 .welcome .cast-choice{margin-top:4px}
 .welcome .cast-choice h3{height:36px;font-size:24px;margin:0 0 8px}
 .welcome .cast-controls{margin-top:10px}
 .welcome .cast-browse{margin-top:0}
 .welcome .cast-floor{bottom:0}
}
@media(max-width:699px){.welcome-details{margin:0 16px}.welcome-details>summary{padding:18px 4px}.welcome-ready .hero-in{padding:32px 20px}}

/* Portrait framing: closer head-to-torso crop, stable during the 3D entrance. */
.welcome .cast-person{overflow:visible}
.welcome .cast-art{scale:1;transform-origin:50% 5%;clip-path:none;transition:scale .8s cubic-bezier(.16,1,.3,1),clip-path .8s cubic-bezier(.16,1,.3,1)}
.welcome .cast-person.is-current .cast-art{scale:1.6;clip-path:inset(0 0 37.5% 0)}
/* Compact footer: related copy stays together; link rows keep 44px targets. */
.welcome-ready footer{padding:24px 0}
.welcome-ready .foot{display:grid;gap:4px;line-height:1.45}
.welcome-ready .foot nav{margin-inline-start:0;gap:0 18px;justify-content:flex-start}
.welcome-ready .foot .tag{margin:0}
.welcome-ready .foot .foot-inds{margin-top:8px;padding-top:8px;gap:0 18px}
.welcome-ready .foot a{padding-block:6px;min-height:44px}

/* Pricing spotlight: the live amount remains the existing profile engine's text. */
.welcome-ready .price-card{position:relative;isolation:isolate;overflow:hidden;background:var(--blue-navy);color:var(--deep-ink);border:0;box-shadow:none;padding:32px; margin-top:24px}
.welcome-ready .price-card::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(ellipse at 95% 5%,var(--blue),transparent 65%);opacity:.85;pointer-events:none}
.welcome-ready .price-card::after{content:"";position:absolute;width:480px;height:480px;right:-230px;top:-250px;border:1px solid color-mix(in srgb,var(--deep-ink) 18%,transparent);border-radius:50%;pointer-events:none;z-index:-1}
.welcome-ready .price-where{color:var(--deep-body);font-size:.8rem;letter-spacing:.1em}
.welcome-ready .price-head{gap:12px 24px;align-items:center;margin-top:14px}
.welcome-ready .price-amt{font-size:clamp(64px,9vw,112px);font-weight:800;line-height:1;letter-spacing:-.065em;color:var(--price-go);overflow-wrap:anywhere;max-width:100%;font-variant-numeric:lining-nums tabular-nums}
.welcome-ready .price-card{--price-go:#6ee7b7} /* Existing emerald-300 on-dark success tone; owner-directed pricing accent. */
.welcome-ready .price-unit{color:var(--deep-ink);font-size:1rem;max-width:230px;line-height:1.5}
.welcome-ready .price-year{color:var(--deep-ink);border-color:var(--deep-line);margin-top:24px;padding-top:18px;font-size:1rem}
.welcome-ready .price-acts{margin-top:24px;gap:16px 24px}
.welcome-ready .price-acts .cta{background:var(--card);color:var(--blue-navy);padding:14px 24px}
.welcome-ready .price-acts .cta:hover{background:var(--fill)}
.welcome-ready .price-card .quiet-link,.welcome-ready .price-fine a{color:var(--card);text-decoration:underline;text-underline-offset:4px}
.welcome-ready .price-fine{color:var(--deep-body);margin-top:20px;max-width:76ch;line-height:1.55}
.welcome-ready .price-card :focus-visible{outline-color:var(--card)}
@media(max-width:600px){.welcome-ready .price-card{padding:24px}.welcome-ready .price-head{align-items:flex-start;flex-direction:column;gap:10px}.welcome-ready .price-unit{max-width:none}.welcome-ready .price-amt{font-size:clamp(56px,15vw,80px)}}
@media(min-width:700px) and (pointer:fine){
 .welcome .cast-person[data-layer="front"]{z-index:20}
 .welcome .cast-person[data-layer="middle"]{z-index:12}
 .welcome .cast-person[data-layer="back"]{z-index:6}
 .welcome .cast-person[data-layer="middle"] .cast-art{filter:brightness(.72) saturate(.8)}
 .welcome .cast-person[data-layer="back"] .cast-art{filter:brightness(.55) saturate(.6)}
 .welcome .cast-floor::before,.welcome .cast-floor::after{content:"";position:absolute;border:1px solid var(--deep-hair);border-radius:50%;pointer-events:none}
 .welcome .cast-floor::before{inset:12px 24%;opacity:.65;box-shadow:0 0 24px color-mix(in srgb,var(--blue) 30%,transparent)}
 .welcome .cast-floor::after{inset:-22px -10%;opacity:.18}
}


/* Individual portraits preserve full gestures rather than cropping hands to a torso box. */
.welcome .cast-person.has-portrait .cast-art{background-image:var(--portrait);background-size:contain;background-position:center top}
.welcome .cast-person.is-current .cast-art{scale:1.35;clip-path:none}
.welcome .cast-stage{height:390px}
.welcome .cast-person.has-portrait .cast-art{mask-image:linear-gradient(to bottom,black 94%,transparent 100%)}
@media(min-width:700px) and (pointer:fine) and (max-height:800px){
 .welcome .cast-stage{height:320px}
 .welcome .cast-person{width:240px;height:267px;margin-left:-120px;top:8px}
}
@media(max-width:699px){
 .welcome .cast-stage{height:300px}
 .welcome .cast-person{width:210px;height:234px;margin-left:-105px}
 .welcome .cast-person.is-current .cast-art{scale:1.25}
}
/* Leave breathing room above the head and below every gesture. */
.welcome .cast-person.is-current .cast-art{scale:1.2}
@media(min-width:700px) and (pointer:fine){.welcome .cast-person{top:24px}}
@media(min-width:700px) and (pointer:fine) and (max-height:800px){.welcome .cast-stage{height:310px}}
/* Editorial revision: explain, personalize, demonstrate, then convert. */
.welcome-ready{--section-space:clamp(40px,6vw,80px);--content-width:1120px}
.welcome-ready .wrap{max-width:var(--content-width);padding-inline:24px}
.welcome-ready header.nav{border-bottom:1px solid var(--line)}
.welcome-ready header.nav .links{gap:28px}
.welcome-ready header.nav .links a{font-size:.88rem;font-weight:500;min-height:44px;display:inline-flex;align-items:center}
.welcome-ready .hero{background:var(--card);overflow:hidden;padding:0}
.welcome-ready .hero-in{max-width:var(--content-width);margin:auto;display:grid;grid-template-columns:minmax(0,1.5fr) minmax(230px,.7fr);gap:64px;align-items:center;text-align:left;padding:64px 24px 56px}
.welcome-ready .hero h1{font-size:clamp(40px,4.7vw,68px);line-height:1.06;letter-spacing:-.045em;font-weight:700;max-width:15ch;margin:0}
.welcome-ready .hero .eyebrow{font-size:.8rem;font-weight:500;text-transform:none;letter-spacing:0;margin:0 0 24px;color:var(--blue)}
.welcome-ready .hero .sub{font-size:1rem;line-height:1.7;max-width:49ch;margin:24px 0 0;color:var(--body)}
.welcome-ready .hero-acts{justify-content:flex-start;gap:16px 24px;margin-top:28px}
.welcome-ready .hero-acts a{font-size:.9rem}
.welcome-ready .hero-acts a[href^="mailto:"]{display:none}
.welcome-ready .hero .phone{display:block;position:relative;width:250px;transform:rotate(3deg);box-shadow:var(--shadow-lg)}
.visitor-journey{max-width:var(--content-width);margin:0 auto;display:grid;grid-template-columns:repeat(3,1fr);padding:0 24px 24px;gap:24px}
.visitor-journey a{border-top:1px solid var(--line);min-height:64px;display:flex;align-items:center;gap:16px;text-decoration:none;color:var(--ink);font-size:.9rem}
.visitor-journey span{font:400 .75rem var(--mono);color:var(--muted)}
.visitor-journey b{margin-inline-start:auto;font-size:1.2rem;color:var(--blue);font-weight:400}
.visitor-journey a:hover{color:var(--blue);border-color:var(--blue)}
.visitor-journey a:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.welcome-ready .welcome{padding:48px 24px 32px;min-height:0;background:var(--deep)}
.welcome-ready .welcome-kicker{font-size:.8rem;color:var(--deep-body);margin:0 0 12px}
.welcome-ready .welcome h2{font-weight:600;letter-spacing:-.035em;font-size:clamp(30px,3.7vw,48px);line-height:1.1;margin:0 0 16px}
.welcome-ready .welcome h2 br{display:none}
.welcome-ready .welcome-copy{font-size:.95rem;line-height:1.5;max-width:42ch;margin:auto}
.welcome-ready .stage-grid{opacity:.25}
.welcome-ready .stage-orbit{opacity:.3}
.welcome-ready .stage-aurora{opacity:.22}
.welcome-ready .stage-sparks{opacity:.4}
.welcome-ready .cast-floor{opacity:.25}
.welcome-ready .cast-choice{margin-top:8px}
.welcome-ready .cast-choice h3{font-size:clamp(22px,2.4vw,30px);height:auto;min-height:36px;line-height:1.2;font-weight:600;letter-spacing:-.02em;margin:8px 0 16px}
.welcome-ready .cast-confirm{background:var(--blue);color:var(--card);box-shadow:none;border:0;min-height:48px}
.welcome-ready .cast-confirm:hover{background:var(--blue-hover,var(--blue));filter:brightness(1.08)}
.welcome-ready .cast-controls{gap:16px;margin-top:20px}
.welcome-ready .cast-controls span{max-width:220px;line-height:1.4}
.welcome-ready .cast-browse{margin-top:16px;flex-wrap:wrap;gap:8px 20px}
.cast-jump{font:500 .85rem var(--font);color:var(--card);background:var(--deep-2);border:1px solid var(--deep-line);border-radius:var(--r-ctl);min-height:44px;max-width:280px;padding:10px 36px 10px 12px}
.cast-jump option{color:var(--ink);background:var(--card)}
.welcome-ready .cast-browse>a{display:none}
.welcome-ready .cast-pause{border:0;text-decoration:underline;text-underline-offset:4px;color:var(--deep-body)}
.welcome-ready .start{background:var(--card);border-bottom:1px solid var(--line)}
.welcome-ready .start>.wrap{padding:40px 24px!important}
.welcome-ready .start h2,.welcome-ready .demo-sec h2,.welcome-ready .pricing h2{font-size:clamp(28px,3vw,40px);line-height:1.18;letter-spacing:-.03em;font-weight:600}
.welcome-ready .eyebrow{text-transform:none;letter-spacing:0;font-weight:500;font-size:.85rem;margin-bottom:12px}
.welcome-ready .demo-sec{padding-block:var(--section-space);background:var(--page)}
.welcome-ready .demo-acts{padding-top:20px}
.welcome-ready .pricing{background:var(--card);padding-block:var(--section-space);border-top:1px solid var(--line)}
.welcome-ready .pricing>.wrap>p:not(.eyebrow){font-size:1rem;line-height:1.65}
.welcome-ready .price-card{padding:clamp(24px,4vw,48px);margin-top:32px}
.welcome-ready .price-card::before{opacity:.35}
.welcome-ready .price-fine{font-size:.85rem;line-height:1.65}
.welcome-ready .welcome-details{max-width:var(--content-width);margin:0 auto;border-top:1px solid var(--line)}
.welcome-ready .welcome-details>summary{padding:24px;font-size:1rem;line-height:1.4;font-weight:500}
.welcome-ready .welcome-details[open]>summary{color:var(--blue)}
.welcome-ready .welcome-details>section{margin:0;padding:24px 0 40px}
.welcome-ready .contact{padding-block:var(--section-space)}
.welcome-ready footer{padding:32px 0}
.welcome-ready .foot{font-size:.8rem;line-height:1.6}
.welcome-ready .foot .foot-inds{font-size:.75rem;gap:0 20px}
@media(max-width:900px){
 .welcome-ready .hero-in{gap:32px;grid-template-columns:minmax(0,1fr) 230px;padding-top:44px;padding-bottom:40px}
 .welcome-ready .hero .phone{width:220px}
 .welcome-ready .hero h1{font-size:clamp(36px,5vw,48px)}
}
@media(max-width:699px){
 .welcome-ready .hero-in{display:block;padding:40px 24px 24px}
 .welcome-ready .hero h1{font-size:42px;max-width:17ch}
 .welcome-ready .hero .phone{display:none}
 .welcome-ready .hero .sub{font-size:.95rem;margin-top:20px}
 .welcome-ready .hero .eyebrow{margin-bottom:16px}
 .visitor-journey{gap:12px;padding:0 24px 24px}
 .visitor-journey a{font-size:.75rem;display:block;padding-top:12px;line-height:1.5}
 .visitor-journey span{display:block;margin-bottom:6px}
 .visitor-journey b{display:none}
 .welcome-ready .welcome{padding:32px 16px 24px}
 .welcome-ready .welcome h2{font-size:30px}
 .welcome-ready .welcome-details{margin-inline:16px}
 .welcome-ready .welcome-details>summary{padding:20px 8px}
 .welcome-ready header.nav .links{gap:24px}
 .welcome-ready .cast-jump{max-width:240px}
}
@media(prefers-reduced-motion:reduce){.welcome-ready .hero .phone{transform:none}}
@media(max-width:699px){.welcome-ready header.nav .links{gap:16px;justify-content:space-between}.welcome-ready header.nav .links a{font-size:.8rem;padding-inline:0}}
/* The brand's top anchor must clear the persistent header too. */
#top{scroll-margin-top:64px}
@media(max-width:1100px){#top{scroll-margin-top:112px}}
/* One industry selector: the original cards remain a hidden profile-engine seam. */
.welcome-ready #ind-cards[hidden]{display:none!important}
/* Physical device detail, built from the existing preview rather than another image. */
.welcome-ready .hero-in{perspective:1200px;isolation:isolate}
.welcome-ready .hero-in>div:first-child{position:relative;z-index:2}
.welcome-ready .hero .phone{position:relative;z-index:1;border:2px solid var(--muted);box-shadow:inset 2px 0 2px var(--deep-body),inset -4px 0 3px var(--deep),var(--shadow-lg);transform-style:preserve-3d;transform:rotateY(-12deg) rotateZ(3deg)}
.welcome-ready .hero .phone::before{content:"";position:absolute;z-index:3;top:17px;left:50%;width:54px;height:10px;transform:translateX(-50%);border-radius:999px;background:var(--deep)}
.welcome-ready .hero .phone::after{content:"";position:absolute;z-index:3;right:-5px;top:95px;width:4px;height:42px;border-radius:var(--r-ctl);background:var(--muted)}
.welcome-ready .hero .phone .screen{position:relative;backface-visibility:hidden}
.welcome-ready .hero .phone .screen::after{content:"";position:absolute;inset:0;pointer-events:none;border-radius:inherit;background:linear-gradient(115deg,transparent 35%,color-mix(in srgb,var(--card) 25%,transparent) 48%,transparent 62%)}
.welcome-ready .hero .phone .bar{padding-top:12px;height:48px}
@media(min-width:700px) and (pointer:fine) and (prefers-reduced-motion:no-preference){
 .welcome-ready .hero.phone-arrived .phone{animation:phone-emerge 2.4s cubic-bezier(.22,.7,.2,1) both}
 @keyframes phone-emerge{
  0%{opacity:0;transform:translate3d(-240px,36px,-320px) rotateY(-72deg) rotateZ(-14deg) scale(.68)}
  18%{opacity:1}
  55%{transform:translate3d(-70px,-24px,100px) rotateY(18deg) rotateZ(7deg) scale(1.06)}
  78%{transform:translate3d(8px,-5px,35px) rotateY(-18deg) rotateZ(1deg) scale(1.02)}
  100%{opacity:1;transform:translate3d(0,0,0) rotateY(-12deg) rotateZ(3deg) scale(1)}
 }
}
@media(prefers-reduced-motion:reduce){.welcome-ready .hero .phone{transform:none;animation:none!important}}

/* Photo avatars and the app's separate name/role bands. */
.kt-nm,.kt-ro{display:block;line-height:1.4}
.kt-r1{gap:8px}
.kt-av{position:relative;overflow:hidden;width:48px;height:48px;background:#e8eef7}
.kt-av img{position:absolute;width:330%;max-width:none;height:auto;left:-115%;top:-7%;}
.kt-acts{gap:4px}
.hero-attendance{direction:ltr;text-align:left;width:320px;transform-origin:top left;zoom:.7;padding-top:24px}
.hero-attendance svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.welcome-ready .hero .phone .screen{background:#f8fafc;overflow:hidden}
.hero-attendance .kt-body{padding-bottom:42px}
.hero-attendance .kt-card:last-child{display:block}
.hero-sample{display:block;width:100%;height:auto}
.hero-attendance .kt-nav{font-size:10px}
@media(max-width:900px){.hero-attendance{zoom:.61}}

/* Country selection answers availability, without corporate paperwork. */
#jur-note{background:transparent;border:0;border-top:1px solid var(--line);border-radius:0;padding:18px 0 0;color:var(--body)}
#jur-note>strong{color:var(--ink)}
#jur-note p{margin:4px 0;font-size:.86rem;line-height:1.55}
#jur-note .payroll-availability{color:var(--muted)}
.payroll-details{margin-top:10px}
.payroll-details summary{cursor:pointer;font-size:.82rem;font-weight:600;min-height:32px;padding:5px 0}
#stamps[hidden],#mor[hidden]{display:none!important}
/* Distinct workflow steps: color supports the numbered labels, never replaces them. */
#demo-steps .stepc{--step-bg:#eff6ff;--step-border:#93c5fd;--step-ink:#1e40af;background:var(--step-bg);border-color:var(--step-border);color:#172033}
#demo-steps .stepc:nth-child(2){--step-bg:#f5f3ff;--step-border:#c4b5fd;--step-ink:#6d28d9}
#demo-steps .stepc:nth-child(3){--step-bg:#ecfdf5;--step-border:#6ee7b7;--step-ink:#047857}
#demo-steps .stepc:nth-child(4){--step-bg:#fff7ed;--step-border:#fdba74;--step-ink:#9a3412}
#demo-steps .stepc:nth-child(5){--step-bg:#ecfeff;--step-border:#67e8f9;--step-ink:#0e7490}
#demo-steps .stepc:nth-child(6){--step-bg:#fdf2f8;--step-border:#f9a8d4;--step-ink:#9d174d}
#demo-steps .stepc .n{color:var(--step-ink);font-weight:700}
#demo-steps .stepc.lit{border-color:var(--step-ink);box-shadow:0 3px 12px color-mix(in srgb,var(--step-ink) 12%,transparent)}
/* Read the six-step sequence left-to-right, then back along the second row. */
#demo-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:32px 30px;align-items:stretch}
#demo-steps .stepc{min-width:0;margin:0}
#demo-steps .stepc:nth-child(4){grid-column:3;grid-row:2}
#demo-steps .stepc:nth-child(5){grid-column:2;grid-row:2}
#demo-steps .stepc:nth-child(6){grid-column:1;grid-row:2}
#demo-steps .stepc:not(:last-child)::after{content:"";position:absolute;width:9px;height:9px;border-top:2px solid var(--step-ink);border-right:2px solid var(--step-ink);right:-21px;top:50%;--arrow-turn:45deg;--arrow-x:5px;--arrow-y:0px;transform:rotate(var(--arrow-turn));animation:workflow-arrow 1.6s ease-in-out infinite;pointer-events:none}
#demo-steps .stepc:nth-child(3)::after{right:50%;top:auto;bottom:-22px;--arrow-turn:135deg;--arrow-x:0px;--arrow-y:5px}
#demo-steps .stepc:nth-child(4)::after,#demo-steps .stepc:nth-child(5)::after{right:auto;left:-21px;--arrow-turn:225deg;--arrow-x:-5px}
@keyframes workflow-arrow{0%,100%{transform:translate(0,0) rotate(var(--arrow-turn));opacity:.55}50%{transform:translate(var(--arrow-x),var(--arrow-y)) rotate(var(--arrow-turn));opacity:1}}
@media(max-width:600px){
 #demo-steps{grid-template-columns:1fr;gap:30px}
 #demo-steps .stepc:nth-child(n){grid-column:auto;grid-row:auto}
 #demo-steps .stepc:not(:last-child)::after{left:50%;right:auto;top:auto;bottom:-21px;--arrow-turn:135deg;--arrow-x:0px;--arrow-y:5px}
}
@media(prefers-reduced-motion:reduce){#demo-steps .stepc:not(:last-child)::after{animation:none;opacity:1}}

.price-product{font-size:1.5rem;font-weight:700;color:#fff;margin:0 0 6px}
.price-scope{font-size:.9rem;line-height:1.5;color:#cbd5e1;margin:0 0 24px;max-width:52ch}

/* Preserve the native, keyboard-accessible country selector. */
.country-picker-control{position:relative}
.country-picker.has-flag #reg-sel{padding-inline-start:58px}
.country-flag{position:absolute;inset-inline-start:16px;top:50%;transform:translateY(-50%);width:28px;height:20px;object-fit:contain;pointer-events:none;filter:drop-shadow(0 1px 2px #0002)}
.country-flag[hidden]{display:none}

/* Industry settings crossfade behind the cast; controls stay above the scenery. */
.industry-scenes{position:absolute;inset:0;z-index:-1;pointer-events:none;overflow:hidden}
.industry-scene{position:absolute;inset:0;background-position:center;background-size:cover;opacity:0;transform:scale(1.04);transition:opacity .8s ease,transform 1.4s ease}
.industry-scene.is-active{opacity:1;transform:scale(1)}
.welcome .motion-scenery{opacity:.35}
@media(max-width:699px){.industry-scene{background-size:auto 100%;transition:none;transform:none}}
@media(prefers-reduced-motion:reduce){.industry-scene{transition:none;transform:none}}

/* Photographic environments replace the diagram scenery. */
.welcome .motion-scenery,.welcome .cast-floor{display:none!important}
.industry-scenes::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(5,12,25,.78) 0%,rgba(5,12,25,.28) 42%,rgba(5,12,25,.48) 66%,rgba(5,12,25,.94) 100%)}
.industry-scene{background-size:cover;background-position:center}
.welcome::before{background:#0d1729}

.country-availability{margin:8px 0 0;color:#e2e8f0;font-size:.82rem;line-height:1.5}

/* Product identifiers: Lucide (ISC), matching the app icon family.
   CSS masks inherit each product colour; empty generated content is decorative. */
#modules .featured{--module-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%206v6l4%202%22%2F%3E%3Ccircle%20cx%3D%2212%22%20cy%3D%2212%22%20r%3D%2210%22%2F%3E%3C%2Fsvg%3E")}
#modules [data-mod="kwikfleet"]{--module-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M14%2018V6a2%202%200%200%200-2-2H4a2%202%200%200%200-2%202v11a1%201%200%200%200%201%201h2%22%2F%3E%3Cpath%20d%3D%22M15%2018H9%22%2F%3E%3Cpath%20d%3D%22M19%2018h2a1%201%200%200%200%201-1v-3.65a1%201%200%200%200-.22-.624l-3.48-4.35A1%201%200%200%200%2017.52%208H14%22%2F%3E%3Ccircle%20cx%3D%2217%22%20cy%3D%2218%22%20r%3D%222%22%2F%3E%3Ccircle%20cx%3D%227%22%20cy%3D%2218%22%20r%3D%222%22%2F%3E%3C%2Fsvg%3E")}
#modules [data-mod="kwikinventory"]{--module-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M2.97%2012.92A2%202%200%200%200%202%2014.63v3.24a2%202%200%200%200%20.97%201.71l3%201.8a2%202%200%200%200%202.06%200L12%2019v-5.5l-5-3-4.03%202.42Z%22%2F%3E%3Cpath%20d%3D%22m7%2016.5-4.74-2.85%22%2F%3E%3Cpath%20d%3D%22m7%2016.5%205-3%22%2F%3E%3Cpath%20d%3D%22M7%2016.5v5.17%22%2F%3E%3Cpath%20d%3D%22M12%2013.5V19l3.97%202.38a2%202%200%200%200%202.06%200l3-1.8a2%202%200%200%200%20.97-1.71v-3.24a2%202%200%200%200-.97-1.71L17%2010.5l-5%203Z%22%2F%3E%3Cpath%20d%3D%22m17%2016.5-5-3%22%2F%3E%3Cpath%20d%3D%22m17%2016.5%204.74-2.85%22%2F%3E%3Cpath%20d%3D%22M17%2016.5v5.17%22%2F%3E%3Cpath%20d%3D%22M7.97%204.42A2%202%200%200%200%207%206.13v4.37l5%203%205-3V6.13a2%202%200%200%200-.97-1.71l-3-1.8a2%202%200%200%200-2.06%200l-3%201.8Z%22%2F%3E%3Cpath%20d%3D%22M12%208%207.26%205.15%22%2F%3E%3Cpath%20d%3D%22m12%208%204.74-2.85%22%2F%3E%3Cpath%20d%3D%22M12%2013.5V8%22%2F%3E%3C%2Fsvg%3E")}
#modules [data-mod="kwikdocs"]{--module-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M15%202h-4a2%202%200%200%200-2%202v11a2%202%200%200%200%202%202h8a2%202%200%200%200%202-2V8%22%2F%3E%3Cpath%20d%3D%22M16.706%202.706A2.4%202.4%200%200%200%2015%202v5a1%201%200%200%200%201%201h5a2.4%202.4%200%200%200-.706-1.706z%22%2F%3E%3Cpath%20d%3D%22M5%207a2%202%200%200%200-2%202v11a2%202%200%200%200%202%202h8a2%202%200%200%200%201.732-1%22%2F%3E%3C%2Fsvg%3E")}
#modules [data-mod="kwikhr"]{--module-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M18%2021a8%208%200%200%200-16%200%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%228%22%20r%3D%225%22%2F%3E%3Cpath%20d%3D%22M22%2020c0-3.37-2-6.5-4-8a5%205%200%200%200-.45-8.3%22%2F%3E%3C%2Fsvg%3E")}
#modules [data-mod="kwiksafe"]{--module-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M20%2013c0%205-3.5%207.5-7.66%208.95a1%201%200%200%201-.67-.01C7.5%2020.5%204%2018%204%2013V6a1%201%200%200%201%201-1c2%200%204.5-1.2%206.24-2.72a1.17%201.17%200%200%201%201.52%200C14.51%203.81%2017%205%2019%205a1%201%200%200%201%201%201z%22%2F%3E%3Cpath%20d%3D%22m9%2012%202%202%204-4%22%2F%3E%3C%2Fsvg%3E")}
#modules [data-mod="kwikqs"]{--module-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M21.3%2015.3a2.4%202.4%200%200%201%200%203.4l-2.6%202.6a2.4%202.4%200%200%201-3.4%200L2.7%208.7a2.41%202.41%200%200%201%200-3.4l2.6-2.6a2.41%202.41%200%200%201%203.4%200Z%22%2F%3E%3Cpath%20d%3D%22m14.5%2012.5%202-2%22%2F%3E%3Cpath%20d%3D%22m11.5%209.5%202-2%22%2F%3E%3Cpath%20d%3D%22m8.5%206.5%202-2%22%2F%3E%3Cpath%20d%3D%22m17.5%2015.5%202-2%22%2F%3E%3C%2Fsvg%3E")}
#modules [data-mod="kwikfinance"]{--module-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%2016v5%22%2F%3E%3Cpath%20d%3D%22M16%2014v7%22%2F%3E%3Cpath%20d%3D%22M20%2010v11%22%2F%3E%3Cpath%20d%3D%22m22%203-8.646%208.646a.5.5%200%200%201-.708%200L9.354%208.354a.5.5%200%200%200-.707%200L2%2015%22%2F%3E%3Cpath%20d%3D%22M4%2018v3%22%2F%3E%3Cpath%20d%3D%22M8%2014v7%22%2F%3E%3C%2Fsvg%3E")}
#modules [data-roadmap="kwikpay"]{--module-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M19%207V4a1%201%200%200%200-1-1H5a2%202%200%200%200%200%204h15a1%201%200%200%201%201%201v4h-3a2%202%200%200%200%200%204h3a1%201%200%200%200%201-1v-2a1%201%200%200%200-1-1%22%2F%3E%3Cpath%20d%3D%22M3%205v14a2%202%200%200%200%202%202h15a1%201%200%200%200%201-1v-4%22%2F%3E%3C%2Fsvg%3E")}
#modules [data-mod="kwikai"]{--module-icon:url("data:image/svg+xml,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2024%2024%22%20fill%3D%22none%22%20stroke%3D%22black%22%20stroke-width%3D%222%22%20stroke-linecap%3D%22round%22%20stroke-linejoin%3D%22round%22%3E%3Cpath%20d%3D%22M12%205a3%203%200%201%200-5.997.125%204%204%200%200%200-2.526%205.77%204%204%200%200%200%20.556%206.588A4%204%200%201%200%2012%2018Z%22%2F%3E%3Cpath%20d%3D%22M9%2013a4.5%204.5%200%200%200%203-4%22%2F%3E%3Cpath%20d%3D%22M6.003%205.125A3%203%200%200%200%206.401%206.5%22%2F%3E%3Cpath%20d%3D%22M3.477%2010.896a4%204%200%200%201%20.585-.396%22%2F%3E%3Cpath%20d%3D%22M6%2018a4%204%200%200%201-1.967-.516%22%2F%3E%3Cpath%20d%3D%22M12%2013h4%22%2F%3E%3Cpath%20d%3D%22M12%2018h6a2%202%200%200%201%202%202v1%22%2F%3E%3Cpath%20d%3D%22M12%208h8%22%2F%3E%3Cpath%20d%3D%22M16%208V5a2%202%200%200%201%202-2%22%2F%3E%3Ccircle%20cx%3D%2216%22%20cy%3D%2213%22%20r%3D%22.5%22%2F%3E%3Ccircle%20cx%3D%2218%22%20cy%3D%223%22%20r%3D%22.5%22%2F%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%2221%22%20r%3D%22.5%22%2F%3E%3Ccircle%20cx%3D%2220%22%20cy%3D%228%22%20r%3D%22.5%22%2F%3E%3C%2Fsvg%3E")}
#modules .mod h3{display:grid;grid-template-columns:20px minmax(0,1fr) auto;align-items:center;column-gap:8px}
#modules .featured h3{display:inline-flex;align-items:center;gap:8px}
#modules .mod h3::before,#modules .featured h3::before{content:"";display:block;width:20px;height:20px;flex:none;background-color:currentColor;-webkit-mask:var(--module-icon) center/contain no-repeat;mask:var(--module-icon) center/contain no-repeat}
