/* Inserti fotografici e movimento discreto */
.photo-panel{position:relative;overflow:hidden;border-radius:24px;background:#193326;margin:0}
.photo-panel img{display:block;width:100%;height:100%;object-fit:cover}
.photo-panel[data-parallax] img{height:calc(100% + 64px);position:absolute;inset:-32px 0 auto;transform:translate3d(0,var(--photo-shift,0px),0);will-change:transform}
.reason-layout{display:grid;grid-template-columns:.82fr 1.4fr;gap:30px;margin-top:35px;align-items:stretch}
.reason-photo{min-height:510px}.reason-photo img{object-position:49% center}
.photo-panel figcaption{position:absolute;z-index:2;bottom:0;left:0;right:0;padding:75px 30px 30px;background:linear-gradient(transparent,#0c2118e8);color:white;font-family:var(--display);font-size:25px;line-height:1.2}
.reason-layout .reasons{gap:18px}.reason-layout .reason{padding:24px}.reason-layout .reason h3{font-size:18px}.reason-layout .reason p{font-size:14px}
.contact-photo{height:205px;margin:-6px -6px 27px;border-radius:14px}.contact-photo img{object-position:65% 45%}
.page-hero.career-hero{background:#11231b;min-height:650px;display:flex;align-items:center;padding:150px 0 78px}
.career-hero .hero-photograph{position:absolute;inset:0;overflow:hidden}.career-hero .hero-photograph img{position:absolute;top:-40px;left:0;width:100%;height:calc(100% + 80px);object-fit:cover;object-position:center 55%;transform:translate3d(0,var(--photo-shift,0px),0)}
.career-hero .hero-photograph::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#0c1c17ed 0%,#0c1c17b3 35%,#0c1c1720 76%)}
.page-hero.career-hero::after{display:none}.career-hero .container{width:100%}.page-hero.career-hero h1{font-size:clamp(40px,5vw,66px);letter-spacing:-.045em;max-width:12ch}.page-hero.career-hero p{max-width:47ch;color:#d3ded6;font-size:17px}.career-hero .hero-cta{margin:28px 0 0}.career-hero .breadcrumb{font-size:13px;margin-bottom:28px}
.career-strip{background:#14251d;color:#c9d7ce;padding:24px 0}.career-strip .container{display:flex;gap:35px;justify-content:space-between;font-size:14px}.career-strip span{display:flex;align-items:center;gap:10px}.career-strip span::before{content:'';width:7px;height:7px;border-radius:50%;background:#00c853;flex-shrink:0}
.career-intro{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.career-intro h2{font-size:42px}.career-intro .lede{font-size:17px;margin-bottom:24px}.career-intro .photo-panel{height:460px}.career-traits{display:flex;gap:10px;flex-wrap:wrap}.career-traits span{border:1px solid #cddcca;border-radius:40px;padding:8px 14px;font-size:13px;color:#38533f}
.roles{background:#f1f5ed}.roles .lede{font-size:17px;margin-bottom:30px}.role-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:22px}.role-card{border:1px solid #dbe5d7;background:#fff;border-radius:20px;padding:30px;position:relative;transition:transform .25s,box-shadow .25s}.role-card:hover{transform:translateY(-4px);box-shadow:0 15px 35px #14351b0d}.role-number{font-size:12px;color:#007c36;letter-spacing:.15em;display:block;margin-bottom:25px}.role-card h3{font-size:23px;margin-bottom:14px}.role-card p{font-size:15px;color:var(--muted)}.role-card a{display:inline-flex;align-items:center;gap:15px;color:#007c36;font-size:14px;font-weight:600;margin-top:24px;min-height:44px}.role-card a::after{content:'↗';font-size:20px}
.career-application{display:grid;grid-template-columns:.8fr 1.2fr;gap:60px;align-items:start}.career-application .job-form-wrap{max-width:none;width:100%;margin:0}.application-aside h2{font-size:37px}.application-aside>p{font-size:16px;color:var(--muted);margin-bottom:28px}.application-steps{list-style:none;counter-reset:application;margin:30px 0}.application-steps li{position:relative;padding:0 0 26px 47px;counter-increment:application}.application-steps li::before{content:counter(application);position:absolute;left:0;top:0;width:30px;height:30px;display:grid;place-items:center;border:1px solid #b7d3b9;border-radius:50%;font-size:13px;color:#007c36}.application-steps strong{display:block;font-size:16px;margin-bottom:5px}.application-steps p{font-size:14px;color:var(--muted)}.application-aside .job-note{display:block;padding:20px;font-size:14px;margin:0}.application-aside .job-note p{font-size:14px}.career-faq{padding-top:0}.career-faq h2{font-size:33px}.career-faq .container{max-width:1000px}
.career-application #job-form{padding:0;border:0;box-shadow:none}.career-application .job-form-wrap{padding:30px}.career-application .upload-field{display:block}.career-application .upload-field svg{margin:0 auto 10px}
.route-draw path[stroke-dasharray]{stroke-dashoffset:0;animation:route-travel 18s linear infinite}@keyframes route-travel{to{stroke-dashoffset:-160}}
@media(min-width:901px){.photo-panel:not([data-parallax]) img{transition:transform .7s}.photo-panel:not([data-parallax]):hover img{transform:scale(1.035)}}
@media(max-width:980px){.reason-layout{grid-template-columns:1fr}.reason-photo{min-height:330px}.reason-layout .reasons{grid-template-columns:1fr 1fr}.career-intro{gap:30px}.career-application{gap:30px;grid-template-columns:.85fr 1.15fr}.role-card{padding:24px}.career-strip .container{gap:18px}}
@media(max-width:640px){.reason-photo{min-height:280px}.reason-layout .reasons{grid-template-columns:1fr}.photo-panel figcaption{font-size:23px;padding:60px 24px 24px}.page-hero.career-hero{min-height:660px;padding:125px 0 65px}.page-hero.career-hero h1{font-size:44px}.career-hero .hero-photograph img{object-position:65% center}.career-hero .hero-photograph::after{background:linear-gradient(90deg,#0c1c17e8,#0c1c1770)}.career-strip .container{flex-direction:column;gap:12px}.career-intro,.career-application,.role-grid{grid-template-columns:1fr}.career-intro h2{font-size:32px}.career-intro .photo-panel{height:300px}.career-application{gap:32px}.application-aside h2{font-size:32px}.contact-photo{height:190px}.career-faq h2{font-size:28px}}
@media(prefers-reduced-motion:reduce){.photo-panel img,.career-hero .hero-photograph img{transform:none!important;will-change:auto}.route-draw path{animation:none!important}}
