:root{--paper:#f8f6f1;--ink:#252724;--red:#b42b30;--muted:#65655e;--line:#d8d7cf}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Helvetica,sans-serif;font-size:16px;line-height:1.7}a{color:inherit;text-decoration:none}a:hover{color:var(--red)}button,input,textarea{font:inherit}button,a,input,textarea{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--red);outline-offset:5px}header{height:104px;margin:0 4.5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line)}.brand{display:flex;align-items:center;gap:12px;font-size:13px;line-height:1.25;letter-spacing:2px}.brand b{font-size:18px;letter-spacing:3.8px}.logo-crop{width:42px;height:42px;overflow:hidden;position:relative;border-radius:50%}.logo-crop img{position:absolute;width:390px;max-width:none;left:-175px;top:-16px}nav{display:flex;gap:40px;font-size:14px}nav a{padding:10px 0}nav a[aria-current]{border-bottom:2px solid var(--red)}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-weight:400;line-height:1.07;letter-spacing:-2px}h1{font-size:clamp(52px,5.3vw,82px);margin-bottom:28px}h2{font-size:clamp(38px,4vw,58px);margin-bottom:30px}h3{font-size:38px;letter-spacing:-1.5px}em{font-family:Georgia,'Times New Roman',serif;font-weight:400;color:var(--red)}p{color:var(--muted)}.eyebrow{display:block;font-size:10px;letter-spacing:2.1px;font-weight:700;margin-bottom:24px}.eyebrow i{display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--red);margin-right:8px}.hero{display:grid;grid-template-columns:1fr 1fr;gap:6%;padding:56px 4.5% 64px;align-items:center}.hero-copy{padding:6px 0}.hero p{font-size:16px;max-width:480px}.hero-image{position:relative;height:580px;background:#eeebe5;overflow:hidden;border-radius:2px 2px 80px 2px}.hero-image>img{width:100%;height:100%;object-fit:cover}.image-note{position:absolute;bottom:0;padding:17px 24px;width:100%;background:#272824e8;color:white;display:flex;justify-content:space-between;font-size:11px;letter-spacing:1px}.actions{display:flex;gap:12px;margin-top:32px;flex-wrap:wrap}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:30px;padding:15px 23px;background:var(--red);color:white;border:1px solid var(--red);font-size:12px;font-weight:600;line-height:1.5;transition:background .2s}.button:hover{background:#8b1f24;color:white}.button span{font-size:19px;font-weight:400}.button.outline{background:transparent;color:var(--ink);border-color:#bcbcb3}.button.outline:hover{background:#eeebe4}.ticker{padding:22px 4.5%;background:var(--ink);color:#f8f6f1;display:flex;align-items:center;justify-content:space-between;font-size:11px;letter-spacing:2px;gap:15px}.ticker i{font-size:24px;font-style:normal;color:#cb5c57}.section{padding:96px 7.5%}.intro{display:grid;grid-template-columns:1fr 2fr;gap:8%;align-items:start;border-bottom:1px solid var(--line)}.intro p{font-size:30px;line-height:1.45;color:var(--ink);letter-spacing:-.7px;margin:0}.section-heading{display:flex;justify-content:space-between;gap:30px;align-items:start;margin-bottom:30px}.section-heading h2{width:58%}.split{display:grid;grid-template-columns:1.1fr 1fr;gap:10%;align-items:center}.photo{overflow:hidden;background:#eae7df}.photo img{width:100%;height:100%;object-fit:cover;display:block}.split .photo{height:480px}.work-copy p,.finish-copy p{font-size:16px;line-height:1.85}.line-links{margin-top:35px;border-top:1px solid var(--line)}.line-links a{display:flex;justify-content:space-between;border-bottom:1px solid var(--line);padding:13px 0;font-size:13px}.finish{background:#eeece5;display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.finish .photo{height:500px}.gallery .image-open{padding:0;border:0;width:100%;position:relative;background:transparent}.image-open img{display:block;width:100%;height:auto}.image-open>span{position:absolute;right:20px;bottom:22px;color:white;background:var(--ink);padding:8px 16px;font-size:12px}.closing{max-width:800px;margin:48px 0 28px;font-size:28px;line-height:1.5;color:var(--ink)}footer{background:var(--ink);color:var(--paper);padding:65px 7.5% 24px;display:grid;grid-template-columns:1.2fr 1fr 1.3fr;gap:30px;font-size:13px}footer p{color:#cecec4}footer .eyebrow{color:#abae9f;font-size:9px}.footbrand{font-size:34px;line-height:1.2;letter-spacing:-1px}.footbrand em{color:#e07c78}.footbottom{grid-column:1/-1;display:flex;gap:30px;border-top:1px solid #4c4c45;padding-top:24px;margin-top:34px;font-size:11px;color:#bdbeb2}.footbottom span{margin-right:auto}.page-intro{padding-bottom:65px}.page-intro p{max-width:760px;font-size:21px}.page-intro h1{max-width:1000px}.about-row{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center;border-top:1px solid var(--line)}.about-row .photo{height:530px}.about-row.reverse{background:#eeece5}.reverse .photo{order:2}.quote{background:var(--red);color:#fff}.quote blockquote{font:italic 36px/1.4 Georgia;margin:0;max-width:1000px}.contact{display:grid;grid-template-columns:1fr 1fr;gap:10%;padding-top:10px}.contact-details>div{padding:25px 0;border-top:1px solid var(--line)}.contact-details a{display:block}.contact-email{overflow-wrap:anywhere}.contact-details p{font-size:21px;margin-bottom:10px}form{padding:35px;background:#eeece5}form h2{font-size:36px}label{display:block;font-size:12px;margin:18px 0 7px}input,textarea{border:1px solid #c9c8c0;width:100%;padding:12px;background:var(--paper);border-radius:0}textarea{resize:vertical}form .button{margin-top:20px;width:100%}.form-note{font-size:12px;line-height:1.6;margin:15px 0 0}#form-status{font-size:13px}.skip{position:absolute;top:-100px;padding:12px;background:white;z-index:10}.skip:focus{top:0}dialog{max-width:96vw;max-height:96vh;padding:12px;border:none;background:var(--paper)}dialog::backdrop{background:#000c}dialog img{max-width:90vw;max-height:85vh;object-fit:contain}dialog button{position:absolute;right:14px;top:14px;width:40px;height:40px;border:0;background:var(--ink);color:white;font-size:26px}
@media(min-width:1600px){body{max-width:1700px;margin:auto}}@media(max-width:850px){header{height:90px}nav{gap:18px}.brand{font-size:10px}.brand b{font-size:14px}.hero{gap:4%;padding-top:40px}.hero h1{font-size:54px}.hero-image{height:500px}.hero .actions{gap:10px}.hero .button{padding:13px 15px;font-size:11px}.section{padding:65px 5%}.intro p{font-size:24px}.split,.finish,.about-row{gap:6%}.ticker{font-size:9px;letter-spacing:1px}.contact{gap:5%}footer{padding:50px 5% 20px}.footbrand{font-size:27px}}
@media(max-width:600px){header{margin:0 5%;height:100px;align-items:center;flex-wrap:wrap;padding:14px 0}.logo-crop{width:34px;height:34px}.logo-crop img{transform:scale(.81);transform-origin:0 0;left:-142px;top:-13px}nav{gap:22px;font-size:12px}.brand{gap:8px;font-size:8px;letter-spacing:1px}.brand b{font-size:12px;letter-spacing:2px}.hero{grid-template-columns:1fr;padding:35px 5% 30px;gap:30px}.hero h1{font-size:58px;letter-spacing:-2.5px}.eyebrow{font-size:9px;margin-bottom:22px}.hero p{font-size:15px}.hero-image{height:430px;border-bottom-right-radius:55px}.actions{margin-top:24px}.ticker{flex-wrap:wrap;justify-content:center;gap:12px 17px;padding:19px 5%}.ticker i:last-of-type{display:none}.section{padding:54px 6%}.intro{grid-template-columns:1fr;gap:0}.intro p{font-size:25px}.section-heading{display:block}.section-heading h2{width:100%}h2{font-size:40px;letter-spacing:-1.5px}h3{font-size:32px}.split,.finish,.about-row,.contact{grid-template-columns:1fr;gap:32px}.split .photo,.finish .photo,.about-row .photo{height:370px}.reverse .photo{order:0}.work-copy p,.finish-copy p{font-size:15px}.closing{font-size:23px;margin-top:30px}.image-open>span{font-size:10px;bottom:10px;right:10px}.page-intro h1{font-size:48px}.page-intro p{font-size:18px}.quote blockquote{font-size:27px}footer{grid-template-columns:1fr;padding:45px 6% 22px;gap:20px}.footbottom{flex-wrap:wrap;gap:16px;margin-top:12px}.footbottom span{width:100%}.footbrand{font-size:34px}.contact{padding-top:0}form{padding:25px}.contact-email{font-size:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}
/* Visual direction: Sicilian labels, rich ink, scarlet ribbons and gold. */
:root{--paper:#fffdf8;--ink:#172733;--red:#d70928;--muted:#4d5960;--line:#dfdfd8}body{font-size:17px}header{height:106px;margin:0;padding:0 5%;background:#fff;position:relative;z-index:2;border-bottom:1px solid #eee6db;box-shadow:0 5px 25px #182a3510}.brand{font-weight:700;font-size:14px}.brand b{font-size:20px}.logo-crop{width:46px;height:46px;border:2px solid white;box-shadow:0 0 0 1px #ddd}.logo-crop img{left:-175px;top:-16px}nav{gap:12px;font-size:15px;font-weight:700}nav a{padding:11px 22px;border-radius:30px}nav a:hover,nav a[aria-current]{background:#fce8eb;border-bottom:0;color:#b30020}nav a:last-child{background:var(--red);color:white;padding-left:25px;padding-right:25px;box-shadow:0 5px 15px #d7092820}nav a:last-child:hover{background:#ad0020}h1,h2{font-family:Georgia,'Times New Roman',serif;font-weight:700;letter-spacing:-2.7px}h1{font-size:clamp(54px,5.1vw,83px);line-height:1.04}h1 em,h2 em{font-weight:700;font-style:normal}h3{font-weight:800;letter-spacing:-1.2px}.eyebrow{font-size:11px;letter-spacing:1.8px}.hero{position:relative;overflow:hidden;padding:64px 5% 105px;gap:5%;background:radial-gradient(ellipse at 93% 6%,#f6dcab 0,transparent 38%),radial-gradient(ellipse at 3% 100%,#ffe1e6 0,transparent 50%),#fffdf8}.hero:after{content:"";position:absolute;bottom:-55px;left:-5%;height:90px;width:110%;border-radius:50%;border-top:15px solid var(--red);box-shadow:0 -8px 0 #f6b7bf,0 -16px 0 #fff;transform:rotate(-2deg);pointer-events:none}.hero-copy{z-index:1}.hero-copy>.eyebrow{display:inline-flex;align-items:center;background:#fff;border:1px solid #ead9d6;padding:8px 13px;border-radius:30px;color:#a0001b;margin-bottom:28px}.hero p{font-size:18px;line-height:1.7;color:#35434c}.hero-image{height:560px;border:9px solid white;border-radius:80px 14px 80px 14px;box-shadow:0 22px 45px #29354322;transform:rotate(2deg)}.hero-image>img{object-position:center}.image-note{background:#172733f0;font-weight:700;letter-spacing:.5px;font-size:13px;padding:21px 24px}.button{font-size:15px;font-weight:800;padding:16px 23px;border-radius:14px;background:linear-gradient(135deg,#eb1534,#b90021);border:0;box-shadow:0 7px 0 #97021d,0 12px 25px #c40e2824;transition:transform .18s,box-shadow .18s}.button span{background:#ffffff22;border-radius:50%;width:30px;height:30px;display:grid;place-items:center;font-size:21px}.button:hover{background:linear-gradient(135deg,#d0092b,#a8001d);transform:translateY(-3px);box-shadow:0 9px 0 #97021d,0 15px 28px #c40e2833}.button.outline{background:#fff;color:#172733;border:2px solid #172733;box-shadow:0 5px 0 #172733}.button.outline span{background:#edf0f1}.button.outline:hover{background:#f0f5f7;box-shadow:0 7px 0 #172733}.actions{gap:18px}.ticker{background:var(--ink);font-weight:800;font-size:12px;letter-spacing:1.5px;padding:26px 5%}.ticker i{color:#e7ba65}.service-shortcuts{padding:40px 5% 15px;display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.service-button{display:flex;align-items:center;gap:14px;padding:22px 16px;border-radius:18px;position:relative;border:1px solid #ffffff60;box-shadow:0 8px 20px #1727330b;transition:transform .2s,box-shadow .2s;line-height:1.3;color:var(--ink)}.service-button:hover{transform:translateY(-5px);box-shadow:0 13px 25px #1727331c;color:var(--ink)}.service-button img{width:60px;height:60px;object-fit:cover;border-radius:50%;border:3px solid #fff;box-shadow:0 3px 6px #0002}.service-button span{font-size:13px}.service-button strong{font-size:18px}.service-button b{font-size:22px;margin-left:auto}.service-red{background:#ffe4e9}.service-blue{background:#e0eef8}.service-gold{background:#ffedbf}.service-green{background:#e2f0dd}.intro{border:0;padding-top:65px;padding-bottom:75px}.intro .eyebrow{color:#b50425}.intro p{font-size:32px;font-weight:600;line-height:1.48}.section-heading .eyebrow,.finish-copy>.eyebrow{padding:8px 14px;border-radius:30px;background:#fbe0e6;color:#a80020;display:inline-block;width:max-content}.section-heading h2{font-size:56px}.work{background:#eff5f8}.work .photo{border-radius:22px 80px 22px 22px;border:7px solid #fff;box-shadow:0 16px 35px #15304618}.work-copy p,.finish-copy p{font-size:18px}.line-links{border:0;display:flex;gap:14px;flex-wrap:wrap}.line-links a{border:2px solid #193443;border-radius:12px;padding:13px 20px;font-size:15px;gap:30px;background:#fff;font-weight:700;box-shadow:0 4px 0 #193443}.line-links a:hover{background:#193443;color:white}.finish{background:#172d3c;color:#fff;position:relative;overflow:hidden}.finish:before{content:"";width:300px;height:300px;border:45px solid #d6a64f;opacity:.12;border-radius:50%;position:absolute;left:-170px;bottom:-170px;pointer-events:none}.finish h2 em{color:#f0c879}.finish p{color:#e0e7eb}.finish-copy>.eyebrow{background:#385062;color:#ffe0a0}.finish .photo{border-radius:80px 20px 20px 20px;border:7px solid #ffffffdd;box-shadow:0 20px 40px #0003}.gallery{background:linear-gradient(160deg,#fffdf8,#fff5df)}.gallery .image-open{border:7px solid #fff;border-radius:24px;overflow:hidden;box-shadow:0 18px 45px #58421a22}.image-open>span{background:var(--red);border-radius:30px;padding:11px 22px;font-weight:700;font-size:14px}.closing{font-weight:600;font-size:29px}.page-intro{background:radial-gradient(ellipse at right,#ffe1b5,transparent 65%),#fff3f4;border-bottom:5px solid var(--red)}.page-intro p{color:#3b4b56}.about-row .photo{border-radius:24px;box-shadow:0 18px 36px #1727331a;border:7px solid white}.about-row.reverse{background:#eaf3f6}.about-row p{font-size:18px}.quote{background:linear-gradient(120deg,#d70928,#a60024)}.quote blockquote{font-weight:700;font-size:38px}.contact{padding-top:65px}.contact-details>div{border-top:3px solid #d70928;padding:26px 0}.contact-details a{font-weight:700}.contact-details .eyebrow{color:#b60022}.contact form{background:#eaf3f6;border:1px solid #d1e2e8;border-radius:24px;box-shadow:0 15px 40px #17273310}input,textarea{background:white;border:1px solid #bdcbd3;border-radius:10px;padding:14px}label{font-size:14px;font-weight:700}.form-note{margin-top:23px}footer{background:#132633;border-top:7px solid #d70928;font-size:15px}.footbrand{font-family:Georgia,serif;font-weight:700;font-size:36px}.footbrand em{color:#f1c573}footer .eyebrow{color:#edc577}.footbottom a{padding:6px 14px;border:1px solid #ffffff40;border-radius:20px}.footbottom a:hover{color:#fff;background:#d70928}.text-link{display:inline-block;padding:10px 22px;border:2px solid var(--red);border-radius:30px;font-weight:700;color:var(--red)}
@media(max-width:1000px){.hero h1{font-size:56px}.hero-image{height:520px}.service-shortcuts{grid-template-columns:repeat(2,1fr)}.section-heading h2{font-size:46px}.hero .button{font-size:13px;padding:14px 18px}.intro p{font-size:28px}}
@media(max-width:600px){header{height:auto;min-height:112px;padding:15px 5%;gap:15px;justify-content:center}.brand{font-size:10px}.brand b{font-size:16px}.logo-crop{width:37px;height:37px}.logo-crop img{left:-142px;top:-13px}nav{width:100%;justify-content:center;gap:10px;font-size:13px}nav a{padding:8px 20px}nav a:last-child{padding:8px 25px}.hero{padding:38px 6% 65px;gap:38px}.hero h1{font-size:clamp(42px,10.8vw,61px);letter-spacing:-2px}.hero p{font-size:17px}.hero-copy>.eyebrow{font-size:9px}.hero-image{height:410px;border-width:6px;border-radius:55px 12px 55px 12px;transform:rotate(1deg)}.image-note{font-size:11px;padding:15px 18px}.hero .button{font-size:12px;padding:14px 15px;gap:12px}.button span{width:25px;height:25px}.actions{gap:14px}.ticker{font-size:10px;letter-spacing:1px;padding:20px 6%}.service-shortcuts{padding:30px 5% 5px;gap:12px}.service-button{padding:15px 10px;gap:8px;flex-wrap:wrap}.service-button img{width:40px;height:40px}.service-button span{font-size:11px}.service-button strong{font-size:14px}.service-button b{font-size:18px}.intro{padding-top:45px;padding-bottom:45px}.intro p{font-size:24px}.section-heading h2,h2{font-size:39px;letter-spacing:-1.7px}.work-copy p,.finish-copy p,.about-row p{font-size:17px}.section-heading .eyebrow,.finish-copy>.eyebrow{font-size:10px}.gallery .image-open{border:3px solid white;border-radius:14px}.image-open>span{padding:7px 12px;font-size:11px}.closing{font-size:24px}.quote blockquote{font-size:28px}.contact{padding-top:40px}.contact-email{font-size:14px}footer{font-size:14px}.footbottom{gap:10px}.footbottom a{padding:5px 9px}.page-intro h1{font-size:44px}}

/* Logo orizzontale fornito dal cliente */
header{gap:24px}
.brand{flex:0 1 553px;min-width:0;line-height:0;letter-spacing:normal}
.brand-logo{display:block;width:100%;height:auto;max-width:553px;object-fit:contain}
header nav{flex-shrink:0;margin-left:auto}
@media(max-width:900px) and (min-width:601px){header{gap:16px}header nav{gap:6px}header nav a{padding:10px 12px}header nav a:last-child{padding:10px 16px}}
@media(max-width:600px){header{height:auto;gap:15px}.brand{flex:0 1 auto;width:100%;max-width:420px}header nav{margin-left:0}}
