/* SG Servizi — Farmacia San Giorgio · prefix sgs- (shared by the 12 Servizi widgets) */

/* ================================================= tokens + base */
.sgs{--ink:#0B2B22;--body:#2F443C;--muted:#51645B;--paper:#F2F6F3;--green:#007A4C;--cross:#00A266;--night:#0A3327;--night2:#0F4434;--deep:#06231A;--glow:#3BF29A;--sage:#D5E8DD;--sage2:#E6F1EA;--blush:#F4E5DF;--rose:#83392C;--gold:#C99A5B;--wa:#25D366;--ease:cubic-bezier(.22,1,.36,1);position:relative;isolation:isolate;background:#FFFFFF;color:#2F443C;font-family:'Figtree',system-ui,-apple-system,'Segoe UI',sans-serif;font-size:16px;line-height:1.6;-webkit-font-smoothing:antialiased}
.sgs *,.sgs *::before,.sgs *::after{box-sizing:border-box;margin:0;padding:0}
.sgs ul,.sgs ol{list-style:none}
.sgs a{text-decoration:none}
.sgs img{display:block;max-width:100%}
.sgs button{font:inherit;color:inherit;background:none;border:0;cursor:pointer;text-align:left}
.sgs .sgs-ic{width:22px;height:22px;flex:none;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.sgs .sgs-ic.is-fill{fill:currentColor;stroke:none}
.sgs a:focus-visible,.sgs button:focus-visible{outline:2px solid #007A4C;outline-offset:4px;border-radius:12px}
.sgs-dark a:focus-visible,.sgs-dark button:focus-visible{outline-color:#3BF29A}
.sgs-pad{padding:84px 0 92px}
.sgs-wrap{position:relative;max-width:1250px;margin:0 auto;padding:0 18px}

.sgs-h2{font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:clamp(2.3rem,8.8vw,4.3rem);font-weight:700;line-height:1.02;letter-spacing:-.045em;color:#0B2B22;text-wrap:balance}
.sgs-h3{font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:clamp(1.25rem,4.6vw,1.55rem);font-weight:700;line-height:1.15;letter-spacing:-.02em;color:#0B2B22}
.sgs-lead{max-width:48ch;margin-top:22px;font-size:clamp(1.05rem,4vw,1.22rem);line-height:1.65;color:#2F443C}
.sgs-p{margin-top:18px;font-size:17px;line-height:1.7;color:#2F443C}
.sgs-head{max-width:860px}
.sgs-head--center{margin:0 auto;text-align:center}
.sgs-head--center .sgs-lead{margin-left:auto;margin-right:auto}

.sgs-dark{background:#0A3327;background-image:radial-gradient(ellipse 80% 70% at 70% 30%,#0F4434 0%,#0A3327 55%,#06231A 100%);color:#CFE3D8}
.sgs-dark .sgs-h2,.sgs-dark .sgs-h3{color:#FFFFFF}
.sgs-dark .sgs-lead,.sgs-dark .sgs-p{color:#CFE3D8}
.sgs-spot{position:absolute;left:0;top:0;z-index:-1;width:720px;height:720px;margin:-360px 0 0 -360px;border-radius:50%;background:radial-gradient(circle,rgba(59,242,154,.14),rgba(59,242,154,0) 62%);transform:translate3d(var(--mx,70vw),var(--my,220px),0);transition:transform 1s var(--ease);pointer-events:none}
.sgs-gridbg{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(59,242,154,.05) 1px,transparent 1px),linear-gradient(90deg,rgba(59,242,154,.05) 1px,transparent 1px);background-size:48px 48px;-webkit-mask-image:radial-gradient(ellipse 70% 60% at 60% 40%,#000 10%,transparent 75%);mask-image:radial-gradient(ellipse 70% 60% at 60% 40%,#000 10%,transparent 75%);pointer-events:none}

.sgs-tag{display:inline-flex;align-items:center;gap:10px;margin-bottom:20px;padding:7px 15px;border-radius:999px;border:1px solid rgba(59,242,154,.3);background:rgba(59,242,154,.08);font-size:13.5px;font-weight:700;color:#3BF29A}
.sgs-tag i{width:8px;height:8px;border-radius:50%;background:#3BF29A;box-shadow:0 0 10px #3BF29A;animation:sgsBlink 1.4s ease-in-out infinite}
.sgs-tag--light{border-color:rgba(0,122,76,.25);background:#FFFFFF;color:#007A4C}
.sgs-tag--light i{background:#007A4C;box-shadow:none}
@keyframes sgsBlink{50%{opacity:.25}}

/* buttons */
.sgs-btns{display:flex;flex-wrap:wrap;gap:10px}
.sgs-btn{position:relative;isolation:isolate;overflow:hidden;display:inline-flex;align-items:center;gap:14px;min-height:56px;margin-top:30px;padding:0 24px;border-radius:999px;font-size:16px;font-weight:700;line-height:1.2;transition:transform .45s var(--ease),box-shadow .4s,color .35s,background .35s}
.sgs-btns .sgs-btn{margin-top:0}
.sgs-btn__fill{position:absolute;inset:0;z-index:-1;transform:translateY(101%);transition:transform .55s var(--ease)}
.sgs-btn:hover .sgs-btn__fill,.sgs-btn:focus-visible .sgs-btn__fill{transform:none}
.sgs-btn__ic{width:40px;height:40px;flex:none;margin-right:-16px;border-radius:50%;display:grid;place-items:center;transition:transform .5s var(--ease)}
.sgs-btn__ic .sgs-ic{width:18px;height:18px;stroke-width:2.2}
.sgs-btn:hover .sgs-btn__ic{transform:rotate(-45deg)}
.sgs-btn__lead .sgs-ic{width:22px;height:22px}
.sgs-btn--pri{background:#007A4C;color:#FFFFFF;box-shadow:0 16px 32px -18px rgba(0,122,76,.95)}
.sgs-btn--pri .sgs-btn__fill{background:#0A3327}
.sgs-btn--pri .sgs-btn__ic{background:#FFFFFF;color:#007A4C}
.sgs-btn--glow{background:#3BF29A;color:#0A3327;box-shadow:0 18px 40px -18px rgba(59,242,154,.85)}
.sgs-btn--glow .sgs-btn__fill{background:#FFFFFF}
.sgs-btn--glow .sgs-btn__ic{background:#0A3327;color:#3BF29A}
.sgs-btn--wa{background:#25D366;color:#0B2B22;box-shadow:0 18px 40px -18px rgba(37,211,102,.85)}
.sgs-btn--wa .sgs-btn__fill{background:#FFFFFF}
.sgs-btn--rose{background:#83392C;color:#FFFFFF;box-shadow:0 18px 36px -18px rgba(131,57,44,.9)}
.sgs-btn--rose .sgs-btn__fill{background:#3A1A14}
.sgs-btn--rose .sgs-btn__ic{background:#FFFFFF;color:#83392C}

.sgs-link{display:inline-flex;align-items:center;gap:12px;margin-top:22px;padding:6px 6px 6px 18px;border-radius:999px;background:#FFFFFF;border:1px solid rgba(11,43,34,.08);font-weight:700;font-size:15.5px;color:#0B2B22;transition:background .35s,color .35s}
.sgs-link__ic{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#007A4C;color:#FFFFFF;transition:transform .5s var(--ease)}
.sgs-link__ic .sgs-ic{width:17px;height:17px;stroke-width:2.2}
.sgs-link:hover{background:#0A3327;color:#FFFFFF}
.sgs-link:hover .sgs-link__ic{transform:rotate(-45deg);background:#3BF29A;color:#0A3327}

/* LED cross */
.sgs-led{--s:10px;display:grid;gap:calc(var(--s) * .44);padding:calc(var(--s) * 1.2);border-radius:calc(var(--s) * 2.4);background:#0A3327;box-shadow:inset 0 0 0 1px rgba(59,242,154,.16),0 30px 60px -28px rgba(10,51,39,.85)}
.sgs-led--9{grid-template-columns:repeat(9,var(--s))}
.sgs-led--7{grid-template-columns:repeat(7,var(--s))}
.sgs-led i{display:block;width:var(--s);height:var(--s);border-radius:50%;background:rgba(59,242,154,.08);transition:background .45s,box-shadow .45s}
.sgs-led i.on{background:#3BF29A;box-shadow:0 0 calc(var(--s) * .7) rgba(59,242,154,.85);animation:sgsLed 3.6s ease-in-out infinite;animation-delay:calc(var(--k) * 110ms)}
@keyframes sgsLed{0%,100%{opacity:1}45%{opacity:.55}}

/* split words + reveals (JS only) */
.sgs-w{display:inline-block;overflow:hidden;vertical-align:top;padding-bottom:.1em;margin-bottom:-.1em}
.sgs-w > span{display:inline-block}
.sgs-js .sgs-w > span{transform:translate3d(0,110%,0);transition:transform 1s var(--ease);transition-delay:calc(var(--i) * 60ms)}
.sgs.is-in .sgs-w > span{transform:none}
.sgs-js .sgs-rv{opacity:0;transform:translate3d(0,22px,0);transition:opacity .8s,transform 1s var(--ease);transition-delay:calc(var(--d,0) * 100ms)}
.sgs.is-in .sgs-rv{opacity:1;transform:none}
.sgs-par{position:absolute;left:0;right:0;top:-10%;bottom:-10%;transform:translate3d(0,var(--py,0px),0);will-change:transform}
.sgs-par img{width:100%;height:100%;object-fit:cover}
.sgs.is-paused *,.sgs.is-paused *::before,.sgs.is-paused *::after{animation-play-state:paused!important}

/* ================================================= 1. HERO */
.sgs-hero{overflow:hidden;overflow:clip;background:#F2F6F3;padding-bottom:0}
.sgs-hero__bg{position:absolute;inset:0;z-index:-1;pointer-events:none}
.sgs-dots{position:absolute;inset:-40px;background-image:radial-gradient(rgba(11,43,34,.1) 1.2px,transparent 1.3px);background-size:26px 26px;-webkit-mask-image:radial-gradient(ellipse 60% 60% at 75% 40%,#000 15%,transparent 75%);mask-image:radial-gradient(ellipse 60% 60% at 75% 40%,#000 15%,transparent 75%)}
.sgs-orb{position:absolute;border-radius:50%}
.sgs-orb--a{width:620px;height:620px;right:-200px;top:-220px;background:radial-gradient(circle,rgba(59,242,154,.3),rgba(59,242,154,0) 66%);animation:sgsDrift 18s ease-in-out infinite}
.sgs-orb--b{width:460px;height:460px;left:-220px;top:40%;background:radial-gradient(circle,rgba(0,122,76,.12),rgba(0,122,76,0) 66%);animation:sgsDrift 22s ease-in-out infinite reverse}
@keyframes sgsDrift{50%{transform:translate3d(-40px,40px,0)}}
.sgs-hero__grid{display:grid;gap:40px;align-items:center}
.sgs-crumb{display:inline-flex;align-items:center;gap:8px;padding:6px 16px 6px 6px;border-radius:999px;background:#FFFFFF;border:1px solid rgba(11,43,34,.08);font-size:14px;font-weight:600;color:#51645B}
.sgs-crumb a{display:inline-flex;align-items:center;gap:8px;padding:3px 10px 3px 3px;border-radius:999px;color:#007A4C;transition:background .3s}
.sgs-crumb a .sgs-ic{width:26px;height:26px;padding:5px;border-radius:50%;background:#E6F1EA}
.sgs-crumb a:hover{background:#E6F1EA}
.sgs-crumb__sep{width:14px!important;height:14px!important;color:#6A8176}
.sgs-crumb span[aria-current]{color:#0B2B22;font-weight:700}
.sgs-hero__h1{margin-top:24px;font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:clamp(2.6rem,11vw,5.8rem);font-weight:700;line-height:.98;letter-spacing:-.05em;color:#0B2B22;text-wrap:balance}
.sgs-hero__vis{position:relative;justify-self:center;width:min(78vw,340px);aspect-ratio:1;display:grid;place-items:center}
.sgs-hero__ring{position:absolute;inset:0;width:100%;height:100%;overflow:visible;animation:sgsSpin 40s linear infinite}
.sgs-hero__ring-line{fill:none;stroke:rgba(0,122,76,.18);stroke-width:1;stroke-dasharray:3 6}
.sgs-hero__ring text{font-family:'Figtree',sans-serif;font-size:13px;font-weight:800;letter-spacing:.14em;fill:#007A4C}
.sgs-hero__ping{position:absolute;inset:22%;border-radius:50%;border:2px solid rgba(59,242,154,.6);animation:sgsPing 2.8s ease-out infinite}
@keyframes sgsSpin{to{transform:rotate(360deg)}}
@keyframes sgsPing{0%{transform:scale(.7);opacity:1}100%{transform:scale(1.5);opacity:0}}
.sgs-hero__vis .sgs-led{--s:clamp(9px,2.4vw,14px);position:relative}
.sgs-hero__ecg{height:80px;margin-top:40px}
.sgs-hero__ecg svg{display:block;width:100%;height:100%}
.sgs-hero__ecg path{fill:none;stroke-linejoin:round;stroke-linecap:round}
.sgs-ecg__base{stroke:rgba(0,122,76,.14);stroke-width:1.6;vector-effect:non-scaling-stroke}
.sgs-ecg__run{stroke:#00A266;stroke-width:2.6;stroke-dasharray:70 930;stroke-dashoffset:1000;animation:sgsRun 6s linear infinite}
@keyframes sgsRun{to{stroke-dashoffset:0}}
.sgs-js.sgs-hero .sgs-hero__vis{opacity:0;scale:.8;transition:opacity 1s .4s,scale 1.3s var(--ease) .4s}
.sgs-hero.is-in .sgs-hero__vis{opacity:1;scale:1}
.sgs-js.sgs-hero .sgs-led i.on{background:rgba(59,242,154,.16);box-shadow:none;animation:none;transition-delay:calc(var(--k) * 70ms + .9s)}
.sgs-hero.is-in .sgs-led i.on{background:#3BF29A;box-shadow:0 0 calc(var(--s) * .7) rgba(59,242,154,.85);animation:sgsLed 3.6s ease-in-out infinite;animation-delay:calc(var(--k) * 110ms + 2s)}

/* chips index */
.sgs-chips{background:transparent;z-index:50}
.sgs-chips__bar{position:relative;background:rgba(242,246,243,.9);-webkit-backdrop-filter:blur(14px) saturate(1.3);backdrop-filter:blur(14px) saturate(1.3);border-bottom:1px solid rgba(11,43,34,.06)}
.sgs-chips.is-fixed .sgs-chips__bar{position:fixed;left:0;right:0;top:var(--top,0px);z-index:9970;background:rgba(255,255,255,.94);box-shadow:0 12px 30px -20px rgba(10,51,39,.4);transition:top .45s var(--ease)}
.sgs-chips__in{max-width:1250px;margin:0 auto;padding:10px 18px;display:flex;gap:8px;overflow-x:auto;scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg,transparent,#000 18px,#000 calc(100% - 18px),transparent);mask-image:linear-gradient(90deg,transparent,#000 18px,#000 calc(100% - 18px),transparent)}
.sgs-chips__in::-webkit-scrollbar{display:none}
.sgs-chip{position:relative;flex:none;padding:9px 16px;border-radius:999px;background:#FFFFFF;border:1px solid rgba(11,43,34,.1);font-size:14px;font-weight:700;color:#0B2B22;white-space:nowrap;transition:background .35s,color .35s,border-color .35s}
.sgs-chip:hover{border-color:#007A4C;color:#007A4C}
.sgs-chip.is-active{background:#0A3327;border-color:#0A3327;color:#3BF29A}

/* ================================================= 2. TELEMEDICINA */
.sgs-tele{overflow:clip}
.sgs-tele__grid{display:grid;gap:40px}
.sgs-tele__count{display:none}
.sgs-tele__stack{display:grid;gap:18px}
.sgs-tcard{position:sticky;top:calc(96px + var(--i) * 22px);display:grid;gap:18px;padding:16px 16px 22px;border-radius:28px;background:#0F4434;background-image:linear-gradient(160deg,#155742 0%,#0F4434 45%,#0B3A2D 100%);border:1px solid rgba(59,242,154,.18);box-shadow:0 40px 70px -40px rgba(0,0,0,.8);transform-origin:50% 0;transform:scale(var(--sc,1));transition:transform .3s linear}
.sgs-tcard__screen{position:relative;height:170px;overflow:hidden;border-radius:18px;background-color:#041A13;background-image:linear-gradient(rgba(59,242,154,.08) 1px,transparent 1px),linear-gradient(90deg,rgba(59,242,154,.08) 1px,transparent 1px);background-size:18px 18px;box-shadow:inset 0 0 40px rgba(0,0,0,.6)}
.sgs-tcard__live{position:absolute;left:12px;top:10px;z-index:2;display:flex;align-items:center;gap:8px;font-size:12px;font-weight:800;letter-spacing:.1em;color:#3BF29A}
.sgs-tcard__live i{width:8px;height:8px;border-radius:50%;background:#3BF29A;box-shadow:0 0 8px #3BF29A;animation:sgsBlink 1.1s ease-in-out infinite}
.sgs-tcard__txt{padding:0 6px}
.sgs-tcard__txt p{margin-top:8px;font-size:16.5px;line-height:1.55;color:#CFE3D8}
.sgs-viz{position:absolute;inset:26px 0 0}
.sgs-viz svg{display:block;width:100%;height:100%;overflow:visible}
.sgs-viz path,.sgs-viz circle,.sgs-viz line{vector-effect:non-scaling-stroke}
.v-base{fill:none;stroke:rgba(59,242,154,.14);stroke-width:1.6}
.v-run{fill:none;stroke:#3BF29A;stroke-width:2.6;stroke-linejoin:round;stroke-dasharray:160 1000;stroke-dashoffset:1160;filter:drop-shadow(0 0 5px rgba(59,242,154,.9));animation:sgsVRun 2.6s linear infinite}
@keyframes sgsVRun{to{stroke-dashoffset:0}}
.v-ring{fill:none;stroke:#3BF29A;stroke-width:1.5;transform-box:fill-box;transform-origin:center;animation:sgsVRing 2.2s ease-out infinite}
.v-ring--2{animation-delay:1.1s}
@keyframes sgsVRing{0%{transform:scale(.8);opacity:.9}100%{transform:scale(2.2);opacity:0}}
.v-orbit{transform-box:view-box;transform-origin:160px 75px;animation:sgsSpin 8s linear infinite}
.v-orbit__line{fill:none;stroke:rgba(59,242,154,.18);stroke-dasharray:3 6}
.v-orbit__dot{fill:#3BF29A}
.v-heart{fill:#3BF29A;transform-box:fill-box;transform-origin:center;filter:drop-shadow(0 0 8px rgba(59,242,154,.7));animation:sgsBeat 1.1s ease-in-out infinite}
@keyframes sgsBeat{0%,45%,100%{transform:scale(1)}15%{transform:scale(1.14)}30%{transform:scale(.95)}}
.v-line{fill:none;stroke:#3BF29A;stroke-width:2.2;stroke-linejoin:round;stroke-linecap:round;stroke-dasharray:100;animation:sgsVLine 2.2s linear infinite;vector-effect:none!important}
.v-line--r{animation-delay:.55s}
@keyframes sgsVLine{0%{stroke-dashoffset:100}50%{stroke-dashoffset:0}100%{stroke-dashoffset:-100}}
.v-track{fill:none;stroke:rgba(59,242,154,.15);stroke-width:12;stroke-linecap:round;vector-effect:none!important}
.v-arc{fill:none;stroke:#3BF29A;stroke-width:12;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:70;vector-effect:none!important;filter:drop-shadow(0 0 6px rgba(59,242,154,.7));animation:sgsVArc 4.4s cubic-bezier(.45,0,.3,1) infinite alternate}
.v-ticks line{stroke:rgba(207,227,216,.4);stroke-width:2;stroke-linecap:round}
.v-needle{transform-box:view-box;transform-origin:160px 128px;transform:rotate(-36deg);animation:sgsVNeedle 4.4s cubic-bezier(.45,0,.3,1) infinite alternate}
.v-needle line{stroke:#FFFFFF;stroke-width:4;stroke-linecap:round}
.v-hub{fill:#3BF29A}
@keyframes sgsVArc{0%{stroke-dashoffset:70}35%{stroke-dashoffset:25}65%{stroke-dashoffset:45}100%{stroke-dashoffset:30}}
@keyframes sgsVNeedle{0%{transform:rotate(-36deg)}35%{transform:rotate(45deg)}65%{transform:rotate(9deg)}100%{transform:rotate(36deg)}}
.sgs-js .sgs-tcard{opacity:0;translate:0 60px;transition:opacity .8s,translate 1s var(--ease),transform .3s linear;transition-delay:calc(var(--i) * 120ms + 300ms),calc(var(--i) * 120ms + 300ms),0s}
.sgs-tele.is-in .sgs-tcard{opacity:1;translate:0 0}

/* ================================================= 3. ANALISI DEL SANGUE */
.sgs-blood__grid{display:grid;gap:56px;align-items:center}
.sgs-blood__media{position:relative;padding:0 18px 30px 0}
.sgs-blood__fig{position:relative;margin:0;aspect-ratio:4 / 5;border-radius:32px;overflow:hidden;background:#F4E5DF;box-shadow:0 50px 90px -60px rgba(10,51,39,.8)}
.sgs-blood__wave{position:absolute;left:0;right:0;bottom:-40px;height:40px;fill:#FFFFFF;opacity:0;pointer-events:none}
.sgs-blood__float{position:absolute;right:0;bottom:0;z-index:2;display:flex;align-items:center;gap:12px;padding:12px 20px 12px 12px;border-radius:22px;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);box-shadow:0 24px 40px -22px rgba(10,51,39,.7)}
.sgs-blood__float-ic{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:#F4E5DF;color:#C8473A}
.sgs-blood__float-ic .sgs-ic{animation:sgsDrip 2.4s cubic-bezier(.55,0,.8,.4) infinite}
@keyframes sgsDrip{0%{transform:translateY(-12px) scale(.6);opacity:0}25%{opacity:1}60%,100%{transform:none;opacity:1}}
.sgs-blood__float b{display:block;font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:16px;color:#0B2B22}
.sgs-blood__float small{display:block;font-size:13.5px;color:#51645B}
.sgs-blood__feats{position:relative;display:grid;gap:14px;margin-top:30px}
.sgs-feat{display:flex;align-items:center;gap:18px;padding:14px 18px 14px 14px;border-radius:24px;background:#F2F6F3;border:1px solid rgba(11,43,34,.05);transition:background .4s,transform .5s var(--ease),box-shadow .4s}
.sgs-feat:hover{background:#FFFFFF;box-shadow:0 24px 44px -30px rgba(10,51,39,.6);transform:translateX(6px)}
.sgs-feat__txt p{margin-top:4px;font-size:15.5px;line-height:1.5;color:#51645B}
.sgs-fv{position:relative;width:78px;height:78px;flex:none;border-radius:22px;display:grid;place-items:center;background:#FFFFFF;box-shadow:0 12px 24px -18px rgba(10,51,39,.6),inset 0 0 0 1px rgba(0,122,76,.1)}
.sgs-fv svg{position:absolute;inset:0;width:100%;height:100%;overflow:visible}
.fv-drop{fill:#D2493B;transform-box:fill-box;transform-origin:50% 0;animation:sgsFvDrop 2.6s cubic-bezier(.55,0,.8,.4) infinite}
@keyframes sgsFvDrop{0%{transform:translateY(-8px) scale(0)}30%{transform:translateY(-8px) scale(1)}60%{transform:translateY(8px) scale(1)}68%,100%{transform:translateY(8px) scale(.4);opacity:0}}
.fv-rip{fill:none;stroke:#D2493B;stroke-width:1.5;transform-box:fill-box;transform-origin:center;opacity:0;animation:sgsFvRip 2.6s ease-out infinite}
.fv-rip--2{animation-delay:.25s}
@keyframes sgsFvRip{0%,60%{transform:scale(.2);opacity:0}66%{opacity:.9}100%{transform:scale(1.4);opacity:0}}
.fv-track{fill:none;stroke:#E6F1EA;stroke-width:5}
.fv-arc{fill:none;stroke:#007A4C;stroke-width:5;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:100;transform:rotate(-90deg);transform-origin:40px 40px;transition:stroke-dashoffset 2.2s var(--ease) .8s}
.sgs-blood.is-in .fv-arc{stroke-dashoffset:34}
.sgs-fv--timer b{position:relative;font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:26px;font-weight:800;line-height:1;color:#0B2B22}
.sgs-fv--timer small{position:absolute;bottom:14px;font-size:10.5px;font-weight:800;letter-spacing:.08em;color:#007A4C}
.sgs-fv--doc{overflow:hidden}
.fv-sheet{position:absolute;left:18px;right:18px;top:12px;bottom:12px;border-radius:5px;background:#FFFFFF;border:1.5px solid rgba(0,122,76,.25);padding:10px 7px;display:flex;flex-direction:column;gap:5px;animation:sgsPrint 4s var(--ease) infinite}
.fv-sheet i{display:block;height:3px;border-radius:2px;background:#D5E8DD}
.fv-sheet i:first-child{width:60%;background:#007A4C}
@keyframes sgsPrint{0%,15%{transform:translateY(-110%)}45%,90%{transform:none}100%{transform:translateY(-110%)}}
.sgs-fv--doc b{position:absolute;right:6px;bottom:6px;padding:2px 6px;border-radius:6px;background:#0A3327;font-size:11px;font-weight:800;color:#3BF29A}
.sgs-js .sgs-blood__fig{clip-path:inset(100% 0 0 0 round 32px);transition:clip-path 1.6s cubic-bezier(.7,0,.2,1) .15s}
.sgs-blood.is-in .sgs-blood__fig{clip-path:inset(0 0 0 0 round 32px)}
.sgs-js .sgs-blood__wave{opacity:1;bottom:-40px;transition:bottom 1.6s cubic-bezier(.7,0,.2,1) .15s,opacity .4s 1.6s}
.sgs-blood.is-in .sgs-blood__wave{bottom:calc(100% - 2px);opacity:0}
.sgs-js .sgs-blood__fig img{transform:scale(1.2);transition:transform 2.4s var(--ease) .15s}
.sgs-blood.is-in .sgs-blood__fig img{transform:none}
.sgs-js .sgs-blood__float{opacity:0;translate:30px 0;transition:opacity .6s 1.3s,translate 1s var(--ease) 1.3s}
.sgs-blood.is-in .sgs-blood__float{opacity:1;translate:0 0}

/* ================================================= 4. BENTO */
.sgs-bento{background:#F2F6F3;overflow:clip}
.sgs-bento__grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:44px}
.sgs-bx{position:relative;isolation:isolate;overflow:hidden;display:flex;flex-direction:column;gap:12px;padding:20px;border-radius:26px;background:#FFFFFF;box-shadow:0 20px 40px -32px rgba(10,51,39,.6),inset 0 0 0 1px rgba(11,43,34,.05);transform:perspective(900px) rotateX(var(--rx,0deg)) rotateY(var(--ry,0deg));transition:transform .6s var(--ease),box-shadow .5s}
.sgs-bx--w,.sgs-bx--xl{grid-column:span 2}
.sgs-bx--dark{background:#0A3327;background-image:radial-gradient(ellipse at 80% 0%,#155742,#0A3327 60%);color:#CFE3D8}
.sgs-bx--dark .sgs-h3{color:#FFFFFF}
.sgs-bx--sage{background:#D5E8DD}
.sgs-bx__glare{position:absolute;inset:0;z-index:-1;opacity:0;background:radial-gradient(320px circle at var(--gx,50%) var(--gy,0%),rgba(255,255,255,.55),transparent 60%);transition:opacity .4s;pointer-events:none}
.sgs-bx--dark .sgs-bx__glare{background:radial-gradient(320px circle at var(--gx,50%) var(--gy,0%),rgba(59,242,154,.16),transparent 60%)}
.sgs-bx:hover .sgs-bx__glare{opacity:1}
.sgs-bx__ic{width:52px;height:52px;border-radius:16px;display:grid;place-items:center;background:#E6F1EA;color:#007A4C}
.sgs-bx--dark .sgs-bx__ic{background:rgba(59,242,154,.12);color:#3BF29A}
.sgs-bx--sage .sgs-bx__ic{background:#FFFFFF}
.sgs-bx__ic .sgs-ic{width:26px;height:26px}
.sgs-bx .sgs-h3{font-size:clamp(1.1rem,4.2vw,1.35rem)}
.sgs-bx__params{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
.sgs-bx__params li{padding:5px 11px;border-radius:999px;background:#F2F6F3;font-size:13.5px;font-weight:600;color:#0B2B22}
.sgs-bx--sage .sgs-bx__params li{background:rgba(255,255,255,.75)}
.sgs-bx--dark .sgs-bx__params li{background:rgba(255,255,255,.07);border:1px solid rgba(59,242,154,.2);color:#FFFFFF}
.sgs-bx__waves{position:absolute;left:0;right:0;bottom:0;z-index:-1;width:100%;height:55%;opacity:.8}
.sgs-bx__waves path{fill:none;stroke:rgba(59,242,154,.14);stroke-width:2}
.sgs-bx__waves .sgs-bx__run{stroke:#3BF29A;stroke-width:2.5;stroke-dasharray:18 82;animation:sgsBxRun 4s linear infinite;filter:drop-shadow(0 0 5px rgba(59,242,154,.8))}
@keyframes sgsBxRun{from{stroke-dashoffset:100}to{stroke-dashoffset:0}}
.sgs-bx--xl .sgs-bx__ic{width:64px;height:64px}
.sgs-bx--cta{justify-content:center;align-items:flex-start;background:#0A3327;color:#CFE3D8}
.sgs-bx--cta p{font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:clamp(1.2rem,4.4vw,1.5rem);font-weight:600;line-height:1.25;color:#FFFFFF}
.sgs-bx--cta .sgs-btn{margin-top:6px}
.sgs-js .sgs-bx{opacity:0;translate:0 40px;rotate:x -12deg;transition:opacity .7s,translate .9s var(--ease),rotate .9s var(--ease),transform .6s var(--ease),box-shadow .5s;transition-delay:calc(var(--n) * 80ms + 200ms),calc(var(--n) * 80ms + 200ms),calc(var(--n) * 80ms + 200ms),0s,0s}
.sgs-bento.is-in .sgs-bx{opacity:1;translate:0 0;rotate:x 0deg}
.sgs-js .sgs-bx__ic path,.sgs-js .sgs-bx__ic circle,.sgs-js .sgs-bx__ic rect,.sgs-js .sgs-bx__ic ellipse{stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1.4s var(--ease);transition-delay:calc(var(--n) * 80ms + 600ms)}
.sgs-bento.is-in .sgs-bx__ic path,.sgs-bento.is-in .sgs-bx__ic circle,.sgs-bento.is-in .sgs-bx__ic rect,.sgs-bento.is-in .sgs-bx__ic ellipse{stroke-dashoffset:0}
.sgs-js .sgs-bx__params li{opacity:0;scale:.7;transition:opacity .4s,scale .6s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(var(--n) * 80ms + var(--k) * 60ms + 800ms)}
.sgs-bento.is-in .sgs-bx__params li{opacity:1;scale:1}

/* ================================================= 5. LIPIDICO */
.sgs-lipid{overflow:clip}
.sgs-lipid__grid{display:grid;gap:56px;align-items:center}
.sgs-report{position:relative;overflow:hidden;margin-top:28px;padding:18px 18px 12px;border-radius:26px;background:#FFFFFF;border:1px solid rgba(11,43,34,.08);box-shadow:0 40px 70px -46px rgba(10,51,39,.6)}
.sgs-report__top{display:flex;align-items:center;gap:12px;padding-bottom:14px;border-bottom:1px dashed rgba(11,43,34,.14)}
.sgs-report__ic{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#0A3327;color:#3BF29A}
.sgs-report__ic .sgs-ic{width:20px;height:20px}
.sgs-report__top b{flex:1;font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:17px;color:#0B2B22}
.sgs-report__live{display:flex;align-items:center;gap:7px;padding:5px 10px;border-radius:999px;background:#E6F1EA;font-size:12px;font-weight:800;color:#007A4C}
.sgs-report__live i{width:7px;height:7px;border-radius:50%;background:#007A4C;animation:sgsBlink 1.2s ease-in-out infinite}
.sgs-report__scan{position:absolute;left:0;right:0;top:70px;height:44px;background:linear-gradient(180deg,rgba(59,242,154,0),rgba(59,242,154,.14),rgba(59,242,154,0));pointer-events:none;animation:sgsScanY 5s ease-in-out infinite}
@keyframes sgsScanY{0%{transform:translateY(0)}50%{transform:translateY(340px)}100%{transform:translateY(0)}}
.sgs-report__list li{display:grid;grid-template-columns:28px minmax(0,1fr) 22px;grid-template-areas:"n t ok" "n bar bar";align-items:center;gap:4px 10px;padding:10px 0;border-bottom:1px solid rgba(11,43,34,.06)}
.sgs-report__list li:last-child{border-bottom:0}
.sgs-report__n{grid-area:n;font-size:12px;font-weight:800;color:#6A8176}
.sgs-report__t{grid-area:t;font-size:15.5px;font-weight:600;color:#0B2B22}
.sgs-report__bar{grid-area:bar;height:4px;border-radius:4px;background:#F2F6F3;overflow:hidden}
.sgs-report__bar i{display:block;height:100%;width:100%;background:linear-gradient(90deg,#007A4C,#3BF29A);transform-origin:0 50%;transform:scaleX(0);transition:transform 1s var(--ease);transition-delay:calc(var(--k) * 140ms + .9s)}
.sgs-lipid.is-in .sgs-report__bar i{transform:scaleX(1)}
.sgs-report__ok{grid-area:ok;width:22px;height:22px;border-radius:50%;display:grid;place-items:center;background:#3BF29A;transform:scale(0);transition:transform .5s cubic-bezier(.34,1.56,.64,1);transition-delay:calc(var(--k) * 140ms + 1.6s)}
.sgs-report__ok svg{width:14px;height:14px;fill:none;stroke:#0A3327;stroke-width:3;stroke-linecap:round;stroke-linejoin:round}
.sgs-lipid.is-in .sgs-report__ok{transform:scale(1)}
.sgs:not(.sgs-js) .sgs-report__bar i,.sgs:not(.sgs-js) .sgs-report__ok{transform:none}
.sgs-lipid__media{position:relative;width:min(84vw,460px);aspect-ratio:1;margin:0 auto}
.sgs-lipid__fig{position:absolute;inset:8%;margin:0;border-radius:50%;overflow:hidden;background:#D5E8DD;box-shadow:0 50px 80px -50px rgba(10,51,39,.8)}
.sgs-lipid__orbit{position:absolute;inset:0;border-radius:50%;border:1.5px dashed rgba(0,122,76,.3);animation:sgsSpin 30s linear infinite}
.sgs-lipid__orbit i{position:absolute;width:48px;height:48px;margin:-24px 0 0 -24px;border-radius:50%;display:grid;place-items:center;background:#FFFFFF;color:#007A4C;box-shadow:0 14px 26px -16px rgba(10,51,39,.7);animation:sgsSpin 30s linear infinite reverse}
.sgs-lipid__orbit i:nth-child(1){left:50%;top:0}
.sgs-lipid__orbit i:nth-child(2){left:93.3%;top:75%}
.sgs-lipid__orbit i:nth-child(3){left:6.7%;top:75%;background:#0A3327;color:#3BF29A}
.sgs-js .sgs-lipid__fig{clip-path:circle(0% at 50% 50%);transition:clip-path 1.6s cubic-bezier(.7,0,.2,1) .2s}
.sgs-lipid.is-in .sgs-lipid__fig{clip-path:circle(50% at 50% 50%)}
.sgs-js .sgs-lipid__orbit{opacity:0;scale:.7;transition:opacity .8s 1s,scale 1.2s var(--ease) 1s}
.sgs-lipid.is-in .sgs-lipid__orbit{opacity:1;scale:1}

/* ================================================= 6. RENALE */
.sgs-renal{overflow:clip;background:#E6F1EA}
.sgs-renal__bg{position:absolute;inset:0;z-index:-1;background-image:linear-gradient(rgba(0,122,76,.07) 1px,transparent 1px),linear-gradient(90deg,rgba(0,122,76,.07) 1px,transparent 1px);background-size:32px 32px;-webkit-mask-image:linear-gradient(270deg,#000,transparent 70%);mask-image:linear-gradient(270deg,#000,transparent 70%)}
.sgs-renal__grid{display:grid;gap:44px;align-items:center}
.sgs-ptab{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;perspective:1200px}
.sgs-el{position:relative;min-height:128px;padding:14px;border-radius:20px;background:#FFFFFF;box-shadow:0 18px 36px -28px rgba(10,51,39,.7),inset 0 0 0 1px rgba(11,43,34,.06);transition:transform .5s var(--ease),box-shadow .4s,background .4s}
.sgs-el__n{position:absolute;right:14px;top:12px;font-size:12px;font-weight:800;color:#6A8176}
.sgs-el__c{display:block;font-size:11.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#007A4C}
.sgs-el__s{display:block;margin-top:6px;font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:44px;font-weight:800;line-height:1;letter-spacing:-.04em;color:#0B2B22}
.sgs-el__l{margin-top:6px;font-family:'Figtree',sans-serif;font-size:15px;font-weight:700;line-height:1.25;color:#2F443C}
.sgs-el--feat{background:#0A3327}
.sgs-el--feat .sgs-el__c{color:#3BF29A}
.sgs-el--feat .sgs-el__s{color:#FFFFFF;text-shadow:0 0 24px rgba(59,242,154,.5)}
.sgs-el--feat .sgs-el__l,.sgs-el--feat .sgs-el__n{color:#CFE3D8}
.sgs-el.is-hot{transform:translateY(-6px);box-shadow:0 30px 50px -28px rgba(10,51,39,.8),inset 0 0 0 2px #3BF29A}
.sgs-el:hover{transform:translateY(-6px)}
.sgs-el--cta{padding:0;background:#3BF29A}
.sgs-el--cta a{display:flex;flex-direction:column;justify-content:space-between;height:100%;min-height:128px;padding:14px;border-radius:20px;color:#0A3327}
.sgs-el--cta .sgs-el__s{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;background:#0A3327;color:#3BF29A}
.sgs-el--cta .sgs-el__s .sgs-ic{width:22px;height:22px;transition:transform .5s var(--ease)}
.sgs-el--cta a:hover .sgs-el__s .sgs-ic{transform:rotate(90deg)}
.sgs-el--cta .sgs-el__l{color:#0A3327}
.sgs-js .sgs-el{opacity:0;rotate:y -90deg;transition:opacity .4s,rotate .9s var(--ease),transform .5s var(--ease),box-shadow .4s;transition-delay:calc(var(--n) * 110ms + 300ms),calc(var(--n) * 110ms + 300ms),0s,0s}
.sgs-renal.is-in .sgs-el{opacity:1;rotate:y 0deg}

/* ================================================= 7. HB GLICATA */
.sgs-hb{overflow:clip}
.sgs-hb__in{display:grid;gap:40px;justify-items:center;text-align:center}
.sgs-hb__ring{position:relative;width:min(84vw,420px);aspect-ratio:1}
.sgs-hb__ring svg{display:block;width:100%;height:100%;overflow:visible}
.hb-outer{fill:none;stroke:rgba(59,242,154,.14);stroke-width:1;stroke-dasharray:2 8}
.hb-segs{transform-box:view-box;transform-origin:200px 200px;transform:rotate(var(--rot,0deg))}
.hb-segs path{fill:none;stroke:rgba(59,242,154,.25);stroke-width:10;stroke-linecap:round;animation:sgsSeg 3.6s ease-in-out infinite;animation-delay:calc(var(--n) * 300ms)}
@keyframes sgsSeg{0%,100%{stroke:rgba(59,242,154,.2)}30%{stroke:#3BF29A}}
.hb-track{fill:none;stroke:rgba(255,255,255,.06);stroke-width:14}
.hb-arc{fill:none;stroke:#3BF29A;stroke-width:14;stroke-linecap:round;stroke-dasharray:100;stroke-dashoffset:calc(100 - var(--fill,0) * 100);transform:rotate(-90deg);transform-origin:200px 200px;filter:drop-shadow(0 0 10px rgba(59,242,154,.7))}
.hb-orbit{transform-box:view-box;transform-origin:200px 200px;animation:sgsSpin 12s linear infinite}
.hb-orbit circle{fill:#3BF29A;filter:drop-shadow(0 0 6px #3BF29A)}
.hb-hex{transform-box:view-box;transform-origin:200px 200px;animation:sgsSpin 30s linear infinite reverse}
.hb-hex polygon{fill:rgba(59,242,154,.04);stroke:rgba(59,242,154,.35);stroke-width:1.5;stroke-dasharray:6 6}
.sgs-hb__core{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);display:flex;flex-direction:column;align-items:center}
.sgs-hb__core b{font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:clamp(2.6rem,11vw,4.2rem);font-weight:800;line-height:1;letter-spacing:-.04em;color:#FFFFFF;text-shadow:0 0 40px rgba(59,242,154,.45)}
.sgs-hb__core small{margin-top:8px;font-size:12.5px;font-weight:800;letter-spacing:.14em;text-transform:uppercase;color:#3BF29A}
.sgs-hb__copy{max-width:760px}
.sgs-hb__copy .sgs-lead{margin-left:auto;margin-right:auto}
.sgs-js .sgs-hb__ring{opacity:0;scale:.6;rotate:-60deg;transition:opacity 1s,scale 1.4s var(--ease),rotate 1.6s var(--ease)}
.sgs-hb.is-in .sgs-hb__ring{opacity:1;scale:1;rotate:0deg}

/* ================================================= 8. DENSITOMETRIA */
.sgs-dexa{overflow:hidden;overflow:clip;display:flex;align-items:flex-end;min-height:640px;background:#0A3327}
.sgs-dexa__bg{position:absolute;inset:0;z-index:-1;overflow:hidden}
.sgs-dexa__bg .sgs-par{top:-16%;bottom:-16%}
.sgs-dexa__tint{position:absolute;inset:0;background:linear-gradient(180deg,rgba(6,35,26,.1) 0%,rgba(6,35,26,.55) 60%,rgba(6,35,26,.9) 100%)}
.sgs-dexa__grid{position:absolute;inset:0;background-image:linear-gradient(rgba(59,242,154,.12) 1px,transparent 1px),linear-gradient(90deg,rgba(59,242,154,.12) 1px,transparent 1px);background-size:60px 60px;-webkit-mask-image:linear-gradient(180deg,transparent,#000 40%,transparent);mask-image:linear-gradient(180deg,transparent,#000 40%,transparent);opacity:.6}
.sgs-dexa__beam{position:absolute;left:0;right:0;top:0;height:120px;background:linear-gradient(180deg,rgba(59,242,154,0),rgba(59,242,154,.18) 70%,rgba(59,242,154,.9) 99%,rgba(59,242,154,0));animation:sgsBeam 5s cubic-bezier(.45,0,.3,1) infinite;mix-blend-mode:screen}
@keyframes sgsBeam{0%{transform:translateY(-130px)}55%,100%{transform:translateY(760px)}}
.sgs-dexa__wrap{width:100%;padding-top:220px;padding-bottom:40px}
.sgs-dexa__card{position:relative;max-width:560px;padding:28px 24px 26px;border-radius:30px;background:rgba(255,255,255,.94);-webkit-backdrop-filter:blur(18px) saturate(1.3);backdrop-filter:blur(18px) saturate(1.3);box-shadow:0 50px 90px -40px rgba(0,0,0,.7)}
.sgs-dexa__ic{position:relative;width:62px;height:62px;margin-bottom:18px;border-radius:20px;display:grid;place-items:center;overflow:hidden;background:#0A3327;color:#3BF29A}
.sgs-dexa__ic .sgs-ic{width:32px;height:32px}
.sgs-dexa__ic i{position:absolute;left:0;right:0;height:2px;background:#3BF29A;box-shadow:0 0 10px 2px rgba(59,242,154,.8);animation:sgsIcScan 2.2s ease-in-out infinite alternate}
@keyframes sgsIcScan{from{top:8px}to{top:52px}}
.sgs-dexa .sgs-h2{font-size:clamp(2.1rem,8vw,3.6rem)}
.sgs-js .sgs-dexa__card{opacity:0;translate:0 60px;transition:opacity .9s .2s,translate 1.2s var(--ease) .2s}
.sgs-dexa.is-in .sgs-dexa__card{opacity:1;translate:0 0}
.sgs-js .sgs-dexa__ic path,.sgs-js .sgs-dexa__ic circle{stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1.6s var(--ease) .7s}
.sgs-dexa.is-in .sgs-dexa__ic path,.sgs-dexa.is-in .sgs-dexa__ic circle{stroke-dashoffset:0}

/* ================================================= 9. FORATURA LOBI */
.sgs-lobi{overflow:clip;background:#F4E5DF;background-image:linear-gradient(160deg,#FBF4F1 0%,#F4E5DF 60%,#EFD9D1 100%)}
.sgs-lobi__grid{display:grid;gap:60px;align-items:center}
.sgs-lobi__flourish{display:flex;align-items:center;gap:10px;color:#C99A5B}
.sgs-lobi__flourish i{width:44px;height:1.5px;background:#C99A5B}
.sgs-lobi__flourish .sgs-lobi__star{width:16px;height:16px;fill:#C99A5B;animation:sgsTwinkle 3s ease-in-out infinite}
.sgs-lobi__h2{margin-top:18px;font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:clamp(2.5rem,10vw,5rem);font-weight:500;line-height:1;letter-spacing:-.045em;color:#3A1A14;text-wrap:balance}
.sgs-lobi .sgs-lead{color:#5E433C}
.sgs-lobi__vis{position:relative;width:min(76vw,420px);aspect-ratio:4 / 5;margin:0 auto}
.sgs-lobi__arch{position:absolute;inset:-4%;border-radius:999px 999px 36px 36px;border:1.5px solid rgba(201,154,91,.6)}
.sgs-lobi__arch::after{content:"";position:absolute;inset:10px;border-radius:inherit;border:1px dashed rgba(201,154,91,.4);animation:sgsDash 14s linear infinite}
@keyframes sgsDash{to{transform:rotate(0.001deg)}}
.sgs-lobi__fig{position:absolute;inset:0;margin:0;border-radius:999px 999px 30px 30px;overflow:hidden;background:#E9CFC6;box-shadow:0 50px 80px -50px rgba(131,57,44,.6)}
.sgs-lobi__sheen{position:absolute;inset:-20%;background:linear-gradient(110deg,transparent 40%,rgba(255,255,255,.45) 50%,transparent 60%);transform:translateX(-80%);animation:sgsSheen 6s ease-in-out infinite}
@keyframes sgsSheen{0%,55%{transform:translateX(-80%)}100%{transform:translateX(80%)}}
.sgs-lobi__sparks .sgs-lobi__star{position:absolute;fill:#C99A5B;animation:sgsTwinkle 3.2s ease-in-out infinite}
.sgs-lobi__sparks .sgs-lobi__star:nth-child(1){width:28px;right:-6%;top:12%}
.sgs-lobi__sparks .sgs-lobi__star:nth-child(2){width:18px;left:-8%;top:30%;animation-delay:.6s;fill:#83392C}
.sgs-lobi__sparks .sgs-lobi__star:nth-child(3){width:22px;right:4%;bottom:10%;animation-delay:1.2s}
.sgs-lobi__sparks .sgs-lobi__star:nth-child(4){width:14px;left:10%;bottom:-3%;animation-delay:1.8s;fill:#FFFFFF}
.sgs-lobi__sparks .sgs-lobi__star:nth-child(5){width:16px;left:46%;top:-6%;animation-delay:2.4s}
@keyframes sgsTwinkle{0%,100%{transform:scale(.3) rotate(0);opacity:.25}50%{transform:scale(1) rotate(90deg);opacity:1}}
.sgs-lobi__gem{position:absolute;right:-5%;top:48%;width:34px;height:34px;border-radius:8px;background:linear-gradient(135deg,#F7C6BC,#83392C);transform:rotate(45deg);box-shadow:0 14px 26px -10px rgba(131,57,44,.6);animation:sgsBob 6s ease-in-out infinite}
.sgs-lobi__pearl{position:absolute;left:-6%;top:62%;width:30px;height:30px;border-radius:50%;background:radial-gradient(circle at 35% 30%,#FFFFFF,#F4E5DF 60%,#D8BFB6);box-shadow:0 12px 20px -10px rgba(58,26,20,.5);animation:sgsBob 5s ease-in-out infinite reverse}
@keyframes sgsBob{0%,100%{translate:0 0}50%{translate:0 -14px}}
.sgs-js .sgs-lobi__fig{clip-path:inset(100% 0 0 0 round 999px 999px 30px 30px);transition:clip-path 1.6s cubic-bezier(.7,0,.2,1) .2s}
.sgs-lobi.is-in .sgs-lobi__fig{clip-path:inset(0 0 0 0 round 999px 999px 30px 30px)}
.sgs-js .sgs-lobi__arch{opacity:0;scale:.9;transition:opacity 1s .6s,scale 1.3s var(--ease) .6s}
.sgs-lobi.is-in .sgs-lobi__arch{opacity:1;scale:1}

/* ================================================= 10. COME FUNZIONA */
.sgs-steps{overflow:clip}
.sgs-steps__track{position:relative;margin-top:50px;--p:0}
.sgs-steps__line{position:absolute;left:29px;top:30px;bottom:30px;width:3px;border-radius:3px;background:#E6F1EA}
.sgs-steps__line i{position:absolute;inset:0;border-radius:3px;background:linear-gradient(#007A4C,#3BF29A);transform-origin:50% 0;transform:scaleY(var(--p))}
.sgs-steps__line em{position:absolute;left:50%;top:calc(var(--p) * 100%);width:16px;height:16px;margin:-8px 0 0 -8px;border-radius:50%;background:#FFFFFF;box-shadow:0 0 0 4px rgba(59,242,154,.35),0 0 18px 4px rgba(59,242,154,.7)}
.sgs-steps__list{position:relative;display:grid;gap:26px}
.sgs-step{position:relative;padding-left:84px;min-height:62px}
.sgs-step__dot{position:absolute;left:0;top:0;width:62px;height:62px;border-radius:20px;display:grid;place-items:center;background:#FFFFFF;color:#007A4C;box-shadow:0 14px 28px -18px rgba(10,51,39,.6),inset 0 0 0 1.5px rgba(0,122,76,.15);transition:background .5s,color .5s,transform .6s var(--ease)}
.sgs-step__dot b{position:absolute;right:-6px;top:-6px;width:24px;height:24px;border-radius:50%;display:grid;place-items:center;background:#E6F1EA;font-size:12px;font-weight:800;color:#0B2B22;transition:background .5s,color .5s}
.sgs-step__dot .sgs-ic{width:28px;height:28px}
.sgs-step p{margin-top:6px;font-size:16px;line-height:1.55;color:#51645B}
.sgs-step.is-on .sgs-step__dot{background:#0A3327;color:#3BF29A;transform:scale(1.06) rotate(-6deg)}
.sgs-step.is-on .sgs-step__dot b{background:#3BF29A;color:#0A3327}
.sgs-js .sgs-step:not(.is-on) .sgs-step__dot{background:#F2F6F3;color:#8FA99C;box-shadow:inset 0 0 0 1.5px rgba(11,43,34,.1)}
.sgs-js .sgs-step{opacity:0;translate:0 24px;transition:opacity .7s,translate .9s var(--ease);transition-delay:calc(var(--n) * 120ms + 300ms)}
.sgs-steps.is-in .sgs-step{opacity:1;translate:0 0}
.sgs-js .sgs-step__dot path,.sgs-js .sgs-step__dot circle,.sgs-js .sgs-step__dot rect{stroke-dasharray:100;stroke-dashoffset:100;transition:stroke-dashoffset 1.2s var(--ease);transition-delay:calc(var(--n) * 120ms + 600ms)}
.sgs-steps.is-in .sgs-step__dot path,.sgs-steps.is-in .sgs-step__dot circle,.sgs-steps.is-in .sgs-step__dot rect{stroke-dashoffset:0}

/* ================================================= 11. FAQ */
.sgs-faq{background:#F2F6F3}
.sgs-faq__grid{display:grid;gap:34px}
.sgs-faq__big{display:flex;align-items:flex-end;gap:6px;margin-bottom:14px;font-family:'Bricolage Grotesque','Figtree',sans-serif;line-height:.8}
.sgs-faq__big b{min-width:1.1em;font-size:clamp(4rem,16vw,6.5rem);font-weight:800;letter-spacing:-.05em;color:#007A4C}
.sgs-faq__big span{padding-bottom:.3em;font-size:20px;font-weight:600;color:#6A8176}
.sgs-acc{border-top:1px solid rgba(11,43,34,.1)}
.sgs-acc__it{position:relative;border-bottom:1px solid rgba(11,43,34,.1);transition:border-color .4s}
.sgs-acc__it::before{content:"";position:absolute;inset:0;z-index:-1;border-radius:24px;background:#FFFFFF;box-shadow:0 30px 60px -38px rgba(10,51,39,.45),0 0 0 1px rgba(0,122,76,.14);opacity:0;transform:scale(.98);transition:opacity .45s,transform .6s var(--ease)}
.sgs-acc__it::after{content:"";position:absolute;left:0;top:20px;bottom:20px;width:3px;border-radius:3px;background:linear-gradient(#007A4C,#3BF29A);transform:scaleY(0);transform-origin:50% 0;transition:transform .6s var(--ease)}
.sgs-acc__h{margin:0;font:inherit}
.sgs-acc__q{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;width:100%;padding:22px 8px 22px 6px}
.sgs-acc__n{font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:13px;font-weight:700;color:#6A8176;transition:color .35s}
.sgs-acc__t{font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:clamp(1.08rem,4.3vw,1.3rem);font-weight:600;line-height:1.28;letter-spacing:-.015em;color:#0B2B22;transition:transform .5s var(--ease)}
.sgs-acc__x{position:relative;width:42px;height:42px;border-radius:50%;border:1.5px solid rgba(11,43,34,.16);transition:background .4s,border-color .4s,transform .6s var(--ease)}
.sgs-acc__x i{position:absolute;left:50%;top:50%;width:14px;height:2px;margin:-1px 0 0 -7px;border-radius:2px;background:#0B2B22;transition:transform .5s var(--ease),background .4s}
.sgs-acc__x i + i{transform:rotate(90deg)}
.sgs-acc__q:hover .sgs-acc__t{transform:translateX(4px)}
.sgs-acc__a{display:grid;grid-template-rows:1fr;transition:grid-template-rows .6s var(--ease)}
.sgs-acc__in{overflow:hidden;min-height:0}
.sgs-acc__a p{padding:0 16px 24px 38px;font-size:16.5px;line-height:1.7;color:#2F443C;transition:opacity .5s,transform .6s var(--ease)}
.sgs-acc__it.is-open{border-color:transparent}
.sgs-acc__it.is-open::before{opacity:1;transform:none}
.sgs-acc__it.is-open::after{transform:scaleY(1)}
.sgs-acc__it.is-open .sgs-acc__n{color:#007A4C}
.sgs-acc__it.is-open .sgs-acc__x{background:#0A3327;border-color:#0A3327;transform:rotate(180deg)}
.sgs-acc__it.is-open .sgs-acc__x i{background:#3BF29A}
.sgs-acc__it.is-open .sgs-acc__x i + i{transform:rotate(0) scaleX(0)}
.sgs-js .sgs-acc__a{grid-template-rows:0fr}
.sgs-js .sgs-acc__a p{opacity:0;transform:translate3d(0,-8px,0)}
.sgs-js .sgs-acc__it.is-open .sgs-acc__a{grid-template-rows:1fr}
.sgs-js .sgs-acc__it.is-open .sgs-acc__a p{opacity:1;transform:none;transition-delay:.15s}
.sgs-js .sgs-acc__it{opacity:0;translate:0 24px;transition:opacity .7s,translate .9s var(--ease),border-color .4s;transition-delay:calc(var(--n) * 70ms + 150ms),calc(var(--n) * 70ms + 150ms),0s}
.sgs-faq.is-in .sgs-acc__it{opacity:1;translate:0 0}

/* ================================================= 12. CTA FINALE */
.sgs-cta{overflow:hidden;overflow:clip;text-align:center}
.sgs-cta__lines{position:absolute;inset:0;z-index:-1;width:100%;height:100%;pointer-events:none;-webkit-mask-image:radial-gradient(ellipse 42% 48% at 50% 55%,transparent 55%,#000 85%);mask-image:radial-gradient(ellipse 42% 48% at 50% 55%,transparent 55%,#000 85%)}
.sgs-cta__lines path{fill:none;stroke-linejoin:round;stroke-linecap:round;vector-effect:non-scaling-stroke}
.cta-base{stroke:rgba(59,242,154,.07);stroke-width:1.4}
.cta-run{stroke:#3BF29A;stroke-width:2.2;stroke-dasharray:80 920;stroke-dashoffset:1000;opacity:.5;filter:drop-shadow(0 0 5px rgba(59,242,154,.8));animation:sgsRun 9s linear infinite;animation-delay:calc(var(--n) * -3s)}
.sgs-cta__in{display:flex;flex-direction:column;align-items:center}
.sgs-cta__led{--s:9px;margin-bottom:28px}
.sgs-cta .sgs-h2{max-width:18ch}
.sgs-cta .sgs-lead{max-width:60ch}
.sgs-cta .sgs-btns{justify-content:center;margin-top:32px}
.sgs-cta__addr{display:inline-flex;align-items:center;gap:12px;margin-top:34px;padding:10px 20px 10px 10px;border-radius:20px;border:1px solid rgba(59,242,154,.2);background:rgba(255,255,255,.04);text-align:left;color:#CFE3D8;transition:border-color .35s,background .35s}
.sgs-cta__addr:hover{border-color:#3BF29A;background:rgba(59,242,154,.08)}
.sgs-cta__addr-ic{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;background:rgba(59,242,154,.14);color:#3BF29A}
.sgs-cta__addr b{display:block;font-family:'Bricolage Grotesque','Figtree',sans-serif;font-size:17px;color:#FFFFFF}
.sgs-cta__addr small{display:block;font-size:14.5px;color:#CFE3D8}
.sgs-js .sgs-cta__led{opacity:0;scale:.5;rotate:-45deg;transition:opacity .6s,scale 1s cubic-bezier(.34,1.56,.64,1),rotate 1s var(--ease)}
.sgs-cta.is-in .sgs-cta__led{opacity:1;scale:1;rotate:0deg}

/* ================================================= tablet */
@media (min-width:600px){
  .sgs-btns .sgs-btn{margin-top:0}
  .sgs-bento__grid{grid-template-columns:repeat(4,minmax(0,1fr))}
  .sgs-bx--s{grid-column:span 2}
  .sgs-ptab{grid-template-columns:repeat(4,minmax(0,1fr))}
}
@media (min-width:700px){
  .sgs-wrap{padding:0 24px}
  .sgs-chips__in{padding:12px 24px}
  .sgs-tcard{grid-template-columns:minmax(0,1.1fr) minmax(0,.9fr);align-items:center;padding:18px 26px 18px 18px}
  .sgs-tcard__screen{height:200px}
  .sgs-blood__media{max-width:560px}
  .sgs-dexa__card{padding:40px 38px 36px}
  .sgs-steps__line{left:50%;margin-left:-1.5px}
  .sgs-step{width:50%;padding-left:0;padding-right:70px;text-align:right}
  .sgs-step__dot{left:auto;right:-31px}
  .sgs-step:nth-child(even){margin-left:50%;padding-right:0;padding-left:70px;text-align:left}
  .sgs-step:nth-child(even) .sgs-step__dot{right:auto;left:-31px}
}

/* ================================================= desktop */
@media (min-width:1000px){
  .sgs-pad{padding:130px 0 140px}
  .sgs-h2{font-size:clamp(3.2rem,4.4vw,4.4rem)}
  .sgs-hero{padding-top:56px;padding-bottom:0}
  .sgs-hero__grid{grid-template-columns:minmax(0,1fr) auto;gap:60px;min-height:min(560px,calc(100svh - 320px))}
  .sgs-hero__h1{font-size:clamp(4.2rem,6.2vw,6.4rem)}
  .sgs-hero__vis{width:clamp(300px,26vw,380px);margin:20px}
  .sgs-hero__ecg{height:100px;margin-top:20px}

  .sgs-tele__grid{grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:80px;align-items:start}
  .sgs-tele__side{position:sticky;top:130px}
  .sgs-tele__count{display:flex;align-items:flex-end;gap:10px;margin-top:40px;font-family:'Bricolage Grotesque','Figtree',sans-serif;line-height:.8}
  .sgs-tele__count b{font-size:5.5rem;font-weight:800;letter-spacing:-.05em;color:#3BF29A;text-shadow:0 0 30px rgba(59,242,154,.35)}
  .sgs-tele__count span{padding-bottom:.3em;font-size:20px;font-weight:600;color:#A9C6B8}
  .sgs-tele__count i{position:relative;flex:1;max-width:180px;height:3px;margin:0 0 .55em 14px;border-radius:3px;background:rgba(59,242,154,.14);overflow:hidden}
  .sgs-tele__count em{position:absolute;inset:0;background:#3BF29A;transform-origin:0 50%;transform:scaleX(var(--tp,.33));transition:transform .5s var(--ease)}
  .sgs-tele__stack{gap:40px;padding-bottom:60px}
  .sgs-tcard{top:calc(130px + var(--i) * 26px);grid-template-columns:1fr;padding:22px 22px 28px;border-radius:34px}
  .sgs-tcard__screen{height:240px;border-radius:22px}
  .sgs-tcard__txt{padding:0 10px}

  .sgs-blood__grid{grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:90px}
  .sgs-blood__media{max-width:none;padding:0 40px 50px 0}
  .sgs-blood__fig{height:min(680px,72vh);aspect-ratio:auto;border-radius:40px}
  .sgs-bento__grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-top:64px}
  .sgs-bx{padding:26px;border-radius:30px;min-height:210px}
  .sgs-bx--s{grid-column:span 1}
  .sgs-bx--xl{grid-row:span 2}

  .sgs-lipid__grid{grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:90px}
  .sgs-report{padding:24px 26px 14px}
  .sgs-report__list{display:grid;grid-template-columns:1fr 1fr;column-gap:26px}
  .sgs-report__list li:nth-last-child(2){border-bottom:0}
  .sgs-lipid__media{width:min(100%,500px)}

  .sgs-renal__grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px}
  .sgs-ptab{gap:14px}
  .sgs-el{min-height:170px;padding:18px}
  .sgs-el__s{font-size:60px;margin-top:10px}
  .sgs-el--cta a{min-height:170px;padding:18px}

  .sgs-hb__in{grid-template-columns:minmax(0,1fr) minmax(0,1fr);justify-items:start;text-align:left;gap:80px;align-items:center}
  .sgs-hb__copy .sgs-lead{margin-left:0}
  .sgs-hb__ring{width:min(100%,480px);justify-self:center}

  .sgs-dexa{min-height:min(820px,94vh);align-items:center}
  .sgs-dexa__wrap{display:flex;justify-content:flex-end;padding-top:120px;padding-bottom:120px}
  .sgs-dexa__card{padding:50px 48px 44px}
  .sgs-dexa__tint{background:linear-gradient(90deg,rgba(6,35,26,.05) 0%,rgba(6,35,26,.35) 55%,rgba(6,35,26,.8) 100%)}

  .sgs-lobi__grid{grid-template-columns:minmax(0,1fr) minmax(0,.9fr);gap:100px}
  .sgs-lobi__h2{font-size:clamp(4rem,5.6vw,6rem)}
  .sgs-lobi__vis{width:min(100%,440px);margin:0 0 0 auto}

  .sgs-steps__track{margin-top:80px}
  .sgs-steps__line{left:0;right:0;top:31px;bottom:auto;width:auto;height:3px;margin-left:0}
  .sgs-steps__line i{transform-origin:0 50%;transform:scaleX(var(--p))}
  .sgs-steps__line em{top:50%;left:calc(var(--p) * 100%)}
  .sgs-steps__list{grid-template-columns:repeat(var(--count,4),minmax(0,1fr));gap:30px}
  .sgs-step,.sgs-step:nth-child(even){width:auto;margin-left:0;padding:90px 0 0;text-align:left}
  .sgs-step__dot,.sgs-step:nth-child(even) .sgs-step__dot{left:0;right:auto}

  .sgs-faq__grid{grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:80px;align-items:start}
  .sgs-faq__side{align-self:stretch}
  .sgs-faq__sticky{position:sticky;top:140px}
  .sgs-acc__q{gap:22px;padding:26px 22px 26px 24px}
  .sgs-acc__a p{padding:0 90px 30px 66px;font-size:17px}
  .sgs-cta__led{--s:11px}
}

@media (prefers-reduced-motion:reduce){
  .sgs *,.sgs *::before,.sgs *::after{animation:none!important;transition:none!important}
  .sgs-js .sgs-w > span,.sgs-js .sgs-rv{transform:none;opacity:1}
  .sgs-js .sgs-tcard,.sgs-js .sgs-bx,.sgs-js .sgs-el,.sgs-js .sgs-acc__it,.sgs-js .sgs-blood__float,.sgs-js .sgs-dexa__card,.sgs-js .sgs-lipid__orbit,.sgs-js .sgs-lobi__arch,.sgs-js .sgs-hb__ring,.sgs-js .sgs-cta__led,.sgs-js.sgs-hero .sgs-hero__vis{opacity:1;translate:0 0;rotate:0deg;scale:1}
  .sgs-js .sgs-bx__params li{opacity:1;scale:1}
  .sgs-js .sgs-blood__fig,.sgs-js .sgs-lipid__fig,.sgs-js .sgs-lobi__fig{clip-path:none}
  .sgs-js .sgs-blood__wave{display:none}
  .sgs-js .sgs-step{opacity:1;translate:0 0}
  .sgs-js .sgs-report__bar i,.sgs-js .sgs-report__ok{transform:none}
  .sgs-js .sgs-bx__ic *,.sgs-js .sgs-dexa__ic *,.sgs-js .sgs-step__dot *{stroke-dashoffset:0}
  .sgs-js.sgs-hero .sgs-led i.on{background:#3BF29A}
  .sgs-dexa__beam,.sgs-report__scan{display:none}
}
