:root{color-scheme:dark;--bg:#040a14;--panel:#101827;--text:#f2f4f8;--muted:#b4bbc9;--line:#202b3d;--cyan:#17cdbf;--shadow:0 14px 40px #0003}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:28px}body{margin:0;background:var(--bg);color:var(--text);font-family:Arial,Helvetica,sans-serif;line-height:1.5}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}button:disabled{opacity:.45;cursor:not-allowed}svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.65;stroke-linecap:round;stroke-linejoin:round;flex-shrink:0}button{color:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:2px solid var(--cyan);outline-offset:5px}.container{width:min(1180px,88%);margin-inline:auto}.header{height:104px;position:relative;z-index:10;padding:20px 3%;display:flex;align-items:center;gap:24px;background:#020814;color:#fff}.brand{flex-shrink:0;display:flex}.brand img{width:230px;height:auto}.header nav{display:flex;align-items:center;justify-content:center;gap:20px;flex:1}.header nav a{font-size:13px;font-weight:600;letter-spacing:.25px;text-transform:uppercase;white-space:nowrap;color:#fff;padding-block:12px}.header nav a:hover{color:var(--cyan)}.header-actions{display:flex;gap:14px;align-items:center}.icon-button{background:none;border:0;padding:7px;display:inline-flex;align-items:center;justify-content:center;border-radius:8px}.icon-button:hover{background:#ffffff10}.button{display:inline-flex;gap:16px;align-items:center;justify-content:center;border:1px solid transparent;border-radius:19px;background:linear-gradient(110deg,#3658f7,#0fc5b2);padding:12px 25px;font-size:12px;font-weight:600;text-transform:uppercase;letter-spacing:.35px;color:white;transition:transform .2s,filter .2s;min-height:42px}.button:hover{filter:brightness(1.15);transform:translateY(-2px)}.button.small{min-width:144px;padding:11px 20px;border-radius:12px}.button.outline{background:#050a1550;border-color:#667086}.button svg{width:18px;height:18px}.menu-toggle{display:none}.hero{position:relative;min-height:530px;background:#020814 url('hero-background.png') center center/cover no-repeat;color:#fff;display:flex;align-items:center}.hero-shade{position:absolute;inset:0;background:linear-gradient(180deg,#020814 0%,#020814b3 35px,#02081400 150px),linear-gradient(90deg,#020712b0 0%,#02071255 32%,transparent 56%)}.hero-content{position:relative;padding-top:65px;padding-bottom:48px}.eyebrow{display:inline-flex;gap:9px;align-items:center;padding:6px 12px;background:#07232288;border:1px solid #1bcbbc18;border-radius:30px;text-transform:uppercase;font-size:11px;font-weight:600;letter-spacing:.6px;color:#20cebe}.eyebrow svg{height:15px;width:15px}h1{font-size:clamp(42px,4vw,60px);line-height:1.02;letter-spacing:-1.5px;margin:20px 0}h1 span{background:linear-gradient(110deg,#21a4e7,#13c9a6);background-clip:text;color:transparent}.hero p{font-size:17px;line-height:1.55;max-width:385px;color:#c6cbd5;margin:0 0 26px}.hero p strong{color:#eee;font-weight:400}.hero-buttons{display:flex;gap:16px}.overview{padding-top:22px}h2{font-size:30px;line-height:1.2;letter-spacing:-.8px;margin:10px 0 18px}h3{font-size:17px;line-height:1.4;margin:12px 0 8px}.overview>h2{text-align:center;font-size:26px;margin:0 0 10px}.heading-line{width:58px;height:2px;background:var(--cyan);margin:0 auto 15px;box-shadow:0 0 12px #16c9d3}.category-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:18px}.category{display:flex;align-items:center;flex-direction:column;text-align:center;border:1px solid #1f293b77;border-radius:14px;padding:24px 15px 12px;background:linear-gradient(130deg,#141c2bd9,#101827ef);box-shadow:var(--shadow);transition:transform .2s,border .2s;color:#f2f4f8}.category:hover{transform:translateY(-5px);border-color:#13cabb}.category-icon{width:42px;height:42px;margin-bottom:4px;filter:drop-shadow(0 0 8px currentColor)}img.category-icon{filter:drop-shadow(0 0 10px #0bbaff50)}.mint{color:#14d6bc}.purple{color:#b763fb}.amber{color:#f6a51b}.category h3{font-size:16px}.category p{font-size:14px;line-height:1.45;color:#bac1cf;margin:0;max-width:185px}.category>span{margin-top:auto;padding-top:5px;color:#c8d1e3}.trust{display:flex;justify-content:center;gap:44px;margin:16px 0 0;padding:14px 25px;background:linear-gradient(90deg,#0a1424,#09111e);border-radius:40px;color:#e7eafa}.trust>div{display:flex;align-items:center;gap:12px}.trust svg{color:#b6c4d8}.trust p{font-size:12px;margin:0}.trust small{font-size:11px;display:block;color:#b6becf}.flag{font-size:24px}.section{padding-top:92px;scroll-margin-top:25px}.section-heading{display:flex;align-items:end;justify-content:space-between;gap:20px;margin-bottom:28px}.section-heading h2{margin-bottom:0}.section-heading p{color:var(--muted);max-width:620px}.kicker{display:block;color:var(--cyan);text-transform:uppercase;font-size:12px;letter-spacing:1.7px;font-weight:700}.section-note{font-size:14px;color:var(--muted)}.start-panel,.ha-panel{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;background:linear-gradient(130deg,#13223688,#0a121c);border:1px solid var(--line);border-radius:24px;padding:44px}.start-panel p,.ha-panel p,.contact-grid p{color:var(--muted);font-size:16px}.steps{list-style:none;margin:0;padding:0;display:grid;gap:24px}.steps li{display:flex;gap:20px}.steps li>span{font-size:26px;color:var(--cyan);font-weight:700;opacity:.75}.steps h3{margin:0 0 4px}.steps p{margin:0;font-size:14px}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.article-card{padding:28px;border:1px solid var(--line);background:var(--panel);border-radius:17px;display:flex;flex-direction:column;align-items:start}.article-card>svg{width:36px;height:36px;color:var(--cyan);margin-bottom:20px}.article-card .tag{font-size:11px;text-transform:uppercase;letter-spacing:1.2px;color:var(--cyan)}.article-card h3{font-size:21px}.article-card p{color:var(--muted);font-size:16px;flex:1;margin-top:0}.text-button{border:0;background:none;padding:10px 0 0;color:var(--text);font-weight:600;text-align:left}.text-button:hover{color:var(--cyan)}.ha-panel{grid-template-columns:.8fr 1.2fr}.ha-visual{display:flex;align-items:center;flex-direction:column;text-align:center;padding:30px;gap:26px;background:radial-gradient(ellipse,#0c8bce22,transparent 70%)}.ha-visual>img{filter:drop-shadow(0 0 40px #0ea7ec50)}.ha-visual>span{font-size:24px;line-height:1.25;font-weight:700}.ha-tags{display:flex;gap:10px}.ha-tags span{border:1px solid var(--line);padding:6px 12px;border-radius:18px;font-size:12px;color:var(--muted)}.check-list{padding:0;list-style:none;margin:25px 0}.check-list li{margin:9px 0;font-size:15px}.check-list li:before{content:'✓';color:var(--cyan);margin-right:12px}.shop-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.shop-item{background:var(--panel);padding:23px;border:1px solid var(--line);border-radius:16px;cursor:pointer;position:relative}.shop-item:has(input:checked){border-color:var(--cyan);background:#0cbfaa12}.shop-item>svg{width:35px;height:35px;color:var(--cyan)}.shop-item input{float:right;accent-color:#12baa9;width:19px;height:19px}.shop-item strong{display:block;margin:18px 0 10px}.shop-item small{display:block;color:var(--muted);font-size:14px}.shop-bottom{display:flex;justify-content:space-between;align-items:center;padding-top:20px;color:var(--muted);gap:20px}.community-panel{text-align:center;border:1px solid var(--line);background:radial-gradient(ellipse at top,#0f817c22,transparent 65%),var(--panel);border-radius:24px;padding:50px 25px}.community-panel>svg{margin-bottom:20px}.community-panel p{max-width:580px;margin:0 auto 26px;color:var(--muted)}.community-panel small{display:block;margin-top:17px;font-size:12px;color:var(--muted)}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:90px}.contact-grid .muted{font-size:13px}form{display:grid;gap:10px}label{font-size:14px}input,textarea,select{width:100%;border:1px solid var(--line);background:var(--panel);color:var(--text);border-radius:9px;padding:12px}textarea{resize:vertical}form .button{margin-top:10px;justify-self:start}form label:not(:first-child){margin-top:8px}#form-status{font-size:14px;margin:0}.footer{border-top:1px solid var(--line);margin-top:85px;padding:30px 0;display:flex;align-items:center;justify-content:space-between;gap:20px}.footer p,.footer>a:last-child{color:var(--muted);font-size:13px}dialog{background:var(--panel);color:var(--text);border:1px solid var(--line);border-radius:20px;padding:30px;width:min(700px,92vw);max-height:85vh;box-shadow:0 30px 100px #0008}dialog::backdrop{background:#000a;backdrop-filter:blur(7px)}.dialog-top{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:22px}dialog h2{font-size:28px}dialog p,dialog li{color:var(--muted);font-size:16px}dialog li{margin:12px 0}dialog h3{margin-top:25px}#search-results{display:grid;gap:8px;margin-top:20px}#search-results button{background:var(--bg);border:1px solid var(--line);padding:15px;border-radius:10px;text-align:left}#search-results button small{display:block;color:var(--cyan)}.skip{position:fixed;left:10px;top:-80px;background:var(--panel);padding:10px;z-index:100}.skip:focus{top:10px}body.light{--bg:#edf3f9;--panel:#fff;--text:#142333;--muted:#526173;--line:#cfdae6;--cyan:#008477;color-scheme:light}body.light .start-panel,body.light .ha-panel{background:#fff}body.light .footer>a:first-child{background:#091421;padding:5px;border-radius:9px}body.light .button.outline{background:#0f2541;color:white}body.light .community-panel{background:#fff}body:has(dialog[open]){overflow:hidden}
@media(min-width:1500px){.hero{min-height:620px}.hero-content{padding-top:65px}.header{padding-inline:5%}.hero p{font-size:18px}}@media(max-width:1200px){.header{gap:22px;height:88px}.brand img{width:205px}.header nav{gap:18px}.header nav a{font-size:12px}.header-actions{gap:7px}.button.small{min-width:124px}.hero{min-height:435px}.hero-content{padding-top:65px;padding-bottom:38px}.hero h1{font-size:43px;margin:17px 0}.hero p{font-size:15px;max-width:345px;margin-bottom:23px}.button{font-size:10px;padding:10px 21px;min-height:36px}.hero-buttons{gap:14px}.category{padding:20px 13px 10px}.category h3{font-size:14px}.category p{font-size:12px}.category-icon{width:37px;height:37px}.trust{gap:35px;padding:11px 20px}.trust p{font-size:11px}.trust small{font-size:10px}.overview>h2{font-size:24px}.header-actions .icon-button svg{width:18px;height:18px}}
@media(max-width:960px){.header nav{display:none;position:absolute;top:82px;left:5%;right:5%;background:#0c1728;border:1px solid #25354b;border-radius:14px;padding:20px;box-shadow:var(--shadow)}.header nav.open{display:grid;grid-template-columns:1fr 1fr;gap:20px}.header nav a{font-size:14px}.menu-toggle{display:flex;margin-left:auto;order:2}.header-actions{margin-left:auto}.header{gap:12px}.category-grid{gap:10px}.category{padding:18px 10px}.trust{gap:20px;flex-wrap:wrap}.trust p{font-size:12px}.trust small{font-size:11px}.hero-shade{background:linear-gradient(180deg,#020814 0%,#020814b3 35px,#02081400 150px),linear-gradient(90deg,#020712e6,#02071288 40%,transparent)}.start-panel,.ha-panel{gap:30px;padding:30px}.shop-grid{grid-template-columns:repeat(2,1fr)}.contact-grid{gap:40px}.section{padding-top:65px}.cards{gap:14px}.article-card{padding:23px}.article-card h3{font-size:19px}}
@media(max-width:680px){.container{width:89%}.header{height:82px;padding:15px 5%}.brand img{width:185px}.header-actions .small{display:none}.header-actions{gap:2px}.hero{min-height:690px;align-items:flex-start;background-size:auto 395px;background-position:68% bottom;background-repeat:no-repeat}.hero-shade{background:linear-gradient(180deg,#020814 0%,#020814 36%,#020814a0 58%,#02081400 78%)}.hero-content{padding-top:55px;padding-bottom:0}.hero h1{font-size:46px}.hero p{max-width:370px;font-size:16px}.hero-buttons{gap:10px}.button{font-size:11px;padding:12px 18px;min-height:42px}.overview{padding-top:30px}.overview>h2{font-size:24px;max-width:300px;margin:0 auto 16px}.category-grid{grid-template-columns:1fr 1fr;gap:12px}.category{min-height:210px;padding:22px 12px}.category:last-child{grid-column:1/-1;min-height:180px}.category h3{font-size:16px}.category p{font-size:14px}.trust{display:grid;grid-template-columns:1fr 1fr;border-radius:20px;gap:22px 14px;padding:22px 16px}.trust>div{gap:9px}.trust p{font-size:11px}.trust small{font-size:10px}.trust svg{width:20px}.section{padding-top:55px}.section-heading{align-items:start;flex-direction:column;gap:10px}.section-note{font-size:13px}h2{font-size:28px}.start-panel,.ha-panel,.contact-grid{grid-template-columns:1fr;gap:25px}.start-panel,.ha-panel{padding:26px}.cards{grid-template-columns:1fr}.article-card{padding:27px}.article-card>svg{margin-bottom:10px}.ha-visual{padding:15px}.shop-grid{gap:12px}.shop-item{padding:17px}.shop-bottom{align-items:start;flex-direction:column;gap:4px}.community-panel{padding:35px 22px}.footer{flex-direction:column;gap:5px;text-align:center;margin-top:55px}.footer p{margin:5px}.dialog-top .kicker{font-size:10px}dialog{padding:23px}.header-actions svg{width:19px}form .button{width:100%}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}

/* Mantiene leggibile il menu anche sulle larghezze intermedie. */
@media(min-width:961px) and (max-width:1280px){.header nav{display:none;position:absolute;top:calc(100% - 6px);left:5%;right:5%;background:#0c1728;border:1px solid #25354b;border-radius:14px;padding:20px;box-shadow:var(--shadow)}.header nav.open{display:grid;grid-template-columns:1fr 1fr;gap:20px}.header nav a{font-size:14px}.menu-toggle{display:flex;margin-left:auto;order:2}.header-actions{margin-left:auto}.header{gap:12px}}

/* Photo and effects share one coordinate system: cropping cannot misalign them. */
.hero{background:#020814;isolation:isolate}
.hero-scene{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:-2}
.connected-home{display:block;width:100%;height:100%;fill:none;stroke:none}
.hero-shade{pointer-events:none;z-index:-1}
.hero-content{min-width:0}
.hero-buttons{flex-wrap:wrap}
.hub-aura{transform-box:fill-box;transform-origin:center;animation:hub-breathe 4s ease-in-out infinite}
.hub-ring{fill:none;stroke:#8cefff;stroke-width:2;transform-box:fill-box;transform-origin:center;animation:hub-ring 4s ease-out infinite}
.connection-particles path{fill:none;stroke:#d7fcff;stroke-width:5;stroke-linecap:round;stroke-dasharray:.018 .982;animation:data-travel 6s linear infinite;animation-delay:var(--delay);filter:drop-shadow(0 0 5px #1ad9ff)}
.device-halos circle{fill:#5deaff;fill-opacity:0;stroke:#a1f4ff;stroke-width:2;opacity:0;animation:device-arrival 6s ease-out infinite;animation-delay:var(--delay)}
.ha-visual>img{animation:logo-breathe 4s ease-in-out infinite}
.motion-toggle{display:block;margin-top:18px;padding:8px 12px;border:1px solid #638395;border-radius:20px;background:#020814bf;color:#d3e4ee;font-size:12px;min-height:36px}
.motion-toggle:hover{border-color:#6feaff;color:#fff}
.motion-paused .scene-motion,.motion-paused .ha-visual>img,.scene-idle .scene-motion{animation-play-state:paused}
.motion-paused .reveal-in{animation:none}
.article-card,.shop-item{transition:transform .25s ease,border-color .25s ease}
.reveal-in{animation:section-arrive .7s ease both}
@keyframes hub-breathe{0%,100%{opacity:.35;transform:scale(.94)}50%{opacity:.9;transform:scale(1.1)}}
@keyframes hub-ring{0%{opacity:.75;transform:scale(1)}85%,100%{opacity:0;transform:scale(1.28)}}
@keyframes data-travel{0%{stroke-dashoffset:0;opacity:0}6%,86%{opacity:1}100%{stroke-dashoffset:-1;opacity:0}}
@keyframes device-arrival{0%,82%,100%{opacity:0;fill-opacity:0}90%{opacity:.9;fill-opacity:.15}}
@keyframes logo-breathe{0%,100%{transform:scale(1);filter:drop-shadow(0 0 20px #0ea7ec40)}50%{transform:scale(1.045);filter:drop-shadow(0 0 32px #0ea7ec85)}}
@keyframes section-arrive{from{opacity:.4;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}
@media(hover:hover) and (pointer:fine){.article-card:hover,.shop-item:hover{transform:translateY(-4px);border-color:var(--cyan)}}
/* Stack the copy above the scene on tablets and phones; reserve its height. */
@media(max-width:1100px){
  .hero{display:flex;flex-direction:column;align-items:stretch;min-height:0}
  .hero-content{order:0;padding-top:40px;padding-bottom:24px}
  .hero-scene{--scene-height:clamp(300px,44vw,470px);position:relative;inset:auto;order:1;height:var(--scene-height);flex:none;z-index:0}
  .connected-home{position:absolute;left:68%;transform:translateX(-68%);width:calc(var(--scene-height) * 2.50063);max-width:none;height:100%}
  .hero-scene::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,#020814,transparent 22%,transparent 90%,var(--bg))}
  .hero-shade{display:none}
  .hero h1{font-size:clamp(40px,5.5vw,56px)}
  .hero p{max-width:540px}
  .category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .cards{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:680px){
  .category-grid,.shop-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cards{grid-template-columns:minmax(0,1fr)}
  .hero-content{padding-top:32px;padding-bottom:12px}
  .hero-scene{--scene-height:clamp(280px,65vw,360px)}
  .header{gap:8px}
  .brand{min-width:0;flex-shrink:1}
  .brand img{width:clamp(140px,43vw,185px);max-width:100%}
  .header-actions,.menu-toggle{flex-shrink:0}
  .header nav{top:calc(100% - 4px)}
  .header nav.open{gap:10px}
  .header nav a{font-size:13px;white-space:normal}
  .trust{grid-template-columns:repeat(2,minmax(0,1fr));padding-inline:12px;gap:18px 10px}
  .trust>div{min-width:0}
}
@media(max-width:360px){.hero-buttons{flex-direction:column;align-items:stretch}.trust{grid-template-columns:1fr}.category h3{font-size:15px}}
@media(prefers-reduced-motion:reduce){
  *,*::before,*::after{animation:none!important;transition:none!important}
  .hub-aura{opacity:.3}.hub-ring,.connection-particles,.device-halos{display:none}
  .motion-toggle{display:none}.reveal-in{opacity:1;transform:none}
}
