:root{--green:#1e5b44;--dark:#091f18;--ink:#14201c;--paper:#fbf9f3;--cream:#f1ede3;--gold:#c58c35;--muted:#607069;--line:#dedbd1}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Inter,Arial,sans-serif}h1,h2,h3,p{margin-top:0}h1,h2{font-family:"Source Serif 4",Georgia,serif;line-height:1.02;letter-spacing:-.04em}h2{font-size:clamp(2.6rem,5vw,5rem)}h3{line-height:1.2}a{text-decoration:none;color:inherit}.wrap{width:min(1160px,calc(100% - 48px));margin:auto}.eyebrow{text-transform:uppercase;letter-spacing:.15em;font-size:.72rem;font-weight:850;color:var(--green)}.eyebrow.gold{color:#e5b05e}.eyebrow.pale{color:#8fb9a6}.skip{position:absolute;top:-80px;left:10px;background:#fff;padding:12px;z-index:50}.skip:focus{top:8px}a:focus-visible,button:focus-visible{outline:3px solid var(--gold);outline-offset:4px}.button{display:inline-flex;align-items:center;justify-content:center;gap:32px;background:var(--green);color:#fff;padding:14px 20px;border-radius:8px;font-weight:800;transition:.2s}.button:hover{transform:translateY(-2px);background:#174b38}.button.mini{padding:9px 15px;font-size:.86rem}.button.goldbtn{background:var(--gold);color:var(--dark)}
.top{height:74px;background:rgba(251,249,243,.96);position:fixed;inset:0 0 auto;z-index:20;border-bottom:1px solid rgba(222,219,209,.7);backdrop-filter:blur(12px)}.nav{height:100%;display:flex;align-items:center;justify-content:space-between}.brand{display:inline-flex;align-items:center;gap:12px}.brand img{width:40px;height:40px;object-fit:contain}.brand span{font:800 1.45rem/1 Georgia,serif;letter-spacing:.12em;color:var(--ink)}.nav nav{display:flex;align-items:center;gap:30px}.nav nav>a:not(.button){font-weight:650;font-size:.9rem}.menu{display:none;background:#fff;border:1px solid var(--line);padding:8px 12px;border-radius:7px}
.header-brand{height:66px;overflow:hidden}.header-brand .header-logo{width:210px;height:62px;object-fit:contain;object-position:left center}
.hero3{height:min(920px,100vh);min-height:720px;position:relative;display:flex;align-items:center;color:#fff;overflow:hidden}.hero-photo,.hero-shade{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.hero-shade{background:linear-gradient(90deg,rgba(4,19,14,.94) 0%,rgba(4,19,14,.75) 46%,rgba(4,19,14,.12) 82%),linear-gradient(0deg,rgba(4,19,14,.65),transparent 40%)}.hero-copy{position:relative;z-index:2;padding-top:60px}.hero-copy h1{font-size:clamp(3.7rem,6.5vw,7rem);max-width:980px;margin:20px 0 28px}.hero-copy h1 em{color:#d6a04f;font-style:normal}.hero-copy>p:not(.eyebrow){max-width:670px;font-size:1.2rem;color:#d5e1dc}.actions{display:flex;align-items:center;gap:28px;margin-top:38px}.hero-link{font-weight:750;border-bottom:1px solid #fff}.hero-note{position:absolute;z-index:3;right:4vw;bottom:0;background:var(--paper);color:var(--ink);padding:18px 24px;display:grid;grid-template-columns:auto auto auto auto auto;align-items:center;gap:13px;border-radius:10px 10px 0 0;box-shadow:0 -15px 40px rgba(0,0,0,.15)}.hero-note span{font-size:.65rem;text-transform:uppercase;color:var(--muted);letter-spacing:.1em}.hero-note b{font-size:.82rem}.hero-note i{color:var(--gold);font-style:normal}
.intro{padding:110px 0}.intro-grid{display:grid;grid-template-columns:.45fr 1.35fr .7fr;gap:55px;align-items:start}.intro h2{font-size:clamp(2.7rem,4.7vw,4.8rem);margin:0}.intro-grid>p:last-child{color:var(--muted);font-size:1.05rem}
.stories{background:#fff}.story{min-height:650px;display:grid;grid-template-columns:1.08fr .92fr}.story.reverse{grid-template-columns:.92fr 1.08fr}.story.reverse .story-photo{order:2}.story-photo{position:relative;overflow:hidden}.story-photo img{width:100%;height:100%;object-fit:cover;transition:transform .7s ease}.story:hover .story-photo img{transform:scale(1.025)}.story-photo>span{position:absolute;right:26px;top:26px;width:58px;height:58px;background:var(--gold);color:var(--dark);border-radius:50%;display:grid;place-items:center;font:700 1.1rem Georgia}.story-copy{padding:80px clamp(35px,6vw,100px);display:flex;flex-direction:column;justify-content:center;background:var(--paper)}.story.reverse .story-copy{background:var(--cream)}.story-copy h2{font-size:clamp(3rem,5vw,5.5rem);margin:10px 0 22px}.story-copy blockquote{font:italic 1.2rem/1.5 Georgia;margin:0 0 24px;padding-left:20px;border-left:3px solid var(--gold);color:#555f5a}.story-copy h3{font:600 clamp(1.35rem,2vw,2rem)/1.2 Georgia;margin:0 0 18px}.story-copy>p:not(.eyebrow){color:var(--muted);max-width:56ch}.story-copy .button{align-self:flex-start;margin-top:15px}.status{align-self:flex-start;background:#e3ece7;color:var(--green);border-radius:20px;padding:4px 10px;font-size:.67rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850}
.method{background:var(--dark);color:#c4d5cd;padding:110px 0}.method h2{color:#fff;max-width:930px}.method-grid{display:grid;grid-template-columns:repeat(4,1fr);margin-top:60px;border-top:1px solid #29443a}.method-grid article{padding:34px 28px 0 0;border-right:1px solid #29443a;margin-right:28px}.method-grid article:last-child{border:0}.method-grid b{font:700 1.5rem Georgia;color:var(--gold)}.method-grid h3{color:#fff;margin-top:40px}.method-grid p{font-size:.88rem}
.companies{padding:110px 0;background:var(--cream)}.company-grid{display:grid;grid-template-columns:1.25fr .75fr;gap:70px;align-items:stretch}.company-grid>div>p:not(.eyebrow){max-width:65ch;color:var(--muted)}.company-grid .button{margin-top:22px}.gym{background:var(--green);color:#dbe9e2;border-radius:14px;padding:40px;display:flex;flex-direction:column;justify-content:flex-end;min-height:410px;position:relative;overflow:hidden}.gym:before{content:"";position:absolute;inset:-30% -30% auto auto;width:260px;height:260px;border:50px solid rgba(255,255,255,.08);border-radius:50%}.gym span{font-size:.7rem;text-transform:uppercase;letter-spacing:.15em;color:#a9ccbb}.gym h3{font:600 3.2rem Georgia;color:#fff;margin:15px 0}.gym b{margin-top:20px;color:#fff}
.contact3{background:var(--green);color:#dbe8e2;padding:110px 0}.contact-head{text-align:center}.contact-head h2{color:#fff;margin:15px auto 25px;max-width:950px}.contact-head>p:last-child{max-width:650px;margin:auto}.people{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-top:55px}.people article{background:#fff;color:var(--ink);border-radius:12px;padding:26px;display:flex;gap:20px;align-items:center}.people article>span{width:54px;height:54px;flex:none;border-radius:50%;background:var(--cream);display:grid;place-items:center;font:700 1rem Georgia;color:var(--green)}.people h3{font:600 1.4rem Georgia;margin:0 0 5px}.people a{display:block;color:var(--muted);font-size:.88rem}.direct{display:flex;align-items:center;justify-content:center;gap:30px;margin-top:35px}.direct>a:last-child{border-bottom:1px solid #b6d0c4}
footer{background:var(--dark);color:#9cb3a8;padding:65px 0 25px}.footer3{display:grid;grid-template-columns:2fr 1fr 1fr;gap:70px}.footbrand{align-self:flex-start}.footbrand img{width:40px}.footbrand span{color:#fff;font-size:1.45rem}.footer3 div{display:flex;flex-direction:column;gap:7px}.footer3 b{color:#fff;text-transform:uppercase;letter-spacing:.1em;font-size:.72rem;margin-bottom:10px}.footer3 a,.footer3 span{font-size:.83rem}.footer3 .brand span{font-size:1.45rem}.copyright{border-top:1px solid #29443a;margin-top:45px;padding-top:20px;font-size:.75rem}
@media(max-width:900px){.nav nav{display:none;position:absolute;top:74px;left:0;right:0;background:var(--paper);padding:25px;flex-direction:column}.nav nav.open{display:flex}.menu{display:block}.hero3{min-height:780px}.hero-shade{background:linear-gradient(90deg,rgba(4,19,14,.94),rgba(4,19,14,.58))}.hero-note{right:16px;left:16px;grid-template-columns:1fr auto 1fr}.hero-note span{display:none}.intro-grid{grid-template-columns:1fr}.story,.story.reverse{grid-template-columns:1fr;min-height:0}.story.reverse .story-photo{order:0}.story-photo{height:460px}.story-copy{padding:60px 28px}.method-grid{grid-template-columns:1fr 1fr}.company-grid{grid-template-columns:1fr}.footer3{grid-template-columns:1fr 1fr}.footer3>div:first-child{grid-column:1/-1}}
@media(max-width:560px){.wrap{width:calc(100% - 32px)}.hero3{min-height:730px;height:100svh}.hero-photo{object-position:62% center}.hero-copy h1{font-size:3.45rem}.hero-copy>p:not(.eyebrow){font-size:1rem}.actions{align-items:flex-start;flex-direction:column}.hero-note{font-size:.7rem;padding:13px}.intro{padding:75px 0}.story-photo{height:320px}.story-copy h2{font-size:3.35rem}.method{padding:75px 0}.method-grid{grid-template-columns:1fr}.method-grid article{border-right:0;border-bottom:1px solid #29443a;padding-bottom:25px}.people{grid-template-columns:1fr}.direct{align-items:stretch;flex-direction:column}.companies,.contact3{padding:75px 0}.footer3{grid-template-columns:1fr}.footer3>div:first-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.story-photo img,.button{transition:none}}

.nepero-contact{max-width:620px;margin-top:48px;background:#fff;color:var(--ink);border-radius:14px;padding:30px 34px;display:flex;gap:24px;align-items:center}.nepero-contact>img{width:64px;height:64px;object-fit:contain}.nepero-contact .eyebrow{margin-bottom:5px}.nepero-contact h3{font:600 2rem Georgia;margin:0 0 8px}.nepero-contact a{display:block;color:var(--muted)}
@media(max-width:560px){.nepero-contact{align-items:flex-start;padding:24px}.nepero-contact>img{width:48px;height:48px}}
@media(max-width:560px){.header-brand .header-logo{width:170px;height:56px}}

/* Bilanciamento tipografico: il contenuto guida, la fotografia respira. */
h1,h2{line-height:1.08;letter-spacing:-.035em}
h2{font-size:clamp(2.35rem,4vw,4.25rem)}
.hero3{height:min(800px,92vh);min-height:650px}
.hero-shade{background:linear-gradient(90deg,rgba(4,19,14,.94) 0%,rgba(4,19,14,.74) 43%,rgba(4,19,14,.12) 78%),linear-gradient(0deg,rgba(4,19,14,.55),transparent 40%)}
.hero-copy{padding-top:48px}
.hero-copy h1{font-size:clamp(3.15rem,4.35vw,4.85rem);line-height:1.04;max-width:790px;margin:16px 0 24px}
.hero-copy h1 em{display:block;margin-top:.12em;font-size:.91em;line-height:1.08}
.hero-copy>p:not(.eyebrow){max-width:590px;font-size:1.08rem}
.actions{gap:24px;margin-top:30px}
.hero-note{padding:15px 20px;gap:11px}
.hero-note span{font-size:.62rem}.hero-note b{font-size:.78rem}
.intro{padding:95px 0}.intro h2{font-size:clamp(2.45rem,3.8vw,3.9rem)}
.story-copy h2{font-size:clamp(2.7rem,4vw,4.25rem)}
.story-copy blockquote{font-size:1.15rem}.story-copy h3{font-size:clamp(1.3rem,1.8vw,1.8rem)}
@media(max-width:900px){.hero3{min-height:700px;height:min(780px,100svh)}.hero-copy h1{max-width:680px}}
@media(max-width:560px){.hero3{min-height:680px}.hero-copy{padding-top:34px}.hero-copy h1{font-size:clamp(2.65rem,12vw,3.15rem);line-height:1.06}.hero-copy h1 em{font-size:.88em}.hero-copy>p:not(.eyebrow){font-size:.96rem;max-width:34ch}.actions{gap:16px;margin-top:24px}.intro{padding:70px 0}.story-copy h2{font-size:clamp(2.55rem,12vw,3.05rem)}}
