﻿*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}html{font-size:100%;scroll-behavior:smooth;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background-color:#0d1b2a;color:#f0f2f5;font-family:"Lato","Helvetica","Arial",sans-serif;line-height:1.6}h1,h2,h3,h4,h5,h6{font-family:"Montserrat","Helvetica","Arial",sans-serif;color:#f0f2f5;font-weight:700;line-height:1.2;margin-bottom:1rem}a{color:#00b4d8;text-decoration:none;transition:color 0.3s ease-in-out}a:hover{color:#0cd7ff}.container{width:90%;max-width:1200px;margin-left:auto;margin-right:auto}@keyframes fadeInUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.animate-fadeInUp{opacity:0;animation:fadeInUp 0.8s 0.2s cubic-bezier(0.45, 0.05, 0.55, 0.95) forwards}.animate-fadeIn{opacity:0;animation:fadeIn 1s 0.2s ease-in-out forwards}.hover-lift{transition:transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out}.hover-lift:hover{transform:translateY(-4px);box-shadow:0 10px 20px rgba(0,0,0,0.2)}.main-nav{position:fixed;top:0;left:0;width:100%;z-index:1000;background-color:rgba(13,27,42,0.8);backdrop-filter:blur(8px);border-bottom:1px solid rgba(65,90,119,0.3);padding:1rem 0;transition:background-color 0.3s ease-in-out, padding 0.3s ease-in-out}.main-nav.is-scrolled{background-color:#0d1b2a;box-shadow:0 2px 10px rgba(0,0,0,0.2)}.main-nav__container{display:flex;justify-content:space-between;align-items:center}@media (max-width: 768px){.main-nav__container{flex-direction:column;align-items:flex-start;gap:1rem}}.main-nav__brand{font-family:"Montserrat","Helvetica","Arial",sans-serif;font-size:1.5rem;font-weight:800;text-transform:uppercase;letter-spacing:1.5px;color:#f0f2f5;transition:color 0.3s ease}.main-nav__brand:hover{color:#00b4d8}@media (max-width: 768px){.main-nav__brand{font-size:1.2rem}}.main-nav__menu{display:flex;align-items:center;gap:2rem}@media (max-width: 768px){.main-nav__menu{width:100%;overflow-x:auto;overflow-y:hidden;gap:1.5rem;padding-bottom:.5rem;scrollbar-width:thin;scrollbar-color:rgba(0,180,216,0.3) transparent;flex-wrap:nowrap}.main-nav__menu::-webkit-scrollbar{height:3px}.main-nav__menu::-webkit-scrollbar-track{background:transparent}.main-nav__menu::-webkit-scrollbar-thumb{background-color:rgba(0,180,216,0.3);border-radius:3px}}.main-nav__item{font-family:"Montserrat","Helvetica","Arial",sans-serif;font-weight:600;font-size:0.9rem;text-transform:uppercase;color:#a9b4c2;padding:.5rem 0;position:relative;transition:color 0.3s ease-in-out}@media (max-width: 768px){.main-nav__item{white-space:nowrap;flex-shrink:0;font-size:0.85rem}}.main-nav__item::after{content:"";position:absolute;bottom:0;left:0;width:0;height:2px;background-color:#00b4d8;transition:width 0.3s cubic-bezier(0.45, 0.05, 0.55, 0.95)}.main-nav__item:hover,.main-nav__item.is-active{color:#f0f2f5}.main-nav__item:hover::after,.main-nav__item.is-active::after{width:100%}.main-nav__item--external{display:inline-flex;align-items:center;gap:0.5em}.hero{position:relative;display:flex;align-items:center;justify-content:center;width:100%;min-height:90vh;text-align:center;overflow:hidden;background-size:cover;background-position:center center;background-repeat:no-repeat;padding:5rem 0}.hero-overlay{position:absolute;top:0;left:0;width:100%;height:100%;z-index:1;background:linear-gradient(to top, rgba(13,27,42,0.8) 0%, rgba(13,27,42,0.5) 70%, rgba(13,27,42,0.4) 100%)}.hero-content{position:relative;z-index:2;color:#f0f2f5;max-width:800px}.hero-tagline{font-family:"Montserrat","Helvetica","Arial",sans-serif;font-weight:600;font-size:1.1rem;text-transform:uppercase;letter-spacing:2px;color:#00b4d8;opacity:0;animation:fadeInUp 0.8s 0.3s ease-out forwards}.hero-title{font-size:clamp(2.5rem, 6vw, 4.5rem);font-weight:800;text-transform:uppercase;letter-spacing:1.5px;margin:.5rem 0;text-shadow:0 2px 10px rgba(0,0,0,0.3);opacity:0;animation:fadeInUp 0.8s 0.5s ease-out forwards}.hero-subtitle{font-size:1.25rem;font-weight:300;color:#a9b4c2;margin:0 auto 2rem;max-width:600px;opacity:0;animation:fadeInUp 0.8s 0.7s ease-out forwards}.hero-button{opacity:0;animation:fadeInUp 0.8s 0.9s ease-out forwards}.hero.hero-secondary{min-height:80vh}.hero.hero-secondary .hero-title{font-size:clamp(2rem, 5vw, 3rem)}.hero.hero-secondary .hero-subtitle{font-size:1.1rem}.hero.hero-gradient{min-height:45vh;background-image:linear-gradient(45deg, #0d1b2a 0%, #1b263b 100%)}.hero.hero-gradient .hero-overlay{background:none}.hero.hero-gradient .hero-content{animation:none}.hero.hero-gradient .hero-title{opacity:1;animation:none;font-size:clamp(2.5rem, 7vw, 4rem)}.hero.hero-gradient .hero-tagline{opacity:1;animation:none}.info-cards-section{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:2rem;margin-top:4rem;margin-bottom:4rem}.info-card{display:flex;flex-direction:column;background-color:#1b263b;padding:2rem;border-radius:10px;border:1px solid #415a77;color:#a9b4c2;text-decoration:none;transition:transform 0.3s ease-in-out, box-shadow 0.3s ease-in-out, border-color 0.3s ease-in-out}.info-card:hover{transform:translateY(-8px);box-shadow:0 15px 25px rgba(0,0,0,0.3);border-color:#00b4d8}.info-card-title{font-size:1.5rem;font-weight:700;color:#f0f2f5;margin-bottom:1rem}.info-card-title::after{content:"→";display:inline-block;color:#00b4d8;margin-left:0.5em;opacity:0;transition:opacity 0.3s ease, transform 0.3s ease}.info-card:hover .info-card-title::after{opacity:1;transform:translateX(5px)}.info-card.info-card-pricing:hover{transform:none;box-shadow:none;border-color:#415a77}.info-card.info-card-pricing .info-card-title::after{display:none}.info-card.info-card-pricing .pricing-content{line-height:1.8}.info-card.info-card-pricing .pricing-content p{margin:0}.info-card.info-card-pricing .pricing-content strong{color:#f0f2f5}.info-card.info-card-pricing .pricing-content ul{list-style-position:inside;padding-left:0}.pricing-notice{margin:2rem auto;padding:1rem;max-width:800px;color:#00b4d8;border:1px solid #00b4d8;border-radius:5px;background-color:rgba(0,180,216,0.1)}.text-center{text-align:center}.section-title,.directions-section .section-title-light{font-size:clamp(2rem, 5vw, 2.5rem);text-align:center;margin-top:5rem;margin-bottom:.5rem;text-transform:uppercase;letter-spacing:1px;position:relative;padding-bottom:1rem}.section-title::after,.directions-section .section-title-light::after{content:"";position:absolute;bottom:0;left:50%;transform:translateX(-50%);width:80px;height:3px;background-color:#00b4d8}.section-subtitle{text-align:center;font-size:1.1rem;color:#a9b4c2;max-width:700px;margin:0 auto 4rem}.text-image-section{margin-bottom:5rem}.text-image-grid{display:grid;grid-template-columns:1fr 1fr;gap:4rem;align-items:center}.text-image-grid.image-right .text-image-img-container{order:2}.text-image-grid.image-right .text-image-content{order:1}.text-image-img-container{position:relative}.text-image-img-container img{display:block;width:100%;height:auto;border-radius:5px;position:relative;z-index:2}.image-decoration{position:absolute;width:100%;height:100%;top:-15px;left:-15px;background-color:transparent;border:3px solid #00b4d8;border-radius:5px;z-index:1;transition:transform 0.4s ease-in-out}.text-image-section:hover .image-decoration{transform:translate(15px, 15px)}.text-image-content .content-heading{font-size:1.8rem;color:#00b4d8;margin-bottom:1rem}.text-image-content p{margin-bottom:1rem;color:#a9b4c2;line-height:1.7}.text-image-content strong{color:#f0f2f5}.text-image-content h3{font-size:1.5rem;color:#f0f2f5;margin-top:2.5rem;margin-bottom:1rem;border-bottom:1px solid #415a77;padding-bottom:.5rem}.text-image-content h4{font-size:1.25rem;font-weight:600;color:#f0f2f5;margin-top:2rem;margin-bottom:.75rem}.text-image-content hr{border:none;height:1px;background-color:#415a77;margin:2.5rem 0}.text-image-content ul{list-style:none;padding-left:0;margin-bottom:1rem}.text-image-content li{position:relative;padding-left:1.5em;margin-bottom:0.75em;color:#a9b4c2}.text-image-content li::before{content:"•";position:absolute;left:0;color:#00b4d8;font-size:1.2rem;line-height:1}.text-image-content .features-list{display:grid;grid-template-columns:repeat(auto-fit, minmax(220px, 1fr));gap:1rem;margin-top:2rem;margin-bottom:2rem;padding:0;list-style:none}.text-image-content .feature-item{display:flex;align-items:center;gap:1rem;background-color:rgba(27,38,59,0.3);padding:1rem;border-radius:5px}.text-image-content .feature-icon{font-size:1.5rem}.text-image-content .contact-box{background-color:#1b263b;border:1px solid #415a77;border-radius:5px;padding:1.5rem;margin-top:2rem}.text-image-content .contact-item{display:flex;justify-content:space-between;align-items:center;padding:1rem 0;flex-wrap:wrap}.text-image-content .contact-item:not(:last-child){border-bottom:1px solid #415a77}.text-image-content .contact-item strong{color:#a9b4c2}.text-image-content .contact-item a{font-weight:bold;font-size:1.1rem}.text-image-content .objectives-list{list-style:none;padding-left:0;margin:1.5rem 0}.text-image-content .objectives-list li{position:relative;padding-left:1.5em;margin-bottom:0.75em}.text-image-content .objectives-list li::before{content:"✔";position:absolute;left:0;top:0;color:#00b4d8;font-weight:bold}.text-image-content .program-event{margin-bottom:2rem}.text-image-content .program-event:last-child{margin-bottom:0}.text-image-content .program-event .content-heading{font-size:1.3rem}@media (max-width: 800px){.text-image-grid{grid-template-columns:1fr;gap:2rem}.text-image-grid.image-right .text-image-img-container,.text-image-grid.image-right .text-image-content{order:initial}.text-image-img-container{order:1}.text-image-content{order:2}}.services-section{margin-top:5rem;margin-bottom:5rem}.services-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:1.5rem}.service-card{background-color:transparent;border:1px solid #415a77;padding:1rem 1.5rem;border-radius:5px;color:#a9b4c2;font-weight:500;display:flex;align-items:center;transition:border-color 0.3s ease, background-color 0.3s ease}.service-card:hover{border-color:#00b4d8;background-color:rgba(27,38,59,0.5)}.service-card::before{content:"✓";color:#00b4d8;font-size:1.2rem;font-weight:bold;margin-right:1rem}.services-section.animate-on-scroll.is-visible .service-card{animation:scaleUp 0.6s ease-out forwards;opacity:0}.services-section.animate-on-scroll.is-visible .service-card:nth-child(1){animation-delay:.1s}.services-section.animate-on-scroll.is-visible .service-card:nth-child(2){animation-delay:.2s}.services-section.animate-on-scroll.is-visible .service-card:nth-child(3){animation-delay:.3s}.services-section.animate-on-scroll.is-visible .service-card:nth-child(4){animation-delay:.4s}.services-section.animate-on-scroll.is-visible .service-card:nth-child(5){animation-delay:.5s}.services-section.animate-on-scroll.is-visible .service-card:nth-child(6){animation-delay:.6s}.services-section.animate-on-scroll.is-visible .service-card:nth-child(7){animation-delay:.7s}.services-section.animate-on-scroll.is-visible .service-card:nth-child(8){animation-delay:.8s}.services-section.animate-on-scroll.is-visible .service-card:nth-child(9){animation-delay:.9s}.services-section.animate-on-scroll.is-visible .service-card:nth-child(10){animation-delay:1s}.services-section.animate-on-scroll.is-visible .service-card:nth-child(11){animation-delay:1.1s}.services-section.animate-on-scroll.is-visible .service-card:nth-child(12){animation-delay:1.2s}@keyframes scaleUp{from{opacity:0;transform:scale(0.9)}to{opacity:1;transform:scale(1)}}.main-footer{background-color:#1b263b;color:#a9b4c2;padding:4rem 0 2rem 0;margin-top:5rem;border-top:1px solid #415a77;font-size:0.9rem}.footer-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:3rem;margin-bottom:3rem}.footer-column p{line-height:1.7}.footer-heading{font-family:"Montserrat","Helvetica","Arial",sans-serif;color:#f0f2f5;font-size:1.1rem;font-weight:600;text-transform:uppercase;margin-bottom:1rem}.footer-links{list-style:none;padding:0;margin:0}.footer-links li{margin-bottom:.5rem}.footer-links a{color:#a9b4c2;text-decoration:none;transition:color 0.3s ease, padding-left 0.3s ease}.footer-links a:hover{color:#00b4d8;padding-left:5px}.footer-bottom-bar{text-align:center;padding-top:2rem;margin-top:2rem;border-top:1px solid #4a6687;font-size:0.85rem}.simple-text-section{padding:3rem 0}.simple-text-section .section-content{max-width:750px;margin:0 auto;line-height:1.8;color:#a9b4c2}.simple-text-section .text-center{text-align:center}.pricing-section{padding:3rem 0}.pricing-box{max-width:900px;margin:2rem auto 0;background-color:#1b263b;padding:2.5rem;border:1px solid #415a77;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,0.2)}.pricing-header{text-align:center;margin-bottom:2.5rem;padding-bottom:1.5rem;border-bottom:1px solid #415a77}.pricing-header .price{font-size:clamp(3rem, 8vw, 4rem);font-weight:800;color:#00b4d8;display:block;line-height:1}.pricing-header .price-text{color:#a9b4c2;margin-top:.5rem;display:block}.pricing-notes{font-size:0.9rem;color:#a9b4c2;text-align:center;margin:2.5rem 0}.pricing-notes p{margin-bottom:0.5em}.pricing-box .contact-box{margin-top:2rem;background-color:rgba(13,27,42,0.8)}.pricing-box .contact-box .contact-item{flex-wrap:wrap;gap:0.5em;padding:2rem}.maestri-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(320px, 1fr));gap:2.5rem}.maestro-card{background-color:transparent;aspect-ratio:4 / 3;perspective:1000px;border-radius:10px;overflow:hidden}.maestro-card-inner{position:relative;width:100%;height:100%;transition:transform 0.7s;transform-style:preserve-3d}.maestro-card:hover .maestro-card-inner{transform:rotateY(180deg)}.maestro-card-front,.maestro-card-back{position:absolute;width:100%;height:100%;-webkit-backface-visibility:hidden;backface-visibility:hidden;border:1px solid #415a77;border-radius:10px}.maestro-card-front{background-color:#1b263b;color:#f0f2f5}.maestro-card-front img{display:block;width:100%;height:100%;object-fit:cover}.maestro-card-back{background-color:#1b263b;color:#f0f2f5;transform:rotateY(180deg);display:flex;flex-direction:column;align-items:center;justify-content:center;padding:1rem;text-align:center}.maestro-name{font-family:"Montserrat","Helvetica","Arial",sans-serif;font-size:1.5rem;font-weight:700;margin:0}.maestro-ruolo{font-size:0.9rem;color:#00b4d8;text-transform:uppercase;letter-spacing:1px;margin-top:.5rem}.directions-section{padding:5rem 0;margin-top:5rem;background-image:linear-gradient(45deg, #09131e 0%, #1b263b 100%);color:#a9b4c2}.directions-section .section-title-light{color:#f0f2f5;margin-top:0}.directions-section .directions-grid{display:grid;grid-template-columns:repeat(auto-fit, minmax(300px, 1fr));gap:3rem;margin-top:4rem;text-align:center}.directions-section .direction-item h3{font-size:1.5rem;color:#00b4d8;margin-bottom:1rem}.directions-section .direction-item p{line-height:1.8}.directions-section .map-container{margin-top:5rem;border:2px solid #415a77;border-radius:5px;overflow:hidden;box-shadow:0 10px 30px rgba(0,0,0,0.2)}.directions-section .map-container iframe{display:block;width:100%;height:600px;border:0}
