/* GEOM. GENNARO BARBARULO — sito professionale, responsive, senza tracciamento */
:root{--ink:#14202b;--deep:#0d1721;--muted:#667079;--gold:#bf9460;--goldLight:#f2ddbd;--paper:#f7f5f0;--white:#fff;--border:#e3dfd7;--radius:19px;--container:1190px;scroll-behavior:smooth}
*,*::before,*::after{box-sizing:border-box}body{margin:0;color:var(--ink);font-family:Inter,"Segoe UI",Arial,sans-serif;background:var(--paper);font-size:16px;line-height:1.68}a{color:inherit;text-decoration:none}img,svg{max-width:100%}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}::selection{background:#dfc6a1;color:#122231}.container{max-width:var(--container);margin:auto;padding:0 28px}.eyebrow{font-weight:750;letter-spacing:.18em;text-transform:uppercase;font-size:11px;color:var(--gold)}.eyebrow.dark{color:#9e733f}.serif{font-family:Georgia,"Times New Roman",serif;font-weight:normal}.h2{font-family:Georgia,"Times New Roman",serif;font-size:clamp(38px,5vw,62px);font-weight:normal;letter-spacing:-.045em;line-height:1.12;margin:14px 0 20px}.section-header{display:flex;justify-content:space-between;gap:40px;align-items:end;margin-bottom:42px}.section-header .section-intro{max-width:390px;color:var(--muted);margin:0 0 7px}.pill{display:inline-flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid rgba(232,217,194,.28);border-radius:40px;color:#eee4d6;font-size:12px;letter-spacing:.035em}.pill .dot{width:6px;height:6px;border-radius:50%;background:#d0a56c}.btn{display:inline-flex;justify-content:center;align-items:center;gap:12px;padding:15px 22px;border-radius:5px;font-size:13px;font-weight:750;letter-spacing:.035em;border:1px solid transparent;transition:transform .2s,background .2s,color .2s;white-space:nowrap}.btn:hover{transform:translateY(-2px)}.btn-primary{background:var(--gold);color:#101922}.btn-primary:hover{background:#ddae73}.btn-outline{border-color:rgba(255,255,255,.34);color:white}.btn-outline:hover{background:rgba(255,255,255,.1)}.btn-dark{background:#172735;color:white}.btn-dark:hover{background:#2a3c4b}.text-link{display:inline-flex;gap:7px;align-items:center;font-weight:700;font-size:13px;color:#9a6f3a}.text-link:hover{text-decoration:underline;text-underline-offset:5px}
.site-header{position:relative;background:var(--deep);border-bottom:1px solid rgba(255,255,255,.12);z-index:40}.header-inner{height:88px;display:flex;align-items:center;justify-content:space-between;gap:32px}.brand{display:inline-flex;align-items:center;gap:13px;color:#fff;min-width:185px}.brand-icon{width:37px;height:37px;border:1px solid var(--gold);display:grid;grid-template:1fr 1fr/1fr 1fr;padding:6px;gap:4px;transform:rotate(0deg)}.brand-icon i{border-top:1px solid var(--gold);border-left:1px solid var(--gold);display:block}.brand-icon i:nth-child(2){border-left:0;border-right:1px solid var(--gold)}.brand-icon i:nth-child(3){border-top:0;border-bottom:1px solid var(--gold)}.brand-icon i:nth-child(4){border:0;border-right:1px solid var(--gold);border-bottom:1px solid var(--gold)}.brand-name{font-weight:800;letter-spacing:.20em;font-size:16px;line-height:1.1}.brand-sub{display:block;color:#d5b48b;font-size:8px;letter-spacing:.24em;font-weight:650;margin-top:5px}.main-nav{display:flex;align-items:center;gap:26px}.main-nav a{font-size:13px;font-weight:600;color:rgba(255,255,255,.8);transition:color .2s}.main-nav a:hover,.main-nav a[aria-current="page"]{color:#e8c79b}.header-action{padding:11px 15px;font-size:12px}.menu-btn{display:none;border:1px solid rgba(255,255,255,.25);background:transparent;color:white;padding:10px 13px;border-radius:6px;cursor:pointer}
.hero{background:var(--deep);position:relative;overflow:hidden;color:#fff}.hero::after{content:"";position:absolute;pointer-events:none;background:radial-gradient(ellipse at center,#c1925f2d,transparent 69%);width:700px;height:700px;right:-100px;top:-140px}.hero-inner{min-height:650px;display:grid;grid-template-columns:1.06fr .94fr;align-items:center;position:relative;z-index:1}.hero-content{padding:78px 0 100px}.hero h1{font-size:clamp(49px,6vw,82px);font-family:Georgia,"Times New Roman",serif;font-weight:normal;line-height:1.055;letter-spacing:-.051em;max-width:760px;margin:20px 0 26px}.hero h1 em{font-weight:normal;font-style:italic;color:#d6b487}.hero-description{max-width:500px;color:#c3cbd1;font-size:17px;margin:0 0 32px}.hero-actions{display:flex;flex-wrap:wrap;gap:12px}.hero-badges{display:flex;gap:10px;flex-wrap:wrap;margin-top:62px}.hero-illustration{height:630px;position:relative;display:flex;align-items:center;justify-content:center}.hero-illustration img{width:min(100%,600px);height:100%;object-fit:contain;filter:drop-shadow(0 20px 60px #0003);opacity:.98}.hero-corner{position:absolute;right:13px;bottom:74px;border-left:1px solid var(--gold);padding:7px 0 7px 15px;color:#dfc09b;font-size:10px;letter-spacing:.16em;line-height:1.8;text-transform:uppercase}.trust-strip{background:#e9e5dd;border-bottom:1px solid #ded8ce}.trust-strip .container{display:grid;grid-template-columns:repeat(3,1fr)}.trust-item{display:flex;gap:12px;align-items:center;justify-content:center;padding:23px 10px;font-size:12px;font-weight:750;letter-spacing:.05em;color:#515b63;text-align:center;border-right:1px solid #d6d1c8}.trust-item:last-child{border-right:0}.trust-item span{color:#ad8050;font-family:Georgia,serif;font-size:23px;font-weight:normal}
.section{padding:106px 0}.services{background:var(--paper)}.services-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.service-card{background:white;border:1px solid var(--border);padding:35px 32px 29px;min-height:286px;display:flex;flex-direction:column;justify-content:space-between;position:relative;transition:transform .2s,border-color .2s,box-shadow .2s}.service-card:hover{transform:translateY(-5px);border-color:#bfa17a;box-shadow:0 18px 40px #19242d0b}.service-num{color:#b48d5b;font-family:Georgia,serif;font-size:24px}.service-card h3{font-size:21px;font-family:Georgia,serif;font-weight:normal;letter-spacing:-.03em;line-height:1.25;margin:20px 0 11px}.service-card p{font-size:13.4px;color:var(--muted);line-height:1.7;margin:0 0 23px}.service-card .text-link{margin-top:auto}.service-card a.full-card{position:absolute;inset:0;z-index:1}.service-card:hover .text-link{text-decoration:underline;text-underline-offset:4px}
.about{background:#e9e5dd}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.about-art{background:var(--deep);min-height:490px;display:flex;flex-direction:column;justify-content:end;padding:38px;position:relative;overflow:hidden}.about-art::before{content:"";position:absolute;width:315px;height:315px;border:1px solid #bb9569;border-radius:50%;left:50%;top:42%;transform:translate(-50%,-50%);opacity:.27;box-shadow:0 0 0 55px #bb956919,0 0 0 110px #bb956914}.about-art::after{content:"GB";font-family:Georgia,serif;font-size:160px;letter-spacing:-.13em;position:absolute;top:46%;left:50%;transform:translate(-50%,-50%);font-style:italic;color:#e0bd8c}.about-art .small-overline{color:#dfc5a4;font-size:11px;letter-spacing:.2em;position:relative;z-index:1}.about-art .art-title{font-family:Georgia,serif;color:white;font-size:29px;line-height:1.15;margin:6px 0 0;position:relative;z-index:1}.about-copy p{color:#5d676e;font-size:15px;line-height:1.88}.about-points{display:flex;flex-direction:column;gap:9px;margin:25px 0 32px;padding:0;list-style:none}.about-points li{display:flex;gap:13px;align-items:flex-start;font-size:14px}.about-points li:before{content:"↗";font-weight:700;color:#a87d4b}.method{background:#fff}.steps{display:grid;grid-template-columns:repeat(4,1fr);gap:0;border-top:1px solid var(--border)}.step{padding:31px 27px 0 0;border-right:1px solid var(--border);margin-right:25px}.step:last-child{border:0;margin-right:0}.step-number{font-family:Georgia,serif;font-size:36px;color:#b49165}.step h3{font-size:16px;margin:19px 0 7px}.step p{font-size:13.5px;color:var(--muted);margin:0;line-height:1.7}
.quote-section{background:var(--paper)}.quotes{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.quote-card{background:white;border:1px solid var(--border);padding:34px;display:flex;flex-direction:column;min-height:280px}.quote-mark{font-family:Georgia,serif;font-size:64px;color:#c0a27c;line-height:.9}.quote-card blockquote{font-family:Georgia,serif;font-size:18px;line-height:1.47;letter-spacing:-.02em;margin:12px 0 27px}.quote-card .quote-by{margin-top:auto;display:flex;flex-direction:column;gap:0}.quote-by b{font-size:13px}.quote-by small{font-size:11px;color:#788088}.quote-note{font-size:12px;color:#727b83;margin-top:18px}.further-links{margin-top:27px;display:flex;gap:24px;flex-wrap:wrap}
.faq{background:#fff}.faq-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:75px}.faq-intro{max-width:420px;color:var(--muted)}.accordion details{border-bottom:1px solid var(--border);padding:20px 0}.accordion details:first-child{border-top:1px solid var(--border)}.accordion summary{list-style:none;cursor:pointer;font-size:15px;font-weight:700;display:flex;justify-content:space-between;gap:15px}.accordion summary::-webkit-details-marker{display:none}.accordion summary:after{content:"+";color:#a47b4d;font-size:23px;line-height:1}.accordion details[open] summary:after{content:"−"}.accordion details p{color:var(--muted);font-size:14px;margin:13px 30px 0 0}
.contact{background:var(--deep);color:white;padding:100px 0}.contact-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:100px;align-items:center}.contact .h2{max-width:680px}.contact p{color:#b8c2c9;max-width:580px}.contact-details{padding:24px 0 0;border-top:1px solid #ffffff30}.contact-detail{padding:15px 0;border-bottom:1px solid #ffffff23}.contact-detail small{display:block;font-size:10px;color:#c49d6b;letter-spacing:.16em;text-transform:uppercase;margin-bottom:3px}.contact-detail a,.contact-detail span{font-size:16px;overflow-wrap:anywhere}.contact .hero-actions{margin-top:30px}.site-footer{background:#09131b;color:#abb4bb;padding:29px 0}.footer-inner{display:flex;gap:25px;justify-content:space-between;align-items:center;font-size:11px}.footer-links{display:flex;gap:16px;flex-wrap:wrap}.site-footer a:hover{color:white}.floating-wa{position:fixed;right:24px;bottom:23px;z-index:90;background:#225c49;color:white;border:1px solid #ffffff55;box-shadow:0 9px 26px #17282033;padding:12px 16px;border-radius:50px;font-weight:700;font-size:12px;display:flex;align-items:center;gap:9px}.floating-wa svg{height:17px;width:17px}.floating-wa:hover{background:#30765e}
.page-hero{background:var(--deep);color:white;padding:90px 0 87px;position:relative;overflow:hidden}.page-hero:after{content:"";background:radial-gradient(circle,#af835c30,transparent 65%);width:550px;height:550px;position:absolute;right:-100px;top:-200px;pointer-events:none}.page-hero h1{font-family:Georgia,serif;font-weight:normal;font-size:clamp(45px,6vw,75px);line-height:1.1;letter-spacing:-.05em;margin:18px 0 22px;max-width:950px}.page-hero p{max-width:660px;color:#c0c9d0;margin:0;font-size:17px}.breadcrumbs{color:#c7b59d;font-size:12px;margin-bottom:19px}.breadcrumbs a{text-decoration:underline;text-underline-offset:3px}.content-layout{display:grid;grid-template-columns:1.3fr .7fr;gap:65px}.content-layout h2{font-family:Georgia,serif;font-size:34px;font-weight:normal;line-height:1.2}.content-layout p{color:#58646c}.content-list{padding-left:19px;color:#56646e}.content-list li{margin:9px 0}.aside-panel{background:white;border:1px solid var(--border);padding:32px;align-self:start;position:sticky;top:23px}.aside-panel h3{font-family:Georgia,serif;font-size:26px;font-weight:normal;margin:0 0 13px}.aside-panel p{color:var(--muted);font-size:14px}.related-services{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.related-services a{background:white;border:1px solid var(--border);padding:22px;font-weight:650;font-size:14px}.related-services a:hover{border-color:#bd955f}.legal-notice{padding:70px 0;max-width:800px}.legal-notice p,.legal-notice li{color:#59666f}
@media(max-width:1000px){.main-nav{gap:15px}.main-nav a{font-size:12px}.header-action{display:none}.hero-inner{grid-template-columns:1.1fr .9fr}.hero h1{font-size:65px}.about-grid{gap:45px}.contact-grid{gap:45px}}
@media(max-width:800px){.container{padding:0 22px}.header-inner{height:70px}.menu-btn{display:block}.main-nav{position:absolute;display:none;left:0;right:0;top:70px;background:#14212c;padding:18px 24px 28px;flex-direction:column;align-items:flex-start;border-top:1px solid #ffffff25;box-shadow:0 18px 25px #0003}.main-nav.open{display:flex}.main-nav a{font-size:15px;padding:5px}.hero-inner{display:block;min-height:auto}.hero-content{padding:78px 0 36px}.hero h1{font-size:clamp(50px,9vw,72px)}.hero-illustration{height:330px;justify-content:flex-end;opacity:.75}.hero-illustration img{max-width:360px}.hero-corner{bottom:24px}.hero-badges{margin-top:34px}.trust-strip .container{grid-template-columns:1fr}.trust-item{border-right:0;border-bottom:1px solid #d6d1c8;padding:15px 10px}.section{padding:76px 0}.section-header{display:block}.section-header .section-intro{margin-top:10px}.services-grid,.quotes{grid-template-columns:repeat(2,1fr)}.about-grid,.faq-grid,.contact-grid,.content-layout{grid-template-columns:1fr;gap:35px}.about-art{min-height:340px;max-width:560px}.steps{grid-template-columns:repeat(2,1fr);gap:28px}.step{border:0;margin-right:0;padding:15px 10px 0 0}.related-services{grid-template-columns:repeat(2,1fr)}.aside-panel{position:static}}
@media(max-width:560px){.hero h1{font-size:49px}.hero-description{font-size:15px}.hero-actions .btn{width:100%}.hero-illustration{height:210px}.hero-illustration img{max-width:240px}.hero-corner{display:none}.services-grid,.quotes,.related-services{grid-template-columns:1fr}.service-card{min-height:240px}.section{padding:65px 0}.h2{font-size:39px}.about-art{min-height:280px}.about-art::after{font-size:125px}.steps{grid-template-columns:1fr;gap:12px}.contact{padding:72px 0}.footer-inner{align-items:flex-start;flex-direction:column}.floating-wa{right:14px;bottom:14px;padding:11px 13px}.page-hero{padding:60px 0}.page-hero h1{font-size:46px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;transition:none!important}}

/* Identità personale: monogramma GB e nome completo */
.brand{min-width:220px;gap:11px}
.brand-icon{width:39px;height:39px;flex:0 0 39px;display:flex;justify-content:center;align-items:center;padding:0;border:1px solid var(--gold);font-family:Georgia,"Times New Roman",serif;font-weight:normal;font-size:15px;letter-spacing:-.05em;color:#e2be8d}
.brand-name{font-size:13px;letter-spacing:.085em;white-space:nowrap}
.brand-sub{font-size:9px;letter-spacing:.2em}
.main-nav{gap:19px}
.header-inner{gap:21px}
@media (max-width:1130px){.brand{min-width:205px}.brand-name{font-size:12px}.main-nav{gap:14px}.main-nav a{font-size:12px}}

/* 2026 · Nuova identità visiva: bianco / nero / oro discreto. */
:root{--ink:#181818;--deep:#0c0c0c;--muted:#696969;--gold:#ae9060;--goldLight:#dbcca9;--paper:#f6f5f2;--white:#ffffff;--border:#dedbd5;--radius:0}
body{color:#1d1d1d;background:#faf9f7;font-family:Inter,Arial,Helvetica,sans-serif}
.site-header{background:#0b0b0b;border-bottom:1px solid #333}.header-inner{height:102px}.brand{flex:0 0 auto;min-width:0;width:238px;display:block}.brand-logo{width:100%;height:76px;object-fit:contain;object-position:left center;display:block}
.main-nav a{color:#e7e7e7;font-size:12px}.main-nav a:hover{color:#d5bd94}.header-action{background:#b6a17a;color:#111;font-size:11px}
.btn{border-radius:2px}.btn-primary{background:#b6a17a;color:#0b0b0b}.btn-primary:hover{background:#d1bd98}.btn-dark{background:#101010}.eyebrow,.eyebrow.dark,.text-link{color:#a18453}.h2{color:inherit}
.hero{background:#111;color:white}.hero::after{background:radial-gradient(circle,#ad905a0b,transparent 65%)}.hero-inner{grid-template-columns:1.18fr .82fr;min-height:660px;gap:35px}.hero h1{font-size:clamp(48px,5.65vw,79px);max-width:720px}.hero h1 em{color:#c9b58d}.hero-description{color:#c9c9c9}.hero-illustration{height:560px;position:relative;background:#0a0a0a;border:1px solid #3a352a;box-shadow:0 18px 65px #0005;margin:35px 0}.hero-illustration::before{content:'';position:absolute;inset:20px;border:1px solid #7c68412e;pointer-events:none}.hero-illustration img.hero-logo{height:auto;width:min(92%,465px);max-height:92%;object-fit:contain;opacity:1;filter:none}.hero-side-label{position:absolute;bottom:37px;left:33px;font-size:10px;color:#bda77d;letter-spacing:.28em}
.pill{border-color:#5c5444;color:#d8d5ce}.trust-strip{background:#f1efeb;border-bottom-color:#dfdcd6}.trust-item{color:#505050;border-color:#ddd8d0}.trust-item span{color:#a58a5d}
.services{background:#faf9f7}.service-card{background:#fff;border:1px solid #e6e2dc}.service-card:hover{border-color:#b6a17a;box-shadow:0 15px 38px #1212120a}.service-num,.step-number,.quote-mark{color:#ad9266}
.about{background:#efeeeb}.about-art{background:#090909;min-height:535px;padding:30px;align-items:center;justify-content:center;gap:12px;border:1px solid #2e2b25}.about-art::before,.about-art::after{display:none}.about-logo{width:min(100%,350px);height:auto;object-fit:contain;position:relative;z-index:1}.about-art .art-title{font-family:Arial,Helvetica,sans-serif;font-size:11px;letter-spacing:.18em;text-transform:uppercase;text-align:center;font-weight:500;color:#c7b693;margin-top:8px}
.method,.faq{background:#fff}.quote-section{background:#f7f6f3}.quote-card{background:white}.contact{background:#0d0d0d}.contact p{color:#bbb}.contact-detail small{color:#c0a877}.site-footer{background:#070707}.floating-wa{background:#212121;border:1px solid #b29a71}.floating-wa:hover{background:#343434}
.page-hero{background:#111}.page-hero:after{background:radial-gradient(circle,#ab8c5b12,transparent 70%)}.breadcrumbs{color:#bba782}
@media(max-width:1140px){.brand{width:195px}.brand-logo{height:68px}.header-inner{gap:15px}.main-nav{gap:12px}.main-nav a{font-size:11px}.header-action{font-size:10px}}
@media(max-width:800px){.header-inner{height:78px}.brand{width:180px}.brand-logo{height:60px}.main-nav{top:78px;background:#101010}.hero-inner{display:block}.hero-content{padding-bottom:12px}.hero-illustration{height:340px;max-width:500px;margin:0 auto 30px}.hero-illustration img.hero-logo{width:280px}.hero-side-label{bottom:25px}.about-art{min-height:365px}.about-logo{width:265px}}
@media(max-width:560px){.brand{width:155px}.hero-illustration{height:260px}.hero-illustration img.hero-logo{width:220px}.hero-side-label{font-size:8px;left:21px;bottom:13px}.hero h1{font-size:45px}.about-art{min-height:320px}}

/* Foto personale nella prima schermata: cornice sobria nera e oro champagne */
.hero-illustration{overflow:hidden;border:1px solid #5f5442;background:#171717;isolation:isolate}
.hero-illustration::before{z-index:2;inset:13px;border:1px solid rgba(201,181,141,.36)}
.hero-illustration::after{content:"";position:absolute;inset:58% 0 0;background:linear-gradient(transparent,rgba(0,0,0,.70));pointer-events:none;z-index:1}
.hero-illustration img.hero-portrait{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:cover;object-position:center 34%;filter:none;opacity:1}
.hero-side-label{z-index:3;color:#ebdbbc;left:31px;bottom:31px}
@media(max-width:800px){.hero-illustration img.hero-portrait{width:100%;height:100%;max-width:none;object-fit:cover;object-position:center 28%}}
@media(max-width:560px){.hero-illustration{height:320px}.hero-illustration img.hero-portrait{width:100%;height:100%;max-width:none;object-position:center 28%}}
