@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root { --ink:#2a1b24; --muted:#796971; --red:#d72f49; --red-deep:#aa1d37; --pale:#fff1f3; --border:#f1e0e4; --white:#fff; --shadow:0 20px 70px rgba(138,42,64,.095); --radius:22px; --max:1170px; }
* { box-sizing:border-box; }
html { scroll-behavior:smooth; }
body { margin:0; color:var(--ink); font:16px/1.65 'DM Sans',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; background:#fff; -webkit-font-smoothing:antialiased; }
a { color:inherit; text-decoration:none; }
button,input,textarea,select { font:inherit; }
button { cursor:pointer; }
img,svg { max-width:100%; }
::selection { background:#ffd3db; color:#702337; }
.container { width:min(var(--max),calc(100% - 56px)); margin:auto; }
.skip-link { position:absolute; left:-9999px; top:10px; background:#fff; padding:10px; z-index:200; }
.skip-link:focus { left:10px; }
.sr-only { position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0; }
.icon { width:20px; height:20px; flex:0 0 auto; display:inline-block; fill:none; stroke:currentColor; stroke-width:1.9; stroke-linecap:round; stroke-linejoin:round; vertical-align:middle; }
.icon.sm { width:17px; height:17px; }
.icon.lg { width:25px;height:25px; }
.topbar { background:linear-gradient(90deg,#fdf1f3,#fef8f9); border-bottom:1px solid #f6ebed; font-size:12px; letter-spacing:.01em; }
.topbar .container { display:flex; justify-content:center; gap:12px; padding:9px 0; color:#8b666c; align-items:center; text-align:center; }
.topbar .line { height:12px;width:1px;background:#e6d3d6; }
.site-header { position:relative; z-index:30; background:rgba(255,255,255,.96); border-bottom:1px solid rgba(228,234,244,.9); }
.nav-wrap { height:88px;display:flex; align-items:center;justify-content:space-between;gap:26px; }
.logo { display:inline-flex;align-items:center;gap:12px; font-family:Manrope,sans-serif; font-size:19px;font-weight:800;letter-spacing:-.055em;white-space:nowrap; }
.brand-icon { height:39px;width:39px;border-radius:12px;background:linear-gradient(135deg,#ef7181,#c91f3e 80%);display:grid;place-items:center;box-shadow:0 8px 16px rgba(138,42,64,.22);color:#fff; }
.brand-icon .icon { width:24px;height:24px;stroke-width:2.1; }
.brand-name span { color:var(--red); }
.desktop-nav { display:flex;align-items:center;gap:28px; }
.desktop-nav a { color:#75575c;font-size:13px;font-weight:700; transition:color .2s; }
.desktop-nav a:hover,.desktop-nav a[aria-current=page] { color:var(--red); }
.header-actions { display:flex;align-items:center;gap:14px; }
.btn { display:inline-flex; align-items:center;justify-content:center;gap:10px; padding:13px 21px; border-radius:12px; background:var(--red);color:#fff;font-size:13px;line-height:1.45;font-weight:800;border:1px solid transparent;box-shadow:0 9px 20px rgba(138,42,64,.17); transition:transform .2s,background .2s,box-shadow .2s; white-space:nowrap; }
.btn:hover { transform:translateY(-2px);background:var(--red-deep);box-shadow:0 13px 26px rgba(138,42,64,.22); }
.btn.secondary { color:#5d3239;background:#fff;border:1px solid #efdfe1;box-shadow:none; }
.btn.secondary:hover { border-color:#e7b8c0;background:#fef7f8; }
.btn.ghost { color:var(--red);background:#fcedf0;box-shadow:none; }
.btn.sm { padding:10px 16px;border-radius:10px;font-size:12px; }
.btn.wide { width:100%; }
.btn.is-disabled { pointer-events:none;cursor:not-allowed;background:#c3a8ac;color:#fff;box-shadow:none;transform:none; }
.mobile-trigger { display:none;background:transparent;border:0;padding:8px;color:var(--ink); }
.mobile-nav { display:none; }
.hero { position:relative; overflow:hidden; padding:95px 0 88px;background:radial-gradient(circle at 75% 24%,#fbebed 0,#fef7f8 35%,#fff 75%); }
.hero::before { content:'';position:absolute;inset:0;pointer-events:none;opacity:.4;background-image:radial-gradient(#e3b2ba 1px,transparent 1px);background-size:31px 31px;mask-image:linear-gradient(to right,transparent 40%,#000 100%); }
.hero-grid { display:grid;grid-template-columns:1.02fr 1fr;gap:54px;align-items:center;position:relative; }
.eyebrow { display:inline-flex;align-items:center;gap:9px;color:#bf2742;background:#fcebee;border:1px solid #f9dee2;font-size:11px;letter-spacing:.11em;text-transform:uppercase;padding:7px 12px;border-radius:100px;font-weight:800; }
.eyebrow.white { background:#fff;color:var(--red); }
.eyebrow-dot { width:7px;height:7px;border-radius:50%;background:#da3d58;box-shadow:0 0 0 4px #f9dfe3; }
h1,h2,h3,h4,p { margin-top:0; }
h1,h2,h3,h4 { font-family:Manrope,system-ui,sans-serif;letter-spacing:-.052em;line-height:1.16; }
h1 { font-size:clamp(42px,5.4vw,69px); font-weight:800; margin:23px 0 25px; }
h1 .accent,h2 .accent { color:var(--red); }
h2 { font-size:clamp(30px,3.6vw,45px);font-weight:800; margin:14px 0 16px; }
h3 { font-size:21px; font-weight:800; margin-bottom:12px; }
.lead { font-size:17px;line-height:1.85;color:#926c72;max-width:545px; }
.hero-buttons { display:flex;flex-wrap:wrap;gap:12px;margin-top:34px; }
.hero-facts { display:flex;flex-wrap:wrap;gap:20px;margin-top:40px;color:#987076;font-size:12px; }
.hero-facts span { display:flex;align-items:center;gap:8px; }
.hero-facts .icon { color:#ce4055;width:15px;height:15px; }
.hero-visual { position:relative;min-height:500px;display:grid;place-items:center; }
.orbit { position:absolute;left:0;right:0;top:4%;height:96%;border-radius:50%;border:1px solid #fae6e9;transform:rotate(-18deg); }
.orbit.second { left:12%;right:10%;top:13%;height:78%;border-style:dashed; }
.blur-blob { position:absolute;inset:11% 4%;background:radial-gradient(circle,#f9dadf,#fcedf0 55%,transparent 73%);border-radius:50%;filter:blur(14px); }
.mock-app { width:min(100%,490px);position:relative;border-radius:20px;box-shadow:0 28px 70px rgba(138,42,64,.17),0 4px 14px rgba(138,42,64,.08);border:1px solid #f6e1e5;background:#fff;overflow:hidden;transform:rotate(-2deg); }
.mock-top { height:47px;background:#fefbfb;border-bottom:1px solid #f6eff0;display:flex;align-items:center;padding:0 18px;justify-content:space-between; }
.mock-dots { display:flex;gap:5px; }
.mock-dots i { width:8px;height:8px;background:#ebdcdf;border-radius:50%; }
.mock-dots i:first-child { background:#ff9999; }.mock-dots i:nth-child(2) { background:#ffd19a; }.mock-dots i:nth-child(3) { background:#a5dfbd; }
.mock-url { width:180px;max-width:50%;height:19px;background:#f8f2f3;border-radius:30px; }
.mock-content { padding:28px; }
.mock-breadcrumb { font-size:11px;color:#b3989d;font-weight:800;margin-bottom:21px; }
.mock-title { font-family:Manrope,sans-serif;font-size:19px;font-weight:800;letter-spacing:-.04em;line-height:1.4;margin-bottom:5px; }
.mock-subtitle { font-size:12px;color:#b09499;margin-bottom:21px; }
.mock-file-row { display:flex;align-items:center;gap:15px;padding:16px;border:1px solid #f6ebed;border-radius:15px;background:#fefbfb; }
.mock-file-icon { height:60px;width:54px;border-radius:12px;background:#fcebee;display:grid;place-items:center;color:#cb3550; }
.mock-file-meta { flex:1; min-width:0; }.mock-file-meta strong { display:block;font-size:13px; }.mock-file-meta small { display:block;color:#bb9fa4;font-size:11px;margin-top:4px; }
.mock-icon-action { display:grid;place-items:center;color:#fff;background:#d62d48;border-radius:10px;width:35px;height:35px; }
.mock-section-title {font-weight:800;font-size:12px;margin:25px 0 12px;}
.mock-step {display:flex;align-items:center;gap:12px;padding:9px 0;border-top:1px solid #f7f1f2;color:#946e74;font-size:11px;font-weight:700;}
.mock-step span:first-child {display:grid;place-items:center;color:#c72a44;background:#fcedf0;width:26px;height:26px;border-radius:8px;font-weight:900;}
.mock-float { position:absolute;z-index:2;display:flex;align-items:center;gap:11px;background:#fff;box-shadow:0 17px 48px rgba(138,42,64,.14);border:1px solid #f8edef;border-radius:14px;padding:13px 17px;transform:rotate(4deg);font-size:11px;font-weight:800;color:#76575c; }
.mock-float .icon {color:#c92b45;}.mock-float.a {top:13%;right:-6%;}.mock-float.b {bottom:7%;left:-6%;transform:rotate(-6deg);}
.section { padding:94px 0; }.section.soft { background:#fef9fa; }.section.top-border { border-top:1px solid #f7f0f1; }
.section-head { max-width:680px;margin:0 auto 44px;text-align:center; }
.section-head p { color:var(--muted);line-height:1.85; }
.grid-3 {display:grid;grid-template-columns:repeat(3,1fr);gap:22px;}
.grid-4 {display:grid;grid-template-columns:repeat(4,1fr);gap:18px;}
.feature-card {padding:30px 27px;border:1px solid var(--border);background:#fff;border-radius:var(--radius);box-shadow:0 8px 30px rgba(138,42,64,.035);transition:transform .2s,box-shadow .2s,border .2s;}
.feature-card:hover {transform:translateY(-5px);border-color:#eed4d9;box-shadow:var(--shadow);}
.feature-icon {width:53px;height:53px;border-radius:17px;background:#fcedf0;color:var(--red);display:grid;place-items:center;margin-bottom:24px;}
.feature-icon.rose {background:#fff0f2;color:#bd4860;}.feature-icon.ruby {background:#fff1f3;color:#b84456;}.feature-icon.peach {background:#fff3ec;color:#c86e55;}
.feature-card h3 {font-size:18px;}.feature-card p {margin:0;color:var(--muted);font-size:14px;line-height:1.9;}
.text-link {font-size:13px;font-weight:800;color:var(--red);display:inline-flex;align-items:center;gap:7px;margin-top:19px;}
.logo-strip {padding:30px 0;border-bottom:1px solid #f8eff0;background:#fff;}
.logo-strip-inner {display:flex;justify-content:center;align-items:center;gap:52px;flex-wrap:wrap;font-size:12px;color:#b79da2;}
.logo-strip-inner strong {font-family:Manrope,sans-serif;letter-spacing:-.03em;font-size:14px;color:#a7848a;}
.section-split {display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;}
.check-list {list-style:none;padding:0;margin:25px 0;}.check-list li {display:flex;align-items:flex-start;gap:10px;color:#8c686e;margin:13px 0;font-size:14px;}.check-list .icon {color:var(--red);margin-top:2px;}
.download-preview {border:1px solid #f5e9eb;background:#fff;border-radius:28px;padding:32px;box-shadow:0 24px 70px rgba(138,42,64,.075);position:relative;}
.download-preview:before {position:absolute;content:'';width:140px;height:140px;border-radius:50%;background:#f9dde2;filter:blur(55px);right:-15px;top:-15px;z-index:-1;}
.version-line {display:flex;align-items:center;gap:15px;padding-bottom:24px;border-bottom:1px solid #f4edee;margin-bottom:22px;}
.big-file-icon {width:70px;height:74px;border-radius:17px;background:linear-gradient(135deg,#f2b4be,#e14e66);display:grid;place-items:center;color:#fff;box-shadow:0 11px 30px #f5c8cf;}
.big-file-icon .icon {width:35px;height:35px;}
.version-line strong {display:block;font-size:18px;font-weight:800;}.version-line small {color:#b2969b;font-size:12px;}
.detail-row {display:flex;justify-content:space-between;align-items:center;gap:20px;padding:10px 0;color:#987379;font-size:13px;}
.detail-row strong {font-size:13px;color:#533036;text-align:right;}
.preview-progress {height:9px;border-radius:20px;background:#fcecef;margin:16px 0 4px;overflow:hidden;}
.preview-progress div {height:100%;width:67%;background:linear-gradient(90deg,#ed99a7,#da425c);border-radius:20px;}
.steps {display:grid;grid-template-columns:repeat(3,1fr);gap:24px;position:relative;}.step-card {padding:30px 27px;border-radius:20px;background:#fff;border:1px solid var(--border);position:relative;}
.step-no {font-family:Manrope,sans-serif;font-weight:800;font-size:13px;width:40px;height:40px;border-radius:13px;background:var(--red);color:#fff;display:grid;place-items:center;margin-bottom:23px;box-shadow:0 8px 20px #f9dce1;}
.step-card h3 {font-size:18px;}.step-card p {color:#9f7c82;font-size:14px;line-height:1.9;margin-bottom:0;}
.cta-panel {border-radius:28px;padding:60px 72px;background:radial-gradient(circle at 90% 0%,rgba(138,42,64,.3),transparent 35%),linear-gradient(120deg,#992438,#d73e57);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:44px;overflow:hidden;position:relative;}
.cta-panel h2 {color:#fff;max-width:600px;font-size:36px;}.cta-panel p {color:#f9dee2;margin-bottom:0;max-width:550px;}
.cta-panel .btn {background:#fff;color:#b82b43;box-shadow:none;}.cta-panel .btn:hover {background:#fcecef;}
.faq-list {max-width:850px;margin:0 auto;}.faq-list details {border:1px solid #f3e8ea;background:#fff;border-radius:14px;margin:12px 0;box-shadow:0 6px 20px rgba(138,42,64,.025);}
.faq-list summary {padding:20px 24px;display:flex;justify-content:space-between;gap:14px;align-items:center;cursor:pointer;font-family:Manrope,sans-serif;font-size:14px;font-weight:800;list-style:none;}
.faq-list summary::-webkit-details-marker {display:none;}.faq-list summary:after {content:'+';color:var(--red);font-size:23px;line-height:1;}.faq-list details[open] summary:after {content:'−';}
.faq-list details p {padding:0 24px 22px;color:#987379;font-size:14px;line-height:1.9;margin:0;}
.site-footer {background:#31161a;color:#d9c4c8;padding:70px 0 30px;}
.footer-grid {display:grid;grid-template-columns:1.6fr 1fr 1fr 1fr;gap:40px;}
.footer-brand .logo {color:#fff;}.footer-brand p {font-size:13px;color:#b9989e;line-height:1.9;max-width:320px;margin:20px 0;}
.footer-links h4 {color:#fff;font-family:Manrope,sans-serif;font-size:13px;margin:3px 0 20px;letter-spacing:0;}
.footer-links a {display:block;color:#bca1a5;font-size:13px;margin:11px 0;transition:color .2s;}.footer-links a:hover {color:#fff;}
.footer-bottom {border-top:1px solid #502f35;margin-top:52px;padding-top:27px;display:flex;align-items:center;justify-content:space-between;gap:14px;color:#a28187;font-size:12px;}
.footer-bottom a:hover {color:#fff;}
.page-hero {padding:76px 0 68px;background:radial-gradient(circle at 80% 12%,#fcecef,transparent 41%),linear-gradient(#fef8f9,#fff);border-bottom:1px solid #f5eef0;text-align:center;}
.page-hero h1 {font-size:clamp(39px,5vw,58px);margin:20px auto 15px;max-width:850px;}.page-hero p {color:var(--muted);max-width:670px;margin:0 auto;font-size:16px;line-height:1.9;}
.breadcrumb {font-size:12px;color:#a6868b;margin-bottom:15px;}.breadcrumb a {color:#b95c6c;}
.content-card {background:#fff;border:1px solid #f3e7e9;border-radius:22px;padding:33px;box-shadow:0 10px 40px rgba(138,42,64,.035);}
.content-card h3 {font-size:19px;}
.content-card p,.content-card li {color:#957076;font-size:14px;line-height:1.9;}
.pill {font-size:11px;font-weight:800;padding:8px 11px;border:1px solid #f1e6e8;color:#9b767c;background:#fbf6f7;border-radius:999px;display:inline-flex;align-items:center;gap:6px;}
.pill.is-live {background:#effcf4;color:#1d9051;border-color:#d4f5df;}
.pill.is-live:before,.status-dot {content:'';width:7px;height:7px;background:#ab8188;border-radius:50%;display:inline-block;}
.pill.is-live:before {background:#28ac6a;}
.download-layout {display:grid;grid-template-columns:1.17fr .83fr;gap:30px;align-items:start;}
.download-main {padding:38px;}.download-head {display:flex;justify-content:space-between;gap:15px;flex-wrap:wrap;align-items:center;}.download-main h2 {font-size:29px;margin:20px 0 6px;}
.download-details {background:#fef9fa;border-radius:15px;padding:10px 19px;margin:27px 0;}.download-main .btn {font-size:15px;padding:17px;}
.inline-note {font-size:12px;color:#a7898e;line-height:1.7;margin:14px 0 0;}
.checksum {display:flex;align-items:center;gap:12px;background:#fcf8f9;border:1px solid #f3e7e9;padding:14px;border-radius:10px;word-break:break-all;font:12px/1.7 ui-monospace,Consolas,monospace;color:#8a666c;}
.checksum span {flex:1;}.copy-btn {border:1px solid #f0e0e2;background:#fff;border-radius:7px;color:#814b54;padding:5px 10px;font-size:12px;}
.notice {border:1px solid #fae3e7;background:#fdf5f6;color:#93636b;border-radius:12px;padding:15px 18px;font-size:13px;line-height:1.8;}
.notice svg {color:var(--red);vertical-align:middle;margin-right:5px;}
.guide-layout {display:grid;grid-template-columns:260px 1fr;gap:35px;align-items:start;}.guide-nav {position:sticky;top:20px;border:1px solid var(--border);border-radius:15px;padding:14px;background:#fff;}.guide-nav a {display:block;padding:11px 13px;border-radius:9px;color:#99757b;font-size:13px;font-weight:700;}.guide-nav a:hover {color:var(--red);background:#fdf4f5;}
.guide-block {padding:34px;border-radius:20px;border:1px solid var(--border);margin-bottom:18px;background:#fff;scroll-margin-top:20px;}.guide-block h2 {font-size:24px;}.guide-block p,.guide-block li {color:#956f75;font-size:14px;line-height:2;}.guide-label {display:inline-block;color:var(--red);font-size:11px;font-weight:900;letter-spacing:.1em;margin-bottom:15px;}
.code-line {background:#3d191f;color:#f7d3d9;border-radius:11px;padding:17px 20px;overflow:auto;font-size:12px;line-height:1.7;}
.contact-layout {display:grid;grid-template-columns:1.1fr .9fr;gap:32px;}.field {margin-bottom:18px;}.field label {display:block;font-size:12px;font-weight:800;color:#7c565c;margin-bottom:8px;}.field input,.field select,.field textarea {width:100%;border:1px solid #f0e2e4;border-radius:11px;padding:14px 15px;color:var(--ink);outline:0;background:#fff;transition:border-color .2s,box-shadow .2s;}.field :is(input,select,textarea):focus {border-color:var(--red);box-shadow:0 0 0 4px #fbeaed;}.field textarea {min-height:145px;resize:vertical;}.form-feedback {font-size:13px;margin-top:15px;color:#29794d;}.form-feedback.notice-error {color:#b55a3b;}
.prose {max-width:850px;margin:0 auto;}.prose h2 {font-size:24px;margin-top:35px;}.prose h3 {font-size:18px;margin-top:26px;}.prose p,.prose li {color:#8a666c;font-size:14px;line-height:2;}.prose a {color:var(--red);text-decoration:underline;}.prose ul {padding-left:21px;}
.reveal {opacity:1;transform:none;transition:transform .65s,opacity .65s;}
@media (prefers-reduced-motion: reduce){html{scroll-behavior:auto}.reveal{opacity:1;transform:none;transition:none}.btn,.feature-card{transition:none}}
@media (max-width:1100px) {.desktop-nav {gap:15px;}.desktop-nav a {font-size:12px;}.hero-grid{gap:25px;}.mock-float.a{right:0}.mock-float.b{left:0}}
@media (max-width:930px) {.desktop-nav,.header-actions .btn{display:none;}.mobile-trigger {display:block;}.nav-wrap{height:72px;}.mobile-nav{display:none;padding:6px 28px 24px;background:#fff;border-top:1px solid var(--border);}.mobile-nav.is-open{display:block;}.mobile-nav a{display:block;padding:12px 3px;border-bottom:1px solid #f7f1f2;font-weight:700;color:#7d575e;font-size:14px;}.hero-grid,.section-split,.download-layout,.contact-layout{grid-template-columns:1fr;}.hero{padding:64px 0;}.hero-grid{text-align:center;}.hero-grid .lead{margin-left:auto;margin-right:auto;}.hero-buttons,.hero-facts{justify-content:center;}.hero-visual{min-height:440px;}.grid-4{grid-template-columns:repeat(2,1fr);}.footer-grid{grid-template-columns:1.5fr 1fr 1fr;}.footer-grid .footer-links:last-child{grid-column:2/-1;}}
@media (max-width:670px) {.container{width:min(var(--max),calc(100% - 34px));}.topbar .container{font-size:10px;gap:8px;}.topbar .line{display:none;}.logo{font-size:17px;}.hero{padding:53px 0 58px;}h1{font-size:43px;}.hero-buttons{flex-direction:column;align-items:stretch;}.hero-buttons .btn{width:100%;}.hero-facts{justify-content:space-around;gap:12px;font-size:11px;}.hero-visual{min-height:360px;margin-top:17px;}.mock-app{width:96%;}.mock-content{padding:17px;}.mock-top{height:37px;}.mock-float{padding:9px 12px;}.mock-float.a{top:4%;right:-1%;}.mock-float.b{bottom:1%;left:-1%;}.mock-file-row{padding:11px;}.section{padding:66px 0;}.grid-3,.grid-4,.steps{grid-template-columns:1fr;}.feature-card{padding:25px;}.section-split{gap:32px;}.download-preview{padding:22px;}.cta-panel{padding:34px 27px;display:block;}.cta-panel h2{font-size:29px;}.cta-panel .btn{margin-top:25px;}.footer-grid{grid-template-columns:repeat(2,1fr);gap:27px;}.footer-brand{grid-column:1/-1;}.footer-grid .footer-links:last-child{grid-column:auto;}.footer-bottom{display:block;}.page-hero{padding:58px 0;}.page-hero h1{font-size:39px;}.download-main{padding:23px;}.guide-layout{grid-template-columns:1fr;}.guide-nav{position:static;}.guide-block{padding:23px;}.content-card{padding:24px;}}

/* Tema rosso italiano */
:root { --ink:#2a1b24; --muted:#796971; --red:#d72f49; --red-deep:#a91b35; --pale:#fff1f3; --border:#f1e0e4; --shadow:0 20px 70px rgba(138,42,64,.10); }

/* Migliore adattamento della navigazione per etichette italiane */
@media (min-width:931px) and (max-width:1140px) {
  .desktop-nav { gap:12px; }
  .desktop-nav a { font-size:12px; }
  .header-actions .btn.sm { padding:10px 12px; }
  .logo { font-size:17px; }
  .nav-wrap { gap:15px; }
}
@media (max-width:420px) {
  .hero-visual { min-height:390px; }
  .mock-step { gap:7px; font-size:10px; }
  .topbar .container { flex-wrap:wrap; gap:0 8px; line-height:1.45; }
  .mock-float { font-size:10px; }
}
