/* Light mode (generated from the dark styles by gen_light.py, plus light-extra.css). Loaded only when the device is in light mode. */
h1,h2,h3{color:#17123A}
header{background:linear-gradient(to bottom, #FAF9FF, transparent)}
.top-float{background:rgba(255,255,255,0.82);box-shadow:0 4px 16px rgba(50,30,140,0.105)}
.hero-grid{background-image:linear-gradient(rgba(91,63,217,0.018) 1px, transparent 1px), linear-gradient(90deg, rgba(91,63,217,0.018) 1px, transparent 1px)}
.bullet-streak{background:linear-gradient(90deg, transparent, var(--blue-bright) 15%, #FFFFFF 50%, var(--blue-bright) 85%, transparent)}
.btn-primary{color:#FFFFFF}
.btn-ghost:hover{box-shadow:0 0 20px rgba(175,142,245,0.12)}
.hv-frame{background:rgba(255,255,255,0.82);border:1px solid rgba(129,77,239,0.2);box-shadow:0 8px 32px rgba(50,30,140,0.15)}
.on-dark::before{background-image:linear-gradient(rgba(91,63,217,0.027) 1px, transparent 1px), linear-gradient(90deg, rgba(91,63,217,0.027) 1px, transparent 1px)}
.on-paper{color:#4B4636}
.on-paper .mono-label{color:#4D25C1}
.client-card{background:rgba(255,255,255,0.52);border:1px solid rgba(40,24,120,0.16);box-shadow:0 4px 20px rgba(50,30,140,0.054), inset 0 1px 0 rgba(91,63,217,0.03)}
.client-card:hover{background:rgba(255,255,255,0.62);box-shadow:0 14px 36px -6px rgba(175,142,245,0.15), inset 0 1px 0 rgba(91,63,217,0.05);border-color:rgba(129,77,239,0.55)}
.client-card .client-name{color:#17123A}
.client-card.you-card{background:rgba(175,142,245,0.06)}
.service-panel{border:1px solid rgba(40,24,120,0.16);background:rgba(255,255,255,0.58);box-shadow:0 4px 24px rgba(50,30,140,0.066), inset 0 1px 0 rgba(91,63,217,0.03)}
.svc-arrow{background:rgba(255,255,255,0.82)}
.story-stats div small{color:#4D25C1}
.field input, .field textarea{color:#17123A}
.whatsapp-card{background:rgba(115,63,224,0.05)}
.whatsapp-card h4{color:#17123A}
.lead-form input{background:rgba(255,255,255,0.82);color:#17123A}
.lead-ok{color:#328F3E}
.audit-card{border:1px solid rgba(40,24,120,0.16);background:rgba(255,255,255,0.58);box-shadow:0 4px 24px rgba(50,30,140,0.066), inset 0 1px 0 rgba(91,63,217,0.03)}
.guarantee-box{border:1px solid rgba(129,77,239,0.35);background:rgba(255,255,255,0.6);box-shadow:0 0 40px -10px var(--blue-glow), inset 0 1px 0 rgba(91,63,217,0.03)}
.pill{background:rgba(255,255,255,0.82)}
.nolock strong{color:#328F3E}
.faq-item{border:1px solid rgba(40,24,120,0.16);background:rgba(255,255,255,0.58)}
.faq-item[open]{border-color:rgba(129,77,239,0.4)}
.faq-item summary{color:#17123A}
.faq-item .faq-a strong{color:#17123A}
.pop-overlay{background:rgba(255,255,255,0.82)}
.pop-card{border:1px solid rgba(129,77,239,0.4);box-shadow:0 20px 60px rgba(50,30,140,0.15), 0 0 40px -10px var(--blue-glow)}
.pop-close:hover{color:#17123A}
.faq-mini > summary{border:1px solid rgba(40,24,120,0.16);background:rgba(255,255,255,0.58)}
.service-panel{background:rgba(255,255,255,0.5);border-color:rgba(40,24,120,0.132)}
@media (max-width:640px){
  .menu-btn{background:rgba(255,255,255,0.82)}
  .mobile-menu{background:#FFFFFF;box-shadow:0 16px 40px rgba(50,30,140,0.15)}
  .mobile-menu a{color:#17123A}
  .mobile-menu a:active, .mobile-menu a:hover{background:rgba(175,142,245,0.1)}
}
@media (max-width:640px){
  .mobile-menu a.menu-cta{color:#FFFFFF}
  .mobile-menu a.menu-cta:active, .mobile-menu a.menu-cta:hover{color:#FFFFFF}
}
.clients-toggle{background:rgba(255,255,255,0.58)}
.fold-float{background:#FFFFFF;box-shadow:0 6px 24px rgba(50,30,140,0.135)}
.lead-note{color:#328F3E}
@media (max-width:760px){
  .guarantee-box{border:1px solid rgba(40,24,120,0.132);background:rgba(255,255,255,0.5)}
}
.pop-card p .nl{color:#328F3E}
.pr-card, .pr-box, .pr-note, .faq-cat > summary{background:rgba(255,255,255,0.44);border:1px solid rgba(40,24,120,0.132);box-shadow:inset 0 1px 0 rgba(91,63,217,0.025)}
.pr-card:hover, .pr-box:hover{border-color:rgba(129,77,239,0.3)}
.pr-visual{background:radial-gradient(circle, rgba(175,142,245,0.14), rgba(142,164,245,0) 70%)}
.pr-price{color:#17123A}
.pr-list li{color:#3A3658;border-top:1px solid rgba(40,24,120,0.104)}
.pr-box li{color:#3A3658}
.pr-note strong{color:#328F3E}
.faq-cat > summary{color:#17123A}
.faq-cat[open] > summary{border-color:rgba(129,77,239,0.35)}
#faq .faq-item{background:rgba(255,255,255,0.44);border-color:rgba(40,24,120,0.132)}
#faq .faq-item[open]{border-color:rgba(129,77,239,0.35)}
nav a.nav-cta{color:#FFFFFF}
nav a.nav-cta:hover{color:#FFFFFF}
.cta-band{background:rgba(255,255,255,0.42);border:1px solid rgba(40,24,120,0.132)}
.outcome{background:rgba(255,255,255,0.44);border:1px solid rgba(40,24,120,0.132)}
.outcome:hover{border-color:rgba(129,77,239,0.4)}
.oc-icon{background:radial-gradient(circle, rgba(175,142,245,0.16), rgba(142,164,245,0) 70%)}
.hero p.sub b{color:#17123A}
.sh-ai{background:linear-gradient(145deg,#EEE7FE,#EEE7FE);color:#17123A;box-shadow:0 0 calc(var(--p) * 60px) rgba(175,142,245,0.27);border:1px solid rgba(129,77,239,0.35)}
.sh-bar{box-shadow:0 1px 6px rgba(32,33,36,0.28)}
.sh-bar svg{stroke:#5F6368}
.sh-res{border-top:1px solid rgba(40,24,120,0.18)}
.sh-res small{color:#5F6368}
.sh-res b{color:#1A0DAB}
.sh-track{background:rgba(91,63,217,0.108)}
.sh-track i{background:linear-gradient(180deg,#4285F4,#EA4335,#FBBC04,#34A853,#AF8EF5)}
.sh-ask{background:rgba(91,63,217,0.09)}
.sh-ans{background:rgba(175,142,245,0.16);border:1px solid rgba(129,77,239,0.35)}
.sh-ans b{color:#17123A}
.sh-ans span{color:#5227CE;border:1px solid rgba(128,74,242,0.4)}
.sh-chips span{border:1px solid rgba(40,24,120,0.18)}
.sh-chips button{border:1px solid rgba(40,24,120,0.18)}
.sh-chips button:hover{border-color:rgba(128,74,242,0.8);background:rgba(175,142,245,0.14)}
.sh-chips button.on{border-color:#804AF2;background:rgba(175,142,245,0.26);color:#17123A}
.sh-chips button:focus-visible{outline:2px solid #804AF2}
.btn-primary{background:#6F3ED8}
.btn-primary:hover{background:#7D4AE8}
.trust-row{border-top:1px solid rgba(40,24,120,0.16);border-bottom:1px solid rgba(40,24,120,0.16)}
.trust-row li{border-left:1px solid rgba(40,24,120,0.132)}
.trust-row b{color:#17123A}
@media (max-width:820px){
  .trust-row li{border-top:1px solid rgba(40,24,120,0.132)}
  .trust-row li:nth-child(even){border-left:1px solid rgba(40,24,120,0.132)}
}
.trust-row li{border-left:1px solid rgba(40,24,120,0.132)}
.sh-foot b{color:#17123A}
@media (max-width:820px){
  .sh-track i{background:linear-gradient(90deg,#4285F4,#EA4335,#FBBC04,#34A853,#AF8EF5)}
}
.hero-stage::before{background:radial-gradient(circle, rgba(175,142,245,0.18), rgba(142,164,245,0) 68%)}
/* site.css */
.dd-card{background:#FFFFFF;border:1px solid rgba(40,24,120,0.16);box-shadow:0 22px 50px rgba(50,30,140,0.165)}
nav .dd-menu a{color:#17123A}
nav .dd-menu a:hover{background:rgba(175,142,245,0.12);color:#17123A}
nav .dd-menu a.dd-all{border-top:1px solid rgba(40,24,120,0.132)}
.mobile-menu summary{color:#17123A}
.svc-card{background:rgba(255,255,255,0.82);border:1px solid rgba(40,24,120,0.146)}
.svc-card:hover{border-color:rgba(129,77,239,0.45)}
.svc-card .svc-img{background:#FFFFFF}
.svc-card li{color:#17123A}
.proc-tabs button{border:1px solid rgba(40,24,120,0.18)}
.proc-tabs button:hover{border-color:rgba(129,77,239,0.6);color:#17123A}
.proc-tabs button.on{color:#17123A}
.steps::before{background:rgba(91,63,217,0.09)}
.steps .n{background:#FFFFFF;border:2px solid rgba(40,24,120,0.18);color:#17123A}
.steps .get{border-left:3px solid var(--sc,#6F3ED8);color:#5227CE}
.steps .get b{color:#17123A}
@media (prefers-reduced-motion:reduce){
  .steps .n, .steps.play li .n{background:var(--sc,#6F3ED8);border-color:var(--sc,#6F3ED8)}
}
.post-card{background:rgba(255,255,255,0.82);border:1px solid rgba(40,24,120,0.146)}
.post-card:hover{border-color:rgba(129,77,239,0.45)}
.post-card .pc-img{background:#FFFFFF}
.post-card h2, .post-card h3{color:#17123A}
.post-card .pc-more{color:#5227CE}
.post-hero{background:#FFFFFF}
.post-body p{color:#3A3658}
.post-body ul, .post-body ol{color:#3A3658}
.post-body .callout{background:rgba(175,142,245,0.09);color:#5227CE}
@media (max-width:980px){
  .menu-btn{background:rgba(255,255,255,0.82)}
  .mobile-menu{background:#FFFFFF;box-shadow:0 16px 40px rgba(50,30,140,0.15)}
  .mobile-menu > a{color:#17123A}
  .mobile-menu > a:hover{background:rgba(175,142,245,0.1)}
  .mobile-menu a.menu-cta{background:#6F3ED8;color:#FFFFFF}
}
.ind-card{background:#FFFFFF;border:1px solid rgba(40,24,120,0.132)}
.ind-card::after{background:linear-gradient(to top, rgba(255,255,255,0.82) 0%, rgba(255,255,255,0.65) 42%, rgba(7,9,13,0) 62%)}
.ind-body h3{color:#17123A}
.ind-body p{color:#17123A}
.ind-btn{border:1px solid rgba(40,24,120,0.18);background:rgba(255,255,255,0.82);color:#17123A}
.ind-btn:hover{background:rgba(175,142,245,0.15)}
.ind-dots i{background:rgba(91,63,217,0.18)}
.proc-tabs button::before{background:var(--dot,#AF8EF5)}
.proc-tabs button.on::before{background:#FFFFFF}
@media (max-width:820px){
  .trust-row li:nth-child(even){border-left:1px solid rgba(40,24,120,0.132) !important}
}
.qa-list details{border:1px solid rgba(40,24,120,0.146);background:rgba(255,255,255,0.82)}
.qa-list summary{color:#17123A}
.steps .n{box-shadow:0 0 0 4px rgba(50,30,140,0.3)}
.proc-panel::before{border-top:1px solid rgba(40,24,120,0.104)}
.proc-qa h3{color:#17123A}
.ind-hero{background:#FFFFFF}
.ind-list li{color:#3A3658}
.ind-note{background:rgba(175,142,245,0.07)}
.ind-note b{color:#17123A}
.ind-note p{color:#3A3658}
.chip-links a{border:1px solid rgba(40,24,120,0.18);color:#17123A}
.chip-links a:hover{color:#17123A}
.mobile-menu .mm-svc > a{color:#17123A}
@media (max-width:640px){
  .ind-card.is-center{box-shadow:0 30px 42px -22px rgba(175,142,245,0.33), 0 0 0 1px rgba(175,142,245,0.18)}
  .svc-rail .svc-card.is-center{box-shadow:0 30px 42px -22px rgba(175,142,245,0.33), 0 0 0 1px rgba(175,142,245,0.18)}
}
.svc-viewport.peek .svc-slide.is-center .service-panel{box-shadow:0 30px 42px -22px rgba(175,142,245,0.3), 0 0 0 1px rgba(175,142,245,0.168)}
.case{border:1px solid rgba(40,24,120,0.146);background:linear-gradient(180deg, rgba(111,62,216,0.1), rgba(0,0,0,0) 360px), rgba(255,255,255,0.82)}
.case-head h2{color:#17123A}
.case-head p{color:#3A3658}
.case-stats div{background:rgba(91,63,217,0.032);border:1px solid rgba(40,24,120,0.118)}
.case-stats b{color:#17123A;background:linear-gradient(135deg,#FFFFFF,#CCB7FA)}
.shot img{border:1px solid rgba(40,24,120,0.18);box-shadow:0 22px 40px -24px rgba(175,142,245,0.27);background:#FFFFFF}
.shot:hover img{box-shadow:0 30px 50px -24px rgba(175,142,245,0.36)}
.shot span, .wide-shot span{color:#17123A}
.wide-shot img{border:1px solid rgba(40,24,120,0.18);background:#FFFFFF;box-shadow:0 22px 40px -24px rgba(175,142,245,0.27)}
.try{border:1px dashed rgba(129,77,239,0.45);background:rgba(111,62,216,0.08)}
.try b{color:#17123A}
.try span{color:#3A3658}
.side-projects{border-top:1px solid rgba(40,24,120,0.118)}
.case-challenge{background:rgba(251,188,4,0.06)}
.case-challenge p{color:#17123A}
.ab-stats div{border:1px solid rgba(40,24,120,0.132);background:linear-gradient(180deg, rgba(111,62,216,0.12), rgba(0,0,0,0))}
.ab-stats b{background:linear-gradient(135deg,#FFFFFF,#CCB7FA)}
.ab-steps li{border:1px solid rgba(40,24,120,0.132);background:rgba(255,255,255,0.82)}
.ab-steps li h3{color:#17123A}
.ab-steps li::after{background:linear-gradient(90deg,#6F3ED8,#AF8EF5)}
.sxf{border:1px solid rgba(40,24,120,0.132);background:linear-gradient(180deg, rgba(111,62,216,0.12), rgba(0,0,0,0))}
.sxf b{background:linear-gradient(135deg,#FFFFFF,#CCB7FA)}
.sxf span{color:#17123A}
.sx-tabs button{border:1px solid rgba(40,24,120,0.18);color:#17123A}
.sx-tabs button:hover{border-color:rgba(128,74,242,0.7)}
.sx-tabs button.on{background:#6F3ED8;border-color:#6F3ED8;color:#FFFFFF}
.more-clients{border-top:1px solid rgba(40,24,120,0.132)}
.more-head h2{color:#17123A}
.ab-big{color:#17123A}
.case{background:rgba(91,63,217,0.013);border-color:rgba(40,24,120,0.118)}
.case-stats{border-top:1px solid rgba(40,24,120,0.118);border-bottom:1px solid rgba(40,24,120,0.118)}
.case-stats div + div{border-left:1px solid rgba(40,24,120,0.118)}
.case-stats b{-webkit-text-fill-color:#17123A;color:#17123A}
.case-challenge{border-left:2px solid rgba(40,24,120,0.18)}
.case-challenge p{color:#3A3658}
.shot img, .wide-shot img{border-color:rgba(40,24,120,0.16)}
.try{border-top:1px solid rgba(40,24,120,0.118)}
@media (max-width:980px){
  .case-stats div:nth-child(n/**/+3){border-top:1px solid rgba(40,24,120,0.118)}
}
@media (max-width:640px){
  .sxf-dots i{background:rgba(91,63,217,0.198)}
}
@media (max-width:640px){
  .ind-tabs button{background:rgba(91,63,217,0.032);border:1px solid rgba(40,24,120,0.132)}
  .ind-tabs button.on{color:#17123A;background:#EEE7FE;border-color:rgba(129,77,239,0.5)}
  .ind-folder .ind-track{border:1px solid rgba(129,77,239,0.5);background:#EEE7FE}
}
@media (max-width:640px){
  .ind-tabnext{color:#17123A;background:linear-gradient(90deg, rgba(0,0,0,0), #FAF9FF 55%)}
}
.theme-pick{border:1px solid rgba(40,24,120,0.18);background:rgba(91,63,217,0.036)}
.theme-pick button.on{color:#17123A !important}
.sx-stats b{color:#17123A}
.qa-toggle{color:#17123A}
@media (max-width:820px){
  .sx-stats li{border-left:2px solid rgba(129,77,239,0.35)}
}

/* ===================== hand-written light mode ===================== */
:root {
  color-scheme: light;
  --ink:#FAF9FF; --slate:#FFFFFF; --slate-2:#F3F0FC; --slate-3:#E2DDF5;
  --steel:#4F4C6E; --steel-dim:#6E6B8C;
  --blue-deep:#EDE7FF; --blue-mid:#5B3FD9; --blue-bright:#6A4BE0; --blue-glow:rgba(106,75,224,.22);
  --blue-gradient:linear-gradient(135deg,#5B3FD9,#8B6CF6);
  --blue-gradient-soft:linear-gradient(135deg,#6A4BE0,#A78BFA);
  --lm-ink:#17123A;
}
html { background:#F3EEFF; }
body { background:transparent !important; }
body { color:var(--steel); }
h1, h2, h3 { color:var(--lm-ink); }
::selection { background:#C9B8FF; color:#17123A; }

/* the starfield belongs to dark mode */
#galaxy-canvas, .bullet-streak, .hero-grid, body::before { display:none !important; }

/* Background layer (fixed, always moving, like the stars in dark mode). Everything else scrolls over it.
   No live blur anywhere: soft radial gradients + transforms only, so phones stay smooth. */
.lm-bg { position:fixed; inset:0; z-index:-1; pointer-events:none; overflow:hidden; display:block !important; contain:strict;
  background:linear-gradient(165deg,#F3EEFF 0%,#E6DBFF 38%,#F1EBFF 64%,#E2D5FF 100%); }
.lm-bg b { position:absolute; display:block; will-change:transform; }
.lm-bg b i { position:absolute; inset:0; border-radius:50%; will-change:transform; animation:lmDrift 18s ease-in-out infinite alternate; }
.lm-bg b:nth-child(1) { width:95vmax; height:95vmax; left:-45vmax; top:-30vmax; }
.lm-bg b:nth-child(1) i { background:radial-gradient(circle, rgba(124,77,255,.55) 0%, rgba(124,77,255,.22) 38%, rgba(124,77,255,0) 66%); }
.lm-bg b:nth-child(2) { width:85vmax; height:85vmax; right:-40vmax; top:15vh; }
.lm-bg b:nth-child(2) i { background:radial-gradient(circle, rgba(167,120,255,.5) 0%, rgba(167,120,255,.2) 40%, rgba(167,120,255,0) 66%); animation-duration:23s; animation-direction:alternate-reverse; }
.lm-bg b:nth-child(3) { width:80vmax; height:80vmax; left:-25vmax; top:55vh; }
.lm-bg b:nth-child(3) i { background:radial-gradient(circle, rgba(91,63,217,.42) 0%, rgba(91,63,217,.16) 40%, rgba(91,63,217,0) 66%); animation-duration:27s; }
.lm-bg b:nth-child(4) { width:70vmax; height:70vmax; right:-20vmax; top:-25vmax; }
.lm-bg b:nth-child(4) i { background:radial-gradient(circle, rgba(214,190,255,.75) 0%, rgba(214,190,255,.3) 40%, rgba(214,190,255,0) 66%); animation-duration:15s; }
.lm-bg b:nth-child(5) { width:60vmax; height:60vmax; left:20vw; top:35vh; }
.lm-bg b:nth-child(5) i { background:radial-gradient(circle, rgba(255,255,255,.7) 0%, rgba(255,255,255,0) 62%); animation-duration:20s; }
@keyframes lmDrift { 0% { transform:translate3d(0,0,0) scale(1); } 50% { transform:translate3d(7%,-5%,0) scale(1.12); } 100% { transform:translate3d(-6%,6%,0) scale(.94); } }
/* slow ripples spreading through the glass */
.lm-bg u { position:absolute; width:70vmax; height:70vmax; border-radius:50%; text-decoration:none; opacity:0; will-change:transform, opacity;
  background:radial-gradient(circle, rgba(255,255,255,0) 52%, rgba(255,255,255,.55) 58%, rgba(196,170,255,.35) 61%, rgba(255,255,255,0) 66%);
  animation:lmRipple 12s ease-out infinite; }
.lm-bg u:nth-of-type(1) { left:-10vmax; top:10vh; }
.lm-bg u:nth-of-type(2) { right:-15vmax; top:45vh; animation-delay:4s; }
.lm-bg u:nth-of-type(3) { left:15vw; bottom:-20vmax; animation-delay:8s; }
@keyframes lmRipple { 0% { transform:scale(.15); opacity:0; } 15% { opacity:.9; } 100% { transform:scale(1.25); opacity:0; } }
/* the glass: a seamless sheet of bevelled squares (one image, drawn once by the script) */
.lm-bg .lm-grid { position:absolute; inset:0; background-repeat:repeat; background-size:var(--tile-sheet,576px) auto; opacity:.95;
  -webkit-mask-image:linear-gradient(to bottom, rgba(0,0,0,.55), rgba(0,0,0,.85) 45%, #000); mask-image:linear-gradient(to bottom, rgba(0,0,0,.55), rgba(0,0,0,.85) 45%, #000); }
@media(prefers-reduced-motion:reduce){ .lm-bg b i, .lm-bg u { animation:none; } }

/* sections let the background show through */
section, .on-dark, .sg-band, .trust, .vid-sec, .home-qa, #services, #shift, #audit, #next, main, footer { background-color:transparent !important; }
header { background:linear-gradient(to bottom, rgba(250,249,255,.92), rgba(250,249,255,0)) !important; }

/* logo: black in light mode (swapped by <picture>; this is a fallback) */
.logo img { filter:none; }

/* Bismillah: dark gold and quieter on white */
.bismillah { background:linear-gradient(100deg,#7A5C14 0%,#A07C24 30%,#D9B85C 50%,#A07C24 70%,#7A5C14 100%); background-size:220% 100%;
  -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; filter:none; opacity:.45; }

/* hero headline */
.hero h1 { color:var(--lm-ink); }
.hero h1 em { background:linear-gradient(135deg,#5B3FD9,#8B6CF6 60%,#B79CFF); -webkit-background-clip:text; background-clip:text; -webkit-text-fill-color:transparent; }
.eyebrow { color:#6A4BE0 !important; }
.hero p.sub b { color:var(--lm-ink); }

/* cards: bright frosted panels with a deep shadow so they lift off the moving background (no live blur: it is what made phones lag) */
.glass, .mini, .sxf, .qa-list details, .ab-steps li, .work-card, .svc-card, .service-panel, .case, .trust-row, .proc-panel, .cta-band, .cta {
  -webkit-backdrop-filter:none !important; backdrop-filter:none !important; }
.glass, .mini, .sxf, .qa-list details, .ab-steps li, .work-card, .svc-card, .service-panel {
  background:linear-gradient(180deg, rgba(255,255,255,.93), rgba(255,255,255,.80)) !important; border:1px solid rgba(255,255,255,.95) !important;
  box-shadow:inset 0 1px 0 #fff, 0 1px 2px rgba(40,20,120,.06), 0 10px 22px -8px rgba(60,30,160,.22), 0 34px 60px -26px rgba(60,30,160,.40) !important; }
.case { background:rgba(255,255,255,.78) !important; border:1px solid rgba(255,255,255,.95) !important;
  box-shadow:inset 0 1px 0 #fff, 0 12px 26px -10px rgba(60,30,160,.2), 0 40px 80px -40px rgba(60,30,160,.45) !important; }
.service-panel, .svc-card { transition:transform .35s ease, box-shadow .35s ease; }
.service-panel:hover, .svc-card:hover { transform:translateY(-4px); box-shadow:inset 0 1px 0 #fff, 0 2px 4px rgba(40,20,120,.08), 0 18px 34px -10px rgba(60,30,160,.3), 0 48px 80px -30px rgba(60,30,160,.5) !important; }
.svc-viewport.peek .svc-slide.is-center .service-panel { box-shadow:inset 0 1px 0 #fff, 0 14px 30px -10px rgba(60,30,160,.3), 0 44px 70px -26px rgba(60,30,160,.55) !important; }
.trust-row { background:rgba(255,255,255,.55); border-radius:14px; }

/* buttons */
.btn-primary, nav a.nav-cta, .menu-cta { background:#17123A !important; color:#fff !important; }
.btn-primary:hover, nav a.nav-cta:hover { background:#2A2160 !important; }
.btn-ghost { color:var(--lm-ink) !important; border-color:rgba(40,24,120,.18) !important; background:rgba(255,255,255,.6); }
.cta-float { background:#17123A; box-shadow:0 12px 30px -10px rgba(40,24,120,.55); }
.cta-float:hover { background:#2A2160; }
.status-badge { color:#4F4C6E; border-color:rgba(40,24,120,.16); background:rgba(255,255,255,.6); }
.status-dot { background:#6A4BE0; box-shadow:0 0 10px #8B6CF6; }
.mobile-menu { background:rgba(250,249,255,.97) !important; }
.mobile-menu a { color:var(--lm-ink); }
.menu-btn { background:rgba(255,255,255,.7) !important; border-color:rgba(40,24,120,.15) !important; }
.menu-btn span { background:#17123A !important; }

/* video: keep the frame dark, lighten the glow to lilac */
.vid-sec::before { background:radial-gradient(ellipse 60% 55% at 30% 50%, rgba(124,77,255,.35), transparent 70%),
  radial-gradient(ellipse 55% 55% at 72% 50%, rgba(196,181,253,.5), transparent 70%) !important; }
.vid-frame { background:linear-gradient(#000,#000) padding-box, linear-gradient(120deg,#5B3FD9,#8B6CF6 45%,#C4B5FD) border-box !important;
  box-shadow:0 30px 70px -30px rgba(91,63,217,.55) !important; }
.vid-tag { color:var(--lm-ink); }

/* closing boxes: white glass */
.cta { overflow:hidden; background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(244,238,255,.88)) !important; border:1px solid #fff !important;
  box-shadow:inset 0 1px 0 #fff, 0 12px 26px -10px rgba(60,30,160,.2), 0 40px 80px -40px rgba(60,30,160,.45) !important; }
.cta h2, .cta p { color:var(--lm-ink); }

/* footer */
footer { border-top:1px solid rgba(40,24,120,.1) !important; }
footer, footer a, footer .mono { color:#5E5A7E !important; }
.cta-band { position:relative; overflow:hidden; border-radius:24px; background:linear-gradient(180deg, rgba(255,255,255,.95), rgba(244,238,255,.88)) !important;
  border:1px solid #fff !important; box-shadow:inset 0 1px 0 #fff, 0 12px 26px -10px rgba(60,30,160,.2), 0 40px 80px -40px rgba(60,30,160,.45) !important; }
.cta-band h2, .cta-band p { color:var(--lm-ink) !important; }

/* big numbers: ink-to-purple instead of white-to-blue */
.sxf b, .case-stats b, .ab-stats b, .stat b, .big { background:linear-gradient(135deg,#17123A,#5B3FD9) !important; -webkit-background-clip:text !important; background-clip:text !important; -webkit-text-fill-color:transparent !important; color:#17123A; }
/* the ChatGPT answer card: brand purple instead of navy */
.sx-new { background:linear-gradient(145deg,#2A1B6E,#5B3FD9 70%,#7C5CF0) !important; border-color:rgba(255,255,255,.35) !important; box-shadow:0 30px 60px -30px rgba(91,63,217,.65) !important; }
.sx-tabs button { color:#3A3658; border-color:rgba(40,24,120,.18); background:rgba(255,255,255,.6); }
.sx-tabs button.on { background:#17123A; border-color:#17123A; color:#fff; }
.sxf-dots i { background:rgba(40,24,120,.18); }
.sxf-dots i.on { background:#6A4BE0; }
/* "Singapore" accent: solid red on white (the shimmer fades out on a light page) */
.sg { background:none !important; -webkit-text-fill-color:#D3263A !important; color:#D3263A !important; animation:none !important; }

/* ---------- round 2 ---------- */
/* Google -> ChatGPT: light lavender card, dark text */
.sx-new { background:linear-gradient(150deg,#F4EEFF 0%,#E4D8FF 60%,#D6C6FF 100%) !important; color:#17123A !important; border:1px solid #fff !important;
  box-shadow:inset 0 1px 0 #fff, 0 12px 26px -10px rgba(60,30,160,.22), 0 40px 70px -34px rgba(60,30,160,.5) !important; }
.sx-new .sx-lbl { color:#5B3FD9 !important; }
.sx-q { background:#fff !important; color:#17123A !important; box-shadow:0 4px 12px -6px rgba(60,30,160,.3); }
.sx-a { background:rgba(255,255,255,.75) !important; border-color:rgba(91,63,217,.18) !important; color:#2A2550 !important; }
.sx-a b { color:#17123A !important; }
.sx-a .ai-dots u { background:#7C5CF0 !important; }
.sx-new .sx-note { color:#5B3FD9 !important; }
.sx-actions a { color:#17123A !important; }
.sx-actions .sx-try { color:#5B3FD9 !important; }
.sx-old { box-shadow:0 12px 26px -12px rgba(60,30,160,.25) !important; }
/* header and float stay readable over the moving background */
header { background:linear-gradient(to bottom, rgba(243,238,255,.95), rgba(243,238,255,0)) !important; }
/* readability on the stronger purple */
.hero p.sub { color:#2E2A4F !important; }
.hero h1 em { background:linear-gradient(135deg,#3F22B8,#5B3FD9 55%,#7C5CF0) !important; -webkit-background-clip:text !important; background-clip:text !important; }
.eyebrow { color:#4A2FC4 !important; }
.section-head p, .pr-lead, .vid-note, .more-lead { color:#3A3658 !important; }

/* ---------- performance pass ---------- */
.lm-bg b:nth-child(1) { width:75vmax; height:75vmax; left:-32vmax; top:-22vmax; }
.lm-bg b:nth-child(2) { width:70vmax; height:70vmax; right:-30vmax; top:22vh; }
.lm-bg b:nth-child(3) { width:65vmax; height:65vmax; left:-18vmax; top:62vh; }
.lm-bg b:nth-child(4), .lm-bg b:nth-child(5), .lm-bg u:nth-of-type(3) { display:none; }
.lm-bg .lm-grid { -webkit-mask-image:none; mask-image:none; opacity:.8; }
.lm-bg b i { animation-duration:24s; }
.theme-pick button { color:#6E6B8C !important; }
.theme-pick button.on { color:#17123A !important; }
.theme-pick .tp-label { color:#5E5A7E; }
.sx-stats li { color:#3A3658; }
.sx-stats b { color:#17123A; }
.qa-toggle { color:#17123A; }

/* ---------- liquid gradient (replaces the tiles and ripples) ---------- */
.lm-bg { background:linear-gradient(160deg,#F5F1FF 0%,#EDE5FF 50%,#F6F2FF 100%); }
.lm-bg .lm-grid, .lm-bg u { display:none !important; }
.lm-bg b { display:block !important; }
.lm-bg b:nth-child(1) { width:80vmax; height:80vmax; left:-30vmax; top:-30vmax; }
.lm-bg b:nth-child(2) { width:75vmax; height:75vmax; right:-30vmax; top:10vh; }
.lm-bg b:nth-child(3) { width:70vmax; height:70vmax; left:-20vmax; top:50vh; }
.lm-bg b:nth-child(4) { width:65vmax; height:65vmax; right:-15vmax; top:70vh; }
.lm-bg b:nth-child(5) { display:none !important; }
.lm-bg b:nth-child(1) i { background:radial-gradient(circle, rgba(124,77,255,.58) 0%, rgba(124,77,255,.26) 36%, rgba(124,77,255,0) 66%); animation:lmFlow1 26s ease-in-out infinite alternate; }
.lm-bg b:nth-child(2) i { background:radial-gradient(circle, rgba(216,180,254,.75) 0%, rgba(216,180,254,.32) 38%, rgba(216,180,254,0) 66%); animation:lmFlow2 31s ease-in-out infinite alternate; }
.lm-bg b:nth-child(3) i { background:radial-gradient(circle, rgba(91,63,217,.42) 0%, rgba(91,63,217,.18) 38%, rgba(91,63,217,0) 66%); animation:lmFlow3 23s ease-in-out infinite alternate; }
.lm-bg b:nth-child(4) i { background:radial-gradient(circle, rgba(155,177,255,.55) 0%, rgba(155,177,255,.22) 38%, rgba(155,177,255,0) 66%); animation:lmFlow4 35s ease-in-out infinite alternate; }
@keyframes lmFlow1 { 0% { transform:translate3d(0,0,0) scale(1); } 33% { transform:translate3d(28%,18%,0) scale(1.15); } 66% { transform:translate3d(12%,42%,0) scale(.9); } 100% { transform:translate3d(38%,8%,0) scale(1.1); } }
@keyframes lmFlow2 { 0% { transform:translate3d(0,0,0) scale(1); } 33% { transform:translate3d(-30%,22%,0) scale(.9); } 66% { transform:translate3d(-14%,-18%,0) scale(1.18); } 100% { transform:translate3d(-36%,30%,0) scale(1); } }
@keyframes lmFlow3 { 0% { transform:translate3d(0,0,0) scale(1.05); } 33% { transform:translate3d(34%,-24%,0) scale(.92); } 66% { transform:translate3d(46%,6%,0) scale(1.15); } 100% { transform:translate3d(18%,-36%,0) scale(1); } }
@keyframes lmFlow4 { 0% { transform:translate3d(0,0,0) scale(1); } 33% { transform:translate3d(-26%,-30%,0) scale(1.12); } 66% { transform:translate3d(-44%,-8%,0) scale(.95); } 100% { transform:translate3d(-20%,-46%,0) scale(1.08); } }
@media(prefers-reduced-motion:reduce){ .lm-bg b i { animation:none !important; } }
.aiword { background:linear-gradient(135deg,#4A2FC4,#7C5CF0) !important; -webkit-background-clip:text !important; background-clip:text !important; -webkit-text-fill-color:transparent !important; }

/* ---------- softer, faster liquid gradient ---------- */
.lm-bg { background:linear-gradient(160deg,#F7F4FF 0%,#F0EAFF 50%,#F8F5FF 100%); }
.lm-bg b:nth-child(1) i { background:radial-gradient(circle, rgba(124,77,255,.42) 0%, rgba(124,77,255,.26) 25%, rgba(124,77,255,.10) 48%, rgba(124,77,255,0) 70%); animation-duration:14s !important; }
.lm-bg b:nth-child(2) i { background:radial-gradient(circle, rgba(216,180,254,.62) 0%, rgba(216,180,254,.36) 26%, rgba(216,180,254,.12) 50%, rgba(216,180,254,0) 70%); animation-duration:17s !important; }
.lm-bg b:nth-child(3) i { background:radial-gradient(circle, rgba(91,63,217,.30) 0%, rgba(91,63,217,.18) 26%, rgba(91,63,217,.06) 50%, rgba(91,63,217,0) 70%); animation-duration:12s !important; }
.lm-bg b:nth-child(4) i { background:radial-gradient(circle, rgba(155,177,255,.45) 0%, rgba(155,177,255,.26) 26%, rgba(155,177,255,.08) 50%, rgba(155,177,255,0) 70%); animation-duration:19s !important; }
.sx-stats li { border-left-color:rgba(91,63,217,.3) !important; }
.case-challenge { background:none !important; }
