@media (max-width:768px){body:not(.home) .main-header-nav button:not(:last-child),body:not(.home) .main-header-nav a:not(:last-child),body:not(.home) .subpage-header-nav button:not(:last-child),body:not(.home) .subpage-header-nav a:not(:last-child){display:none!important}.subpage-header-title,.vertical-text{letter-spacing:.01em;text-overflow:ellipsis;overflow:hidden;writing-mode:horizontal-tb!important;white-space:nowrap!important;text-align:left!important;border:none!important;max-width:90vw!important;margin:0!important;padding:0!important;font-size:1.1rem!important;display:inline-block!important}@media (max-width:480px){.main-header-nav button:not(:last-child),.main-header-nav a:not(:last-child),.subpage-logo-text{display:none!important}}}::-webkit-scrollbar{background:#0000001a;width:14px}::-webkit-scrollbar-track{background:#f0f0f0e6;border:1px solid #0000000d;border-radius:12px;box-shadow:inset 0 2px 4px #0000001a}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#2c5f2d 0%,#4a7c59 50%,#97d282 100%);border:2px solid #f0f0f0cc;border-radius:12px;transition:all .3s;box-shadow:0 2px 8px #2c5f2d4d,inset 0 1px 2px #fff3}::-webkit-scrollbar-thumb:hover{background:linear-gradient(135deg,#1f4320 0%,#2c5f2d 50%,#7bc05f 100%);border-color:#f0f0f0e6;transform:scale(1.05);box-shadow:0 4px 12px #2c5f2d66,inset 0 1px 3px #ffffff4d}::-webkit-scrollbar-thumb:active{background:linear-gradient(135deg,#153017 0%,#1f4320 50%,#5fa042 100%);box-shadow:0 2px 6px #2c5f2d99,inset 0 1px 2px #0000001a}::-webkit-scrollbar-corner{background:#f0f0f0e6}html,*{scrollbar-width:auto;scrollbar-color:#2c5f2d #f0f0f0cc}::-webkit-scrollbar{width:14px;height:14px}::-webkit-scrollbar-track{background:#f0f0f0e6;border-radius:12px}::-webkit-scrollbar-thumb{background:linear-gradient(135deg,#2c5f2d 0%,#4a7c59 50%,#97d282 100%);border:2px solid #f0f0f0cc;border-radius:12px}.page-transition-overlay{z-index:9999;opacity:0;visibility:hidden;background:linear-gradient(135deg,#2c5f2d 0%,#1f4320 50%,#153017 100%);justify-content:center;align-items:center;width:100%;height:100%;transition:all .6s cubic-bezier(.4,0,.2,1);display:flex;position:fixed;top:0;left:0}.page-transition-overlay.active{opacity:1;visibility:visible}.page-transition-content{text-align:center;color:#fff;opacity:0;transition:all .4s .2s;transform:translateY(20px)}.page-transition-overlay.active .page-transition-content{opacity:1;transform:translateY(0)}.transition-logo{border:3px solid #97d282;border-radius:50%;justify-content:center;align-items:center;width:80px;height:80px;margin:0 auto 1rem;font-size:2rem;font-weight:700;display:flex;position:relative;overflow:hidden}.transition-logo:before{content:"";background:linear-gradient(45deg,#0000,#97d2824d,#0000);width:200%;height:200%;animation:2s linear infinite rotate;position:absolute;top:-50%;left:-50%}@keyframes rotate{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.transition-text{letter-spacing:1px;margin-bottom:.5rem;font-size:1.2rem;font-weight:300}.transition-subtext{opacity:.8;font-size:.9rem;font-weight:200}.loading-bar{background:#fff3;border-radius:1px;width:200px;height:2px;margin:1.5rem auto 0;overflow:hidden}.loading-bar:before{content:"";background:linear-gradient(90deg,#97d282,#2c5f2d,#97d282);width:100%;height:100%;animation:1.5s ease-in-out infinite loading;display:block;transform:translate(-100%)}@keyframes loading{0%{transform:translate(-100%)}50%{transform:translate(0%)}to{transform:translate(100%)}}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;scroll-padding-top:80px}body{color:#333;background-color:#fff;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6}#hero{will-change:transform;perspective:1000px;transform:translateZ(0)}.parallax-element{will-change:transform;backface-visibility:hidden;transform:translateZ(0)}@media (max-width:768px){@media (orientation:portrait){.slogan-mobile,.hero__slogan,.hero-slogan,.hero-slogan-mobile,.hero__subtitle,.hero__desc{margin:.5rem auto!important;font-size:clamp(1.25rem,3vw,1.8rem)!important;line-height:1.4!important}}@media (hover:none) and (pointer:coarse){#header-main .contatti-link,.main-header-nav .contatti-link,.main-header-nav button,.main-header-nav a{white-space:nowrap!important;word-break:keep-all!important;letter-spacing:-.5px!important;text-align:left!important;justify-content:flex-start!important;margin-left:0!important;padding:0 10px!important}}header.subpage-header{z-index:1000;width:100%;top:0;left:0;right:0;-webkit-backdrop-filter:blur(15px)!important;backdrop-filter:blur(15px)!important;background-color:#fffffff2!important;height:auto!important;position:fixed!important;transform:translateY(0)!important}header.subpage-header.scrolled{transition:background-color .3s,box-shadow .3s,border-bottom .3s;-webkit-backdrop-filter:blur(8px)!important;backdrop-filter:blur(8px)!important;background-color:#fff!important;border-bottom:1px solid #00000014!important;box-shadow:0 2px 12px #0000000f!important}header.subpage-header.scrolled .subpage-header-inner a,header.subpage-header.scrolled .subpage-header-inner span,header.subpage-header.scrolled .subpage-nav-btn{transition:color .2s;color:#333!important;text-shadow:none!important}header.subpage-header.scrolled .subpage-nav-btn.active{font-weight:700;color:#000!important}header.subpage-header.scrolled .subpage-nav-btn:not(.active):hover{color:#000!important}.subpage-header-title,.subpage-header-title span,.vertical-text{letter-spacing:.01em;text-overflow:ellipsis;overflow:hidden;writing-mode:horizontal-tb!important;white-space:nowrap!important;text-align:left!important;border:none!important;max-width:90vw!important;margin:0!important;padding:0!important;font-size:1.1rem!important;display:inline-block!important}.nav-links,.subpage-header-nav{flex-wrap:wrap!important;justify-content:center!important;gap:8px!important;width:100%!important;min-height:44px!important;padding:10px 0 0!important;display:flex!important;overflow-x:auto!important}.nav-collapse{max-height:0;transition:max-height .3s;overflow:hidden}#hero{transform:none}.parallax-bg{background-attachment:scroll!important;transform:none!important}}@media (min-width:769px){.dot-navigation{z-index:1000;flex-direction:column;align-items:center;gap:18px;display:flex;position:fixed;top:50%;right:32px;transform:translateY(-50%)}.dot-navigation .dot{opacity:.5;cursor:pointer;background:#2c5f2d;border:2px solid #fff;border-radius:50%;width:14px;height:14px;transition:opacity .2s,transform .2s;box-shadow:0 2px 8px #2c5f2d26}.dot-navigation .dot.active{opacity:1;background:#97d282;border-color:#2c5f2d;transform:scale(1.2)}}@supports (-webkit-touch-callout:none){#hero{background-attachment:scroll!important}}@media (max-width:768px){#hero{background-position:50%;height:100vh;background-attachment:scroll!important}}.page-wrapper{flex-direction:column;min-height:100vh;display:flex}.container{max-width:1200px;margin:0 auto;padding:0 20px}.hero{text-align:center;color:#fff;justify-content:center;align-items:center;height:100vh;display:flex;position:relative;overflow:hidden}.hero__background{z-index:-1;width:100%;height:100%;position:absolute;top:0;left:0}.hero__image{object-fit:cover;filter:brightness(.4);width:100%;height:100%}.hero__content{z-index:1;max-width:800px;padding:0 20px}.hero__title{letter-spacing:-.02em;margin-bottom:1rem;font-size:3.5rem;font-weight:300}.hero__subtitle{color:#ffffffe6;margin-bottom:2rem;font-size:1.5rem}.hero__cta{color:#fff;background:#2c5f2de6;border-radius:4px;align-items:center;gap:.5rem;padding:1rem 2rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}.hero__cta:hover{background:#2c5f2d;transform:translateY(-2px)}#hero h1{transition:transform .3s ease-out}@keyframes bounce{0%,20%,50%,80%,to{transform:translate(-50%)translateY(0)}40%{transform:translate(-50%)translateY(-10px)}60%{transform:translate(-50%)translateY(-5px)}}@keyframes scrollIndicator{0%{opacity:1;top:0}50%{opacity:.5}to{opacity:0;top:22px}}#hero h1{font-family:Playfair Display,Georgia,serif;transition:transform .3s ease-out}#hero:hover h1{transform:scale(1.01)}.section{padding:4rem 0}.section--dark{background-color:#f8f9fa}.section__header{text-align:center;margin-bottom:3rem}.section__title{color:#2c5f2d;margin-bottom:1rem;font-size:2.5rem;font-weight:300}.section__content{max-width:1000px;margin:0 auto}.section__description{color:#666;text-align:justify;margin-bottom:1.5rem;font-size:1.1rem;line-height:1.8}.services-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:3rem;display:grid}.service-card{background:#fff;border-left:4px solid #2c5f2d;border-radius:8px;padding:2rem;box-shadow:0 2px 10px #0000001a}.service-card__title{color:#2c5f2d;margin-bottom:1rem;font-size:1.3rem;font-weight:600}.service-card__items{flex-direction:column;gap:.5rem;margin-bottom:1.5rem;display:flex}.service-item{color:#555;font-size:.95rem}.service-card__description{color:#666;margin-bottom:1.5rem;font-size:1rem;line-height:1.6}.service-card__link{color:#2c5f2d;border:2px solid #2c5f2d;border-radius:4px;align-items:center;gap:.5rem;padding:.75rem 1.5rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}.service-card__link:hover{color:#fff;background:#2c5f2d}.render-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:2rem;margin-top:2rem;display:grid}.render-card{background:#fff;border-radius:8px;transition:transform .3s;overflow:hidden;box-shadow:0 4px 15px #0000001a}.render-card:hover{transform:translateY(-5px)}.render-card__image{object-fit:cover;width:100%;height:200px}.render-card__title{color:#2c5f2d;margin:1rem 1.5rem .5rem;font-size:1.3rem;font-weight:600}.render-card__description{color:#666;padding:0 1.5rem 1.5rem;line-height:1.6}.section__cta{text-align:center;margin-top:3rem}.contact-content{grid-template-columns:1fr 1fr;gap:4rem;margin-top:2rem;display:grid}.contact-info__title{color:#2c5f2d;margin-bottom:2rem;font-size:1.5rem}.contact-item{align-items:flex-start;gap:1rem;margin-bottom:1.5rem;display:flex}.contact-item__icon{margin-top:.2rem;font-size:1.5rem}.contact-item__content strong{color:#2c5f2d;margin-bottom:.25rem;font-weight:600;display:block}.contact-item__content p,.contact-item__content a{color:#666;text-decoration:none}.contact-item__content a:hover{color:#2c5f2d}.contact-form__title{color:#2c5f2d;margin-bottom:1rem;font-size:1.5rem}.contact-form{flex-direction:column;gap:1rem;display:flex}.form-group{flex-direction:column;display:flex}.form-input{border:2px solid #e9ecef;border-radius:4px;padding:1rem;font-size:1rem;transition:border-color .3s}.form-input:focus{border-color:#2c5f2d;outline:none}textarea.form-input{resize:vertical;min-height:120px}.btn{cursor:pointer;border:none;border-radius:4px;align-items:center;gap:.5rem;padding:1rem 2rem;font-size:1rem;font-weight:500;text-decoration:none;transition:all .3s;display:inline-flex}.btn--primary{color:#fff;background:#2c5f2d}.btn--primary:hover{background:#1e4420;transform:translateY(-2px)}.footer{color:#fff;background:#2c5f2d;margin-top:auto;padding:2rem 0}.footer__content{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;display:flex}.footer__links{gap:2rem;display:flex}.footer__link{color:#fffc;text-decoration:none;transition:color .3s}.footer__link:hover{color:#fff}.animate-on-scroll{opacity:0;transition:all .6s ease-out;transform:translateY(30px)}.animate-on-scroll.animate-in{opacity:1;transform:translateY(0)}@media (max-width:768px){.bonus-grid{min-height:unset!important;grid-template-columns:1fr!important;grid-template-areas:"title""card""content"!important;gap:1.2rem!important}.bonus-title{grid-area:title!important}.bonus-card{grid-area:card!important}.bonus-content{grid-area:content!important}}html,body{max-width:100%;overflow-x:hidden}@media (max-width:1024px){.container,.page-wrapper,#hero>div,.subpage-header-nav,.subpage-header-title{box-sizing:border-box}header>div{max-width:100%!important;margin-left:auto!important;margin-right:auto!important;padding-left:1rem!important;padding-right:1rem!important}.subpage-header-nav{justify-content:flex-end!important;gap:.5rem!important;overflow:hidden!important}.bonus-grid{grid-template-columns:1fr!important;gap:1rem!important}}@media (max-width:768px){#hero{box-sizing:border-box;padding-left:1rem!important;padding-right:1rem!important}#hero .hero-content,#hero>div{text-align:center!important;max-width:100%!important;margin-left:auto!important;margin-right:auto!important}.subpage-header-inner{flex-direction:row!important;justify-content:space-between!important;align-items:center!important;gap:.5rem!important;padding-left:.75rem!important;padding-right:.75rem!important;display:flex!important}.subpage-logo-area{flex:0 auto!important;align-items:center!important;gap:.5rem!important;min-width:0!important;display:flex!important}.subpage-header-title{white-space:nowrap!important;text-overflow:ellipsis!important;max-width:60%!important;display:inline-block!important;overflow:hidden!important}.subpage-header-nav{flex-wrap:wrap!important;justify-content:flex-end!important;align-items:center!important;gap:.4rem!important;max-width:40%!important;display:flex!important;overflow:hidden!important}.subpage-nav-btn{text-overflow:ellipsis!important;max-width:120px!important;overflow:hidden!important}}.subpage-header-title{max-width:70vw;white-space:nowrap!important;text-overflow:ellipsis!important;display:inline-block!important;overflow:hidden!important}.subpage-logo-text{display:none!important}@media (min-width:1078px){.subpage-logo-text{display:inline-block!important}}@media (min-width:1200px){.subpage-header-title{white-space:normal!important;text-overflow:clip!important;max-width:none!important;overflow:visible!important}}@media (min-width:1024px){header.subpage-header:not(.scrolled){z-index:100!important;-webkit-backdrop-filter:none!important;backdrop-filter:none!important;box-shadow:none!important;background-color:#0000!important;position:fixed!important;top:0!important;left:0!important;right:0!important}.subpage-header-inner{flex-direction:row!important;justify-content:space-between!important;align-items:center!important;max-width:1200px!important;margin:0 auto!important;padding-left:2rem!important;padding-right:2rem!important;display:flex!important}.bonus-grid{grid-template-columns:repeat(2,1fr)!important;grid-template-areas:"content card"!important;gap:4rem!important;min-height:400px!important}#hero{height:100vh!important;padding-top:180px!important;padding-bottom:60px!important}#hero h1{font-size:clamp(2rem,5vw,3.5rem)!important;display:block!important}}
