@media (min-width: 992px) {
    .navbar-icon-mobile {
        display: none;
    }
}

@media (max-width: 991px) {
    .navbar-container {
        padding: 1rem;
        display: flex;
        align-items: center;
        flex-wrap: wrap;
        justify-content: space-between;
    }
    
    .navbar-toggler {
        order: -1;
        margin-right: 1rem;
        border: none;
    }
    
    .navbar-toggler:focus {
        box-shadow: none;
    }
    
    .navbar-brand {
        order: 0;
        flex-grow: 1;
    }
    
    .navbar-icon-mobile {
        order: 1;
        width: 40px;
        height: 40px;
        border-radius: 50%;
        background-color: var(--primary-color);
        display: flex;
        align-items: center;
        justify-content: center;
        color: white;
        font-size: 1.2rem;
        cursor: pointer;
    }
    
    .navbar-collapse {
        order: 2;
        flex-basis: 100%;
        width: 100%;
    }
    
    .navbar-nav {
        flex-direction: column !important;
        gap: 1rem;
        margin-top: 1rem;
        width: 100%;
        align-items: stretch !important;
    }
    
    .nav-item {
        width: 100%;
        text-align: center;
    }
    
    .nav-link {
        text-align: center;
        padding: 0.5rem 0 !important;
        display: block;
        width: 100%;
    }


    .btn-assistenza {
        width: 100%;
        display: none;
    }

    .footer {
        text-align: center;
    }

    .footer-tagline {
        text-align: center;
    }

    .model-image-container {
        min-height: 400px;
        margin-top: 2rem;
    }

    .target-section{
        min-height: 100vh;
    }

    .role-content {
        padding-right: 0;
        margin-bottom: 3rem;
    }
    
    .role-title {
        font-size: 2rem;
    }
    
    .role-features {
        gap: 2rem;
    }

    .territory-content {
        padding-right: 0;
        text-align: center;
    }
    
    .territory-title {
        font-size: 2.2rem;
    }
    
    .territory-map {
        min-height: 400px;
    }

    .curve-right {
        display: none;
    }
    
    .lux-content-wrapper {
        min-height: auto;
        padding: 3rem 0;
    }
    
    .lux-content {
        padding: 2rem;
        max-width: 100%;
    }
    
    .lux-title {
        font-size: 2.5rem;
    }
    
    .lux-image-wrapper {
        min-height: 400px;
    }

    .events-section {
        padding: 4rem 0;
    }

    .events-section .section-header h2 {
        font-size: 2rem;
    }

    .dhh-image-wrapper {
        min-height: 400px;
        order: 1;
    }
    
    .dhh-content-wrapper {
        min-height: auto;
        padding: 3rem 0;
        order: 2;
    }
    
    .dhh-content {
        padding: 2rem;
    }
    
    .dhh-title {
        font-size: 2.5rem;
    }
    
    .timeline-image {
        margin-top: 3rem;
    }

    .rete-content {
        padding-right: 0;
        margin-bottom: 3rem;
    }
    
    .rete-map {
        text-align: center;
    }

    .services-chi-background {
        min-height: auto;
        padding: 4rem 0;
    }
    
    .service-chi-card {
        min-height: 240px;
    }

    .solutions-sol-content {
        padding: 4rem 2rem;
    }
    
    .solutions-sol-title {
        font-size: 2.2rem;
    }
    
    .solutions-sol-image-wrapper {
        min-height: 500px;
    }
    
    .curve-left {
        display: none;
    }

    .connectivity-header {
        position: relative;
        top: 0;
        text-align: center;
        margin-bottom: 3rem;
    }
    
    .connectivity-main-title {
        font-size: 2.5rem;
    }
    
    .connectivity-icon {
        margin: 0 auto;
    }

    .solutions-form-container {
        padding: 3rem 2.5rem;
    }
    
    .solutions-form-title {
        font-size: 2.2rem;
    }

    .assistenza-type-background {
        padding: 4rem 0 6rem 0;
        min-height: 400px;
    }
    
    .assistenza-type-title {
        font-size: 2rem;
    }
    
    .assistenza-packages-container {
        margin-top: -150px;
    }

}

@media (max-width: 768px) {
    .hero-section {
        height: 80vh;
    }
    
    .hero-title {
        font-size: 2rem;
    }
    
    .hero-subtitle {
        font-size: 1rem;
    }
    
    .curve-bottom svg {
        height: 50px;
    }
    
    .slider-controls {
        bottom: 70px;
    }
    
    .choice-card {
        padding: 2rem 1rem;
    }

    .choice-card.small{
        width: 100%;
    }
    
    .slider-arrow {
        width: 40px;
        height: 40px;
        font-size: 1.2rem;
        display: none;
    }

    .section-header h2 {
        font-size: 2rem;
    }
    
    .model-tab {
        padding: 1rem 0.5rem;
    }
    
    .tab-content-text h5 {
        font-size: 1rem;
    }
    
    .tab-content-text p {
        font-size: 0.85rem;
    }

    .role-section {
        padding: 3rem 0;
    }

    .role-content{
        text-align: center;
    }
    
    .role-title {
        font-size: 1.75rem;
    }
    
    .role-description {
        font-size: 0.95rem;
    }
    
    .role-feature-title {
        font-size: 1.1rem;
    }

    .role-feature-item {
        flex-direction: column;
        align-items: center;
        text-align: center;
    }
    
    .role-feature-icon {
        margin-bottom: 1rem;
    }

    .solutions-section {
        padding: 3rem 0;
    }

    .solution-header {
        padding: 1.5rem;
        gap: 1rem;
    }

    .solution-header h4 {
        font-size: 1.1rem;
    }

    .solution-icon {
        width: 40px;
        height: 40px;
        min-width: 40px;
    }

    .solution-icon img {
        width: 40px;
        height: 40px;
    }

    .solution-toggle {
        width: 35px;
        height: 35px;
        font-size: 1rem;
    }

    .solution-card.active .solution-content {
        padding: 0 1.5rem 1.5rem 1.5rem;
    }

    .solution-content p {
        font-size: 0.9rem;
    }

    .territory-section {
        padding: 3rem 0;
    }
    
    .territory-title {
        font-size: 1.8rem;
    }
    
    .territory-text {
        font-size: 0.95rem;
    }
    
    .territory-expansion h4 {
        font-size: 1.1rem;
    }
    
    .territory-expansion p {
        font-size: 0.95rem;
    }
    
    .territory-map {
        min-height: 300px;
    }
    
    .italy-map {
        max-width: 100%;
    }

    .lux-content {
        padding: 2rem 1.5rem;
    }
    
    .lux-title {
        font-size: 2rem;
    }
    
    .lux-description p {
        font-size: 0.95rem;
    }
    
    .lux-services ul li {
        font-size: 0.9rem;
    }
    
    .lux-image-wrapper {
        min-height: 300px;
    }

    .events-section {
        padding: 3rem 0;
    }

    .events-section .section-header h2 {
        font-size: 1.8rem;
    }

    .event-image {
        height: 200px;
    }

    .event-content {
        padding: 1.5rem;
    }

    .event-title {
        font-size: 1.3rem;
    }

    .event-description {
        font-size: 0.9rem;
    }

    .values-section {
        padding: 3rem 0;
    }
    
    .value-card {
        padding: 2rem 1.5rem;
        min-height: 240px;
    }
    
    .value-icon {
        width: 80px;
        height: 80px;
        margin-bottom: 1.5rem;
    }
    
    .value-icon img {
        width: 60px;
        height: 60px;
    }
    
    .value-title {
        font-size: 1.1rem;
    }

    .dhh-image-wrapper {
        min-height: 300px;
    }
    
    .dhh-content {
        padding: 2rem 1.5rem;
    }
    
    .dhh-title {
        font-size: 2rem;
        margin-bottom: 2rem;
    }
    
    .dhh-description p {
        font-size: 0.95rem;
        margin-bottom: 1.5rem;
    }

    

    .rete-section {
        padding: 3rem 0;
        text-align: center;
    }
    
    .rete-title {
        font-size: 2rem;
    }
    
    .rete-description {
        font-size: 0.95rem;
        margin-bottom: 2rem;
    }
    
    .rete-stats {
        gap: 1.5rem;
    }
    
    .rete-stat-item {
        flex-direction: column;
        gap: 1rem;
    }
    
    .stat-content {
        flex-direction: column;
        align-items: flex-start;
        gap: 0.5rem;
    }
    
    .stat-number {
        font-size: 2.5rem;
        min-width: auto;
        margin: 0 auto;
    }
    
    .stat-text {
        font-size: 0.9rem;
    }

    .services-chi-background {
        padding: 3rem 0;
    }
    
    .service-chi-card {
        padding: 2rem 1.5rem;
        min-height: 220px;
    }
    
    .service-chi-title {
        font-size: 1.3rem;
        margin-bottom: 1rem;
    }
    
    .service-chi-description {
        font-size: 0.95rem;
    }

    .submenu-container.fixed {
        top: 90px;
    }
    
    .submenu-tabs {
        flex-wrap: wrap;
        gap: 0.5rem;
        padding: 1rem;
        border-radius: 20px;
    }
    
    .submenu-tab {
        padding: 0.7rem 1rem;
        font-size: 0.85rem;
        flex: 1 1 calc(50% - 0.5rem);
        min-width: 140px;
    }

    .solutions-sol-content {
        padding: 3rem 1.5rem;
        text-align: center;
    }
    
    .solutions-sol-title {
        font-size: 1.8rem;
    }
    
    .solutions-sol-text {
        font-size: 0.95rem;
    }
    
    .solutions-sol-image-wrapper {
        min-height: 400px;
    }

    .connectivity-details-section {
        padding: 0;
        text-align: center;
    }
    
    .connectivity-main-title {
        font-size: 2rem;
        margin: 2rem 0 2rem 0;
    }
    
    .connectivity-icon {
        height: 100px;
    }
    
    .connectivity-services {
        gap: 2rem;
    }
    
    .connectivity-service-item h4 {
        font-size: 1.1rem;
    }
    
    .connectivity-service-item p {
        font-size: 0.95rem;
    }
    
    .connectivity-decoration {
        height: 100px;
    }

    .connectivity-decoration img{
        width: 100%;
    }

    .solutions-form-section {
        padding: 3rem 0;
    }
    
    .solutions-form-container {
        padding: 2.5rem 1.5rem;
        border-radius: 30px;
    }
    
    .solutions-form-title {
        font-size: 1.8rem;
    }
    
    .solutions-form-subtitle {
        font-size: 0.95rem;
        margin-bottom: 2rem;
    }
    
    .solutions-checkboxes {
        grid-template-columns: 1fr;
        gap: 0.75rem;
    }
    
    .btn-submit-form {
        padding: 0.9rem 3rem;
        width: 100%;
    }

    .board-members-section {
        padding: 3rem 0;
    }

    .board-members-section .row{
        width: 100%;
    }
    
    .board-member-image {
        height: 350px;
    }
    
    .board-member-info {
        padding: 1.5rem;
    }
    
    .board-member-name {
        font-size: 1.3rem;
    }
    
    .board-member-role {
        font-size: 0.95rem;
    }

    .auditors-section {
        padding: 3rem 0;
    }
    
    .auditor-card {
        padding: 2rem 1.5rem;
        min-height: 160px;
    }
    
    .auditor-name {
        font-size: 1.5rem;
    }
    
    .auditor-role {
        font-size: 1rem;
    }

    .assistenza-header-section {
        padding: 3rem 0 2rem 0;
    }
    
    .assistenza-card {
        padding: 2.5rem 2rem;
        min-height: 240px;
    }
    
    .assistenza-card-title {
        font-size: 1.6rem;
        margin-bottom: 1.25rem;
    }
    
    .assistenza-info {
        font-size: 1rem;
    }
    
    .assistenza-description {
        font-size: 1rem;
    }
    
    .assistenza-email {
        font-size: 1rem;
    }

    .assistenza-type-background {
        padding: 3rem 0 5rem 0;
        min-height: 300px;
    }
    
    .assistenza-type-title {
        font-size: 1.75rem;
    }
    
    .assistenza-packages-container {
        margin-top: -100px;
        padding-bottom: 3rem;
    }
    
    .package-header {
        padding: 1.5rem 1.5rem 1rem 1.5rem;
    }
    
    .package-name {
        font-size: 2rem;
    }
    
    .package-body {
        padding: 0 1.5rem 1.5rem 1.5rem;
    }
    
    .package-footer {
        padding: 0 1.5rem 1.5rem 1.5rem;
    }

    .custom-support-inner {
        flex-direction: column;
        padding: 30px 20px;
        text-align: center;
    }
    
    .custom-support-left,
    .custom-support-right {
        flex: 1;
    }
    
    .custom-support-question {
        font-size: 1.5rem;
        margin-bottom: 20px;
    }
    
    .custom-support-action {
        margin-top: 20px;
    }

    .case-history-section {
        padding: 3rem 0;
    }
    
    .video-placeholder {
        padding-top: 60%;
    }
    
    .case-history-content {
        padding: 0;
    }
    
    .case-history-title {
        font-size: 2rem;
    }
    
    .case-history-author {
        font-size: 1rem;
    }
    
    .case-history-tags {
        gap: 0.5rem;
    }
    
    .case-tag {
        font-size: 0.85rem;
        padding: 0.4rem 1rem;
    }

    .footer .row {
        display: flex;
        flex-direction: column;
    }

    .social-d .social-icons{
        display: none;
    }
    
    .social-m .social-icons{
        justify-content: center;
        display: inline-flex;
    }
}

@media (min-width: 600px) {
    .wp-block-gallery.has-nested-images.columns-5 figure.wp-block-image:not(#individual-image) {
        width: calc(15% - var(--wp--style--unstable-gallery-gap, 16px) * .8) !important;
        margin-bottom:60px;
    }
