/* Proporzioni rilevate dal riferimento: contenitore 1280px, Inter, titoli 48/60/72px. */
.home-body{background:#164f50;color:#f2f2f2}.content-width{width:100%;max-width:1280px;margin:auto}.editorial-section{padding:80px 24px;position:relative}.section-label{font-family:Consolas,monospace;font-size:12px;line-height:16px;letter-spacing:3px;color:#88dc7f;text-transform:uppercase}.home-body h2{font-size:60px;font-weight:600;line-height:1;letter-spacing:-1.5px}.home-body h3{font-size:24px;font-weight:200;line-height:32px;letter-spacing:0}.home-body p{font-size:18px;line-height:28px;color:#c0d1d0}.home-body .section-label{font-size:12px;line-height:16px;color:#88dc7f}.light-italic{font-style:italic;font-weight:200;color:#b6d1d1}
/* Il problema segue la composizione a due colonne del blocco About del riferimento. */
.problem-section{padding-top:112px;padding-bottom:96px;background:linear-gradient(#091e20 0,#164f50 95px);margin-top:-1px}.problem-layout{display:grid;grid-template-columns:5fr 7fr;align-items:center;gap:48px}.problem-board{position:relative;padding:26px;border:1px solid #ffffff1a;border-radius:24px;background:linear-gradient(#0c414977 2px,transparent 2px),linear-gradient(90deg,#0c414977 2px,transparent 2px),radial-gradient(ellipse at 40% 50%,#347a61,#215f56);background-size:64px 64px,64px 64px,auto;box-shadow:0 0 70px #88dc7f0f}.problem-board .problem-grid{display:flex;flex-direction:column;gap:14px}.problem-card{padding:24px;background:#0c302de6;border-radius:16px;backdrop-filter:blur(10px)}.problem-card h3{margin-bottom:8px}.problem-card p{font-size:14px;line-height:22px;color:#c7d9d2}.problem-copy .section-label{margin-bottom:16px}.problem-copy .section-intro{margin-top:24px;max-width:576px}.problem-copy h2{font-size:60px;line-height:1.02}
/* Titolo bianco e scritta manuale sovrapposta, come nel riferimento. */
.heading-lockup{position:relative;text-align:center;display:table;margin:0 auto 80px;max-width:100%}.heading-lockup h2{position:relative;z-index:1}.home-body .handwritten{position:absolute;z-index:2;left:50%;bottom:-40px;transform:translateX(-50%) rotate(-5deg);margin:0;white-space:nowrap;font-family:Caveat,cursive;font-size:64px;line-height:1;font-weight:600;letter-spacing:-1.5px;color:#73da7b;text-transform:uppercase;pointer-events:none}
/* Servizi: dimensioni e pesi della tipografia misurati nel sito originale. */
.offer-section{padding-top:24px;padding-bottom:88px;background:#164f50}.offer-section h2{font-size:48px;line-height:48px;letter-spacing:-1.2px}.editorial-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.offer-grid article{padding:24px;border-radius:16px;background:#0006}.offer-grid h3{margin-bottom:12px}.item-index{display:inline;font-family:Consolas,monospace;font-size:14px;color:#88dc7f;font-weight:400;margin-right:8px;white-space:nowrap}.offer-grid p{font-size:14px;line-height:22px;color:#bccdca}
/* Analisi: composizione del blocco Case Studies, senza immagini o risultati inventati. */
.example-section{background:#000;padding-top:96px;padding-bottom:64px;isolation:isolate}.example-section::before{content:'';position:absolute;z-index:-1;top:-45px;left:0;right:0;height:90px;background:linear-gradient(transparent,#000 65%);pointer-events:none}.example-section h2{font-size:72px;line-height:72px;letter-spacing:-1.8px}.example-section .handwritten{font-size:60px;bottom:-38px}.example-section .section-intro{max-width:650px;margin:0 auto 64px;text-align:center;font-size:16px;line-height:26px}.analysis-pages{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.analysis-placeholder{position:relative;display:flex;align-items:center;justify-content:center;aspect-ratio:1;margin:0;min-width:0;overflow:hidden;border-radius:16px;background:radial-gradient(ellipse at 20% 0,#39766999,transparent 70%),linear-gradient(145deg,#204a43,#081e1d);border:1px solid #ffffff0d}.analysis-placeholder::after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#000a);pointer-events:none}.page-label{position:absolute;top:32px;left:32px;font-size:12px;letter-spacing:1.2px;color:#e1e9e4;z-index:1}.page-symbol{display:block;width:70px;height:95px;border:1px solid #9ab9a66b;transform:rotate(-7deg);box-shadow:12px 12px 0 #a4c7b20a}.page-symbol::before,.page-symbol::after{content:'';position:absolute;left:15px;right:15px;top:32px;height:1px;background:#a5c6b078}.page-symbol::after{top:48px}.analysis-placeholder figcaption{position:absolute;z-index:1;left:32px;bottom:32px;font-size:20px;font-weight:200;color:#c2d3ca}.example-section>.content-width{text-align:center}.editorial-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border-radius:999px;padding:16px 32px;background:#1b2120;color:white;font-size:14px;font-weight:500;line-height:20px;margin-top:32px;transition:transform .2s,background .2s}.editorial-button:hover{background:#30473c;transform:scale(1.03)}
/* Metodo: fondo, schede e proporzioni del blocco Testimonials. */
.process-section{padding-top:64px;padding-bottom:64px;background:#21786b;isolation:isolate}.process-section::before{content:'';position:absolute;z-index:-1;left:0;right:0;top:-48px;height:96px;background:linear-gradient(transparent,#21786b 70%);pointer-events:none}.process-section .content-width{max-width:1152px}.process-section h2{font-size:48px;line-height:48px;letter-spacing:-1.2px}.process-steps{list-style:none;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;padding:0;margin:0}.process-steps li{display:flex;flex-direction:column;align-items:flex-start;padding:28px 24px;border-radius:16px;background:#164f50}.step-number{order:3;display:flex;align-items:center;justify-content:center;width:42px;height:42px;border-radius:50%;background:#ffffff1a;color:#c5dad4;font-size:14px;margin-top:32px}.process-steps h3{font-size:22px;margin-bottom:14px}.process-steps p{font-size:16px;line-height:26px;color:#d0e1dc}
/* Costi: nessun risultato fittizio, tre condizioni nelle schede del modello Stats. */
.pricing-section{padding-top:112px;padding-bottom:96px;background:#000}.pricing-section h2{font-size:60px;line-height:60px;letter-spacing:-1.5px;text-align:center}.pricing-section .handwritten{font-size:54px;bottom:-36px}.pricing-points{list-style:none;padding:0;margin:0;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.pricing-points li{padding:28px;text-align:center;background:#164f50;border:1px solid #ffffff1a;border-radius:16px;font-size:18px;line-height:28px;color:#ceded9}.home-body .pricing-close{margin:48px auto 0;max-width:768px;text-align:center;font-size:24px;line-height:34px;font-weight:200;color:#88dc7f}
/* Contatto: titolo e invito centrati, come nella chiusura del riferimento. */
.about-contact-section{padding-top:96px;padding-bottom:64px;background:#155051}.contact-layout{max-width:768px}.contact-copy{text-align:center}.contact-copy .section-label{margin-bottom:20px}.contact-copy h2{font-size:60px;line-height:60px;letter-spacing:-1.5px}.contact-copy .section-intro{max-width:650px;margin:24px auto 0;font-size:18px;line-height:28px;color:#c4d7d4}.home-body .form-notice{margin:28px auto 0;max-width:540px;padding:16px 20px;border:1px solid #ffffff20;border-radius:12px;background:#00000012;text-align:left}.form-notice strong{font-size:12px;font-weight:500;color:#c7d9d4}.home-body .form-notice p{font-size:12px;line-height:20px;margin-top:5px;color:#b2ccc6}.contact-form-wrap{max-width:640px;margin:40px auto 0;scroll-margin-top:24px}.editorial-footer{display:flex;justify-content:center;align-items:center;flex-wrap:wrap;gap:12px 30px;padding:32px 24px;border-top:1px solid #ffffff1a;background:#155051;color:#a7c4bf;font-size:12px}.editorial-footer a:first-child{font-weight:500}.editorial-footer a:last-child{overflow-wrap:anywhere}.editorial-footer a:hover{color:white}
@media(max-width:1100px){.problem-copy h2{font-size:48px;line-height:50px}.problem-layout{gap:32px}.problem-board{padding:18px}.problem-card{padding:20px}.process-steps{grid-template-columns:repeat(2,minmax(0,1fr))}.example-section h2{font-size:60px;line-height:64px}}
@media(max-width:760px){.editorial-section{padding-left:24px;padding-right:24px}.home-body h2{font-size:36px;line-height:40px;letter-spacing:-.9px}.home-body p{font-size:16px;line-height:26px}.problem-section{padding-top:80px;padding-bottom:64px}.problem-layout{grid-template-columns:1fr;gap:40px}.problem-board{padding:20px}.problem-card{padding:20px}.problem-card h3{font-size:23px;line-height:28px}.problem-card p{font-size:14px;line-height:22px}.problem-copy h2{font-size:36px;line-height:40px}.problem-copy .section-intro{margin-top:22px}.heading-lockup{margin-bottom:66px}.home-body .handwritten{font-size:48px;bottom:-31px;letter-spacing:-1px}.offer-section{padding-top:16px;padding-bottom:72px}.offer-section h2{font-size:40px;line-height:44px;letter-spacing:-1px}.editorial-grid{grid-template-columns:1fr;gap:20px}.offer-grid article{padding:24px}.offer-grid h3{font-size:24px;line-height:32px}.offer-grid p{font-size:14px;line-height:23px}.example-section{padding-top:64px;padding-bottom:64px}.example-section h2{font-size:42px;line-height:46px;letter-spacing:-1px}.example-section .handwritten{font-size:39px;bottom:-28px}.example-section .section-intro{font-size:14px;line-height:23px;margin-bottom:32px}.analysis-pages{grid-template-columns:1fr;gap:20px;max-width:480px;margin:auto}.page-label{top:24px;left:24px}.analysis-placeholder figcaption{left:24px;bottom:24px;font-size:20px}.editorial-button{padding:16px 24px;font-size:13px;max-width:100%}.process-section{padding-top:56px;padding-bottom:56px}.process-section h2{font-size:36px;line-height:40px;letter-spacing:-.9px}.process-steps{grid-template-columns:1fr;gap:18px}.process-steps li{padding:28px}.process-steps h3{font-size:24px}.process-steps p{font-size:16px}.step-number{margin-top:24px}.pricing-section{padding-top:80px;padding-bottom:72px}.pricing-section h2{font-size:38px;line-height:42px;letter-spacing:-1px}.pricing-section .handwritten{font-size:43px;bottom:-30px}.pricing-points{grid-template-columns:1fr;gap:18px}.pricing-points li{font-size:17px;line-height:27px;padding:26px}.home-body .pricing-close{font-size:21px;line-height:31px;margin-top:32px}.about-contact-section{padding-top:64px;padding-bottom:48px}.contact-copy h2{font-size:38px;line-height:42px;letter-spacing:-1px}.contact-copy .section-label{font-size:10px;letter-spacing:2px}.contact-copy .section-intro{font-size:16px;line-height:26px}.home-body .form-notice p{font-size:12px;line-height:20px}.editorial-footer{padding:28px 24px;flex-direction:column;gap:10px}.contact-form-wrap{margin-top:32px}}
@media(max-width:390px){.editorial-section{padding-left:20px;padding-right:20px}.home-body h2{font-size:34px;line-height:38px}.example-section .handwritten{font-size:34px}.home-body .handwritten{max-width:100%}.problem-board{padding:16px}}

/* Metodo: percorso collegato con quattro illustrazioni originali. */
.process-section { padding-top: 80px; padding-bottom: 80px; background: radial-gradient(ellipse at 50% 35%, #2b8b76, transparent 65%), #21786b; }
.process-section .content-width { max-width: 1280px; }
.process-section .heading-lockup { margin-bottom: 70px; }
.process-steps { position: relative; gap: 22px; }
.process-steps::before { content: ''; position: absolute; top: 25px; left: 26px; right: 26px; height: 1px; background: linear-gradient(90deg, #88dc7f99, #b7eccb55); }
.process-steps li { position: relative; display: block; min-width: 0; padding: 0; border-radius: 0; background: transparent; }
.process-steps .step-number { position: relative; z-index: 1; order: initial; width: 52px; height: 52px; margin: 0 0 26px; border: 1px solid #a4e4b266; background: #1b655b; color: #b6efab; font-family: Consolas, monospace; font-size: 16px; box-shadow: 0 0 0 8px #21786b; }
.step-card { position: relative; min-height: 328px; padding: 24px; overflow: hidden; border: 1px solid #c1efd324; border-radius: 20px; background: linear-gradient(145deg, #185351, #103e3d); box-shadow: 0 15px 35px #092e2c1c; transition: transform .25s, border-color .25s, box-shadow .25s; }
.process-steps li:nth-child(even) .step-card { margin-top: 22px; }
.step-card:hover { transform: translateY(-5px); border-color: #88dc7f88; box-shadow: 0 20px 40px #092e2c44; }
.step-visual { display: flex; align-items: center; justify-content: center; height: 130px; margin: -24px -24px 25px; border-bottom: 1px solid #b7e9cc18; background: radial-gradient(ellipse at 50% 60%, #88dc7f16, transparent 70%), linear-gradient(#ffffff03 1px, transparent 1px), linear-gradient(90deg, #ffffff03 1px, transparent 1px); background-size: auto, 24px 24px, 24px 24px; }
.step-visual svg { width: 150px; height: 104px; stroke: #d5e7dc; stroke-width: 1.4; stroke-linecap: round; stroke-linejoin: round; }
.step-visual .visual-muted { stroke: #7dbaaa66; }
.step-visual .visual-accent { stroke: #88dc7f; stroke-width: 2; }
.step-card h3 { font-weight: 400; font-size: 22px; margin-bottom: 12px; }
.step-card p { font-size: 15px; line-height: 25px; color: #c1d8d1; }
.process-footer { text-align: center; margin-top: 48px; }
.process-footer .editorial-button { background: white; color: #163a35; margin-top: 0; }
.process-footer .editorial-button:hover { background: #e0f1e4; }
@media (max-width: 1100px) {
 .process-steps { gap: 28px; }
 .process-steps::before { display: none; }
 .process-steps li:nth-child(even) .step-card { margin-top: 0; }
 .step-card { min-height: 300px; }
}
@media (max-width: 760px) {
 .process-section { padding-top: 64px; padding-bottom: 64px; }
 .process-section .heading-lockup { margin-bottom: 62px; }
 .process-steps { gap: 25px; }
 .process-steps::before { display: block; top: 25px; bottom: 25px; left: 20px; right: auto; width: 1px; height: auto; background: linear-gradient(#88dc7f99, #88dc7f22); }
 .process-steps li { padding-left: 58px; }
 .process-steps .step-number { position: absolute; left: 0; top: 23px; width: 42px; height: 42px; font-size: 13px; margin: 0; box-shadow: 0 0 0 5px #21786b; }
 .step-card { min-height: 0; padding: 23px; border-radius: 18px; }
 .step-visual { height: 105px; margin: -23px -23px 22px; }
 .step-visual svg { height: 90px; width: 132px; }
 .step-card h3 { font-size: 23px; line-height: 29px; }
 .step-card p { font-size: 15px; line-height: 24px; }
 .process-footer { margin-top: 36px; }
 .process-footer .editorial-button { font-size: 13px; padding: 16px 22px; }
}
@media (max-width: 360px) {
 .process-steps li { padding-left: 48px; }
 .step-card { padding: 20px; }
 .step-visual { margin-left: -20px; margin-right: -20px; margin-top: -20px; }
 .step-card h3 { font-size: 21px; }
}

/* Chiusura del prezzo nello stesso stile dei titolini scritti a mano. */
.home-body .pricing-close {
  font-family: Caveat, cursive;
  font-size: clamp(34px, 4.2vw, 60px);
  font-weight: 600;
  line-height: 1.12;
  letter-spacing: -.8px;
  color: #73da7b;
  max-width: 980px;
  margin: 55px auto 0;
  padding: 0 8px;
  text-align: center;
  text-wrap: balance;
  transform: rotate(-3deg);
}
@media (max-width: 760px) {
  .home-body .pricing-close {
    font-size: clamp(32px, 8.8vw, 44px);
    line-height: 1.15;
    letter-spacing: -.4px;
    margin-top: 38px;
    transform: rotate(-2deg);
  }
}

/* Tipografia del metodo coerente con le schede dei servizi. */
.process-steps .step-card h3 {
  font-family: Inter, system-ui, sans-serif;
  font-size: 24px;
  font-weight: 200;
  line-height: 32px;
  letter-spacing: 0;
  margin-bottom: 12px;
}
.process-steps .step-card p {
  font-family: Inter, system-ui, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 22px;
  letter-spacing: 0;
  color: #bccdca;
}
@media (max-width: 760px) {
  .process-steps .step-card p { line-height: 23px; }
}

/* Immagini del metodo: intere, senza ritagli e apribili nel formato originale. */
.analysis-example { margin: 0; min-width: 0; text-align: left; }
.analysis-image-link { position: relative; display: block; overflow: hidden; border: 1px solid #ffffff24; border-radius: 16px; background: #070c08; }
.analysis-image-link img { display: block; width: 100%; height: auto; aspect-ratio: 4 / 5; object-fit: contain; }
.image-open { position: absolute; right: 12px; bottom: 12px; padding: 8px 12px; border: 1px solid #ffffff24; border-radius: 30px; color: white; background: #0b241fe8; font-size: 11px; line-height: 16px; opacity: 0; transition: opacity .2s; }
.analysis-image-link:hover .image-open, .analysis-image-link:focus-visible .image-open { opacity: 1; }
.analysis-example figcaption { padding: 15px 2px 0; font-size: 16px; line-height: 24px; color: #d1e0d9; font-weight: 400; }
@media (hover: none) { .image-open { opacity: 1; } }
@media (max-width: 760px) { .analysis-pages { gap: 30px; } .image-open { opacity: 1; font-size: 10px; } }

.example-section .editorial-button{background:#fff;color:#111}
.example-section .editorial-button:hover{background:#dbece5;color:#111}
