/* View: Views/Home/MyOpenCER.cshtml */
:root {
            --ap-font: "Montserrat", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
            --ap-ink: #1d1d1f;
            --ap-grey: #6e6e73;
            --ap-line: #e4edf5;
            --ap-surface: #f5f5f7;
            --navy: #003c78;
            --blu: #007FBF;
            --cyan: #009FDA;
            --giallo: #FFB704;
            --ls-tight: -.03em;
            --ls-snug: -.015em;
            --lh-tight: 1.05;
        }

        #header.fixed-top {
            background-color: rgba(255,255,255,.82) !important;
            -webkit-backdrop-filter: saturate(180%) blur(12px);
            backdrop-filter: saturate(180%) blur(12px);
            border-bottom: 1px solid var(--ap-line);
        }
        #header.fixed-top a,
        #header.fixed-top .nav-link,
        #header.fixed-top .navbar-nav .nav-link,
        #header.fixed-top li a { color: var(--ap-ink) !important; }

        /* TIPOGRAFIA */
        .titolo-interno {
            font-family: var(--ap-font);
            font-size: clamp(2rem, 4.4vw, 3.4rem);
            font-weight: 600;
            color: var(--ap-ink);
            line-height: var(--lh-tight);
            letter-spacing: var(--ls-tight);
            margin: 0 0 14px;
        }
        h2.home {
            font-family: var(--ap-font);
            font-size: clamp(2rem, 4.4vw, 3.4rem);
            font-weight: 600;
            color: var(--ap-ink);
            line-height: var(--lh-tight);
            letter-spacing: var(--ls-tight);
            margin: 0 0 14px;
        }
        .titolo-interno span.hl,
        h2.home span.hl { color: var(--cyan); }
        .titolo-medio {
            font-family: var(--ap-font);
            font-size: 1.4rem;
            font-weight: 600;
            color: var(--ap-ink);
            line-height: 1.3;
            letter-spacing: var(--ls-snug);
            margin: 0 0 .5rem;
        }
        .sottotitolo-interno {
            font-family: var(--ap-font);
            font-size: clamp(1rem, 1.2vw, 1.12rem);
            font-weight: 400;
            color: var(--ap-grey);
            line-height: 1.7;
            margin: 0 0 .5rem;
        }

        .myoc-cta {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            background: var(--ap-ink);
            color: #fff;
            font-family: var(--ap-font);
            font-size: 16px;
            font-weight: 500;
            padding: 16px 30px;
            border-radius: 980px;
            text-decoration: none;
            transition: background .2s, transform .15s;
        }
        .myoc-cta:hover { background: #000; color: #fff; transform: translateY(-1px); text-decoration: none; }
        .myoc-btn-ghost {
            display: inline-flex;
            align-items: center;
            gap: 8px;
            background: #fff;
            color: var(--ap-ink);
            border: 1px solid var(--ap-line);
            font-family: var(--ap-font);
            font-size: 16px;
            font-weight: 500;
            padding: 15px 28px;
            border-radius: 980px;
            text-decoration: none;
            transition: border-color .2s, transform .15s;
        }
        .myoc-btn-ghost:hover { border-color: #b8b8c0; color: var(--ap-ink); transform: translateY(-1px); text-decoration: none; }

        /* HERO */
        #hero_MYOC_new {
            position: relative;
            display: flex;
            align-items: center;
            min-height: 100vh;
            background: #fff !important;
            background-image: none !important;
            overflow: hidden;
            padding: clamp(120px, 13vw, 170px) 0 clamp(64px, 8vw, 100px);
        }
        #hero_MYOC_new::before {
            content: "";
            position: absolute;
            z-index: 0;
            top: 50%;
            right: -14%;
            width: 60%;
            aspect-ratio: 1;
            transform: translateY(-50%);
            background: radial-gradient(circle, rgba(0,159,218,.12), transparent 65%);
            filter: blur(70px);
            pointer-events: none;
        }
        #hero_MYOC_new .container { position: relative; z-index: 2; }
        .hero-content { max-width: 620px; }
        #hero_MYOC_new h1 {
            font-family: var(--ap-font);
            font-size: clamp(2.8rem, 5.4vw, 4.8rem);
            font-weight: 600;
            color: var(--ap-ink);
            line-height: var(--lh-tight);
            letter-spacing: var(--ls-tight);
            margin: 0 0 20px;
        }
        .hero-divider {
            width: 56px;
            height: 3px;
            border: 0;
            border-radius: 3px;
            background: var(--cyan);
            margin: 0 0 28px;
            opacity: 1;
        }
        #hero_MYOC_new .hero-sub {
            font-family: var(--ap-font);
            font-size: clamp(1rem, 1.3vw, 1.18rem);
            font-weight: 400;
            color: var(--ap-grey);
            line-height: 1.65;
            margin: 0 0 30px;
            max-width: 520px;
        }
        .hero-actions { display: flex; gap: 14px; flex-wrap: wrap; }
        .hero-checks {
            display: flex;
            flex-wrap: wrap;
            gap: 12px 26px;
            margin: 34px 0 0;
        }
        .hero-check {
            display: flex;
            align-items: center;
            gap: 9px;
            font-family: var(--ap-font);
            color: var(--ap-ink);
            font-size: 14px;
            font-weight: 500;
        }
        .hero-check-dot {
            width: 22px;
            height: 22px;
            background: var(--cyan);
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 11px;
            color: #fff;
            font-weight: 900;
            flex-shrink: 0;
        }
        .hero-media {
            position: absolute;
            z-index: 1;
            right: -4%;
            bottom: -20%;
            width: 54%;
                transform: rotate(-5deg);

            pointer-events: none;
        }
        .hero-media img {
            width: 100%;
            height: auto;
            display: block;
            filter: drop-shadow(0 50px 90px rgba(0,60,120,.20));
        }

        .hero-myoc-stats {
            display: flex;
            gap: 44px;
            margin-top: 44px;
            flex-wrap: wrap;
            padding-top: 32px;
            border-top: 1px solid var(--ap-line);
        }
        .hero-myoc-stat .stat-num {
            font-family: var(--ap-font);
            font-size: clamp(1.8rem, 2.6vw, 2.3rem);
            font-weight: 600;
            color: var(--ap-ink);
            letter-spacing: var(--ls-tight);
            line-height: 1;
        }
        .hero-myoc-stat .stat-label {
            font-family: var(--ap-font);
            font-size: 0.74rem;
            color: var(--ap-grey);
            text-transform: uppercase;
            letter-spacing: 1.5px;
            margin-top: 8px;
        }

        .divisore-minimal {
            border: none;
            border-top: 1px solid #e4edf5;
            margin: 0;
            opacity: 1;
        }

        .sez-label-white {
            font-family: var(--ap-font);
            font-size: 12px;
            font-weight: 700;
            color: rgba(255,255,255,.55);
            text-transform: uppercase;
            letter-spacing: 2px;
            margin-bottom: 12px;
        }
        .sez-label-blu {
            font-family: var(--ap-font);
            font-size: 12px;
            font-weight: 700;
            color: var(--ap-grey);
            text-transform: uppercase;
            letter-spacing: 2px;
            margin-bottom: 12px;
        }

        .sez-intro-myoc {
            padding: 96px 0;
            background: #fff;
        }

        .form-garanzie {
            display: flex;
            flex-direction: column;
            gap: 14px;
            margin-top: 28px;
            padding-top: 24px;
            border-top: 1px solid var(--ap-line);
        }
        .form-garanzia-item {
            display: flex;
            align-items: center;
            gap: 14px;
            font-family: var(--ap-font);
            font-size: 14px;
            color: var(--ap-ink);
            font-weight: 500;
        }
        .fg-icon {
            width: 40px;
            height: 40px;
            background: transparent;
            border: 1px solid var(--ap-line);
            border-radius: 12px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 16px;
            color: var(--ap-ink);
            flex-shrink: 0;
        }


        .sez-ottieni-myoc {
            position: relative;
            overflow: hidden;
            background: #000;
            padding: clamp(72px, 9vw, 130px) 0;
        }

        .sez-ottieni-myoc .container { position: relative; z-index: 1; }
        .sez-ottieni-myoc .sez-label-blu { color: rgba(255,255,255,.52); }
        .sez-ottieni-myoc .titolo-interno { color: #fff; }
        .sez-ottieni-myoc .titolo-interno span.hl { color: var(--cyan); }
        .sez-ottieni-myoc .sottotitolo-interno {
            color: rgba(255,255,255,.62);
            max-width: 780px;
        }
        .card-feature-myoc {
            background: linear-gradient(180deg, #ffffff 0%, var(--ap-surface) 100%);
            border: 1px solid rgba(255,255,255,.10);
            border-radius: 24px;
            padding: 36px 32px;
            height: 100%;
            transition: transform .35s cubic-bezier(.2,.65,.3,1), box-shadow .35s, border-color .35s;
        }
        .card-feature-myoc:hover {
            transform: translateY(-6px);
            border-color: rgba(0,159,218,.55);
            box-shadow: 0 34px 74px -28px rgba(0,159,218,.55);
        }
        .card-feature-myoc .cf-icon {
            width: 54px;
            height: 54px;
            background: #fff;
            border: 1px solid var(--ap-line);
            border-radius: 16px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 25px;
            color: var(--cyan);
            margin-bottom: 22px;
            flex-shrink: 0;
        }
        .card-feature-myoc h4 {
            font-family: var(--ap-font);
            font-size: 1.18rem;
            font-weight: 600;
            color: var(--ap-ink);
            letter-spacing: var(--ls-snug);
            line-height: 1.2;
            margin-bottom: 10px;
        }
        .card-feature-myoc p {
            font-family: var(--ap-font);
            font-size: .95rem;
            color: var(--ap-grey);
            margin-bottom: 0;
            line-height: 1.65;
        }
        .card-feature-myoc ul {
            padding-left: 0;
            list-style: none;
            margin: 12px 0 0;
        }
        .card-feature-myoc ul li {
            font-family: var(--ap-font);
            font-size: .9rem;
            color: var(--ap-grey);
            padding: 4px 0 4px 18px;
            position: relative;
            line-height: 1.55;
        }
        .card-feature-myoc ul li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 11px;
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background: var(--cyan);
        }

        .sez-piattaforma {
            background: rgb(0,127,191);
            padding: 96px 0;
        }
        .modulo-card {
            background: rgba(255,255,255,.1);
            border: 1px solid rgba(255,255,255,.18);
            border-radius: 14px;
            padding: 32px 28px;
            height: 100%;
            transition: background .2s;
        }
        .modulo-card:hover { background: rgba(255,255,255,.16); }
        .modulo-card .mod-icon {
            width: 48px;
            height: 48px;
            background: rgba(255,255,255,.18);
            border-radius: 10px;
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 22px;
            color: #ff9900;
            margin-bottom: 18px;
        }
        .modulo-card h4 {
            font-size: .97rem;
            font-weight: 700;
            color: #fff;
            margin-bottom: 10px;
        }
        .modulo-card p {
            font-size: .87rem;
            color: rgba(255,255,255,.75);
            margin-bottom: 10px;
            line-height: 1.65;
        }
        .modulo-card ul {
            padding-left: 0;
            list-style: none;
            margin: 0;
        }
        .modulo-card ul li {
            font-size: .84rem;
            color: rgba(255,255,255,.72);
            padding: 4px 0 4px 18px;
            position: relative;
            line-height: 1.5;
        }
        .modulo-card ul li::before {
            content: "";
            position: absolute;
            left: 0;
            top: 10px;
            width: 6px;
            height: 6px;
            border-radius: 50%;
            background: #ff9900;
        }
        .modulo-img {
            border-radius: 16px;
            box-shadow: 0 24px 64px rgba(0,0,0,.25);
            width: 100%;
        }

        /* PERCHE */
        .sez-perche {
            padding: clamp(64px, 9vw, 120px) 0;
            background: #fff;
        }
        .perche-item {
            display: flex;
            align-items: flex-start;
            gap: 24px;
            padding: 22px 0;
            border-bottom: 1px solid var(--ap-line);
        }
        .perche-item:last-child { border-bottom: none; }
        .perche-num {
            font-family: var(--ap-font);
            font-size: 1rem;
            font-weight: 600;
            color: var(--ap-ink);
            letter-spacing: var(--ls-snug);
            line-height: 1.4;
            min-width: 150px;
            flex-shrink: 0;
        }
        .perche-item h4 {
            font-family: var(--ap-font);
            font-size: .95rem;
            font-weight: 400;
            color: var(--ap-grey);
            line-height: 1.65;
            margin: 0;
        }
        .colonna-immagine {
            display: flex;
            align-items: stretch;
        }
        .img-box-myoc {
            position: relative;
            width: 100%;
            min-height: 460px;
            border: 1px solid var(--ap-line);
            border-radius: 24px;
            overflow: hidden;
            box-shadow: 0 34px 80px -34px rgba(0,159,218,.38),
                        0 0 54px -18px rgba(0,159,218,.20);
        }
        .img-box-myoc img {
            position: absolute;
            inset: 0;
            width: 100%;
            height: 100%;
            object-fit: cover;
            display: block;
        }

        /* CER ESISTENTI */
        .sez-cer-esistenti {
            background: var(--ap-surface);
            padding: clamp(64px, 9vw, 120px) 0;
        }
        .cer-logo-card {
            background: #fff;
            border: 1px solid var(--ap-line);
            border-radius: 20px;
            padding: 20px 16px;
            display: flex;
            flex-direction: column;
            align-items: center;
            gap: 12px;
            text-decoration: none;
            transition: transform .3s cubic-bezier(.2,.65,.3,1), box-shadow .3s, border-color .3s;
            height: 100%;
        }
        .cer-logo-card:hover {
            transform: translateY(-5px);
            border-color: rgba(0,159,218,.30);
            box-shadow: 0 26px 60px -30px rgba(0,159,218,.42);
            text-decoration: none;
        }
        .cer-logo-card .cer-logo-wrap {
            width: 100%;
            height: 70px;
            display: flex;
            align-items: center;
            justify-content: center;
        }
        .cer-logo-card img {
            max-height: 60px;
            max-width: 100%;
            object-fit: contain;
            filter: grayscale(100%);
            opacity: .72;
            transition: filter .3s, opacity .3s;
        }
        .cer-logo-card:hover img { filter: grayscale(0%); opacity: 1; }
        .cer-logo-card .cer-nome {
            font-family: var(--ap-font);
            font-size: .82rem;
            font-weight: 600;
            color: var(--ap-ink);
            text-align: center;
            line-height: 1.4;
            letter-spacing: var(--ls-snug);
        }
        .cer-logo-card .cer-cta {
            font-family: var(--ap-font);
            font-size: .74rem;
            font-weight: 700;
            color: var(--ap-grey);
            text-transform: uppercase;
            letter-spacing: 1.2px;
            transition: color .2s;
        }
        .cer-logo-card:hover .cer-cta { color: var(--cyan); }

        /* PARTNER PRINCIPALE */
        .hp-sec {
            padding: clamp(64px, 9vw, 120px) 0;
            text-align: center;
        }
        .hp-sec--light {
            background: #fff;
            border-top: 1px solid var(--ap-line);
        }
        .hp-title {
            font-family: var(--ap-font);
            font-size: clamp(2rem, 4.4vw, 3.4rem);
            font-weight: 600;
            color: var(--ap-ink);
            line-height: var(--lh-tight);
            letter-spacing: var(--ls-tight);
            margin: 0 auto 18px;
            max-width: 860px;
        }
        .hp-title span.hl { color: var(--cyan); }
        .hp-sub {
            font-family: var(--ap-font);
            font-size: clamp(1rem, 1.2vw, 1.12rem);
            font-weight: 400;
            color: var(--ap-grey);
            line-height: 1.7;
            margin: 0 auto;
            max-width: 720px;
        }
        .main-partner-logos {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            justify-content: center;
            gap: 44px;
        }
        .main-partner-logos a {
            display: inline-flex;
            align-items: center;
            justify-content: center;
            text-decoration: none;
            transition: transform .3s cubic-bezier(.2,.65,.3,1);
        }
        .main-partner-logos a:hover { transform: translateY(-4px); }
        .main-partner-logos img {
            max-height: 72px;
            max-width: 100%;
            width: auto;
            height: auto;
            object-fit: contain;
            filter: grayscale(100%);
            opacity: .72;
            transition: filter .3s, opacity .3s;
        }
        .main-partner-logos a:hover img { filter: grayscale(0%); opacity: 1; }

        /* CTA FINALE */
        .sez-myoc-cta { background: #fff; padding: clamp(64px, 9vw, 120px) 0; }
        .myoc-cta-band {
            position: relative;
            overflow: hidden;
            background: linear-gradient(135deg, #e7f6fd 0%, #f3fbff 55%, #ffffff 100%);
            border: 1px solid #d4ecfa;
            border-radius: 32px;
            padding: clamp(56px, 8vw, 110px) 32px;
            text-align: center;
        }
        .myoc-cta-band::before {
            content: "";
            position: absolute;
            z-index: 0;
            top: -45%;
            left: 50%;
            width: 70%;
            aspect-ratio: 1;
            transform: translateX(-50%);
            background: radial-gradient(circle, rgba(0,159,218,.20), transparent 65%);
            filter: blur(54px);
            pointer-events: none;
        }
        .myoc-cta-band > * { position: relative; z-index: 1; }
        .myoc-cta-band .titolo-interno { font-size: clamp(2.4rem, 6vw, 4.4rem); }
        .myoc-actions {
            margin-top: 30px;
            display: flex;
            gap: 14px;
            flex-wrap: wrap;
            justify-content: center;
        }

        @media (max-width: 1399px) {
            .hero-media { width: 50%; right: -6%; bottom: -8%; }
        }
        @media (max-width: 1199px) {
            .hero-media { width: 46%; right: -8%; bottom: -4%; }
            .hero-content { max-width: 520px; }
        }
        @media (max-width: 991px) {
            #hero_MYOC_new {
                min-height: auto;
                text-align: center;
                padding-bottom: 0;
            }
            .hero-content { max-width: 100%; }
            #hero_MYOC_new .hero-divider { margin-left: auto; margin-right: auto; }
            #hero_MYOC_new .hero-sub { margin-left: auto; margin-right: auto; }
            .hero-actions { justify-content: center; }
            .hero-checks { justify-content: center; }
            .hero-myoc-stats { justify-content: center; gap: 28px; }
            .hero-media {
                position: relative;
                right: auto;
                bottom: auto;
                width: 100%;

                margin: 44px auto 0;
            }
            .colonna-immagine { margin-top: 48px; }
            .img-box-myoc { min-height: 360px; }
            .perche-item { flex-direction: column; gap: 6px; }
            .perche-num { min-width: 0; }
        }
        @media (max-width: 768px) {
            #hero_MYOC_new h1 { font-size: clamp(2.4rem, 10vw, 3rem); }
            .sez-intro-myoc, .sez-ottieni-myoc, .sez-perche, .sez-cer-esistenti { padding: 64px 0; }
            .sez-piattaforma { padding: 64px 0; }
            .card-feature-myoc { padding: 30px 26px; }
            .hp-sec { padding: 64px 0; }
            .img-box-myoc { min-height: 280px; border-radius: 20px; }
            .main-partner-logos { gap: 28px; }
            .main-partner-logos img { max-height: 56px; }
        }
        @media (max-width: 767px) {
            #hero_MYOC_new {
                padding-top: clamp(104px, 24vw, 140px);
                padding-bottom: clamp(56px, 12vw, 80px);
            }
            #hero_MYOC_new::before {
                top: 44%;
                right: -34%;
                width: 124%;
            }
            #hero_MYOC_new .hero-sub { margin-bottom: 26px; }
            .hero-media { display: none; }
            .hero-checks { gap: 10px 18px; margin-top: 28px; }
            .hero-check { font-size: 13px; }
            .hero-actions { flex-direction: column; align-items: stretch; gap: 12px; }
            .hero-actions .myoc-cta,
            .hero-actions .myoc-btn-ghost { justify-content: center; }
            .hero-myoc-stats {
                gap: 26px 20px;
                margin-top: 36px;
                padding-top: 26px;
            }
            .hero-myoc-stat { flex: 1 1 40%; }
        }
.btn-outlineWHI{color:#fff!important;padding:20px;border:1px solid #fff !important;padding: 20px; border-width: 1px 1px 1px 1px !important; border-style: solid; border-color: rgb(255, 255, 255); border-image: initial;}
    .btn-outlineWHI:hover{background-color:#007fbf;color:#000 !important;}
    .checklabel{font-size:13px;}
