/* This stylesheet is independent of every existing page and global stylesheet. */
.justsha-website-page { --website-bg:#070707; --website-surface:#0d0d0d; --website-card:#111; --website-yellow:#ffd400; --website-muted:#a5a5a5; --website-border:rgba(255,255,255,.12); margin:0; background:var(--website-bg); color:#fff; font:400 16px/1.8 Inter,sans-serif; -webkit-font-smoothing:antialiased; }
.justsha-website-page *, .justsha-website-page *::before, .justsha-website-page *::after { box-sizing:border-box; }
.justsha-website-page ::selection { background:var(--website-yellow); color:#070707; }
.justsha-website-page :focus-visible { outline:2px solid var(--website-yellow); outline-offset:6px; }
.justsha-website-page a { color:inherit; text-decoration:none; }
.justsha-website-page button, .justsha-website-page input { font:inherit; }
.justsha-website-page button { cursor:pointer; }
.justsha-website-page p { color:var(--website-muted); margin:0 0 24px; }
.justsha-website-page h1, .justsha-website-page h2, .justsha-website-page h3 { font-family:Manrope,sans-serif; font-weight:500; line-height:1.12; letter-spacing:-.055em; margin:0; }
.justsha-website-page h3 { font-size:clamp(26px,2.5vw,40px); }
.justsha-website-page figure { margin:0; }
.justsha-website-page img { display:block; width:100%; height:100%; object-fit:cover; }
.justsha-website-page main { overflow:clip; }
.justsha-website-page [id] { scroll-margin-top:120px; }
.justsha-website-page [hidden] { display:none!important; }
.justsha-website-page .justsha-website-wrap { width:90%; max-width:1600px; margin-inline:auto; }
.justsha-website-page .justsha-website-section { padding-block:125px; }
.justsha-website-page .justsha-website-surface { background:var(--website-surface); border-block:1px solid var(--website-border); }
.justsha-website-page .justsha-website-heading { font-size:clamp(37px,4.5vw,72px); max-width:1100px; text-wrap:balance; }
.justsha-website-page .justsha-website-label { display:flex; gap:12px; align-items:center; font-size:10px; font-weight:500; line-height:1.6; letter-spacing:.14em; color:#ddd; margin-bottom:28px; }
.justsha-website-page .justsha-website-label>span { color:var(--website-yellow); font-size:19px; }
.justsha-website-page .justsha-website-micro { color:#999; font-size:9px; letter-spacing:.13em; line-height:1.9; flex-shrink:0; }
.justsha-website-page .justsha-website-yellow { color:var(--website-yellow); }
.justsha-website-page .justsha-website-number { display:block; color:var(--website-yellow); font:500 12px/1.6 Inter,sans-serif; letter-spacing:.08em; }
.justsha-website-page .justsha-website-two { display:grid; grid-template-columns:1.1fr 1fr; gap:9%; }
.justsha-website-page .justsha-website-two>* { min-width:0; }
.justsha-website-page .justsha-website-four { display:grid; grid-template-columns:repeat(4,1fr); gap:22px; margin-top:65px; }
.justsha-website-page .justsha-website-section-top { display:flex; justify-content:space-between; align-items:flex-end; gap:8%; margin-bottom:60px; }
.justsha-website-page .justsha-website-section-top h2 { max-width:1000px; }
.justsha-website-page .justsha-website-aside-copy { max-width:340px; flex:0 1 30%; margin:0; }
.justsha-website-page .justsha-website-lead { font:500 clamp(21px,2vw,28px)/1.5 Manrope,sans-serif; letter-spacing:-.03em; color:#e8e8e8; }
.justsha-website-page .justsha-website-highlight { font:500 clamp(23px,2.2vw,32px)/1.4 Manrope,sans-serif; color:var(--website-yellow); letter-spacing:-.035em; }
.justsha-website-page .justsha-website-buttons { display:flex; align-items:center; gap:30px; flex-wrap:wrap; }
.justsha-website-page .justsha-website-btn { display:inline-flex; gap:35px; justify-content:space-between; align-items:center; min-height:60px; padding:16px 24px; border:1px solid var(--website-yellow); background:var(--website-yellow); color:#070707; font-size:14px; font-weight:600; line-height:1.5; transition:background .25s,border-color .25s; }
.justsha-website-page .justsha-website-btn:hover { background:#fff; border-color:#fff; }
.justsha-website-page .justsha-website-btn>span { font-size:26px; line-height:1; }
.justsha-website-page .justsha-website-text-link { display:inline-flex; align-items:center; justify-content:space-between; gap:28px; min-height:48px; border-bottom:1px solid #777; font-size:14px; line-height:1.5; }
.justsha-website-page .justsha-website-text-link>span { color:var(--website-yellow); font-size:24px; transition:transform .3s; }
.justsha-website-page .justsha-website-text-link:hover>span { transform:translate(4px,-3px); }
.justsha-website-page .justsha-website-skip { position:fixed; top:15px; left:20px; z-index:200; padding:12px 20px; background:var(--website-yellow); color:#070707; transform:translateY(-180%); }
.justsha-website-page .justsha-website-skip:focus { transform:none; }
.justsha-website-page .justsha-website-header { position:sticky; top:0; z-index:60; border-bottom:1px solid var(--website-border); background:#070707f2; backdrop-filter:blur(16px); }
.justsha-website-page .justsha-website-nav { min-height:96px; display:flex; align-items:center; gap:34px; }
.justsha-website-page .justsha-website-brand { display:inline-flex; align-items:center; gap:12px; font:800 28px/1 Manrope,sans-serif; letter-spacing:-1.5px; white-space:nowrap; }
.justsha-website-page .justsha-website-brand img { width:52px; height:52px; border-radius:50%; }
.justsha-website-page .justsha-website-brand sup { color:var(--website-yellow); font:500 11px Inter,sans-serif; top:-1em; margin-left:3px; }
.justsha-website-page .justsha-website-desktop-nav { display:flex; gap:28px; margin-left:auto; }
.justsha-website-page .justsha-website-desktop-nav a { color:#bbb; font-size:14px; padding-block:14px; }
.justsha-website-page .justsha-website-desktop-nav a:hover, .justsha-website-page a[aria-current="page"] { color:var(--website-yellow); }
.justsha-website-page .justsha-website-nav-cta { display:inline-flex; align-items:center; gap:28px; border:1px solid #666; padding:10px 20px; font-size:14px; }
.justsha-website-page .justsha-website-nav-cta span { color:var(--website-yellow); font-size:22px; }
.justsha-website-page .justsha-website-menu-toggle { display:none; min-height:44px; color:white; background:transparent; border:0; }
.justsha-website-page .justsha-website-menu { position:fixed; inset:0; width:100%; max-width:none; height:100dvh; max-height:none; margin:0; border:0; padding:25px 6%; background:#0d0d0d; color:white; }
.justsha-website-page .justsha-website-menu::backdrop { background:#070707ee; }
.justsha-website-page .justsha-website-menu-top { display:flex; align-items:center; justify-content:space-between; }
.justsha-website-page .justsha-website-menu-close { width:48px; height:48px; border:1px solid #666; border-radius:50%; color:var(--website-yellow); font-size:30px; background:transparent; }
.justsha-website-page .justsha-website-menu nav { display:flex; flex-direction:column; gap:10px; margin-block:45px; }
.justsha-website-page .justsha-website-menu nav a { font:500 clamp(28px,7vw,48px)/1.6 Manrope,sans-serif; }
.justsha-website-page .justsha-website-breadcrumb { display:flex; flex-wrap:wrap; gap:12px; font-size:10px; color:#999; padding-block:28px 38px; }
.justsha-website-page .justsha-website-breadcrumb>span:last-child { color:#ccc; }
.justsha-website-page .justsha-website-hero { position:relative; isolation:isolate; }
.justsha-website-page .justsha-website-hero::after { content:""; position:absolute; inset:0; z-index:3; pointer-events:none; opacity:.025; background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Cpath fill='%23fff' filter='url(%23n)' d='M0 0h160v160H0z'/%3E%3C/svg%3E"); }
.justsha-website-page .justsha-website-grid { position:absolute; inset:0; z-index:-1; background-image:linear-gradient(#ffffff05 1px,transparent 1px),linear-gradient(90deg,#ffffff05 1px,transparent 1px); background-size:100px 100px; mask-image:linear-gradient(#000,transparent); pointer-events:none; }
.justsha-website-page .justsha-website-hero-layout { display:grid; grid-template-columns:1.4fr 1fr; gap:4%; align-items:center; }
.justsha-website-page .justsha-website-hero-copy { position:relative; z-index:2; }
.justsha-website-page .justsha-website-hero h1 { font-size:clamp(44px,5.6vw,88px); line-height:1.06; letter-spacing:-.062em; }
.justsha-website-page .justsha-website-typed-line { display:block; position:relative; }
.justsha-website-page .justsha-website-type-spacer { display:block; visibility:hidden; }
.justsha-website-page .justsha-website-type-output { position:absolute; inset:0; }
.justsha-website-page .typed-cursor { color:var(--website-yellow); font-weight:400; }
.justsha-website-page .justsha-website-hero-art { position:relative; padding-bottom:80px; padding-top:40px; }
.justsha-website-page .justsha-website-hero-image { height:580px; overflow:hidden; position:relative; border:1px solid var(--website-border); }
.justsha-website-page .justsha-website-hero-image img { filter:brightness(.62) saturate(.4); }
.justsha-website-page .justsha-website-hero-image::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,#070707cc,transparent 65%); }
.justsha-website-page .justsha-website-hero-image figcaption { position:absolute; z-index:1; bottom:25px; left:25px; right:25px; font-size:8px; letter-spacing:.13em; color:#ddd; }
.justsha-website-page .justsha-website-floating-window { position:absolute; left:-9%; bottom:3%; width:83%; max-width:410px; padding:20px; border:1px solid #ffffff35; background:#111e; backdrop-filter:blur(14px); transform:rotate(-5deg); box-shadow:0 20px 70px #0007; }
.justsha-website-page .justsha-website-floating-window>div { display:flex; align-items:center; gap:5px; padding-bottom:15px; border-bottom:1px solid #ffffff22; }
.justsha-website-page .justsha-website-floating-window i { width:5px; height:5px; border-radius:50%; background:#555; }
.justsha-website-page .justsha-website-floating-window i:first-child { background:var(--website-yellow); }
.justsha-website-page .justsha-website-floating-window>div>span { margin-left:auto; font-size:6px; letter-spacing:.1em; }
.justsha-website-page .justsha-website-window-title { display:block; padding-block:20px 8px; font:500 clamp(25px,3vw,45px)/1.08 Manrope,sans-serif; letter-spacing:-.055em; position:relative; z-index:1; }
.justsha-website-page .justsha-website-window-title b { font-weight:500; color:var(--website-yellow); }
.justsha-website-page .justsha-website-window-grid { position:absolute; width:100px; height:100px; right:30px; bottom:25px; border:1px solid #ffd40088; border-radius:50%; background:repeating-linear-gradient(90deg,transparent 0 20px,#ffd40022 20px 21px); }
.justsha-website-page .justsha-website-orbit { position:absolute; top:0; right:-2%; color:var(--website-yellow); font-size:100px; line-height:1; }
.justsha-website-page .justsha-website-hero-bottom { display:grid; grid-template-columns:1fr 1fr; gap:9%; align-items:center; padding-top:45px; }
.justsha-website-page .justsha-website-hero-bottom p { max-width:620px; font-size:15px; }
.justsha-website-page .justsha-website-hero-bottom .justsha-website-buttons { justify-content:flex-end; }
.justsha-website-page .justsha-website-hero-footer { display:flex; align-items:center; justify-content:space-between; gap:20px; border-top:1px solid var(--website-border); margin-top:35px; padding-block:28px; font-size:9px; letter-spacing:.08em; }
.justsha-website-page .justsha-website-hero-footer i { color:var(--website-yellow); font-style:normal; padding-inline:6px; }
.justsha-website-page .justsha-website-hero-footer a { display:flex; align-items:center; min-height:44px; }
.justsha-website-page .justsha-website-hero-footer>span:last-child { color:#777; }
.justsha-website-page .justsha-website-intro-copy { padding-top:45px; }
.justsha-website-page .justsha-website-accent-line { display:block; width:100%; height:2px; background:var(--website-yellow); margin-block:35px; transform-origin:left; }
.justsha-website-page .justsha-website-wide-image { height:380px; overflow:hidden; position:relative; margin-top:60px; }
.justsha-website-page .justsha-website-wide-image img { filter:brightness(.7) saturate(.45); }
.justsha-website-page .justsha-website-wide-image figcaption { position:absolute; left:30px; bottom:25px; font-size:9px; letter-spacing:.15em; }
.justsha-website-page .justsha-website-stack { display:grid; gap:32px; }
.justsha-website-page .justsha-website-service-card, .justsha-website-page .justsha-website-type-card { position:relative; isolation:isolate; overflow:hidden; display:flex; flex-direction:column; justify-content:space-between; min-height:630px; padding:40px; border:1px solid var(--website-border); background:var(--website-card); transform-origin:center top; transition:border-color .35s; }
.justsha-website-page .justsha-website-card-image { position:absolute; inset:0; z-index:-3; overflow:hidden; }
.justsha-website-page .justsha-website-card-image img { filter:saturate(.4); transition:scale .8s; }
.justsha-website-page .justsha-website-card-image::after { content:""; position:absolute; inset:0; background:linear-gradient(0deg,#070707fa 0%,#070707a9 38%,#07070722 100%),linear-gradient(90deg,#07070755,transparent); }
.justsha-website-page .justsha-website-service-card::after, .justsha-website-page .justsha-website-type-card::after { content:""; position:absolute; inset:0; z-index:-1; opacity:0; background:radial-gradient(500px circle at var(--pointer-x,50%) var(--pointer-y,50%),#ffd4001c,transparent 65%); transition:opacity .35s; pointer-events:none; }
.justsha-website-page .justsha-website-card-top { display:flex; align-items:flex-start; justify-content:space-between; gap:20px; }
.justsha-website-page .justsha-website-service-card, .justsha-website-page .justsha-website-type-card { transition:border-color .35s,translate .35s; }
.justsha-website-page .justsha-website-service-card:focus-within, .justsha-website-page .justsha-website-type-card:focus-within { border-color:var(--website-yellow); }
.justsha-website-page .justsha-website-pill { border:1px solid #ffffff66; padding:8px 16px; border-radius:30px; background:#07070744; font-size:9px; letter-spacing:.12em; }
.justsha-website-page .justsha-website-big-number { font:500 clamp(80px,10vw,150px)/.9 Manrope,sans-serif; letter-spacing:-.07em; color:var(--website-yellow); }
.justsha-website-page .justsha-website-card-bottom { display:flex; align-items:flex-end; gap:30px; justify-content:space-between; margin-top:60px; }
.justsha-website-page .justsha-website-card-bottom>div { max-width:800px; }
.justsha-website-page .justsha-website-card-bottom h3 { font-size:clamp(40px,5.5vw,85px); margin-bottom:25px; transition:translate .35s; }
.justsha-website-page .justsha-website-card-bottom p { max-width:490px; color:#ccc; }
.justsha-website-page .justsha-website-card-tags { font-size:8px; color:#bbb; letter-spacing:.13em; max-width:160px; line-height:2.2; text-align:right; }
.justsha-website-page .justsha-website-card-arrow { font-size:80px; line-height:1; color:var(--website-yellow); transition:translate .35s; }
.justsha-website-page [data-stack-card].is-active { border-color:#ffd40099; }
.justsha-website-page .justsha-website-principle { position:relative; min-width:0; padding:30px 25px 60px; border:1px solid var(--website-border); background:var(--website-card); transition:border-color .3s,background .3s; }
.justsha-website-page .justsha-website-principle::before { content:""; position:absolute; left:0; right:0; top:-1px; height:1px; background:var(--website-yellow); transform:scaleX(0); transform-origin:left; transition:transform .4s; }
.justsha-website-page .justsha-website-principle h3 { font-size:28px; margin:55px 0 25px; }
.justsha-website-page .justsha-website-principle p { font-size:15px; margin:0; }
.justsha-website-page .justsha-website-small-arrow { position:absolute; bottom:20px; right:25px; font-size:28px; color:var(--website-yellow); }
.justsha-website-page .justsha-website-detail-row { display:grid; grid-template-columns:.2fr 1fr 1.1fr 35px; gap:35px; align-items:center; min-height:180px; padding:30px; border:1px solid var(--website-border); background:#111; margin-bottom:16px; transition:border-color .35s,background .35s; }
.justsha-website-page .justsha-website-detail-row h3 { font-size:clamp(27px,3vw,45px); }
.justsha-website-page .justsha-website-detail-row p { margin:0; max-width:480px; }
.justsha-website-page .justsha-website-detail-row>span:last-child { color:#777; font-size:28px; }
.justsha-website-page .justsha-website-detail-row.is-active { border-color:#ffd40088; background:#19190f; }
.justsha-website-page .justsha-website-detail-row.is-active>span:last-child { color:var(--website-yellow); }
.justsha-website-page .justsha-website-process-viewport { overflow:hidden; }
.justsha-website-page .justsha-website-process-track { display:grid; grid-template-columns:repeat(3,1fr); gap:25px; }
.justsha-website-page .justsha-website-process-card { min-width:0; padding:30px; background:#111; border:1px solid var(--website-border); }
.justsha-website-page .justsha-website-process-number { display:block; font:500 60px/1 Manrope,sans-serif; letter-spacing:-.055em; color:#777; margin-bottom:30px; }
.justsha-website-page .justsha-website-process-card h3 { font-size:34px; margin-bottom:24px; }
.justsha-website-page .justsha-website-process-card>p { font-size:15px; }
.justsha-website-page .justsha-website-process-note { border-top:1px solid var(--website-border); padding-top:22px; margin-top:30px; }
.justsha-website-page .justsha-website-process-note>span { display:block; font-size:8px; letter-spacing:.15em; color:var(--website-yellow); margin-bottom:12px; }
.justsha-website-page .justsha-website-process-note p { margin:0; font-size:13px; }
.justsha-website-page .justsha-website-process-progress { width:100%; height:2px; margin-top:35px; background:#333; }
.justsha-website-page .justsha-website-process-progress>span { display:block; height:100%; width:100%; background:var(--website-yellow); transform-origin:left; }
.justsha-website-page .justsha-website-process-shell.is-horizontal .justsha-website-process-track { display:flex; gap:25px; }
.justsha-website-page .justsha-website-process-shell.is-horizontal .justsha-website-process-card { flex:0 0 clamp(360px,35vw,560px); transform-origin:center center; }
.justsha-website-page .justsha-website-process-shell.is-horizontal .justsha-website-heading { font-size:clamp(38px,3.5vw,54px); }
.justsha-website-page .justsha-website-process-shell.is-horizontal .justsha-website-section-top { margin-bottom:35px; }
.justsha-website-page .justsha-website-process-shell.is-horizontal .justsha-website-process-card { flex-basis:clamp(400px,36vw,560px); padding:24px; }
.justsha-website-page .justsha-website-process-shell.is-horizontal .justsha-website-process-number { font-size:40px; margin-bottom:20px; }
.justsha-website-page .justsha-website-process-shell.is-horizontal .justsha-website-process-card h3 { font-size:30px; margin-bottom:20px; }
.justsha-website-page .justsha-website-process-shell.is-horizontal .justsha-website-process-card>p { font-size:14px; line-height:1.65; margin-bottom:18px; }
.justsha-website-page .justsha-website-process-shell.is-horizontal .justsha-website-process-note { padding-top:16px; margin-top:20px; }
.justsha-website-page .justsha-website-process-shell.is-horizontal .justsha-website-process-note p { line-height:1.55; }
.justsha-website-page .justsha-website-process-shell.is-horizontal .justsha-website-process-progress { margin-top:25px; }
.justsha-website-page .justsha-website-process-card.is-active { border-color:#ffd40088; }
.justsha-website-page .justsha-website-process-card.is-active .justsha-website-process-number { color:var(--website-yellow); }
.justsha-website-page .justsha-website-feature-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:20px; margin-top:65px; }
.justsha-website-page .justsha-website-feature { position:relative; min-width:0; overflow:hidden; padding:30px 25px; border:1px solid var(--website-border); background:#111; transition:border-color .3s,translate .3s,background .3s; }
.justsha-website-page .justsha-website-feature svg { width:38px; height:38px; color:var(--website-yellow); margin-bottom:45px; transition:transform .4s; }
.justsha-website-page .justsha-website-feature h3 { font-size:25px; margin-bottom:20px; transition:translate .3s; }
.justsha-website-page .justsha-website-feature p { font-size:14px; margin:0; }
.justsha-website-page .justsha-website-type-card { min-height:600px; }
.justsha-website-page .justsha-website-checklist { display:grid; grid-template-columns:1fr 1fr; gap:12px 25px; list-style:none; padding:0; margin:30px 0 35px; font-size:14px; }
.justsha-website-page .justsha-website-checklist li { display:flex; align-items:baseline; gap:12px; color:#ddd; }
.justsha-website-page .justsha-website-checklist li::before { content:"+"; color:var(--website-yellow); }
.justsha-website-page .justsha-website-work { margin-top:85px; }
.justsha-website-page .justsha-website-work-heading { display:flex; justify-content:space-between; align-items:flex-end; gap:30px; margin-bottom:30px; }
.justsha-website-page .justsha-website-work-heading h3 { font-size:40px; }
.justsha-website-page .justsha-website-work-heading p { font-size:12px; margin:0; }
.justsha-website-page .justsha-website-work-heading .justsha-website-label { margin-bottom:15px; }
.justsha-website-page .justsha-website-compare { position:relative; aspect-ratio:3 / 2; overflow:hidden; border:1px solid #ffffff33; background:#1a1a1a; }
.justsha-website-page .justsha-website-compare figure { position:absolute; inset:0; overflow:hidden; }
.justsha-website-page .justsha-website-compare img { object-fit:contain; transition:scale .7s; }
.justsha-website-page .justsha-website-compare-after { clip-path:inset(0 calc(100% - var(--website-reveal)) 0 0); }
.justsha-website-page .justsha-website-compare figcaption { position:absolute; bottom:18px; padding:8px 14px; background:#070707; color:white; font-size:9px; letter-spacing:.15em; }
.justsha-website-page .justsha-website-compare-before figcaption { right:20px; }
.justsha-website-page .justsha-website-compare-after figcaption { left:20px; color:var(--website-yellow); }
.justsha-website-page .justsha-website-compare-divider { position:absolute; top:0; bottom:0; left:var(--website-reveal); width:2px; background:var(--website-yellow); pointer-events:none; }
.justsha-website-page .justsha-website-compare-divider b { position:absolute; top:50%; left:50%; translate:-50% -50%; display:grid; place-items:center; width:48px; height:48px; border-radius:50%; background:var(--website-yellow); color:#070707; font-size:22px; font-weight:400; box-shadow:0 3px 20px #0005; }
.justsha-website-page .justsha-website-compare-control { display:grid; grid-template-columns:1fr 1fr 100px; align-items:center; gap:30px; margin-top:24px; }
.justsha-website-page .justsha-website-compare-control label { font-size:14px; color:#eee; }
.justsha-website-page .justsha-website-compare-control label span { display:block; font-size:11px; color:#999; }
.justsha-website-page .justsha-website-compare-control input { width:100%; min-width:0; height:44px; accent-color:var(--website-yellow); cursor:ew-resize; }
.justsha-website-page .justsha-website-compare-control output { color:var(--website-yellow); font-size:12px; text-align:right; font-variant-numeric:tabular-nums; }
.justsha-website-page .justsha-website-comparison-note { font-size:11px; margin-top:18px; }
.justsha-website-page .justsha-website-why-stack { margin-top:65px; display:grid; gap:28px; }
.justsha-website-page .justsha-website-why-card { display:grid; grid-template-columns:.65fr 2fr 70px; gap:55px; align-items:center; min-height:360px; padding:45px; border:1px solid var(--website-border); background:#111; transform-origin:center top; }
.justsha-website-page .justsha-website-why-card h3 { font-size:clamp(35px,4vw,63px); max-width:850px; margin-bottom:25px; }
.justsha-website-page .justsha-website-why-card p { max-width:600px; margin:0; }
.justsha-website-page .justsha-website-why-arrow { color:var(--website-yellow); font-size:65px; }
.justsha-website-page .justsha-website-journey-inner { padding-block:110px; min-height:85svh; }
.justsha-website-page .justsha-website-journey-inner.is-pinned { padding-block:40px; min-height:0; }
.justsha-website-page .justsha-website-journey-inner.is-pinned .justsha-website-heading { font-size:clamp(40px,4vw,64px); }
.justsha-website-page .justsha-website-journey-inner.is-pinned .justsha-website-journey-track { margin-top:65px; }
.justsha-website-page .justsha-website-journey-inner.is-pinned .justsha-website-journey-copy { margin-top:45px; }
.justsha-website-page .justsha-website-journey-track { position:relative; display:grid; grid-template-columns:repeat(5,1fr); gap:20px; margin-top:90px; }
.justsha-website-page .justsha-website-journey-progress { position:absolute; height:2px; left:0; right:0; top:42px; background:#333; }
.justsha-website-page .justsha-website-journey-progress>span { display:block; width:100%; height:100%; background:var(--website-yellow); transform-origin:left; }
.justsha-website-page .justsha-website-journey-step { position:relative; }
.justsha-website-page .justsha-website-journey-step>span { display:block; color:#999; font-size:11px; margin-bottom:45px; }
.justsha-website-page .justsha-website-journey-step::before { content:""; position:absolute; top:38px; left:0; width:10px; height:10px; background:#111; border:1px solid var(--website-yellow); border-radius:50%; }
.justsha-website-page .justsha-website-journey-step h3 { font-size:clamp(23px,2.8vw,44px); margin-top:5px; }
.justsha-website-page .justsha-website-journey-step i { display:block; font-style:normal; font-size:36px; color:#777; margin-top:20px; }
.justsha-website-page .justsha-website-journey-step.is-active h3, .justsha-website-page .justsha-website-journey-step.is-active i { color:var(--website-yellow); }
.justsha-website-page .justsha-website-journey-step.is-active::before { background:var(--website-yellow); }
.justsha-website-page .justsha-website-journey-copy { display:grid; grid-template-columns:1fr 1fr; gap:8%; margin-top:65px; max-width:950px; }
.justsha-website-page .justsha-website-faq { display:grid; grid-template-columns:.85fr 1.15fr; gap:8%; align-items:start; }
.justsha-website-page .justsha-website-faq>div>p:not(.justsha-website-label) { margin-top:30px; }
.justsha-website-page .justsha-website-faq-item { border-top:1px solid var(--website-border); }
.justsha-website-page .justsha-website-faq-item:last-child { border-bottom:1px solid var(--website-border); }
.justsha-website-page .justsha-website-faq-button { width:100%; display:flex; align-items:center; gap:18px; text-align:left; background:transparent; color:#eee; border:0; padding:28px 0; font:500 17px/1.5 Manrope,sans-serif; letter-spacing:-.02em; }
.justsha-website-page .justsha-website-faq-number { font:400 10px Inter,sans-serif; color:#888; }
.justsha-website-page .justsha-website-faq-button i { position:relative; display:block; width:20px; height:20px; margin-left:auto; flex-shrink:0; }
.justsha-website-page .justsha-website-faq-button i::before, .justsha-website-page .justsha-website-faq-button i::after { content:""; position:absolute; top:9px; left:3px; width:14px; height:1px; background:var(--website-yellow); transition:transform .3s; }
.justsha-website-page .justsha-website-faq-button[aria-expanded="false"] i::after { transform:rotate(90deg); }
.justsha-website-page .justsha-website-faq-button[aria-expanded="true"] { color:var(--website-yellow); }
.justsha-website-page .justsha-website-faq-answer>div { padding:0 30px 28px 32px; }
.justsha-website-page .justsha-website-faq-answer p { font-size:15px; margin:0; }
.justsha-website-page .justsha-website-faq-answer.collapsing { transition:height .32s ease; }
.justsha-website-page .justsha-website-cta { position:relative; isolation:isolate; overflow:hidden; min-height:100svh; display:flex; align-items:center; border-block:1px solid var(--website-border); }
.justsha-website-page .justsha-website-cta-photo { position:absolute; inset:-8% 0; z-index:-3; }
.justsha-website-page .justsha-website-cta-photo img { filter:saturate(.3); }
.justsha-website-page .justsha-website-cta-photo::after { content:""; position:absolute; inset:0; background:linear-gradient(90deg,#070707fa,#070707aa),linear-gradient(0deg,#070707,transparent); }
.justsha-website-page .justsha-website-cta-inner { position:relative; padding-block:110px; }
.justsha-website-page .justsha-website-cta h2 { font-size:clamp(47px,7vw,112px); line-height:1.08; letter-spacing:-.06em; max-width:1300px; margin-bottom:40px; }
.justsha-website-page .justsha-website-cta p { max-width:520px; }
.justsha-website-page .justsha-website-cta .justsha-website-buttons { margin-top:40px; }
.justsha-website-page .justsha-website-cta-shape { position:absolute; z-index:-1; top:30%; right:-5%; font-size:clamp(180px,28vw,440px); line-height:1; color:#ffd400a0; }
.justsha-website-page .justsha-website-ending { max-width:1150px; padding-block:140px; text-align:center; }
.justsha-website-page .justsha-website-ending .justsha-website-label { display:block; margin-bottom:50px; }
.justsha-website-page .justsha-website-ending p { font:500 clamp(27px,3.7vw,57px)/1.35 Manrope,sans-serif; letter-spacing:-.04em; margin-bottom:28px; }
.justsha-website-page .justsha-website-footer { background:var(--website-surface); border-top:1px solid var(--website-border); padding-top:70px; }
.justsha-website-page .justsha-website-footer-top { display:grid; grid-template-columns:1.3fr 1fr 1fr; gap:55px; }
.justsha-website-page .justsha-website-footer-top p { margin-top:25px; font-size:14px; }
.justsha-website-page .justsha-website-footer-top nav { display:grid; grid-template-columns:1fr 1fr; align-content:start; }
.justsha-website-page .justsha-website-footer-top a:not(.justsha-website-brand) { display:block; min-height:44px; font-size:14px; }
.justsha-website-page .justsha-website-footer-top a:hover { color:var(--website-yellow); }
.justsha-website-page .justsha-website-footer-top .justsha-website-label { margin-top:0; font-size:10px; }
.justsha-website-page .justsha-website-footer-word { font:700 min(17.7vw,318px)/.95 Manrope,sans-serif; letter-spacing:-.085em; color:#222; margin-top:70px; white-space:nowrap; }
.justsha-website-page .justsha-website-footer-word>span { font-size:3vw; color:var(--website-yellow); vertical-align:top; letter-spacing:0; }
.justsha-website-page .justsha-website-footer-bottom { border-top:1px solid var(--website-border); display:flex; justify-content:space-between; gap:20px; padding-block:25px 85px; margin-top:30px; font-size:10px; color:#888; }
.justsha-website-page .justsha-website-footer-bottom a { min-height:44px; }
.justsha-website-page .justsha-website-motion { position:fixed; z-index:55; right:20px; bottom:18px; min-height:44px; padding:9px 17px; border:1px solid #555; border-radius:30px; background:#111e; color:#ddd; font-size:11px; }
.justsha-website-page .justsha-website-sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip-path:inset(50%); white-space:nowrap; border:0; }
.justsha-website-page .word { display:inline-block; }
@media (hover:hover) and (pointer:fine) {
  .justsha-website-page .justsha-website-service-card:hover, .justsha-website-page .justsha-website-type-card:hover { border-color:var(--website-yellow); translate:0 -4px; }
  .justsha-website-page .justsha-website-service-card:hover::after, .justsha-website-page .justsha-website-type-card:hover::after { opacity:1; }
  .justsha-website-page .justsha-website-service-card:hover .justsha-website-card-image img, .justsha-website-page .justsha-website-type-card:hover .justsha-website-card-image img { scale:1.04; }
  .justsha-website-page .justsha-website-service-card:hover h3, .justsha-website-page .justsha-website-type-card:hover h3 { translate:6px 0; }
  .justsha-website-page .justsha-website-service-card:hover .justsha-website-card-arrow, .justsha-website-page .justsha-website-type-card:hover .justsha-website-card-arrow { translate:6px -6px; }
  .justsha-website-page .justsha-website-principle:hover { border-color:#ffd40088; background:#19190f; }
  .justsha-website-page .justsha-website-principle:hover::before { transform:scaleX(1); }
  .justsha-website-page .justsha-website-feature:hover { border-color:#ffd40088; background:#19190f; translate:0 -5px; }
  .justsha-website-page .justsha-website-feature:hover svg { transform:scale(1.08) rotate(-5deg); }
  .justsha-website-page .justsha-website-feature:hover h3 { translate:3px 0; }
  .justsha-website-page .justsha-website-compare:hover img { scale:1.015; }
}
@media (max-width:1199px) {
  .justsha-website-page .justsha-website-nav { gap:22px; }
  .justsha-website-page .justsha-website-brand { font-size:24px; }
  .justsha-website-page .justsha-website-desktop-nav { gap:18px; }
  .justsha-website-page .justsha-website-hero-image { height:540px; }
  .justsha-website-page .justsha-website-four, .justsha-website-page .justsha-website-feature-grid { grid-template-columns:repeat(2,1fr); }
  .justsha-website-page .justsha-website-card-tags { display:none; }
  .justsha-website-page .justsha-website-process-track { grid-template-columns:repeat(2,1fr); }
  .justsha-website-page .justsha-website-detail-row { gap:25px; padding:25px; }
}
@media (max-width:991px) {
  .justsha-website-page .justsha-website-section { padding-block:85px; }
  .justsha-website-page .justsha-website-nav { flex-wrap:wrap; gap:16px; min-height:80px; padding-block:12px; }
  .justsha-website-page .justsha-website-desktop-nav { order:4; width:100%; justify-content:space-between; }
  .justsha-website-page.justsha-website-has-menu .justsha-website-desktop-nav { display:none; }
  .justsha-website-page .justsha-website-menu-toggle:not([hidden]) { display:block; }
  .justsha-website-page .justsha-website-nav-cta { margin-left:auto; }
  .justsha-website-page .justsha-website-hero-layout { grid-template-columns:1.3fr 1fr; }
  .justsha-website-page .justsha-website-hero h1 { font-size:5.9vw; }
  .justsha-website-page .justsha-website-hero-image { height:490px; }
  .justsha-website-page .justsha-website-floating-window { left:-8%; width:100%; }
  .justsha-website-page .justsha-website-window-grid { width:65px; height:65px; right:15px; bottom:20px; }
  .justsha-website-page .justsha-website-orbit { font-size:75px; }
  .justsha-website-page .justsha-website-hero-bottom { grid-template-columns:1fr; gap:20px; }
  .justsha-website-page .justsha-website-hero-bottom .justsha-website-buttons { justify-content:flex-start; }
  .justsha-website-page .justsha-website-hero-footer>span:last-child { display:none; }
  .justsha-website-page .justsha-website-two { gap:6%; }
  .justsha-website-page .justsha-website-section-top { gap:30px; }
  .justsha-website-page .justsha-website-section-top>.justsha-website-micro { display:none; }
  .justsha-website-page .justsha-website-service-card, .justsha-website-page .justsha-website-type-card { min-height:580px; padding:32px; }
  .justsha-website-page .justsha-website-card-bottom h3 { font-size:clamp(38px,6vw,58px); }
  .justsha-website-page .justsha-website-card-arrow { font-size:60px; }
  .justsha-website-page .justsha-website-detail-row { grid-template-columns:35px 1fr 35px; }
  .justsha-website-page .justsha-website-detail-row p { grid-column:2; grid-row:2; }
  .justsha-website-page .justsha-website-detail-row>span:last-child { grid-column:3; grid-row:1; }
  .justsha-website-page .justsha-website-process-track { grid-template-columns:1fr; padding-left:30px; border-left:1px solid #ffd40066; gap:30px; }
  .justsha-website-page .justsha-website-process-card { position:relative; }
  .justsha-website-page .justsha-website-process-card::before { content:""; width:9px; height:9px; border-radius:50%; background:var(--website-yellow); position:absolute; left:-35px; top:30px; }
  .justsha-website-page .justsha-website-process-viewport { overflow:visible; }
  .justsha-website-page .justsha-website-process-progress { display:none; }
  .justsha-website-page .justsha-website-why-card { grid-template-columns:.4fr 1.6fr; gap:30px; padding:35px; }
  .justsha-website-page .justsha-website-why-arrow { display:none; }
  .justsha-website-page .justsha-website-journey-inner { padding-block:85px; min-height:0; }
  .justsha-website-page .justsha-website-journey-track { grid-template-columns:1fr; margin-top:50px; padding-left:30px; gap:30px; }
  .justsha-website-page .justsha-website-journey-progress { left:0; right:auto; width:2px; top:0; bottom:0; height:auto; }
  .justsha-website-page .justsha-website-journey-progress>span { transform-origin:top; }
  .justsha-website-page .justsha-website-journey-step { display:grid; grid-template-columns:30px 1fr 35px; gap:20px; align-items:center; }
  .justsha-website-page .justsha-website-journey-step>span, .justsha-website-page .justsha-website-journey-step h3, .justsha-website-page .justsha-website-journey-step i { margin:0; }
  .justsha-website-page .justsha-website-journey-step::before { left:-34px; top:20px; }
  .justsha-website-page .justsha-website-journey-step h3 { font-size:35px; }
  .justsha-website-page .justsha-website-faq { grid-template-columns:1fr; gap:45px; }
  .justsha-website-page .justsha-website-footer-top { grid-template-columns:1fr 1fr; gap:30px; }
  .justsha-website-page .justsha-website-footer-top>div:last-child { grid-column:1 / -1; }
}
@media (max-width:600px) {
  .justsha-website-page { font-size:15px; }
  .justsha-website-page .justsha-website-wrap { width:88%; }
  .justsha-website-page .justsha-website-section { padding-block:75px; }
  .justsha-website-page .justsha-website-heading { font-size:clamp(33px,8.5vw,48px); }
  .justsha-website-page .justsha-website-label { font-size:9px; letter-spacing:.1em; margin-bottom:23px; }
  .justsha-website-page .justsha-website-brand { font-size:21px; gap:8px; }
  .justsha-website-page .justsha-website-brand img { width:38px; height:38px; }
  .justsha-website-page .justsha-website-nav { gap:12px; }
  .justsha-website-page .justsha-website-nav-cta { font-size:11px; gap:12px; padding:8px 10px; }
  .justsha-website-page .justsha-website-menu-toggle { font-size:12px; padding:5px 0; }
  .justsha-website-page .justsha-website-desktop-nav { gap:10px; }
  .justsha-website-page .justsha-website-desktop-nav a { font-size:12px; }
  .justsha-website-page .justsha-website-breadcrumb { font-size:8px; gap:8px; padding-block:23px 30px; }
  .justsha-website-page .justsha-website-hero-layout { grid-template-columns:1fr; gap:25px; }
  .justsha-website-page .justsha-website-hero h1 { font-size:clamp(36px,9.4vw,56px); }
  .justsha-website-page .justsha-website-hero-art { padding-top:20px; padding-bottom:65px; margin-top:15px; }
  .justsha-website-page .justsha-website-hero-image { height:390px; }
  .justsha-website-page .justsha-website-floating-window { left:-3%; width:80%; bottom:0; padding:17px; }
  .justsha-website-page .justsha-website-window-title { font-size:34px; }
  .justsha-website-page .justsha-website-hero-bottom { padding-top:35px; }
  .justsha-website-page .justsha-website-hero-footer { flex-wrap:wrap; font-size:8px; gap:10px; margin-top:35px; padding-block:20px; }
  .justsha-website-page .justsha-website-hero-footer i { padding-inline:3px; }
  .justsha-website-page .justsha-website-buttons { gap:20px; }
  .justsha-website-page .justsha-website-btn { padding:15px 18px; font-size:13px; gap:20px; }
  .justsha-website-page .justsha-website-two { grid-template-columns:1fr; gap:30px; }
  .justsha-website-page .justsha-website-intro-copy { padding-top:0; }
  .justsha-website-page .justsha-website-wide-image { height:280px; margin-top:35px; }
  .justsha-website-page .justsha-website-wide-image figcaption { left:20px; font-size:8px; }
  .justsha-website-page .justsha-website-section-top { flex-direction:column; align-items:flex-start; gap:25px; margin-bottom:35px; }
  .justsha-website-page .justsha-website-aside-copy { max-width:none; }
  .justsha-website-page .justsha-website-service-card, .justsha-website-page .justsha-website-type-card { padding:25px; min-height:550px; }
  .justsha-website-page .justsha-website-card-bottom h3 { font-size:38px; }
  .justsha-website-page .justsha-website-card-bottom .justsha-website-text-link { font-size:12px; gap:15px; }
  .justsha-website-page .justsha-website-card-arrow { display:none; }
  .justsha-website-page .justsha-website-big-number { font-size:95px; }
  .justsha-website-page .justsha-website-pill { font-size:8px; padding:6px 10px; }
  .justsha-website-page .justsha-website-four, .justsha-website-page .justsha-website-feature-grid { grid-template-columns:1fr; gap:17px; margin-top:35px; }
  .justsha-website-page .justsha-website-principle { padding:28px 25px 55px; }
  .justsha-website-page .justsha-website-principle h3 { margin-top:30px; }
  .justsha-website-page .justsha-website-detail-row { grid-template-columns:25px 1fr; gap:20px; padding:25px 20px; }
  .justsha-website-page .justsha-website-detail-row>span:last-child { display:none; }
  .justsha-website-page .justsha-website-detail-row h3 { font-size:28px; }
  .justsha-website-page .justsha-website-process-card { padding:25px; }
  .justsha-website-page .justsha-website-process-number { font-size:55px; }
  .justsha-website-page .justsha-website-feature { padding:28px; }
  .justsha-website-page .justsha-website-feature svg { margin-bottom:28px; }
  .justsha-website-page .justsha-website-feature h3 { font-size:28px; }
  .justsha-website-page .justsha-website-checklist { font-size:13px; gap:10px 15px; }
  .justsha-website-page .justsha-website-work { margin-top:60px; }
  .justsha-website-page .justsha-website-work-heading { flex-direction:column; align-items:flex-start; gap:20px; }
  .justsha-website-page .justsha-website-work-heading h3 { font-size:34px; }
  .justsha-website-page .justsha-website-work-heading p { font-size:11px; }
  .justsha-website-page .justsha-website-compare figcaption { font-size:7px; padding:5px 8px; bottom:8px; }
  .justsha-website-page .justsha-website-compare-before figcaption { right:8px; }
  .justsha-website-page .justsha-website-compare-after figcaption { left:8px; }
  .justsha-website-page .justsha-website-compare-divider b { width:34px; height:34px; font-size:17px; }
  .justsha-website-page .justsha-website-compare-control { grid-template-columns:1fr 75px; gap:15px; margin-top:20px; }
  .justsha-website-page .justsha-website-compare-control label { grid-column:1 / -1; }
  .justsha-website-page .justsha-website-compare-control label span { font-size:10px; }
  .justsha-website-page .justsha-website-comparison-note { font-size:10px; }
  .justsha-website-page .justsha-website-why-stack { margin-top:35px; }
  .justsha-website-page .justsha-website-why-card { grid-template-columns:1fr; padding:30px; gap:30px; min-height:360px; }
  .justsha-website-page .justsha-website-why-card .justsha-website-big-number { font-size:75px; }
  .justsha-website-page .justsha-website-why-card h3 { font-size:36px; }
  .justsha-website-page .justsha-website-journey-inner { padding-block:75px; }
  .justsha-website-page .justsha-website-journey-step { grid-template-columns:20px 1fr 25px; gap:12px; }
  .justsha-website-page .justsha-website-journey-step h3 { font-size:clamp(25px,7vw,34px); }
  .justsha-website-page .justsha-website-journey-step i { font-size:28px; }
  .justsha-website-page .justsha-website-journey-copy { grid-template-columns:1fr; gap:0; margin-top:40px; }
  .justsha-website-page .justsha-website-faq-button { font-size:16px; gap:12px; padding-block:24px; }
  .justsha-website-page .justsha-website-faq-answer>div { padding-inline:25px 15px; }
  .justsha-website-page .justsha-website-faq-answer p { font-size:14px; }
  .justsha-website-page .justsha-website-cta { min-height:85svh; }
  .justsha-website-page .justsha-website-cta-inner { padding-block:85px; }
  .justsha-website-page .justsha-website-cta h2 { font-size:clamp(37px,9.5vw,57px); }
  .justsha-website-page .justsha-website-cta-shape { opacity:.25; right:-15%; top:12%; }
  .justsha-website-page .justsha-website-ending { padding-block:85px; }
  .justsha-website-page .justsha-website-ending p { font-size:clamp(27px,7vw,38px); }
  .justsha-website-page .justsha-website-footer-top { grid-template-columns:1fr; gap:25px; }
  .justsha-website-page .justsha-website-footer-top>div:last-child { grid-column:auto; }
  .justsha-website-page .justsha-website-footer-word { margin-top:35px; font-size:17.1vw; }
  .justsha-website-page .justsha-website-footer-bottom { flex-direction:column; gap:12px; }
  .justsha-website-page .justsha-website-motion { right:12px; bottom:12px; font-size:10px; }
}
@media (max-width:380px) {
  .justsha-website-page .justsha-website-nav { gap:10px; }
  .justsha-website-page .justsha-website-brand { font-size:19px; gap:6px; }
  .justsha-website-page .justsha-website-brand img { width:34px; height:34px; }
  .justsha-website-page .justsha-website-nav-cta { font-size:10px; gap:8px; padding-inline:8px; }
  .justsha-website-page .justsha-website-menu-toggle { font-size:11px; }
}
@media (prefers-reduced-motion:reduce) {
  .justsha-website-page *, .justsha-website-page *::before, .justsha-website-page *::after { animation:none!important; transition:none!important; scroll-behavior:auto!important; }
  .justsha-website-page .justsha-website-feature:hover, .justsha-website-page .justsha-website-card-bottom h3, .justsha-website-page .justsha-website-card-arrow { translate:none!important; }
  .justsha-website-page .justsha-website-compare:hover img, .justsha-website-page .justsha-website-card-image img { scale:1!important; }
  .justsha-website-page .justsha-website-service-card:hover, .justsha-website-page .justsha-website-type-card:hover { translate:none; }
}
.justsha-website-page.justsha-website-motion-off *, .justsha-website-page.justsha-website-motion-off *::before, .justsha-website-page.justsha-website-motion-off *::after { animation:none!important; transition:none!important; }
@media print {
  .justsha-website-page .justsha-website-header, .justsha-website-page .justsha-website-motion, .justsha-website-page .justsha-website-orbit, .justsha-website-page .justsha-website-cta-shape { display:none; }
  .justsha-website-page .justsha-website-section { padding-block:30px; }
  .justsha-website-page .justsha-website-faq-answer { display:block!important; height:auto!important; }
  .justsha-website-page .justsha-website-process-track { display:grid!important; transform:none!important; }
  .justsha-website-page [data-stack-card], .justsha-website-page .justsha-website-process-card { break-inside:avoid; }
}
