:root{--navy:#10243e;--blue:#1474e8;--cyan:#eaf5ff;--ink:#172334;--muted:#65758a;--line:#dfe7ef;--bg:#f5f8fb;--white:#fff;--success:#0b8b65}*{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}.topbar{height:72px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;padding:0 max(24px,calc((100% - 1120px)/2));box-shadow:0 4px 20px #10243e22}.brand{display:flex;gap:11px;align-items:center;color:#fff;text-decoration:none;font-size:20px;font-weight:750}.brand-mark{display:grid;place-items:center;width:36px;height:36px;border-radius:11px;background:linear-gradient(135deg,#17b7d9,var(--blue));font-weight:850}.environment{font-size:13px;color:#c9d6e7}.shell{width:min(1120px,calc(100% - 32px));margin:34px auto 80px}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-bottom:40px}.step{display:flex;align-items:center;gap:9px;color:#8b99aa;font-size:14px;font-weight:650;border-bottom:3px solid var(--line);padding:0 0 12px}.step span{display:grid;place-items:center;border:1px solid #b9c5d2;width:26px;height:26px;border-radius:50%;font-size:12px}.step.active{color:var(--blue);border-color:var(--blue)}.step.active span{background:var(--blue);border-color:var(--blue);color:#fff}.intro{max-width:760px;margin-bottom:26px}.eyebrow{margin:0 0 8px;color:var(--blue);font-size:12px;font-weight:850;letter-spacing:.12em}.intro h1,.success h1,.empty h1{font-size:clamp(30px,5vw,46px);line-height:1.07;letter-spacing:-.035em;margin:0 0 12px;color:var(--navy)}.intro p{font-size:17px;line-height:1.6;color:var(--muted);margin:0}.panel{background:var(--white);border:1px solid var(--line);border-radius:20px;padding:28px;box-shadow:0 12px 35px #1e42650a}.product-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.product-card{display:grid;grid-template-columns:180px minmax(0,1fr);overflow:hidden;border:2px solid var(--line);border-radius:18px;padding:0;background:#fff;transition:.2s}.product-card:hover{border-color:#b9cee6;transform:translateY(-2px);box-shadow:0 14px 30px #17395b12}.product-card:focus-within{border-color:var(--blue);box-shadow:0 0 0 4px #1474e812}.product-media{position:relative;min-height:330px;display:grid;place-items:center;overflow:hidden;background:linear-gradient(145deg,#eef6fc,#f8fbfd)}.product-media img{position:relative;z-index:2;width:100%;height:100%;object-fit:contain;padding:18px;mix-blend-mode:multiply}.product-media.image-missing img{display:none}.product-fallback{position:absolute;z-index:1;display:grid;place-items:center;width:82px;height:82px;border-radius:25px;background:#ddebfa;color:var(--blue);font-size:34px;font-weight:850}.product-content{display:flex;flex-direction:column;padding:22px}.product-badge{align-self:flex-start;display:inline-flex;padding:6px 9px;border-radius:99px;background:var(--cyan);color:#1164bd;font-size:11px;font-weight:800;letter-spacing:.02em}.product-card h2{margin:13px 0 5px;font-size:22px;color:var(--navy)}.product-card .product-description{min-height:42px;margin:0;color:var(--muted);font-size:13px;line-height:1.5}.feature-list{display:grid;gap:7px;margin:15px 0 18px;padding:0;list-style:none}.feature-list li{display:flex;align-items:flex-start;gap:7px;color:#405168;font-size:12px;line-height:1.35}.feature-list li span{display:grid;place-items:center;flex:0 0 17px;height:17px;border-radius:50%;background:#e5f8f1;color:var(--success);font-size:10px;font-weight:900}.product-pricing{margin-top:auto;padding-top:13px;border-top:1px solid var(--line)}.product-card .price{font-size:25px;font-weight:800;color:var(--navy);margin:0}.price small{font-size:13px;color:var(--muted)}.product-card .activation-price{margin:4px 0 15px;color:var(--muted);font-size:12px}.activation-price strong{color:#405168}.quantity-control{display:flex;flex-direction:row;align-items:center;justify-content:space-between;gap:12px}.quantity-control span{font-size:13px}.product-card input{max-width:82px;text-align:center;font-weight:750}label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700;color:#3d4d61}input,select{width:100%;border:1px solid #cbd6e1;border-radius:10px;padding:12px 13px;background:#fff;font:inherit;color:var(--ink);outline:none}input:focus,select:focus{border-color:var(--blue);box-shadow:0 0 0 3px #1474e817}.addon{margin-top:20px;border:1px solid var(--line);background:#f9fbfd;border-radius:14px;padding:18px;display:flex;flex-direction:row;align-items:center;gap:14px;cursor:pointer}.addon input,.check input{width:19px;height:19px;accent-color:var(--blue)}.addon span{display:flex;flex-direction:column;gap:4px}.addon small,label small{color:var(--muted);font-weight:500}.actions{display:flex;align-items:center;justify-content:flex-end;gap:18px;margin-top:24px}.button{border:0;border-radius:11px;background:var(--blue);color:#fff;padding:13px 20px;font-size:14px;font-weight:750;text-decoration:none;cursor:pointer;box-shadow:0 7px 16px #1474e830}.button:hover{background:#0f65cd}.back{color:var(--muted);font-weight:650;text-decoration:none}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}.wide{grid-column:1/-1}.section-title{font-size:18px;margin:14px 0 0;color:var(--navy)}.check{display:flex;flex-direction:row;align-items:center;gap:10px}.nested{display:grid;grid-template-columns:2fr 1fr 1.5fr .8fr;gap:15px;padding:18px;background:#f6f9fc;border-radius:13px}.hidden{display:none}.alert{background:#fff1f1;border:1px solid #f1b7b7;color:#a12727;border-radius:12px;padding:14px 16px;margin-bottom:20px}.review-grid{display:grid;grid-template-columns:1.4fr .8fr;gap:20px}.review-grid h2{margin-top:0}.summary-row,.summary-total{display:flex;justify-content:space-between;gap:18px;padding:10px 0}.summary-row strong{white-space:nowrap}.summary-total{font-size:19px;color:var(--navy);font-weight:800;border-top:2px solid var(--navy);margin-top:10px;padding-top:18px}.success{text-align:center;max-width:700px;margin:50px auto}.success-icon{width:70px;height:70px;margin:0 auto 22px;display:grid;place-items:center;border-radius:50%;background:#e5f8f1;color:var(--success);font-size:34px;font-weight:850}.order-number{display:inline-block;background:var(--cyan);padding:10px 15px;border-radius:9px;color:var(--blue);font-weight:800}.next-box{margin:25px 0;text-align:left;border-left:4px solid var(--blue);background:#f6faff;padding:17px;display:flex;flex-direction:column;gap:6px}.next-box span{color:var(--muted);line-height:1.5}.empty{text-align:center;padding:60px}.empty .button{display:inline-block;margin-top:15px}@media(max-width:960px){.product-card{grid-template-columns:140px minmax(0,1fr)}.product-media{min-height:320px}}@media(max-width:800px){.product-grid,.review-grid{grid-template-columns:1fr}.form-grid{grid-template-columns:1fr}.wide{grid-column:auto}.nested{grid-template-columns:1fr}.steps{gap:4px}.step{font-size:0}.step span{font-size:12px}.environment{display:none}.panel{padding:20px}.shell{margin-top:24px}}@media(max-width:520px){.product-card{grid-template-columns:1fr}.product-media{min-height:210px}.product-media img{max-height:210px}.product-card .product-description{min-height:auto}}

/* Brand system v0.3 — Rivetta Sistemi / Eversafe / MyDaSoli */
:root{--navy:#2e3038;--blue:#e8702a;--cyan:#fae2d4;--ink:#20222a;--muted:#6c7280;--line:#e6e7ea;--bg:#fafafb;--white:#fff;--success:#2e7d32;--rivetta:#e30613;--eversafe:#e8702a;--mydasoli:#c0392b;--steel:#525561;--cloud:#edeeef}
body{background:var(--bg);font-family:Ubuntu,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
h1,h2,h3,.product-card h2{font-family:Ubuntu,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif}
.eyebrow,.step,.product-badge,.button,.brand-context,.company-brand,.site-footer strong{font-family:Montserrat,"Segoe UI",Arial,sans-serif}
.topbar{height:82px;padding:0;background:#fff;color:var(--ink);border-top:4px solid var(--eversafe);border-bottom:1px solid var(--line);box-shadow:0 7px 25px rgba(46,48,56,.07)}
.topbar-inner{width:min(1180px,calc(100% - 40px));height:100%;margin:auto;display:flex;align-items:center}
.platform-brand{display:flex;align-items:center;padding-right:22px;border-right:1px solid var(--line)}
.platform-brand img{display:block;width:auto;height:38px;max-width:190px;object-fit:contain}
.brand-context{display:flex;flex-direction:column;gap:2px;padding-left:20px;color:var(--navy)}
.brand-context span{font-size:14px;font-weight:800}
.brand-context small{font-size:10px;color:var(--muted);font-weight:700;letter-spacing:.12em;text-transform:uppercase}
.company-brand{margin-left:auto;display:flex;align-items:center;gap:12px;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase}
.company-brand img{width:138px;height:46px;object-fit:contain}
.shell{width:min(1180px,calc(100% - 40px));margin:30px auto 70px}
.steps{margin:0 0 26px;gap:0;background:#fff;border:1px solid var(--line);border-radius:12px;overflow:hidden}
.step{position:relative;justify-content:center;border:0;border-right:1px solid var(--line);padding:13px;color:#8a8e98;font-size:11px;font-weight:700;letter-spacing:.02em;text-transform:uppercase}
.step:last-child{border-right:0}.step span{width:24px;height:24px;border-color:#cfd1d6;background:#fff}
.step.active{border:0;color:var(--navy);background:#fff7f2}.step.active span{background:var(--eversafe);border-color:var(--eversafe)}
.configurator-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.4fr) minmax(260px,.6fr);align-items:center;gap:46px;overflow:hidden;margin-bottom:24px;padding:48px 52px;border-radius:18px;background:var(--navy);box-shadow:0 18px 40px rgba(46,48,56,.16)}
.hero-copy{position:relative;z-index:2}.hero-copy .eyebrow{color:#f5bf9f}.hero-copy h1{max-width:680px;margin:9px 0 14px;color:#fff;font-size:clamp(38px,5vw,58px);font-weight:700;line-height:1.03;letter-spacing:-.025em}.hero-copy>p:not(.eyebrow){max-width:650px;margin:0;color:#d6d8dd;font-size:17px;line-height:1.6;font-weight:300}
.hero-inclusions{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}.hero-inclusions span{padding:7px 11px;border:1px solid rgba(255,255,255,.18);border-radius:99px;color:#fff;font-size:12px;background:rgba(255,255,255,.06)}
.hero-product-brand{position:relative;z-index:2;display:flex;flex-direction:column;gap:13px;padding:26px;border-radius:14px;background:#fff;box-shadow:0 14px 34px rgba(0,0,0,.22)}
.hero-product-brand img{display:block;width:100%;height:auto}.hero-product-brand span{font-family:Montserrat,"Segoe UI",sans-serif;color:var(--muted);font-size:10px;font-weight:700;letter-spacing:.09em;text-align:center;text-transform:uppercase}
.hero-particles{position:absolute;right:-30px;top:-45px;width:240px;height:290px;z-index:0;opacity:.7;transform:rotate(8deg)}.hero-particles i{position:absolute;display:block;border-radius:50%;background:var(--eversafe)}.hero-particles i:nth-child(1){width:18px;height:18px;left:40px;top:20px}.hero-particles i:nth-child(2){width:38px;height:38px;left:80px;top:58px}.hero-particles i:nth-child(3){width:25px;height:25px;left:30px;top:115px;background:#b8bac1}.hero-particles i:nth-child(4){width:52px;height:52px;left:90px;top:145px}.hero-particles i:nth-child(5){width:30px;height:30px;left:45px;top:218px;background:#b8bac1}.hero-particles i:nth-child(6){width:14px;height:14px;left:115px;top:260px}
.panel{border-color:var(--line);border-radius:14px;box-shadow:0 12px 30px rgba(46,48,56,.055)}
.catalog-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:24px;margin-bottom:22px}.catalog-heading h2{margin:0;color:var(--navy);font-size:29px}.catalog-heading>p{margin:0;color:var(--muted);font-size:14px}.catalog-heading .eyebrow{margin-bottom:5px;color:var(--mydasoli)}
.product-card{border:1px solid var(--line);border-radius:14px}.product-card:hover{border-color:#efb18d;box-shadow:0 16px 34px rgba(46,48,56,.1)}.product-card:focus-within{border-color:var(--eversafe);box-shadow:0 0 0 4px rgba(232,112,42,.15)}
.product-media{background:linear-gradient(145deg,#f3f3f4,#fff)}.product-fallback{background:#f7e0dd;color:var(--mydasoli)}
.product-badge{background:#fae2d4;color:#874118}.product-card h2{color:var(--navy)}.feature-list li span{background:#fae2d4;color:#874118}.product-card .price{color:var(--mydasoli)}
input:focus,select:focus{border-color:var(--eversafe);box-shadow:0 0 0 3px rgba(232,112,42,.15)}
.addon{border-color:#f1c9b2;background:#fff8f3}.addon input,.check input{accent-color:var(--eversafe)}
.button{background:var(--eversafe);font-weight:700;box-shadow:0 7px 16px rgba(232,112,42,.25)}.button:hover{background:#ba5a22}.back{color:var(--steel)}
.site-footer{background:var(--navy);color:#b8bac1}.footer-inner{width:min(1180px,calc(100% - 40px));margin:auto;display:grid;grid-template-columns:1.5fr .7fr .7fr;gap:50px;padding:38px 0 28px}.footer-inner>div{display:flex;flex-direction:column;gap:7px;font-size:13px}.footer-inner strong{margin-bottom:4px;color:#fff;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.footer-brand img{width:190px;height:58px;object-fit:contain;object-position:left center;filter:brightness(0) invert(1);opacity:.94}.footer-brand p{max-width:440px;margin:0;color:#b8bac1;line-height:1.5}.footer-legal{border-top:1px solid rgba(255,255,255,.12);padding:13px max(20px,calc((100% - 1180px)/2));color:#8a8e98;font-size:11px}
@media(max-width:900px){.configurator-hero{grid-template-columns:1fr;padding:38px}.hero-product-brand{max-width:320px}.company-brand span{display:none}.product-grid{grid-template-columns:1fr}.product-card{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:700px){.topbar{height:72px}.topbar-inner{width:min(100% - 24px,1180px)}.platform-brand img{height:31px;max-width:145px}.brand-context{padding-left:12px}.company-brand{display:none}.shell{width:min(100% - 24px,1180px);margin-top:18px}.configurator-hero{padding:30px 24px;gap:25px}.hero-copy h1{font-size:38px}.hero-copy>p:not(.eyebrow){font-size:15px}.catalog-heading{display:block}.catalog-heading>p{margin-top:6px}.footer-inner{width:min(100% - 32px,1180px);grid-template-columns:1fr;gap:24px}.footer-legal{padding:14px 16px}.steps{margin-bottom:18px}}
@media(max-width:520px){.product-card{grid-template-columns:1fr}.hero-product-brand{max-width:270px}.platform-brand{padding-right:12px}.brand-context span{font-size:12px}.brand-context small{font-size:8px}}
.footer-brand img{width:210px;height:62px;padding:8px 10px;border-radius:8px;background:#fff;filter:none;opacity:1}
.consent-panel{margin-top:20px}.consent-panel h2{margin-top:0}.consent-row{align-items:flex-start;margin:14px 0;line-height:1.45}.consent-row input{flex:0 0 19px;margin-top:2px}.consent-row a{color:#a84e1d}.legal-draft{padding:12px 14px;border:1px solid #e5ad71;border-radius:9px;background:#fff5e9;color:#7b4318;font-size:12px;font-weight:750}.legal-page{width:min(850px,calc(100% - 32px));margin:40px auto}.legal-page h1{color:var(--navy)}.legal-meta{color:var(--muted);font-size:12px}.legal-content{margin-top:26px;color:#343944;line-height:1.65;white-space:normal}
