
:root{--navy:#0F2747;--slate:#3F6B8F;--graphite:#3A3A3A;--muted:#6b7782;--copper:#B87333;--ivory:#F8F5EE;--stone:#ECE8E0;--white:#fff;--line:#D8D5CF;--radius:18px;--max:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--ivory);color:var(--graphite);font-family:Montserrat,"Segoe UI",system-ui,-apple-system,sans-serif;line-height:1.7;font-size:.97rem;-webkit-font-smoothing:antialiased}
a{text-decoration:none;color:inherit}.container{width:min(calc(100% - 36px),var(--max));margin:auto}.narrow{width:min(calc(100% - 36px),820px);margin:auto}
h1,h2,h3{color:var(--navy);line-height:1.1;margin:0 0 18px;font-weight:800}h1{font-size:clamp(2.4rem,5.2vw,4.6rem);letter-spacing:-.03em}h2{font-size:clamp(1.8rem,3.6vw,3.1rem);letter-spacing:-.02em}h3{font-size:1.15rem;font-weight:700}
p{margin:0 0 18px}.lead{font-size:clamp(1.05rem,1.9vw,1.28rem);max-width:760px;color:#4c5862;font-weight:300;letter-spacing:.01em}.small{font-size:.9rem;color:var(--muted)}
.eyebrow{font-size:.74rem;letter-spacing:.28em;text-transform:uppercase;color:var(--slate);font-weight:600;margin-bottom:12px}
.section{padding:92px 0}.section-stone{background:var(--stone)}.section-dark{background:var(--navy);color:#dfe7ed}.section-dark h1,.section-dark h2,.section-dark h3{color:#fff}
.header{position:sticky;top:0;z-index:30;background:rgba(248,245,238,.94);backdrop-filter:blur(12px);border-bottom:1px solid rgba(15,39,71,.08)}
.header-inner{min-height:80px;display:flex;align-items:center;justify-content:space-between;gap:20px}
.brand{display:flex;align-items:center}.logo{display:block;height:58px;width:auto}
nav{display:flex;align-items:center;gap:22px;font-size:.86rem;font-weight:500;letter-spacing:.04em}nav a:hover{color:var(--copper)}.menu{display:none;border:0;background:none;font-size:1.5rem;color:var(--navy);cursor:pointer}
.btn{display:inline-flex;align-items:center;justify-content:center;padding:13px 20px;border-radius:999px;background:var(--navy);border:1px solid var(--navy);color:#fff;font-weight:600;font-size:.88rem;letter-spacing:.04em;transition:.2s}.btn:hover{transform:translateY(-1px)}.btn.secondary{background:transparent;color:var(--navy)}.btn.light{background:#fff;border-color:#fff;color:var(--navy)}
.hero{min-height:calc(100vh - 80px);display:flex;align-items:center;padding:82px 0;overflow:hidden;position:relative}.hero:after{content:"";position:absolute;width:480px;height:480px;border-radius:50%;border:1px solid rgba(63,107,143,.18);right:-120px;top:70px;box-shadow:0 0 0 55px rgba(63,107,143,.04),0 0 0 105px rgba(63,107,143,.025)}
.hero-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:64px;align-items:center;position:relative;z-index:1}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}.pills{display:flex;gap:9px;flex-wrap:wrap;margin-top:34px}.pill{padding:8px 12px;border:1px solid rgba(15,39,71,.16);border-radius:999px;font-size:.78rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase}
.symbolbox{background:rgba(255,255,255,.58);border:1px solid rgba(15,39,71,.08);border-radius:26px;padding:34px;box-shadow:0 20px 50px rgba(15,39,71,.08)}.symbol{display:block;width:120px;height:120px;margin-bottom:25px}.symbolbox ul{list-style:none;padding:0;margin:0}.symbolbox li{display:flex;justify-content:space-between;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}
.questions,.grid2,.grid3{display:grid;gap:20px}.questions,.grid2{grid-template-columns:repeat(2,1fr)}.grid3{grid-template-columns:repeat(3,1fr)}.question{padding:26px;border-left:3px solid var(--copper);background:rgba(255,255,255,.5)}.question strong{display:block;color:var(--navy);font-size:1.08rem;font-weight:700}
.card{background:rgba(255,255,255,.66);border:1px solid rgba(15,39,71,.08);border-radius:var(--radius);padding:26px;box-shadow:0 10px 30px rgba(15,39,71,.04)}.num{color:var(--copper);font-weight:600;letter-spacing:.22em;font-size:.74rem;margin-bottom:14px}.link{color:var(--navy);font-weight:600}.link:hover{color:var(--copper)}
.method{display:grid;grid-template-columns:repeat(3,1fr);border:1px solid rgba(255,255,255,.15)}.method>div{padding:34px;border-right:1px solid rgba(255,255,255,.12)}.method>div:last-child{border-right:0}.letter{font-size:3rem;color:var(--copper);font-weight:900;line-height:1;letter-spacing:-.04em}.method p{color:#c8d3dc}
.profile h2{font-size:clamp(1.26rem,2.5vw,2.17rem)}.profile{display:grid;grid-template-columns:.72fr 1.28fr;gap:44px;align-items:center}.portrait{aspect-ratio:4/5;border-radius:24px;background:linear-gradient(135deg,#d5dde3,#f2eee6);border:1px solid rgba(15,39,71,.08);position:relative}.portrait{margin:0;overflow:hidden}.portrait img{display:block;width:100%;height:100%;object-fit:cover;transition:filter .7s ease,transform .9s ease}.portrait.has-photo{--mx:50%;--my:40%;isolation:isolate}.portrait.has-photo:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;opacity:0;transition:opacity .5s ease;background:radial-gradient(circle 230px at var(--mx) var(--my),rgba(255,232,190,.5),rgba(255,214,150,.2) 45%,rgba(255,255,255,0) 70%);mix-blend-mode:screen}.portrait.has-photo figcaption{z-index:2}@media(hover:hover){.portrait.has-photo img{filter:grayscale(1) contrast(1.04)}.portrait.has-photo:hover img{filter:grayscale(0) contrast(1);transform:scale(1.025)}.portrait.has-photo:hover:before{opacity:1}}.portrait figcaption{position:absolute;left:0;right:0;bottom:0;padding:28px 24px 18px;background:linear-gradient(to top,rgba(15,39,71,.78),rgba(15,39,71,0));color:#fff;font-size:.72rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600}.portrait.has-photo:after{content:none}.portrait:after{content:"PROFILO PROFESSIONALE";position:absolute;left:24px;bottom:20px;color:var(--navy);font-size:.72rem;letter-spacing:.16em}.credentials{display:grid;grid-template-columns:repeat(2,1fr);gap:12px;margin:22px 0}.credential .small{margin-top:6px;line-height:1.55}.credential a{color:var(--navy);text-decoration:underline;text-underline-offset:2px}.credential{padding:15px 17px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.55)}
.cta{padding:70px 0}.cta-box{background:var(--navy);color:#fff;border-radius:26px;padding:46px;display:flex;justify-content:space-between;align-items:center;gap:28px}.cta-box h2{color:#fff;margin-bottom:10px}.cta-box p{color:#ccd7df;max-width:700px}
.pagehero{padding:86px 0 60px;border-bottom:1px solid var(--line)}.breadcrumb{font-size:.84rem;color:var(--muted);margin-bottom:22px}.content{display:grid;grid-template-columns:1.45fr .55fr;gap:50px}.aside{position:sticky;top:105px;height:max-content;padding:24px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.55)}.checklist{list-style:none;padding:0;margin:18px 0}.checklist li{padding:10px 0 10px 26px;border-bottom:1px solid var(--line);position:relative}.checklist li:before{content:"•";color:var(--copper);position:absolute;left:6px;font-size:1.4rem;top:2px}.notice{padding:16px 18px;border-radius:12px;background:#eee3d6;color:#604d3a}
form{display:grid;gap:16px}.formgrid{display:grid;grid-template-columns:repeat(2,1fr);gap:16px}.field{display:grid;gap:7px}.field.full{grid-column:1/-1}label{font-weight:600;color:var(--navy);font-size:.86rem}input,select,textarea{width:100%;padding:14px 15px;border:1px solid #ccd2d7;border-radius:12px;background:#fff;font:inherit}textarea{min-height:150px;resize:vertical}
footer{padding:48px 0;background:#f0ede6;border-top:1px solid var(--line)}.footergrid{display:grid;grid-template-columns:1.2fr 1fr 1fr;gap:30px}.footertitle{font-weight:700;color:var(--navy);margin-bottom:10px;letter-spacing:.06em;text-transform:uppercase;font-size:.8rem}.footerlogo{display:block;height:auto;width:220px;max-width:100%;margin-bottom:12px}.footerlinks{display:grid;gap:7px;color:#59636c}.footerbottom{margin-top:30px;padding-top:20px;border-top:1px solid var(--line);display:flex;justify-content:space-between;gap:15px;color:var(--muted);font-size:.84rem}
@media(max-width:950px){nav{display:none;position:absolute;top:80px;left:0;right:0;background:var(--ivory);padding:20px;flex-direction:column;align-items:flex-start;border-bottom:1px solid var(--line)}nav.open{display:flex}.menu{display:block}.hero-grid,.profile,.content{grid-template-columns:1fr}.grid3{grid-template-columns:1fr 1fr}.aside{position:static}}
@media(max-width:680px){.section{padding:68px 0}.grid2,.grid3,.questions,.method,.footergrid,.formgrid,.credentials{grid-template-columns:1fr}.method>div{border-right:0;border-bottom:1px solid rgba(255,255,255,.12)}.cta-box{flex-direction:column;align-items:flex-start;padding:32px}.logo{height:44px}.field.full{grid-column:auto}}

.pagehero.has-blueprint{position:relative;overflow:hidden}.pagehero.has-blueprint .container{position:relative;z-index:1}.pagehero.has-blueprint{padding-bottom:210px}.hero-bp{position:absolute;bottom:6px;right:3%;width:min(62vw,900px);color:#fff;opacity:.2;pointer-events:none;user-select:none}.hero-bp svg{display:block;width:100%;height:auto}@media(max-width:950px){.pagehero.has-blueprint{padding-bottom:150px}.hero-bp{width:120%;right:-25%;opacity:.1}}

/* Footer a 4 colonne con recapiti e operatività (14/09/2026) */
.footergrid{grid-template-columns:1.35fr .9fr .9fr 1.1fr;gap:36px}.footergrid>div{min-width:0}.footerbrand .small{margin-bottom:10px;color:#59636c}.footerbrand .team{color:var(--navy);font-weight:500}.footerlinks a:hover,.footercontacts a:hover,.footerbottom a:hover,.footerarea a:hover{color:var(--copper)}
.footercontacts{display:grid;font-size:.92rem;color:#59636c}.footercontacts a,.footercontacts .row{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:6px 0;border-bottom:1px solid var(--line)}.footercontacts .row{border-bottom:0}.footercontacts .lbl{font-size:.72rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.footercontacts strong{color:var(--navy);font-weight:600;white-space:nowrap}
.footerops{margin-top:16px;font-size:.76rem;color:#59636c;line-height:1.45}.footerops .footertitle{margin-bottom:5px}.footerops p{margin:0 0 5px}.footerops strong{color:var(--navy);font-weight:600}.opslist{margin-top:4px}.footerops .other{margin-top:6px;color:var(--muted);font-style:italic}
.footercontacts a strong{white-space:normal;overflow-wrap:anywhere;text-align:right}
.footercta{margin-top:16px}.footercta .btn{padding:11px 18px;font-size:.82rem}
.footerarea{margin-top:32px;padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:rgba(255,255,255,.5);font-size:.86rem;color:#59636c;display:flex;flex-wrap:wrap;gap:6px 26px}.footerarea strong{color:var(--navy);font-weight:600}.footerarea a{text-decoration:underline;text-underline-offset:3px}
.footerbottom{flex-wrap:wrap}
@media(max-width:950px){.footergrid{grid-template-columns:1fr 1fr}}@media(max-width:680px){.footergrid{grid-template-columns:1fr}}

/* Pagina contatti: colonna destra a schede (14/09/2026) */
.aside-stack{display:grid;gap:18px;align-content:start}.aside-stack .aside{position:static}.aside-stack .aside h3{margin-bottom:12px}
.contactlist{list-style:none;margin:0;padding:0}.contactlist li{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:9px 0;border-bottom:1px solid var(--line);font-size:.94rem}.contactlist li:last-child{border-bottom:0}.contactlist .lbl{font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.contactlist a,.contactlist strong{color:var(--navy);font-weight:600;white-space:nowrap}.contactlist a:hover{color:var(--copper)}
.steps{list-style:none;margin:0;padding:0;counter-reset:s;display:grid;gap:12px}.steps li{position:relative;padding-left:40px;font-size:.92rem;color:#4c5862}.steps li:before{counter-increment:s;content:counter(s);position:absolute;left:0;top:2px;width:26px;height:26px;border-radius:50%;background:var(--navy);color:#fff;font-size:.78rem;font-weight:700;display:grid;place-items:center}.steps li strong{display:block;color:var(--navy)}
.formnote{margin-top:6px;font-size:.86rem;color:#59636c;display:flex;flex-wrap:wrap;gap:6px 18px}.formnote span:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--copper);margin-right:8px;vertical-align:middle}
.field label.check{display:flex;gap:10px;align-items:flex-start;font-weight:500;font-size:.9rem}.field label.check input{width:auto;margin-top:5px}

/* Bottone WhatsApp nell'hero di contatti (14/09/2026) */
.btn.wa{gap:8px}.btn.wa svg{flex:none}
