:root{--paper:#edeee8;--paper2:#e2e6df;--ink:#171c19;--muted:#515b52;--line:#c5cec3;--green:#14684a;--bright:#48c689;--dark:#151d19;--mono:'IBM Plex Mono',monospace;--sans:Archivo,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.55 var(--sans);-webkit-font-smoothing:antialiased}button,a{font:inherit}button{cursor:pointer}a{color:inherit}.skip{position:absolute;left:12px;top:-60px;padding:10px;background:var(--ink);color:white;z-index:100}.skip:focus{top:12px}::selection{background:#b8e9cb;color:var(--ink)}:focus-visible{outline:3px solid #239c68;outline-offset:4px}h1,h2,h3,p,figure{margin:0}h1,h2{letter-spacing:-.055em;line-height:1.04}h1{font-size:clamp(3.4rem,6.2vw,7rem);font-weight:800}h2{font-size:clamp(2.7rem,4.7vw,5.2rem);font-weight:700}h1 em,h2 em{font-style:normal;color:var(--green)}h2 span{color:#68746b}button{border:0}.section{position:relative;padding:clamp(76px,9vw,150px) clamp(20px,5vw,76px)}.section-mark,.section-side,.eyebrow,.mono,.source-note,.visual-note{font-family:var(--mono);font-size:11px;letter-spacing:.07em}.section-mark{font-weight:600;letter-spacing:.13em}.section-mark span{color:var(--green)}.section-top{display:flex;justify-content:space-between;gap:20px;align-items:baseline;border-bottom:1px solid var(--line);padding-bottom:16px;margin-bottom:clamp(38px,6vw,84px)}.section-side{color:var(--muted);text-transform:uppercase}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:36px;min-height:55px;padding:0 22px;text-decoration:none;font-size:13px;font-weight:700;transition:transform .25s,background .25s,color .25s}.button:hover{transform:translateY(-3px)}.button-dark{background:var(--ink);color:#f4f5f0}.button-dark:hover{background:var(--green)}.button-light{background:#ecf2e9;color:var(--ink)}.button-light:hover{background:#bfe7cd}.text-link{display:inline-flex;align-items:center;gap:18px;text-decoration:none;font-size:13px;font-weight:700;border-bottom:1px solid currentColor;padding-bottom:5px;transition:gap .25s}.text-link:hover{gap:28px}.site-header{height:76px;position:relative;z-index:30;background:rgba(237,238,232,.95);border-bottom:1px solid var(--line)}.header-inner{height:100%;max-width:1600px;padding:0 clamp(20px,4vw,66px);margin:auto;display:flex;align-items:center;gap:30px}.brand{display:flex;align-items:center;flex-shrink:0}.brand img{display:block;width:clamp(160px,15.7vw,210px);height:auto}.nav{display:flex;align-items:center;gap:clamp(15px,2.5vw,34px);margin-left:auto}.nav a{text-decoration:none;font:500 11px var(--mono);text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}.nav a:hover,.nav a[aria-current=page]{color:var(--green)}.nav a[aria-current=page]{border-bottom:2px solid var(--green);padding-bottom:5px}.header-cta{white-space:nowrap;padding:13px 17px;background:var(--ink);color:#f7f7f1;text-decoration:none;font:600 11px var(--mono);text-transform:uppercase;letter-spacing:.04em}.header-cta:hover{background:var(--green)}.menu-toggle{display:none;background:transparent;border:1px solid var(--ink);padding:8px 12px;font:600 12px var(--mono)}
.hero{position:relative;min-height:min(800px,calc(100svh - 76px));display:grid;align-items:center;overflow:hidden;border-bottom:1px solid var(--ink);background:#edece5}.hero-grid{position:absolute;inset:0;pointer-events:none;background:linear-gradient(90deg,rgba(23,28,25,.045) 1px,transparent 1px),linear-gradient(rgba(23,28,25,.045) 1px,transparent 1px);background-size:80px 80px;mask-image:linear-gradient(90deg,#000,transparent 70%);z-index:1}.hero-image{position:absolute;inset:0 0 0 34%;background-image:linear-gradient(90deg,#edece5 0%,rgba(237,236,229,.45) 19%,transparent 40%),url('assets/sistema-concept.png');background-position:center,right center;background-size:cover,cover;z-index:0;animation:hero-in 1.5s ease both}.hero-content{position:relative;z-index:2;width:min(760px,60vw);padding:80px clamp(24px,5vw,78px) 96px}.eyebrow{display:flex;align-items:center;gap:10px;color:var(--green);font-weight:600;margin-bottom:34px}.pulse-dot{width:7px;height:7px;border-radius:50%;background:var(--green);box-shadow:0 0 0 6px rgba(20,104,74,.12);animation:pulse 3s ease-in-out infinite}.hero h1 em{display:inline-block;font-style:normal;color:var(--green)}.hero-lead{max-width:560px;margin-top:34px;font-size:clamp(17px,1.55vw,21px);line-height:1.48;color:#3e483f}.hero-actions{display:flex;align-items:center;flex-wrap:wrap;gap:27px;margin-top:35px}.visual-note{max-width:460px;color:#5c665d;margin-top:34px;line-height:1.5}.hero-bottom{position:absolute;bottom:0;left:0;right:0;z-index:4;padding:14px clamp(24px,5vw,78px);display:flex;justify-content:space-between;border-top:1px solid rgba(23,28,25,.25);background:rgba(237,238,232,.45);backdrop-filter:blur(4px);font:500 10px var(--mono);letter-spacing:.1em}.hero-bottom span:nth-child(2){margin-left:auto;margin-right:7vw}
.intro{display:grid;grid-template-columns:minmax(120px,.55fr) minmax(0,1.9fr) minmax(170px,.65fr);gap:40px;align-items:start;min-height:470px;overflow:hidden;background:var(--paper)}.intro-copy{position:relative;z-index:2}.intro h2{font-size:clamp(2.35rem,3.8vw,4.8rem);max-width:900px}.intro p:not(.section-mark){font-size:18px;max-width:660px;margin-top:30px;color:var(--muted)}.intro-molecule{width:min(300px,23vw);color:rgba(20,104,74,.24);transform:rotate(-9deg);animation:molecule-drift 12s ease-in-out infinite}.intro-molecule svg{width:100%}
.range{background:var(--paper2);background-image:radial-gradient(circle at 82% 25%,rgba(99,159,122,.18),transparent 35%),linear-gradient(rgba(23,28,25,.028) 1px,transparent 1px),linear-gradient(90deg,rgba(23,28,25,.028) 1px,transparent 1px);background-size:auto,42px 42px,42px 42px}.range-heading{display:flex;align-items:end;justify-content:space-between;gap:30px;margin-bottom:55px}.range-heading h2{max-width:790px}.range-heading p{max-width:380px;font-size:16px;color:var(--muted)}.range-layout{display:grid;grid-template-columns:minmax(260px,.65fr) minmax(0,1.45fr);border:1px solid var(--ink);min-height:620px;background:#e9ece6}.range-tabs{display:flex;flex-direction:column;border-right:1px solid var(--ink)}.range-tab{flex:1;display:grid;grid-template-columns:43px 1fr auto;align-items:center;gap:14px;text-align:left;background:transparent;color:var(--ink);padding:25px 22px;border-bottom:1px solid var(--line);transition:background .25s,color .25s}.range-tab:last-child{border-bottom:0}.range-tab:hover{background:#d5e4d8}.range-tab.is-active{background:var(--ink);color:#f2f5ee}.tab-index,.tab-main small,.tab-arrow{font:600 11px var(--mono);letter-spacing:.06em}.tab-index{align-self:start;padding-top:6px;color:var(--green)}.range-tab.is-active .tab-index{color:var(--bright)}.tab-main{display:flex;flex-direction:column;gap:7px}.tab-main strong{font-size:clamp(18px,1.8vw,25px);letter-spacing:-.03em}.tab-main small{opacity:.75}.tab-arrow{align-self:start}.range-panel{min-width:0;display:flex;flex-direction:column}.panel-head{display:flex;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--line);font:500 10px var(--mono);letter-spacing:.1em}.product-stage{position:relative;flex:1;min-height:320px;overflow:hidden;isolation:isolate;background:radial-gradient(ellipse at 50% 49%,#f9fbf4,#d9e2d7 65%,#d3ddd2)}.product-stage:before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(0deg,transparent 0 54px,rgba(22,82,53,.08) 55px 56px),repeating-linear-gradient(90deg,transparent 0 54px,rgba(22,82,53,.08) 55px 56px);mask-image:radial-gradient(ellipse,#000,transparent 75%)}.stage-halo{position:absolute;width:350px;height:350px;left:50%;top:49%;border:1px solid rgba(28,101,67,.25);border-radius:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 55px rgba(28,101,67,.035),0 0 0 110px rgba(28,101,67,.028)}.stage-floor{position:absolute;left:18%;right:18%;bottom:13%;height:35px;border-radius:50%;background:rgba(18,34,25,.18);filter:blur(15px)}.product-object{--ow:162px;--oh:215px;--depth:35px;position:absolute;left:50%;top:45%;width:var(--ow);height:var(--oh);transform:translate(-50%,-50%) rotateY(-18deg) rotateX(7deg);transform-style:preserve-3d;filter:drop-shadow(25px 28px 20px rgba(28,43,32,.23));transition:width .65s,height .65s,transform .65s}.product-front,.product-side,.product-top{position:absolute;border:1px solid #101815;background:#232d28}.product-front{inset:0;z-index:3;background:linear-gradient(130deg,#596660 0%,#25322c 14%,#17211d 70%,#0d1511 100%);border:3px solid #17231d;box-shadow:inset 4px 0 #778379,inset -7px 0 #0d1812,inset 0 7px rgba(255,255,255,.15)}.product-front:before{content:"RGS";position:absolute;top:13px;left:14px;color:rgba(242,248,238,.66);font:600 10px var(--mono);letter-spacing:.16em}.product-front:after{content:"";position:absolute;inset:38px 17px 19px;border:1px solid rgba(168,197,174,.15);background:repeating-linear-gradient(0deg,rgba(120,155,131,.16) 0 2px,transparent 2px 23px)}.product-side{width:var(--depth);height:100%;right:calc(-1 * var(--depth));top:-9px;transform:skewY(-27deg);transform-origin:left top;background:linear-gradient(90deg,#0c1510,#283a2f)}.product-top{height:var(--depth);width:100%;top:calc(-1 * var(--depth));left:12px;transform:skewX(-56deg);transform-origin:bottom left;background:linear-gradient(#607168,#202e26)}.product-light{position:absolute;z-index:6;top:37px;bottom:25px;left:10px;width:3px;background:#53dc95;box-shadow:0 0 10px #4adf91,0 0 23px rgba(64,223,139,.5)}.product-vent{position:relative;z-index:5;display:block;margin:13px 28px 0 35px;height:8px;background:repeating-linear-gradient(90deg,#0b140f 0 3px,#657169 3px 4px);opacity:.85}.product-vent:first-of-type{margin-top:55px}.product-stage[data-product=rack100] .product-object{--ow:187px;--oh:270px;--depth:46px}.product-stage[data-product=rack225] .product-object{--ow:219px;--oh:286px;--depth:61px}.product-stage[data-product=bess] .product-object{--ow:min(400px,57vw);--oh:205px;--depth:80px}.product-stage[data-product=bess] .product-vent{display:inline-block;width:29%;margin:58px 0 0 3%}.stage-measure{position:absolute;z-index:5;color:#276947;font:600 10px var(--mono);letter-spacing:.1em}.measure-v{left:8%;top:35%;writing-mode:vertical-rl}.measure-h{right:7%;bottom:15%}.panel-caption{display:flex;justify-content:space-between;gap:25px;padding:23px 26px 21px;border-top:1px solid var(--line)}.panel-caption>div:first-child{max-width:460px}.panel-caption .mono{color:var(--green);font-weight:600}.panel-caption h3{font-size:clamp(23px,2vw,33px);letter-spacing:-.04em;margin:5px 0}.panel-caption p:not(.mono){font-size:14px;color:var(--muted);line-height:1.5}.panel-specs{min-width:180px;display:grid;gap:10px}.panel-specs div{border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:10px}.panel-specs span{font:500 10px var(--mono);color:var(--muted)}.panel-specs strong{white-space:nowrap;font-size:14px}.panel-link{display:flex;justify-content:space-between;background:var(--green);color:white;text-decoration:none;font-size:13px;font-weight:700;padding:15px 26px;transition:background .25s}.panel-link:hover{background:#0d4c36}.source-note{color:var(--muted);margin-top:22px;max-width:920px;line-height:1.6}
.architecture{background:var(--dark);color:#eaf0e6;overflow:hidden}.architecture:before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(circle at 74% 34%,rgba(59,118,82,.2),transparent 40%),repeating-linear-gradient(90deg,transparent 0 95px,rgba(212,236,216,.045) 96px 97px)}.architecture .section-top{border-color:#4e5a50}.architecture .section-mark span{color:var(--bright)}.architecture .section-side{color:#9daa9d}.architecture-layout{position:relative;display:grid;grid-template-columns:minmax(310px,.75fr) minmax(0,1.25fr);gap:clamp(30px,5vw,90px);align-items:center}.architecture h2{max-width:620px}.architecture h2 em{color:#75d6a3}.architecture-copy>p{max-width:530px;color:#bfcbbf;margin:25px 0 34px;font-size:17px}.layer-tabs{border-top:1px solid #617064;margin-bottom:20px}.layer-tab{width:100%;display:flex;gap:20px;background:transparent;color:#d6e1d5;border-bottom:1px solid #617064;padding:16px 6px;text-align:left;font-weight:600;transition:padding-left .25s,color .25s}.layer-tab:hover,.layer-tab.is-active{padding-left:16px;color:#85e9b2}.layer-tab span{color:#7ea58a;font:600 11px var(--mono)}.layer-detail{min-height:123px;border-left:2px solid var(--bright);padding:4px 0 0 20px;margin-bottom:27px}.layer-detail strong{font-size:16px}.layer-detail p{color:#b8c9b8;margin-top:8px;line-height:1.55}.light-link{color:#d8f5df}.architecture-visual{position:relative;border:1px solid #6b796c;background:#d8d9d0;box-shadow:25px 30px 0 rgba(88,141,102,.1)}.architecture-visual img{display:block;width:100%;height:auto}.architecture-visual figcaption{position:absolute;bottom:0;left:0;right:0;background:rgba(13,22,17,.91);color:#dce6da;padding:10px 15px;font:500 10px/1.5 var(--mono)}
.path{background:#ebeee8;background-image:radial-gradient(circle at 10% 80%,rgba(47,127,78,.12),transparent 32%)}.path-layout{display:grid;grid-template-columns:minmax(300px,.8fr) minmax(0,1.2fr);gap:clamp(45px,9vw,150px)}.path-heading h2{max-width:600px}.path-heading p{max-width:480px;font-size:18px;color:var(--muted);margin-top:25px}.path-tool{border-top:2px solid var(--ink)}.scenario{width:100%;padding:20px 10px;border-bottom:1px solid var(--line);background:transparent;text-align:left;display:flex;justify-content:space-between;font-size:clamp(16px,1.7vw,22px);font-weight:600;color:var(--ink);transition:padding-left .25s,background .25s}.scenario:hover,.scenario.is-active{padding-left:20px;background:#dce9df}.scenario.is-active{color:var(--green)}.scenario-result{margin-top:26px;padding:28px;background:var(--ink);color:#f3f6ef;min-height:245px;position:relative;overflow:hidden}.scenario-result:after{content:"";position:absolute;width:170px;height:170px;border:1px solid rgba(119,215,160,.22);border-radius:50%;right:-65px;top:-65px;box-shadow:0 0 0 28px rgba(119,215,160,.04),0 0 0 55px rgba(119,215,160,.035)}.scenario-result>span{font:600 10px var(--mono);letter-spacing:.1em;color:#90d2a7}.scenario-result strong{display:block;font-size:clamp(25px,3vw,39px);letter-spacing:-.05em;margin:12px 0 7px}.scenario-result p{max-width:520px;color:#ccd8cc;line-height:1.5}.scenario-result a{display:inline-flex;gap:15px;margin-top:18px;color:#a6e8bc;text-decoration:none;font-weight:700;font-size:13px;border-bottom:1px solid #a6e8bc}
.closing{background:#0f3d2b;color:#edf7ed;text-align:center;overflow:hidden}.closing-pattern{position:absolute;inset:-70px;pointer-events:none;opacity:.14;background:radial-gradient(circle at 50% 50%,transparent 0 75px,#c8f3d1 76px 77px,transparent 78px 150px,#c8f3d1 151px 152px,transparent 153px 225px,#c8f3d1 226px 227px,transparent 228px);animation:pattern-drift 18s linear infinite}.closing .section-mark{position:relative;color:#95dfae}.closing h2{position:relative;margin:25px auto;max-width:1050px}.closing h2 em{color:#91dda8}.closing>p:not(.section-mark){position:relative;max-width:670px;margin:auto;color:#c9dfcc;font-size:18px}.closing-actions{position:relative;display:flex;align-items:center;justify-content:center;flex-wrap:wrap;gap:28px;margin-top:36px}.footer{background:var(--paper);padding:50px clamp(20px,5vw,76px) 28px;display:grid;grid-template-columns:1fr 1.2fr 1fr;align-items:start;gap:30px;border-top:1px solid var(--line)}.footer img{display:block;max-width:100%;height:auto}.footer p{color:var(--muted);font-size:13px;max-width:340px}.footer nav{display:flex;gap:12px 20px;flex-wrap:wrap;justify-content:flex-end}.footer nav a,.footer small a{font:500 11px var(--mono);text-decoration:none}.footer a:hover{text-decoration:underline}.footer small{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;color:var(--muted);font:500 10px var(--mono)}
@keyframes hero-in{from{opacity:0;transform:scale(1.035)}to{opacity:1;transform:scale(1)}}@keyframes pulse{50%{box-shadow:0 0 0 11px rgba(20,104,74,.04)}}@keyframes molecule-drift{50%{transform:translateY(18px) rotate(3deg)}}@keyframes pattern-drift{50%{transform:scale(1.2)}}
@media(max-width:1050px){.site-header{height:68px}.header-inner{gap:14px}.nav{gap:13px}.nav a{font-size:10px}.header-cta{font-size:10px;padding:11px}.hero-content{width:min(720px,68vw)}.hero-image{left:30%;background-position:center,58% center}.intro{grid-template-columns:100px 1fr 130px}.panel-caption{display:block}.panel-specs{margin-top:18px}.architecture-layout{gap:30px}}
@media(max-width:760px){h1{font-size:clamp(3.1rem,11vw,5rem)}h2{font-size:clamp(2.5rem,9vw,4.3rem)}.section{padding:72px 22px}.section-top{margin-bottom:35px}.section-side{display:none}.site-header{height:67px}.header-inner{padding:0 18px}.brand img{width:175px}.menu-toggle{display:block;margin-left:auto}.header-cta{display:none}.nav{display:none;position:absolute;top:67px;left:0;right:0;background:var(--paper);padding:20px;border-bottom:1px solid var(--ink);box-shadow:0 14px 20px rgba(0,0,0,.08)}.nav.is-open{display:flex;flex-direction:column;align-items:stretch;gap:0}.nav a{font-size:13px;padding:13px;border-bottom:1px solid var(--line)}.hero{min-height:780px;display:flex;align-items:flex-start;flex-direction:column}.hero-image{inset:37% 0 0 0;background-image:linear-gradient(180deg,#edece5 0%,rgba(237,236,229,.28) 17%,transparent 37%),url('assets/sistema-concept.png');background-position:center,62% bottom;background-size:cover,cover}.hero-grid{background-size:52px 52px;mask-image:none;opacity:.4}.hero-content{width:100%;padding:45px 24px 20px}.hero .eyebrow{margin-bottom:21px}.hero-lead{font-size:16px;max-width:530px;margin-top:18px}.hero-actions{margin-top:23px;gap:18px}.hero-actions .button{min-height:48px}.visual-note{position:absolute;top:calc(100% + 330px);left:24px;right:24px;font-size:9px;color:#344b3d;max-width:400px}.hero-bottom{padding:12px 24px;font-size:9px}.hero-bottom span:nth-child(2){display:none}.intro{grid-template-columns:1fr;min-height:0}.intro-copy{grid-row:2}.intro-molecule{position:absolute;width:180px;right:-20px;top:30px;opacity:.36}.intro p:not(.section-mark){font-size:16px;margin-top:22px}.range-heading{display:block;margin-bottom:34px}.range-heading p{margin-top:20px}.range-layout{grid-template-columns:1fr}.range-tabs{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));border-right:0;border-bottom:1px solid var(--ink)}.range-tab{min-height:90px;padding:15px;grid-template-columns:22px 1fr;gap:6px;border-right:1px solid var(--line)}.tab-main strong{font-size:17px}.tab-main small{font-size:9px}.tab-arrow{display:none}.product-stage{min-height:330px}.panel-head{padding:14px}.panel-caption{padding:20px}.panel-specs{max-width:340px}.architecture-layout,.path-layout{grid-template-columns:1fr}.architecture-visual{margin-top:25px}.architecture-visual figcaption{position:static}.path-tool{margin-top:0}.footer{grid-template-columns:1fr 1fr}.footer p{grid-column:1/-1}.footer nav{justify-content:flex-start;grid-column:1/-1}.closing-actions{flex-direction:column}.closing h2 br{display:none}}
@media(min-width:461px) and (max-width:760px){.hero{min-height:850px}.hero-image{inset:56% 0 0;background-image:url('assets/sistema-concept.png');background-size:auto 100%;background-position:right bottom}.visual-note{position:relative;top:auto;left:auto;right:auto;margin-top:20px;max-width:100%;color:#4d5f51}}
@media(max-width:460px){.hero{min-height:850px}.hero-content{padding:38px 20px 20px}.hero-image{inset:57% 0 0 0;background-image:url('assets/sistema-concept.png');background-size:auto 100%;background-position:right bottom}.hero h1{font-size:clamp(2.55rem,11.5vw,3.4rem)}.hero-lead{font-size:15px;margin-top:15px}.hero-actions{gap:14px;margin-top:18px}.hero-actions .text-link{font-size:11px}.visual-note{position:relative;top:auto;left:auto;right:auto;width:auto;max-width:100%;padding:0;margin-top:20px;background:none;color:#4d5f51;font-size:9px}.range-tabs{grid-template-columns:1fr 1fr}.range-tab{min-height:80px;padding:12px}.tab-index{font-size:9px}.tab-main strong{font-size:15px}.tab-main small{font-size:8px}.product-stage{min-height:290px}.product-object{transform:translate(-50%,-50%) rotateY(-18deg) rotateX(7deg) scale(.86)}.product-stage[data-product=bess] .product-object{--ow:250px;--oh:170px;--depth:55px}.measure-v{left:4%}.measure-h{right:4%;bottom:10%}.footer{grid-template-columns:1fr}.footer p,.footer nav,.footer small{grid-column:1}.architecture-visual{box-shadow:11px 13px 0 rgba(88,141,102,.1)}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}

/* Revisione showcase: scala domestica reale nel primo visual, identità originale,
   apertura progressiva dello schema con lo scroll. */
.brand img{width:clamp(170px,15.7vw,210px);height:auto}
.hero{background:#e9e9e3}
.hero-image{inset:0;background-image:linear-gradient(90deg,rgba(237,238,232,.96) 0%,rgba(237,238,232,.83) 24%,rgba(237,238,232,.48) 43%,transparent 67%),url('assets/safeone-casa-concept.png');background-position:center,center;background-size:cover,cover}
.hero-content{width:min(760px,62vw)}
.hero-bottom{gap:24px;background:rgba(237,238,232,.82)}
.hero-bottom span:nth-child(2){margin-left:auto;margin-right:0}
.product-front:before{content:none}
.product-stage[data-product=safeone] .product-object{--depth:20px}
.product-stage[data-product=safeone] .product-front:after{inset:12px;border:1px solid rgba(168,197,174,.15);background:none}
.product-stage[data-product=safeone] .product-top{display:none}
.product-stage[data-product=safeone] .product-vent,.product-stage[data-product=safeone] .stage-floor{display:none}
.product-stage[data-product=safeone] .product-light{left:auto;right:16px;top:16px;bottom:auto;width:8px;height:8px;border-radius:50%}
.product-stage[data-product=bess] .product-object{--ow:min(515px,58vw);--oh:130px;--depth:50px}
.product-stage[data-product=bess] .product-vent{width:28%;margin:38px 0 0 3%}
.measure-v{writing-mode:horizontal-tb;left:5%;top:5%}
.measure-h{right:5%;bottom:5%}
.architecture-scroll{position:relative;min-height:185dvh;background:#151d19;color:#eaf0e6;isolation:isolate}
.architecture-scroll:before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 40%,rgba(59,118,82,.23),transparent 44%),repeating-linear-gradient(90deg,transparent 0 98px,rgba(212,236,216,.035) 99px 100px);pointer-events:none}
.architecture-sticky{position:sticky;top:0;min-height:100dvh;display:grid;grid-template-columns:minmax(295px,.77fr) minmax(0,1.23fr);align-items:center;gap:clamp(28px,4vw,72px);padding-top:64px;padding-bottom:64px}
.architecture-copy{position:relative;z-index:2;max-width:590px}
.architecture-copy .section-mark{color:#90d1a7;margin-bottom:26px}
.architecture-copy h2{font-size:clamp(2.6rem,4.6vw,5rem);max-width:650px}
.architecture-copy h2 em{color:#8cdaab}
.architecture-copy>p:not(.section-mark){color:#c2d0c4;max-width:520px;margin:27px 0 29px;font-size:clamp(15px,1.4vw,18px)}
.assembly-reading{min-height:102px;max-width:515px;border-left:2px solid #74d49c;padding:0 0 0 19px;margin-bottom:28px}
.assembly-reading strong{display:block;color:#f0f6ee;font-size:18px;line-height:1.25}
.assembly-reading p{color:#b9cbbd;margin-top:7px;font-size:14px;line-height:1.5}
.assembly-figure{position:relative;z-index:1;margin:0;min-width:0;padding:18px 24px 17px;background:radial-gradient(ellipse at 53% 52%,#354b39 0%,#24352a 51%,#17251d 100%);border:1px solid #566b58;box-shadow:20px 22px 0 rgba(111,171,126,.08)}
.assembly-figure:before{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(235,255,236,.035) 1px,transparent 1px),linear-gradient(rgba(235,255,236,.035) 1px,transparent 1px);background-size:38px 38px;pointer-events:none}
.assembly-svg{position:relative;display:block;width:100%;height:auto;max-height:66dvh;overflow:visible}
.assembly-front,.assembly-core,.assembly-back{transition:transform .2s cubic-bezier(.23,1,.32,1);will-change:transform}
.assembly-guides{opacity:0;transition:opacity .2s ease}
.assembly-labels{display:grid;grid-template-columns:1fr 1fr 1fr;gap:10px;text-align:center;color:#b4d4bd;font:500 10px/1.4 var(--mono);letter-spacing:.04em;opacity:0;transition:opacity .3s ease}
.assembly-control{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:15px;border-top:1px solid rgba(203,235,207,.25);margin-top:18px;padding-top:17px;font:500 11px var(--mono);color:#d2e5d3}
.assembly-control input{width:100%;accent-color:#86d4a1;cursor:pointer}
.assembly-control output{min-width:50px;text-align:right;color:#96dfad}
.assembly-figure figcaption{margin-top:13px;color:#aec5b1;font:400 10px/1.5 var(--mono);max-width:660px}
.assembly-marker{position:absolute;left:0;width:1px;height:1px;opacity:0;pointer-events:none}
@media(max-width:1050px){.architecture-sticky{grid-template-columns:minmax(245px,.78fr) minmax(0,1.22fr);gap:24px}.architecture-copy h2{font-size:clamp(2.2rem,4.3vw,4rem)}}
@media(max-width:760px){.brand img{width:175px}.hero{min-height:810px}.hero-image{inset:42% 0 0;background-image:linear-gradient(180deg,#e9e9e3 0%,rgba(233,233,227,.22) 18%,transparent 45%),url('assets/safeone-casa-concept.png');background-position:center,65% center;background-size:cover,cover}.hero-content{width:100%}.hero-bottom{gap:8px;flex-wrap:wrap}.hero-bottom span:nth-child(2){margin-left:auto}.hero-bottom span:nth-child(3){width:100%;text-align:left}.architecture-scroll{min-height:170dvh}.architecture-sticky{min-height:100dvh;display:flex;flex-direction:column;align-items:stretch;justify-content:center;gap:15px;padding:52px 20px 32px}.architecture-copy{max-width:none}.architecture-copy .section-mark{margin-bottom:12px}.architecture-copy h2{font-size:clamp(2rem,7.6vw,3.1rem)}.architecture-copy>p:not(.section-mark){font-size:14px;margin:13px 0 15px}.assembly-reading{min-height:63px;margin-bottom:10px}.assembly-reading strong{font-size:15px}.assembly-reading p{font-size:12px;margin-top:3px}.architecture-copy .text-link{font-size:12px}.assembly-figure{padding:10px 12px 12px}.assembly-svg{height:min(40dvh,350px)}.assembly-labels{font-size:8px}.assembly-control{gap:8px;margin-top:8px;padding-top:10px;font-size:9px}.assembly-figure figcaption{font-size:9px;margin-top:8px}}
@media(max-width:460px){.hero{min-height:835px}.hero-image{inset:54% 0 0;background-image:url('assets/safeone-casa-concept.png');background-position:65% center;background-size:cover}.hero-content{padding-top:33px}.visual-note{font-size:9px}.architecture-sticky{padding:39px 15px 24px;gap:8px}.architecture-copy h2{font-size:clamp(1.9rem,8.4vw,2.6rem)}.architecture-copy>p:not(.section-mark){font-size:13px;line-height:1.45}.assembly-svg{height:min(36dvh,300px)}.assembly-figure{padding:7px 9px 10px}.assembly-labels{font-size:7px}.assembly-control label{max-width:60px}.product-stage[data-product=bess] .product-object{--ow:265px;--oh:82px;--depth:28px}.product-stage[data-product=bess] .product-vent{margin-top:23px}}
@media(prefers-reduced-motion:reduce){.architecture-scroll{min-height:auto}.architecture-sticky{position:relative;min-height:auto}.assembly-front,.assembly-core,.assembly-back,.assembly-guides,.assembly-labels{transition:none}}

/* Showcase 3D: ritmi e inquadrature dedicati, senza salti tra gli step. */
.architecture-scroll{min-height:190dvh}
.assembly-figure{overflow:hidden;background:radial-gradient(ellipse at 52% 37%,#3a5040 0%,#26382b 50%,#16241b 100%);box-shadow:15px 19px 0 rgba(111,171,126,.07)}
.assembly-figure:before{background:linear-gradient(90deg,rgba(235,255,236,.025) 1px,transparent 1px),linear-gradient(rgba(235,255,236,.025) 1px,transparent 1px);background-size:44px 44px}
.assembly-svg{max-height:63dvh;overflow:hidden}
.assembly-front,.assembly-core,.assembly-back,.assembly-guides,.assembly-labels{transition:none}
.assembly-labels{font-size:11px;gap:9px;color:#d1e8d2}
.assembly-labels span{border-top:1px solid rgba(152,204,166,.35);padding-top:9px}
.assembly-control input{min-height:28px}
@media(max-width:760px){
  .architecture-scroll{min-height:177dvh}
  .architecture-sticky{padding:42px 19px 27px;gap:13px}
  .architecture-copy h2{font-size:clamp(2rem,7.2vw,3rem)}
  .architecture-copy>p:not(.section-mark){line-height:1.45;margin:11px 0 13px}
  .assembly-reading{min-height:66px;margin-bottom:8px}
  .assembly-figure{padding:9px 11px 11px}
  .assembly-svg{width:100%;height:min(42dvh,365px);max-height:none}
  .assembly-labels{font-size:10px;line-height:1.25;gap:6px}
  .assembly-labels span{padding-top:6px}
  .assembly-control{font-size:10px;gap:8px;padding-top:8px;margin-top:7px}
  .assembly-figure figcaption{font-size:10px;line-height:1.35;margin-top:6px}
}
@media(max-width:460px){
  .architecture-sticky{padding:36px 14px 20px;gap:8px}
  .architecture-copy h2{font-size:clamp(1.86rem,8vw,2.45rem)}
  .architecture-copy>p:not(.section-mark){font-size:12.5px}
  .assembly-svg{height:min(38dvh,350px)}
  .assembly-labels{font-size:9.5px}
  .assembly-control label{max-width:unset}
}
@media(max-width:760px) and (max-height:700px){
  .architecture-scroll{min-height:auto}
  .architecture-sticky{position:relative;min-height:auto}
  .assembly-svg{height:min(52dvh,310px)}
}
@media(prefers-reduced-motion:reduce){.architecture-scroll{min-height:auto}.architecture-sticky{position:relative;min-height:auto}}
