/* Violet chapter backgrounds, extending Appro's existing geometric theme. */
.goji-home .gj-process{background:radial-gradient(ellipse at 10% 45%,#d9befb78,transparent 60%),linear-gradient(#fff,#f2e9fd 35%,#eee2fc 75%,#fff)}
.goji-home .gj-process-grid{border-color:#d9c3ec;box-shadow:0 28px 65px -50px #7136af66}
.goji-home .gj-process-panels{background:radial-gradient(ellipse at 65% 45%,#d9bbf78a,transparent 80%),#f5edff}
.goji-home .gj-capabilities{background:radial-gradient(ellipse at 90% 80%,#cbb0f655,transparent 55%),linear-gradient(#fff,#f4edfc 45%,#ede2fc);padding-bottom:65px}
.goji-home .gj-bento-card{border-color:#d9c5ec;box-shadow:0 15px 40px -32px #6f329c45}
.goji-home .gj-bento-art{background:radial-gradient(ellipse at 60% 35%,#d5b6f88c,transparent 70%),#f5edfd}
.goji-home .gj-work{background:radial-gradient(ellipse at 4% 45%,#d9bcf960,transparent 53%),radial-gradient(ellipse at 96% 70%,#dbc8fa66,transparent 55%),linear-gradient(#f5effd,#eee3fb 55%,#f7f2fd)}
.goji-home .gj-work .nx-project-media{border-color:#d9c5e9;box-shadow:0 20px 48px -34px #71458d45}
.goji-home .gj-work .nx-project-caption>div>span,.goji-home .gj-work .vx-project-tags>span{color:#79538f}
.goji-home .gj-work .vx-project-tags>span{border-color:#cdb6df;background:#ffffff70}
.goji-home .gj-about{background:linear-gradient(#f7f2fd,#fff)}
.goji-home #pricing.mp-pricing{background:radial-gradient(ellipse at 85% 65%,#d2a8f34d,transparent 54%),linear-gradient(#fff,#f7f0fe 34%,#f0e4fe);padding-bottom:70px}
.goji-home .mp-price-card{border-color:#d6c0e7;box-shadow:0 20px 50px -38px #6e369a65}
.goji-home .mp-price-card.mp-growth{background:linear-gradient(150deg,#ecdcfc,#fff 67%);border-color:#ad82d0;box-shadow:0 18px 45px -30px #7c3bb765}
.goji-home .mp-growth:before{background:linear-gradient(90deg,#743ac4,#b990f5,#743ac4)}
.goji-home .mp-popular{background:#7543aa;color:#fff;border-color:#7543aa}
.goji-home .mp-preview-cta{background:linear-gradient(#f0e4fe,#faf7ff)}
.goji-home .gj-enquiry{background:linear-gradient(#faf7ff,#fff)}

/* The toolkit is a single violet workspace: precise borders, original logos, clear hierarchy. */
.goji-home .tk-section{background:linear-gradient(#ede2fc,#f5effd);padding:35px 0 80px;isolation:isolate}
.tk-panel{position:relative;isolation:isolate;overflow:hidden;padding:55px 48px 30px;border:1px solid #9c78bf;background:linear-gradient(122deg,#35174e,#4e2476 53%,#26113e);border-radius:5px;color:#fff;box-shadow:0 35px 70px -48px #4a146fa6}
.tk-panel.gj-frame:after{inset:6px;opacity:.6;z-index:0}
.tk-panel>*:not(.tk-light):not(.tk-blueprint){position:relative;z-index:1}
.tk-light{position:absolute;inset:-15%;z-index:-1;pointer-events:none;background:radial-gradient(ellipse at 70% 10%,#b279f16b,transparent 48%),radial-gradient(ellipse at 20% 80%,#a056e357,transparent 42%);animation:tk-light-drift 18s ease-in-out infinite alternate}
.tk-blueprint{position:absolute;inset:0;z-index:-1;pointer-events:none;background-image:linear-gradient(#c1a6e30c 1px,transparent 1px),linear-gradient(90deg,#c1a6e30c 1px,transparent 1px);background-size:58px 58px;mask-image:linear-gradient(transparent,#000 45%,transparent)}
.tk-header{display:grid;grid-template-columns:1.35fr 1fr;align-items:end;gap:55px;margin-bottom:38px}
.tk-eyebrow{font:500 .75rem/1.6 Inter,sans-serif;letter-spacing:.14em;color:#dac3f0;margin:0 0 23px}
.goji-home .tk-header .gj-title{font-size:clamp(34px,3.5vw,51px);line-height:1.08;color:#fff;letter-spacing:-.048em}
.goji-home .tk-header .gj-title>span{color:#d4acf8}
.tk-intro p{font-size:1rem;line-height:1.8;color:#e1d0ed;margin:0 0 19px;max-width:370px}
.tk-intro>span{font:400 .875rem/1.6 Inter,sans-serif;color:#cfadeb;display:flex;align-items:center;gap:12px}
.tk-intro>span:before{content:'';width:25px;height:1px;background:#b180d6}
.tk-tools{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}
.tk-tool{position:relative;display:flex;flex-direction:column;align-items:flex-start;min-width:0;min-height:211px;padding:18px 21px 20px;border:1px solid #b58acd45;border-radius:4px;background:linear-gradient(145deg,#e3ceff14,#d7a5ff06);color:#fff;text-align:left;cursor:pointer;overflow:hidden;transition:background .25s,border-color .25s,transform .25s,box-shadow .25s;font-family:Inter,sans-serif}
.tk-tool:hover{background:#c28dee23;border-color:#cdaaee95;transform:translateY(-4px);box-shadow:0 15px 22px -22px #11051f}
.tk-tool[aria-pressed=true]{background:linear-gradient(135deg,#fbf6ff,#e5d1f7);border-color:#e8d7fa;color:#442454;box-shadow:0 13px 28px -22px #0c021b}
.tk-tool:focus-visible{outline:2px solid #f5e7ff;outline-offset:4px}
.tk-tool-top{display:flex;width:100%;justify-content:space-between;align-items:center;font-size:.75rem;line-height:1.4;color:#d1b9e2}
.tk-tool[aria-pressed=true] .tk-tool-top{color:#78538d}
.tk-tool-mark{font-size:1rem;line-height:1;opacity:.7}
.tk-logo{display:grid;place-items:center;width:65px;height:65px;margin:15px 0 13px;border:1px solid #ffffffbd;border-radius:15px;background:linear-gradient(145deg,#fff,#ede5f6);box-shadow:0 7px 15px #150c2630,inset 0 1px 1px #fff;transform:translateY(0);animation:tk-logo-float 7s ease-in-out infinite;animation-delay:var(--tool-delay)}
.tk-logo>img{display:block;width:46px;height:46px;object-fit:contain}
.tk-tool[data-tool=figma] .tk-logo>img{width:32px}
.tk-tool[data-tool=swiftui] .tk-logo>img,.tk-tool[data-tool=testflight] .tk-logo>img{width:55px;height:55px}
.tk-tool-name{font:500 1.25rem/1.3 var(--gj-heading);letter-spacing:-.03em}
.tk-tool-role{font-size:.875rem;line-height:1.55;color:#dec8ee;margin-top:4px}
.tk-tool[aria-pressed=true] .tk-tool-role{color:#79578c}
.tk-detail{display:grid;grid-template-columns:1fr 1.7fr;gap:35px;margin-top:26px;padding:25px 0 28px;border-bottom:1px solid #cda4e736;min-height:186px}
.tk-detail-label>span{font:500 .75rem/1.5 Inter,sans-serif;letter-spacing:.12em;color:#c9a2e4}
.goji-home .tk-detail h3{font:400 1.65rem/1.2 var(--gj-heading);letter-spacing:-.04em;color:#fff;margin:12px 0 0;max-width:310px}
.tk-detail p{font-size:1rem;line-height:1.75;color:#e6d8ef;margin:0 0 15px;max-width:650px}
.tk-tags{display:flex;gap:8px;flex-wrap:wrap;padding:0;margin:0;list-style:none}
.tk-tags li{padding:5px 9px;border:1px solid #b48dd150;border-radius:3px;color:#ddc2ee;font-size:.75rem;line-height:1.5;background:#1a0e271a}
.tk-journey{display:flex;align-items:center;gap:20px;margin-top:25px}
.tk-journey>span{display:flex;align-items:center;gap:9px;color:#bca2cf;font-size:.75rem;white-space:nowrap}
.tk-journey b{font-size:.875rem;font-weight:450;color:#d2bfdf}
.tk-journey .is-current,.tk-journey .is-current b{color:#fff}
.tk-journey>i{height:1px;flex:1;background:#bb92d63d;position:relative;overflow:hidden}
.tk-journey>i:after{content:'';position:absolute;height:1px;width:30%;background:linear-gradient(90deg,transparent,#dbc1fa,transparent);animation:tk-travel 5s linear infinite}
.tk-journey>i:nth-of-type(2):after{animation-delay:-1.6s}.tk-journey>i:nth-of-type(3):after{animation-delay:-3.2s}
.tk-footnote{font-size:.75rem;color:#c3a7d8;line-height:1.7;margin:23px 0 0}
@keyframes tk-logo-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-5px) rotate(2deg)}}
@keyframes tk-light-drift{from{transform:translate3d(-2%,-2%,0) scale(1)}to{transform:translate3d(3%,2%,0) scale(1.08)}}
@keyframes tk-travel{from{transform:translateX(-120%)}to{transform:translateX(460%)}}
.gj-motion-ready .tk-section:not(.gj-in-view) .tk-logo,.gj-motion-ready .tk-section:not(.gj-in-view) .tk-light,.gj-motion-ready .tk-section:not(.gj-in-view) .tk-journey>i:after,.gj-sleeping .tk-logo,.gj-sleeping .tk-light,.gj-sleeping .tk-journey>i:after{animation-play-state:paused}
@media(max-width:1000px){.tk-panel{padding:40px 30px 27px}.tk-header{gap:35px;grid-template-columns:1.25fr 1fr}.goji-home .tk-header .gj-title{font-size:40px}.tk-tool{padding:16px;min-height:205px}.tk-tool-role{font-size:.8rem}.tk-detail{gap:28px;grid-template-columns:1fr 1.5fr}.tk-journey{gap:13px}}
@media(max-width:760px){.goji-home .tk-section{padding:15px 0 55px}.tk-panel{padding:34px 25px 25px}.tk-header{grid-template-columns:1fr;gap:22px;margin-bottom:27px}.tk-eyebrow{margin-bottom:17px;font-size:.75rem;letter-spacing:.09em}.goji-home .tk-header .gj-title{font-size:37px}.tk-intro p{max-width:100%;font-size:1rem;margin-bottom:15px}.tk-tools{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.tk-tool{min-height:191px;padding:15px 17px}.tk-tool-role{font-size:.875rem}.tk-tool-name{font-size:1.25rem}.tk-logo{width:61px;height:61px;margin:13px 0 11px}.tk-detail{grid-template-columns:1fr;gap:16px;margin-top:17px;padding-top:24px;min-height:0}.goji-home .tk-detail h3{font-size:1.6rem;max-width:100%}.tk-tags{gap:6px}.tk-journey{gap:8px;justify-content:space-between}.tk-journey>span{flex-direction:column;gap:5px}.tk-journey>i{align-self:flex-start;margin-top:9px}.tk-journey b{font-size:.75rem}.tk-footnote{font-size:.75rem}.goji-home .gj-work{padding-top:55px}}
@media(max-width:400px){.tk-panel{padding:30px 18px 23px}.tk-tool{min-height:179px;padding:13px 11px}.tk-tool-role{font-size:.75rem}.tk-tool-name{font-size:1.125rem}.tk-logo{width:54px;height:54px}.tk-logo>img{width:40px;height:40px}.tk-tool[data-tool=swiftui] .tk-logo>img,.tk-tool[data-tool=testflight] .tk-logo>img{width:49px;height:49px}.tk-tool[data-tool=figma] .tk-logo>img{width:28px}.goji-home .tk-header .gj-title{font-size:33px}.tk-eyebrow{font-size:.7rem}.tk-journey{gap:5px}.tk-journey b{font-size:.75rem}}
@media(prefers-reduced-motion:reduce){.tk-logo,.tk-light,.tk-journey>i:after{animation:none!important}.tk-tool{transition:none}.tk-tool:hover{transform:none}}
.goji-home.gj-reduce-motion .tk-logo,.goji-home.gj-reduce-motion .tk-light,.goji-home.gj-reduce-motion .tk-journey>i:after{animation:none!important}

/* Bring the toolkit's richer violet through the homepage's key moments. */
.goji-home{
 --dp-surface:radial-gradient(ellipse at 80% 12%,#b279f14d,transparent 58%),radial-gradient(ellipse at 15% 90%,#a056e338,transparent 52%),linear-gradient(122deg,#35174e,#4e2476 53%,#26113e);
 --dp-copy:#e8d8f3;--dp-soft:#d7b4f2;--dp-border:#bb92d655;
}
.goji-home .gj-hero>.gj-mesh:before{background:radial-gradient(ellipse at 68% 10%,#9153da9c,transparent 52%),radial-gradient(ellipse at 20% 15%,#c299ee94,transparent 48%),radial-gradient(ellipse at 90% 15%,#b495e788,transparent 45%)}
.goji-home .gj-button-primary{background:linear-gradient(115deg,#512574,#351747);border-color:#683986;color:#fff}
.goji-home .gj-button-primary:hover{background:linear-gradient(115deg,#743aa0,#482066);color:#fff}
.goji-home .gj-hero-actions{border-color:#cab0e4}
.goji-home .gj-feature{border-color:#b48ac9}
.goji-home .gj-feature-copy{background:var(--dp-surface);border-radius:3px 0 0 3px}
.goji-home .gj-feature-copy h3{color:#fff}
.goji-home .gj-feature-copy>p,.goji-home .gj-feature-copy .gj-check-list{color:var(--dp-copy)}
.goji-home .gj-feature-copy .gj-step-tag{color:var(--dp-soft)}
.goji-home .gj-feature-copy .gj-check-list li:before{background:#d7b4f222;border-color:#c69be26b;color:#e4c3ff}
.goji-home .gj-feature-copy .gj-text-link{color:#f0dfff;border-color:#b994cd77}
.goji-home .gj-feature-copy .gj-text-link>span{color:#deb9ff}
.goji-home .gj-feature-copy .gj-text-link:hover{color:#fff}
.goji-home .gj-about-inner{background:var(--dp-surface);border-color:#a77dbd;box-shadow:0 25px 65px -46px #4a146f99;color:#fff}
.goji-home .gj-about-inner .gj-title{color:#fff}
.goji-home .gj-about-inner .gj-title>span{color:#d4acf8}
.goji-home .gj-about-inner .gj-kicker,.goji-home .gj-about-inner .gj-small-label{color:var(--dp-soft)}
.goji-home .gj-about-inner>div>p:not(.gj-kicker){color:var(--dp-copy)}
.goji-home .gj-about-note{border-color:var(--dp-border)}
.goji-home .gj-about-note>p{color:#e4c5fa!important}
.goji-home .gj-about-inner .gj-text-link{color:#f0dfff}
.goji-home .gj-about-inner .gj-text-link>span{color:#dcb6fb}
.goji-home .gj-founder>span{background:#ba85e426;color:#f0dfff;border-color:#c3a0da66}
.goji-home .gj-founder b{color:#fff}
.goji-home .gj-founder small{color:#d9bfe9}
.goji-home .mp-price-card.mp-growth{background:var(--dp-surface);border-color:#8f5db0;box-shadow:0 22px 48px -30px #602b9099}
.goji-home .mp-growth:before{height:3px;background:linear-gradient(90deg,#9159c4,#dec2fa,#9159c4)}
.goji-home .mp-growth .mp-popular{background:#f0defc;border-color:#f0defc;color:#593371}
.goji-home .mp-growth .mp-plan-number{color:#dec2f4}
.goji-home .mp-growth h3,.goji-home .mp-growth .mp-price>span{color:#fff}
.goji-home .mp-growth .mp-price>small,.goji-home .mp-growth .mp-price-sub,.goji-home .mp-growth .mp-term,.goji-home .mp-growth li{color:var(--dp-copy)}
.goji-home .mp-growth li:first-child{color:#fff}
.goji-home .mp-growth .mp-feature-head{color:#d7b4f2;border-color:var(--dp-border)}
.goji-home .mp-growth li:before{border-color:#d0a6ee}
.goji-home .mp-growth .mp-plan-cta{background:#f6ebff;border-color:#f6ebff;color:#4d265f}
.goji-home .mp-growth .mp-plan-cta:hover{background:#fff;color:#38134f}
.goji-home .mp-preview-image{background:var(--dp-surface)}
.goji-home .mp-preview-image>img{box-shadow:0 25px 45px -22px #15092399}
.goji-home .mp-preview-image>figcaption{color:#eddaff}
.goji-home .mp-preview-image:after{border-color:#d9b9ef14}
.goji-home .gj-enquiry-inner{border-color:#b28bc9}
.goji-home .gj-enquiry-copy{background:var(--dp-surface)}
.goji-home .gj-enquiry-copy .gj-title{color:#fff}
.goji-home .gj-enquiry-copy .gj-title>span{color:#d4acf8}
.goji-home .gj-enquiry-copy .gj-kicker{color:var(--dp-soft)}
.goji-home .gj-enquiry-copy>p:not(.gj-kicker){color:var(--dp-copy)}
.goji-home .gj-enquiry-copy .gj-email{color:#eedbfc}
.goji-home .gj-free-note{background:#bc84e41a;border-color:var(--dp-border)}
.goji-home .gj-free-note>span{color:#d7b4f2}
.goji-home .gj-free-note>p,.goji-home .gj-free-note>a{color:var(--dp-copy)}
.goji-home .gj-closing{background:radial-gradient(ellipse at 70% 10%,#9f67cd66,transparent 62%),linear-gradient(125deg,#35174e,#542879 55%,#311544)}
.goji-home .gj-closing>.gj-mesh{opacity:.2;mask-image:linear-gradient(#000,transparent 78%)}
.goji-home .gj-closing .gj-title{color:#fff}
.goji-home .gj-closing .gj-title>span{color:#d4acf8}
.goji-home .gj-closing .gj-kicker{color:var(--dp-soft)}
.goji-home .gj-closing .gj-heading>p:not(.gj-kicker),.goji-home .gj-closing-note{color:var(--dp-copy)}
.goji-home .gj-closing .gj-button{background:#f5e8ff;color:#4a245e;border-color:#edd6ff}
.goji-home .gj-closing .gj-button:hover{background:#fff;color:#351448}
.goji-home .footer2{--line:#b991d230;background:linear-gradient(120deg,#301542,#391a51 60%,#241133);border-color:#b991d230;color:#e8d7f2}
.goji-home .footer2-logo>span,.goji-home .footer2-mail{color:#f3e9fa}
.goji-home .footer2-head{color:#d8b5f1}
.goji-home .footer2-tag,.goji-home .footer2-text,.goji-home .footer2-links>a{color:#dcc4e9}
.goji-home .footer2-links>a:hover,.goji-home .footer2-mail:hover{color:#fff}
.goji-home .footer2-social>a{border-color:#c29dda55;color:#e5cdf6}
.goji-home .f2card{background:#b386d30d;border-color:#c49bd13d}
.goji-home .f2card:hover{background:#b386d325;border-color:#d1abe565}
.goji-home .f2card b{color:#f1e2fb}
.goji-home .f2card small{color:#d7bce7}
.goji-home .f2icon{background:#bc85e422;border-color:#d1a0f23b}
.goji-home .f2icon svg{stroke:#d9b1f4}
.goji-home .footer2-bottom{border-color:#b991d230}
.goji-home .footer2-bottom p,.goji-home .footer2-bottom a{color:#ceb1e0}
@media(max-width:760px){.goji-home .gj-feature-copy{border-radius:3px 3px 0 0}.goji-home .gj-feature-visual{border-top-color:#c6a5dc}.goji-home .gj-about-note{border-top-color:var(--dp-border)}}
