/* Light home, promoted from home2. Keep the WebGL/video drawing surfaces clear. */
body.home-lab {
 --viola:#5946a0; --hero-color-low:#5946a0; --hero-color-high:#748cca; --hero-warp-color:#9291d0;
 --home-curve-start:#7563b4; --home-curve-end:#9aafd8; --home-video-tint:#ffffff;
 color:#232536; font-weight:400; background:#fcfcff!important;
}
body.home-lab :is(.scrollable,main,#svgcontainer,#video-anchor) { background:transparent!important; }
body.home-lab .site-nav::before { display:none; }
body.home-lab .home-eyebrow { margin:0 0 22px; color:#625778; font-size:12px; line-height:1.4; font-weight:650; letter-spacing:.12em; }
body.home-lab #hero { display:grid; grid-template-columns:1.05fr 1fr; gap:3%; align-items:center; height:min(820px,calc(100svh - 100px)); min-height:680px; padding:35px 0 65px; }
body.home-lab .home-hero-copy { position:relative; z-index:2; }
body.home-lab .home-hero-heading { position:static; margin:0; font-size:clamp(70px,7.5vw,112px); font-weight:600; line-height:.95; letter-spacing:-.065em; animation:none; text-align:left; }
body.home-lab .home-hero-heading > span { color:#232536; background:none; -webkit-text-fill-color:currentColor; }
body.home-lab .home-hero-heading em { color:#6450a6; font-style:normal; }
body.home-lab .home-hero-heading__seo { display:block; max-width:540px; margin:26px 0 0; color:#232536; font-size:clamp(19px,1.7vw,25px); line-height:1.35; font-weight:500; letter-spacing:-.025em; }
body.home-lab .home-hero-description { max-width:490px; margin:18px 0 26px; color:#626375; font-size:17px; font-weight:400; line-height:1.65; }
body.home-lab .home-hero-actions { display:flex; flex-wrap:wrap; align-items:center; gap:12px; }
body.home-lab .home-action { display:inline-flex; justify-content:space-between; align-items:center; gap:24px; min-height:50px; padding:14px 23px; border:1px solid #383152; border-radius:999px; background:#383152; color:#fff; font-size:14px; font-weight:550; line-height:1.2; text-decoration:none; }
body.home-lab .home-action--quiet { background:transparent; color:#53416f; border-color:#d5cfdf; }
body.home-lab .home-action:focus-visible,body.home-lab .home-offers a:focus-visible { outline:3px solid #8068bf; outline-offset:5px; }
body.home-lab .home-action:hover { background:#574178; color:#fff; }
body.home-lab .bithub-consent { background:#191625; }
body.home-lab .bithub-consent a { color:#d5c8ec; }
body.home-lab .bithub-consent button[data-consent-choice="granted"] { background:#5946a0; border-color:#ae9bcd; }
body.home-lab :is(.bithub-consent button,.bithub-analytics-settings):focus-visible { outline-color:#d5c8ec; }
body.home-lab #three-container { position:relative; width:100%!important; height:100%; min-height:520px; margin:0!important; overflow:clip; border-radius:50%; }
body.home-lab #three-container canvas { position:absolute; inset:0; z-index:0; transform:scale(1.2); }
body.home-lab .home-scene-caption { position:absolute; z-index:1; bottom:7%; left:0; width:100%; text-align:center; color:#655c7a; font-size:13px; font-weight:550; letter-spacing:.035em; }
body.home-lab .home-offers { margin:50px 0 110px; padding:0; background:none; border:0; }
body.home-lab .home-section-heading { display:flex; justify-content:space-between; gap:30px; align-items:flex-start; margin-bottom:34px; }
body.home-lab .home-section-heading h2 { width:66%; margin:0; color:#232536; background:none; -webkit-text-fill-color:currentColor; font-size:clamp(34px,4vw,58px); font-weight:550; line-height:1.08; letter-spacing:-.04em; }
body.home-lab #bithub-offerte { scroll-margin-top:115px; }
body.home-lab .home-offers .cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); align-items:stretch; gap:18px; padding:0; background:none; }
body.home-lab .home-offers .cards > div {
 --offer-tint:150 123 197;
 display:flex; flex-direction:column; padding:32px; border:1px solid #ffffffe6; border-radius:24px;
 background:radial-gradient(ellipse at 100% 0%,rgb(var(--offer-tint) / .17),transparent 75%),linear-gradient(125deg,#ffffffb8,#ffffff38 55%,#ffffff70);
 box-shadow:0 18px 46px #43335e10,0 2px 7px #43335e06,inset 0 1px 0 #fff,inset 0 -1px 0 #a69db229;
 backdrop-filter:blur(20px) saturate(1.25); -webkit-backdrop-filter:blur(20px) saturate(1.25);
 color:#232536; transition:box-shadow .2s ease,border-color .2s ease;
}
body.home-lab .home-offers .cards > div:nth-child(2) { --offer-tint:130 181 156; }
body.home-lab .home-offers .cards > div:nth-child(3) { --offer-tint:137 163 204; }
body.home-lab .home-offers .cards > div:is(:hover,:focus-within) { border-color:#fff; box-shadow:0 22px 52px #43335e1c,0 2px 8px #43335e0a,inset 0 1px 0 #fff,inset 0 -1px 0 #a69db229; }
@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))) {
 body.home-lab .home-offers .cards > div { background:linear-gradient(135deg,#f6f1fc,#f6fcf8); }
}
body.home-lab .home-offer-number { font-size:11px; font-weight:650; letter-spacing:.08em; color:#6a5b80; }
body.home-lab .home-offers h3 { margin:36px 0 16px; font-size:clamp(25px,2.4vw,34px); font-weight:550; line-height:1.12; letter-spacing:-.03em; color:#232536; }
body.home-lab .home-offers .cards p { margin:0 0 26px; color:#626375; font-size:16px; font-weight:400; line-height:1.65; }
body.home-lab .home-offers a { display:flex; align-items:center; justify-content:space-between; gap:14px; min-height:44px; margin-top:auto; padding-top:18px; border-top:1px solid #d7cee5; color:#584373; font-size:14px; font-weight:600; }
body.home-lab #primadelvideo { display:grid; grid-template-columns:.85fr 1.15fr; align-items:start; gap:5%; margin-top:0; }
body.home-lab #primadelvideo h2 { margin:0; color:#232536; font-size:clamp(36px,4.4vw,65px)!important; line-height:1.08; font-weight:550; letter-spacing:-.045em; }
body.home-lab #primadelvideo h2 span { background:none; -webkit-text-fill-color:currentColor; }
body.home-lab :is(#parallax-text,#spiegone,.home-tools) { background:linear-gradient(135deg,#f1ecfae6,#ffffffed 60%,#edf2fbe6)!important; color:#232536; border:1px solid #d9d5e5; }
body.home-lab #parallax-text { position:relative; width:100%!important; top:auto; right:auto; margin:0; padding:34px; gap:26px!important; transform:none!important; border-radius:26px; box-shadow:none; }
body.home-lab #parallax-text .home-intro-copy { gap:16px; }
body.home-lab #parallax-text .home-intro-copy p { color:#626375; font-size:17px; font-weight:400; line-height:1.65; }
body.home-lab #parallax-text .home-intro-copy p:first-child { color:#232536; font-size:23px; font-weight:550; line-height:1.3; }
body.home-lab #video-wrapper { padding-block:95px 330px; }
body.home-lab #video-anchor { width:100%; margin:0; }
body.home-lab .home-services-heading { margin:0; color:#232536; font-size:clamp(34px,4.4vw,64px); font-weight:550; line-height:1.1; letter-spacing:-.04em; }
body.home-lab .home-services-heading span { color:#232536; background:none; -webkit-text-fill-color:currentColor; }
body.home-lab .image-container { background:#ffffff12!important; border-color:#cec6dd; color:#232536; box-shadow:0 15px 40px #4f39850a; }
body.home-lab .image-container :is(small,p) { color:#232536; font-weight:500; }
body.home-lab .image-container::after { color:#604b82; border-color:#cec6dd; background:#f5f2fb; }
body.home-lab .home-tools { margin-top:100px; border-radius:28px; }
body.home-lab .home-tools :is(h2,h3) { color:#232536; }
body.home-lab :is(.home-tools__head > span,.home-tool-card > p) { color:#626375; font-weight:400; }
body.home-lab :is(.home-tools__head > p,.home-tool-card__kicker) { color:#685385; }
body.home-lab .home-tool-card--featured { border-color:#ac96cf66; background:radial-gradient(circle at 100% 0,rgba(132,112,189,.12),transparent 18rem),rgba(255,255,255,.7); }
body.home-lab a.home-tool-card:hover { border-color:#68538599; }
body.home-lab #spiegone { display:grid; grid-template-columns:1fr 1.2fr; gap:7%; margin-top:80px; padding:48px; border-radius:28px; box-shadow:none; }
body.home-lab #spiegone .home-eyebrow { color:#685385; font-size:11px; }
body.home-lab #spiegone h2 { color:#232536; background:none; -webkit-text-fill-color:currentColor; font-size:clamp(34px,4vw,55px)!important; font-weight:500; line-height:1.08; letter-spacing:-.035em; }
body.home-lab #spiegone .home-method-copy p { margin:0 0 20px; color:#626375; font-size:17px; font-weight:400; line-height:1.7; }
body.home-lab #spiegone a { color:#644594; text-decoration:underline; text-underline-offset:4px; }
body.home-lab .home-text-link { display:inline-flex; gap:28px; min-height:44px; align-items:center; font-size:16px; font-weight:550; }
body.home-lab .home-contact { display:flex; justify-content:space-between; align-items:center; gap:40px; padding:80px 0; margin-block:20px; }
body.home-lab .home-contact h2 { margin:0 0 22px; color:#232536; font-size:clamp(40px,5.5vw,78px); line-height:1.04; font-weight:550; letter-spacing:-.045em; }
body.home-lab .home-contact p:not(.home-eyebrow) { max-width:430px; color:#626375; font-size:18px; line-height:1.6; }
@media(max-width:1000px) {
 body.home-lab #hero { gap:0; min-height:680px; }
 body.home-lab .home-hero-heading { font-size:clamp(65px,8vw,80px); }
 body.home-lab .home-offers .cards > div { padding:24px; }
 body.home-lab #spiegone { padding:32px; gap:30px; }
}
@media(max-width:767px) {
 body.home-lab #hero { grid-template-columns:1fr; height:auto; min-height:0; padding:26px 10px 35px; }
 body.home-lab .home-hero-heading { font-size:clamp(64px,18vw,88px); }
 body.home-lab .home-hero-heading__seo { margin-top:22px; max-width:100%; font-size:21px; }
 body.home-lab .home-hero-description { font-size:16px; margin-block:17px 23px; }
 body.home-lab .home-hero-actions { gap:10px; }
 body.home-lab .home-action { padding:14px 20px; font-size:13px; min-height:48px; }
 body.home-lab #three-container { height:300px; min-height:0; margin-top:10px!important; }
 body.home-lab .home-scene-caption { bottom:5%; font-size:12px; }
 body.home-lab .home-offers { margin:25px 0 70px; }
 body.home-lab .home-section-heading { display:block; margin-bottom:24px; }
 body.home-lab .home-section-heading h2 { width:100%; }
 body.home-lab .home-offers .cards { grid-template-columns:1fr; gap:14px; }
 body.home-lab .home-offers h3 { margin-top:23px; font-size:31px; }
 body.home-lab #primadelvideo { grid-template-columns:1fr; gap:28px; }
 body.home-lab #primadelvideo h2 { font-size:clamp(36px,10vw,52px)!important; }
 body.home-lab #parallax-text { padding:25px; margin-top:0; }
 body.home-lab #video-wrapper { padding-block:38px 65px; }
 body.home-lab #video-anchor { margin:0; box-shadow:0 12px 32px #4f398515; }
 body.home-lab .home-services-heading { font-size:clamp(34px,9vw,48px); }
 body.home-lab .home-tools { margin-top:65px; }
 body.home-lab #spiegone { grid-template-columns:1fr; gap:22px; padding:28px 24px; margin-top:55px; }
 body.home-lab .home-contact { align-items:flex-start; flex-direction:column; padding:60px 10px; gap:15px; }
}

/* Card labels stay readable throughout the image shader transition. */
body.home-lab .image-container .reveal-clip span { transform:none!important; opacity:1; }

body.home-lab .home-tool-card { background:#ffffffa6; color:#232536!important; border-color:#d9d5e5; }
body.home-lab .home-tool-card :is(strong,.home-tool-card__link,.home-tool-card__stores,.home-tool-card__stores a),body.home-lab .home-tools__all { color:#4e3a78!important; }
body.home-lab #parallax-text .bottone.bianco { background:#383152; color:#fff; }
body.home-lab #parallax-text .bottone.bianco :is(.dentro,.prima) { color:#fff; }
body.home-lab .home-tool-card__stores a { border-color:#d5cbe2; }
