/* ===== HERO HUB ===== */
/* =========================================================
           HERO
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style{
            padding:34px 0 38px;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-hero-wrap{
            max-width:1240px;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-hero-grid{
            grid-template-columns:1.2fr .9fr;
            gap:28px;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-hero-left{
            padding:26px 28px 24px;
            border-radius:22px;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-card{
            border-radius:22px;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-hero-title{
            font-size:42px;
            letter-spacing:.1px;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-hero-subtitle{
            max-width:720px;
            margin-left:auto;
            margin-right:auto;
        }


        /* =========================================================
           GUIDA
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-guide{
            max-width:760px;
            margin:14px auto 0;
            padding:12px 14px;
            border:1px solid rgba(9,72,140,.18);
            border-radius:14px;
            background:rgba(255,255,255,.88);
            color:#16345d;
            font-size:13.5px;
            line-height:1.45;
            text-align:center;
            box-shadow:0 10px 24px rgba(8,34,75,.08);
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-guide strong{
            color:#083f77;
            font-weight:900;
        }


        /* =========================================================
           LISTA HERO
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-hero-list{
            max-width:760px;
            width:100%;
            margin-left:auto;
            margin-right:auto;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-hero-list li{
            padding:13px 16px;
        }


        /* =========================================================
           CARD DESTRA
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-card-top{
            padding:20px 20px 16px;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-card-body{
            padding:18px 20px 20px;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-acf-row{
            padding:14px 16px;
        }


        /* =========================================================
           SUPPORTO CT25
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-chip.ct25-master-chip-support{
            display:inline-flex;
            align-items:center;
            gap:6px;
            font-weight:900;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-chip-support .ct25-support-badge{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            padding:4px 9px;
            border-radius:999px;
            background:#16a34a;
            color:#fff;
            font-weight:1000;
            line-height:1;
            box-shadow:0 6px 14px rgba(22,163,74,.28);
        }


        /* =========================================================
           NOTA ORIENTAMENTO
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-orientation-note{
            margin-top:24px;
            padding:16px 17px;
            border-radius:14px;
            background:#fff8db;
            border:1px solid rgba(255,196,0,.65);
            color:#08224b;
            font-size:14.8px;
            line-height:1.55;
            text-align:justify;
            text-justify:inter-word;
            box-shadow:0 10px 24px rgba(0,0,0,.14);
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-orientation-note strong{
            color:#083f77;
            font-weight:900;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-orientation-note a{
            color:#09488c;
            font-weight:900;
            text-decoration:underline;
            text-decoration-thickness:1.5px;
            text-underline-offset:2px;
        }


        /* =========================================================
           BADGE ORIENTAMENTO
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-help-wrap{
            display:flex;
            justify-content:flex-end;
            margin-top:16px;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-help-badge{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            gap:10px;
            padding:11px 17px;
            border-radius:999px;
            background:#164ca3;
            border:2px solid rgba(255,255,255,.92);
            color:#fff !important;
            font-size:13px;
            font-weight:900;
            line-height:1.2;
            text-decoration:none !important;
            box-shadow:
                0 8px 20px rgba(0,0,0,.20),
                inset 0 1px 0 rgba(255,255,255,.15);
            transition:
                transform .18s ease,
                box-shadow .18s ease,
                background .18s ease;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-help-badge:visited{
            color:#fff !important;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-help-badge:hover{
            background:#0d3f90;
            color:#fff !important;
            transform:translateY(-2px);
            box-shadow:
                0 11px 24px rgba(0,0,0,.25),
                inset 0 1px 0 rgba(255,255,255,.15);
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-help-arrow{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            font-size:17px;
            font-weight:1000;
            line-height:1;
            transition:transform .18s ease;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-help-badge:hover
        .ct25-hero30-help-arrow{
            transform:translateX(3px);
        }


        /* =========================================================
           COLORI GENERALI
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-btn-primary{
            background:linear-gradient(
                180deg,
                #09488c 0%,
                #083f77 100%
            );
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hub-cta .ct25-master-btn-primary{
            background:linear-gradient(
                180deg,
                #09488c 0%,
                #083f77 100%
            )!important;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-btn-secondary{
            background:#ffc400;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-card{
            background:linear-gradient(
                180deg,
                #09488c 0%,
                #083f77 70%,
                #052e63 100%
            );
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-badge-red,

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-pricebox,

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-acf-row{
            background:#d71920;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-badge-yellow,

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-chip-yellow,

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-dot{
            background:#ffc400;
        }


        /* =========================================================
           CTA — COLORI TESTO CORRETTI
        ========================================================= */

        /* TROVA IL PERCORSO PIÙ CONVENIENTE */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hub-cta a[href="#ct25-uni-wizard"],
        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hub-cta a[href="#ct25-uni-wizard"]:visited,
        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hub-cta a[data-ct25-hub-anchor][href="#ct25-uni-wizard"]{
            color:#fff !important;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hub-cta a[href="#ct25-uni-wizard"]:hover{
            color:#fff !important;
        }


        /* GLI ALTRI CTA DELLO SHORTCODE HUB */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hub-cta a:not([href="#ct25-uni-wizard"]),
        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hub-cta a:not([href="#ct25-uni-wizard"]):visited{
            color:#09488c !important;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hub-cta a:not([href="#ct25-uni-wizard"]):hover{
            color:#083f77 !important;
        }


        /* BROCHURE */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-btn-secondary,
        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-btn-secondary:visited{
            color:#09488c !important;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-master-btn-secondary:hover{
            color:#083f77 !important;
        }


        /* =========================================================
           PROMO GENERICA
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-promo-title{
            color:#fff;
            font-size:13px;
            font-weight:900;
            line-height:1.25;
            text-align:center;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-promo-sub{
            margin-top:5px;
            color:rgba(255,255,255,.90);
            font-size:11.5px;
            font-weight:700;
            line-height:1.3;
            text-align:center;
        }


        /* =========================================================
           RIQUADRI INFORMAZIONI ESSENZIALI
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-essentials{
            display:grid;
            grid-template-columns:repeat(2,minmax(0,1fr));
            gap:7px;
            max-width:760px;
            margin:16px auto 0;
            padding:0;
            list-style:none;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-essential{
            min-width:0;
            min-height:68px;
            padding:9px 10px;
            border:1px solid rgba(9,72,140,.18);
            border-radius:11px;
            background:rgba(255,255,255,.78);
            color:#16345d;
            font-size:12.5px;
            line-height:1.28;
            text-align:center;
            display:flex;
            flex-direction:column;
            align-items:center;
            justify-content:center;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-essential b{
            display:block;
            margin-bottom:3px;
            color:#083f77;
            font-size:10.5px;
            font-weight:900;
            letter-spacing:.02em;
            text-transform:uppercase;
            text-align:center;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-essential strong{
            color:#08224b;
            font-weight:900;
            text-align:center;
        }


        /* =========================================================
           ESAME
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-essential-exam{
            background:linear-gradient(
                180deg,
                rgba(255,255,255,.92) 0%,
                rgba(255,196,0,.12) 100%
            );
            border-color:rgba(255,196,0,.65);
        }


        /* =========================================================
           STATO ISCRIZIONI
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-essential-status{
            grid-column:1 / -1;
            min-height:auto;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-essential-status .ct25-hub-status{
            display:flex;
            flex-direction:column;
            gap:3px;
            color:#08224b;
            font-weight:900;
            text-align:center;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-essential-status .ct25-hub-status span + span{
            margin-top:4px;
            padding:5px 8px;
            border-radius:8px;
            background:#fff3cd;
            color:#8a5200;
        }


        /* =========================================================
           SCADENZA ISCRIZIONI — BADGE ROSSO
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-essential-deadline{
            grid-column:1 / -1;
            min-height:auto;
            padding:12px 14px;
            background:linear-gradient(
                180deg,
                #ffffff 0%,
                #fff1f1 100%
            );
            border:2px solid #d71920;
            box-shadow:0 7px 18px rgba(215,25,32,.10);
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-essential-deadline b{
            color:#a60f15;
            margin-bottom:6px;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-deadline-badge{
            display:inline-flex;
            align-items:center;
            justify-content:center;
            max-width:100%;
            padding:8px 16px;
            border-radius:999px;
            background:#d71920;
            color:#fff;
            font-size:16px;
            font-weight:1000;
            line-height:1.1;
            text-align:center;
            box-shadow:0 7px 18px rgba(215,25,32,.25);
        }


        /*
         * IMPORTANTE:
         * niente emoji diretta "⏰" nel CSS.
         * Usiamo l'escape Unicode CSS per evitare
         * la conversione in &#9200;
         */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-deadline-badge::before{
            content:"\23F0";
            flex:0 0 auto;
            margin-right:7px;
            font-size:16px;
        }


        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-exam-main{
            display:block;
            color:#08224b;
            font-weight:900;
        }


        /* =========================================================
           PERCORSO GUIDATO 1 → 5
        ========================================================= */

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-steps{
            margin-top:0;
            padding:15px 16px 14px;
            border:1px solid rgba(255,255,255,.16);
            border-radius:16px;
            background:rgba(255,255,255,.08);
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-steps-title{
            margin-bottom:12px;
            color:#ffc400;
            font-size:15px;
            font-weight:900;
            line-height:1.2;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-steps-list{
            display:flex;
            flex-direction:column;
            gap:10px;
            margin:0;
            padding:0;
            list-style:none;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-step{
            display:grid;
            grid-template-columns:34px minmax(0,1fr);
            gap:10px;
            align-items:center;
            margin:0;
            padding:0;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-step-number{
            display:flex;
            align-items:center;
            justify-content:center;
            width:34px;
            height:34px;
            border-radius:50%;
            background:#ffc400;
            color:#08224b;
            font-size:15px;
            font-weight:900;
            line-height:1;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-step-text{
            color:#fff;
            font-size:13px;
            line-height:1.32;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-step-text strong{
            display:block;
            margin-bottom:1px;
            color:#fff;
            font-weight:900;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-step-text span{
            color:rgba(255,255,255,.86);
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-step-link{
            color:#fff !important;
            font-weight:900;
            text-decoration:underline;
            text-decoration-thickness:1.5px;
            text-underline-offset:2px;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-step-link:visited{
            color:#fff !important;
        }

        .ct25-master-hero.ct25-hero30-master-style
        .ct25-hero30-step-link:hover{
            color:#ffc400 !important;
        }


        /* =========================================================
           TABLET
        ========================================================= */

        @media(max-width:860px){

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-master-hero-wrap{
                max-width:760px;
            }

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-master-hero-grid{
                grid-template-columns:1fr;
                gap:20px;
            }

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-master-hero-title{
                font-size:34px;
            }
        }


        /* =========================================================
           MOBILE
        ========================================================= */

        @media(max-width:520px){

            .ct25-master-hero.ct25-hero30-master-style{
                padding:18px 0 24px;
            }

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-master-hero-wrap{
                padding:0 12px;
            }

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-master-hero-left{
                padding:16px 14px;
                border-radius:18px;
            }

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-master-hero-title{
                font-size:28px;
            }

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-hero30-essentials{
                grid-template-columns:1fr;
                gap:7px;
            }

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-hero30-essential{
                min-height:auto;
                padding:9px 10px;
            }

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-hero30-essential-deadline{
                grid-column:auto;
                padding:11px 10px;
            }

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-hero30-deadline-badge{
                font-size:15px;
                padding:8px 13px;
            }

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-hero30-help-wrap{
                justify-content:center;
            }

            .ct25-master-hero.ct25-hero30-master-style
            .ct25-hero30-help-badge{
                width:100%;
                max-width:340px;
                text-align:center;
            }
        }


/* ===== ACCORDION HUB ===== */
.ct25-um-accordion,
    .ct25-um-accordion *{
      box-sizing:border-box;
    }


    .ct25-um-accordion{
      --blue:#09488c;
      --blue2:#0a5cae;
      --navy:#072654;
      --gold:#ffd400;
      --red1:#ff2a2a;
      --red2:#c40000;
      --line:rgba(9,72,140,.14);

      max-width:1120px;

      margin:38px auto;

      padding:0 14px;

      font-family:
        Arial,
        Helvetica,
        sans-serif;

      color:#08224b;

      scroll-margin-top:110px;
    }


    /* ======================================================
       BOX PRINCIPALE
    ====================================================== */

    .ct25-um-accordion-box{
      border-radius:24px;

      border:
        1px solid var(--line);

      background:
        radial-gradient(
          circle at 92% 10%,
          rgba(57,182,255,.14),
          transparent 30%
        ),
        linear-gradient(
          180deg,
          #ffffff 0%,
          #f7fbff 100%
        );

      box-shadow:
        0 18px 42px rgba(8,63,119,.10);

      padding:26px 22px;

      overflow:hidden;
    }


    /* ======================================================
       HEADER
    ====================================================== */

    .ct25-um-accordion-head{
      text-align:center;

      max-width:900px;

      margin:0 auto 20px;
    }


    .ct25-um-kicker{
      display:inline-flex;

      align-items:center;
      justify-content:center;

      margin:0 0 10px;

      padding:7px 13px;

      border-radius:999px;

      background:
        rgba(9,72,140,.08);

      color:var(--blue);

      font-size:12px;

      font-weight:900;

      letter-spacing:.4px;

      text-transform:uppercase;
    }


    .ct25-um-accordion h2{
      margin:0 0 10px;

      color:var(--navy);

      font-size:28px;

      line-height:1.18;

      font-weight:1000;

      letter-spacing:-.3px;
    }


    .ct25-um-sub{
      margin:0;

      color:#28456f;

      font-size:15.5px;

      line-height:1.65;
    }


    .ct25-um-sub strong{
      color:var(--blue);

      font-weight:900;
    }


    /* ======================================================
       ACCORDION
    ====================================================== */

    .ct25-um-acc{
      display:grid;

      gap:12px;
    }


    .ct25-um-item{
      border-radius:18px;

      border:
        1px solid var(--line);

      background:#ffffff;

      box-shadow:
        0 10px 24px rgba(8,63,119,.06);

      overflow:hidden;
    }


    .ct25-um-item[open]{
      border-color:
        rgba(9,72,140,.28);

      box-shadow:
        0 14px 30px rgba(8,63,119,.10);
    }


    /* ======================================================
       DOMANDA
    ====================================================== */

    .ct25-um-q{
      list-style:none;

      cursor:pointer;

      display:flex;

      align-items:center;

      justify-content:space-between;

      gap:14px;

      padding:16px 18px;

      color:#08224b;

      font-size:16px;

      font-weight:1000;

      line-height:1.25;
    }


    .ct25-um-q::-webkit-details-marker{
      display:none;
    }


    .ct25-um-q-left{
      display:flex;

      align-items:center;

      gap:11px;
    }


    .ct25-um-n{
      width:30px;
      height:30px;

      flex:0 0 30px;

      border-radius:10px;

      display:inline-flex;

      align-items:center;

      justify-content:center;

      background:
        linear-gradient(
          135deg,
          var(--blue),
          var(--blue2)
        );

      color:#ffffff;

      font-size:13px;

      font-weight:1000;

      box-shadow:
        0 8px 18px rgba(9,72,140,.18);
    }


    .ct25-um-ico{
      width:28px;
      height:28px;

      flex:0 0 28px;

      border-radius:999px;

      display:inline-flex;

      align-items:center;

      justify-content:center;

      background:var(--gold);

      color:#08224b;

      font-weight:1000;

      transition:
        transform .18s ease;
    }


    .ct25-um-ico svg{
      width:18px;
      height:18px;

      fill:#08224b;
    }


    .ct25-um-item[open] .ct25-um-ico{
      transform:rotate(45deg);
    }


    /* ======================================================
       RISPOSTA
    ====================================================== */

    .ct25-um-a{
      padding:
        0 18px 18px 59px;

      color:#243f66;

      font-size:15px;

      line-height:1.68;

      text-align:justify;
    }


    .ct25-um-a p{
      margin:0 0 12px;
    }


    .ct25-um-a p:last-child{
      margin-bottom:0;
    }


    .ct25-um-a strong{
      color:var(--blue);

      font-weight:900;
    }


    /* ======================================================
       ELENCHI
    ====================================================== */

    .ct25-um-a ul{
      margin:8px 0 12px;

      padding:0;

      list-style:none;

      display:grid;

      gap:8px;
    }


    .ct25-um-a li{
      position:relative;

      padding-left:25px;
    }


    .ct25-um-a li::before{
      content:"\2713";

      position:absolute;

      left:0;
      top:0;

      width:18px;
      height:18px;

      border-radius:999px;

      display:inline-flex;

      align-items:center;

      justify-content:center;

      background:var(--gold);

      color:#08224b;

      font-size:12px;

      font-weight:1000;

      line-height:1;
    }


    /* ======================================================
       BOX EVIDENZIATO
    ====================================================== */

    .ct25-um-highlight{
      margin:12px 0 0;

      padding:13px 15px;

      border-radius:14px;

      background:#fffbea;

      border:
        1px solid #f3e1a1;

      border-left:
        5px solid var(--gold);

      color:#5b4a10;

      font-size:14px;

      line-height:1.6;

      text-align:left;
    }


    /* ======================================================
       COSTI
    ====================================================== */

    .ct25-um-price{
      display:grid;

      grid-template-columns:
        repeat(3,minmax(0,1fr));

      gap:10px;

      margin:14px 0;
    }


    .ct25-um-price-card{
      border-radius:15px;

      background:#f7fbff;

      border:
        1px solid var(--line);

      padding:14px 12px;

      text-align:center;
    }


    .ct25-um-price-card span{
      display:block;

      color:var(--blue);

      font-size:12px;

      font-weight:900;

      text-transform:uppercase;

      letter-spacing:.35px;

      margin-bottom:5px;
    }


    .ct25-um-price-card strong{
      color:#08224b;

      font-size:18px;

      font-weight:1000;
    }


    /* ======================================================
       FOOTER
    ====================================================== */

    .ct25-um-foot{
      margin-top:18px;

      padding:14px 16px;

      border-radius:16px;

      background:
        linear-gradient(
          135deg,
          var(--blue),
          var(--blue2)
        );

      color:#ffffff;

      font-size:14.5px;

      line-height:1.6;

      text-align:center;
    }


    .ct25-um-foot strong{
      color:var(--gold);

      font-weight:1000;
    }


    /* ======================================================
       MOBILE
    ====================================================== */

    @media(max-width:760px){

      .ct25-um-accordion{
        margin:32px auto;
      }


      .ct25-um-accordion-box{
        padding:22px 16px;

        border-radius:20px;
      }


      .ct25-um-accordion h2{
        font-size:24px;
      }


      .ct25-um-q{
        padding:15px 14px;

        font-size:15px;
      }


      .ct25-um-a{
        padding:
          0 14px 16px 14px;

        font-size:14.5px;

        text-align:left;
      }


      .ct25-um-q-left{
        align-items:flex-start;
      }


      .ct25-um-price{
        grid-template-columns:1fr;
      }


      .ct25-um-highlight{
        text-align:left;
      }

    }


/* ===== BOX NORMATIVO ===== */
.ct25-lawbox,
    .ct25-lawbox *{
      box-sizing:border-box;
    }

    .ct25-lawbox{
      --blue:#09488c;
      --blue2:#0a5cae;
      --navy:#072654;
      --red:#d90000;
      --red2:#a90000;
      --ink:#08224b;
      --line:rgba(9,72,140,.16);

      max-width:1120px;
      margin:28px auto;
      padding:0 14px;

      color:var(--ink);
      font-family:Arial,Helvetica,sans-serif;
    }


    /* =====================================================
       CONTENITORE
    ====================================================== */

    .ct25-lawbox-inner{
      position:relative;
      overflow:hidden;

      border:1px solid rgba(9,72,140,.18);
      border-radius:22px;

      background:
        radial-gradient(
          circle at 8% 8%,
          rgba(217,0,0,.12),
          transparent 26%
        ),
        radial-gradient(
          circle at 92% 12%,
          rgba(10,92,174,.16),
          transparent 30%
        ),
        linear-gradient(
          135deg,
          #ffffff 0%,
          #f7fbff 48%,
          #fff5f5 100%
        );

      box-shadow:
        0 16px 38px rgba(9,72,140,.10);
    }


    .ct25-lawbox-strip{
      height:6px;

      background:
        linear-gradient(
          90deg,
          var(--red) 0%,
          var(--red2) 28%,
          var(--blue) 58%,
          var(--blue2) 100%
        );
    }


    .ct25-lawbox-content{
      position:relative;
      z-index:2;
      padding:22px 20px 20px;
    }


    /* =====================================================
       HEADER
    ====================================================== */

    .ct25-lawbox-head{
      max-width:900px;
      margin:0 auto 16px;
      text-align:center;
    }


    .ct25-lawbox-kicker{
      display:inline-flex;
      align-items:center;
      justify-content:center;

      margin:0 0 10px;
      padding:6px 13px;

      border-radius:999px;

      background:
        linear-gradient(
          135deg,
          var(--red),
          var(--red2)
        );

      color:#ffffff;
      font-size:11px;
      font-weight:900;
      letter-spacing:.45px;
      text-transform:uppercase;

      box-shadow:
        0 8px 20px rgba(217,0,0,.16);
    }


    .ct25-lawbox h2{
      margin:0 0 9px;

      color:var(--navy);
      font-size:24px;
      line-height:1.25;
      font-weight:900;
    }


    .ct25-lawbox-head p{
      margin:0;

      color:#28456f;
      font-size:14.5px;
      line-height:1.6;
    }


    .ct25-lawbox-head p strong{
      color:var(--red);
      font-weight:900;
    }


    /* =====================================================
       DUE RIFERIMENTI NORMATIVI
    ====================================================== */

    .ct25-lawbox-grid{
      display:grid;
      grid-template-columns:repeat(2,minmax(0,1fr));
      gap:14px;

      max-width:900px;
      margin:17px auto 0;
    }


    .ct25-lawbox-card{
      position:relative;
      overflow:hidden;

      display:flex;
      flex-direction:column;
      align-items:center;

      padding:17px 16px;

      border:1px solid var(--line);
      border-radius:17px;

      background:#ffffff;
      text-align:center;

      box-shadow:
        0 9px 23px rgba(9,72,140,.07);
    }


    .ct25-lawbox-card::before{
      content:"";

      position:absolute;
      top:0;
      left:0;

      width:100%;
      height:4px;

      background:
        linear-gradient(
          90deg,
          var(--red),
          var(--blue)
        );
    }


    .ct25-lawbox-icon{
      display:flex;
      align-items:center;
      justify-content:center;

      width:38px;
      height:38px;
      margin:0 auto 9px;

      border-radius:50%;

      background:
        linear-gradient(
          135deg,
          var(--blue),
          var(--blue2)
        );

      color:#ffffff;
      font-size:16px;

      box-shadow:
        0 8px 18px rgba(9,72,140,.16);
    }


    .ct25-lawbox-card h3{
      margin:0 0 7px;

      color:var(--blue);
      font-size:15.5px;
      line-height:1.3;
      font-weight:900;
    }


    .ct25-lawbox-card p{
      flex:1;

      min-height:82px;
      margin:0 0 12px;

      color:#445970;
      font-size:13px;
      line-height:1.5;
    }


    /* =====================================================
       LINK
    ====================================================== */

    .ct25-lawbox-link{
      display:inline-flex;
      align-items:center;
      justify-content:center;

      min-height:38px;
      padding:9px 14px;

      border-radius:999px;

      background:
        linear-gradient(
          135deg,
          var(--red),
          var(--red2)
        );

      color:#ffffff !important;
      font-size:12px;
      font-weight:900;
      text-decoration:none !important;

      box-shadow:
        0 8px 19px rgba(217,0,0,.14);

      transition:
        transform .2s ease,
        background .2s ease;
    }


    .ct25-lawbox-link:hover{
      transform:translateY(-2px);

      background:
        linear-gradient(
          135deg,
          #ff2020,
          #b80000
        );
    }


    .ct25-lawbox-link:focus-visible{
      outline:3px solid var(--blue);
      outline-offset:3px;
    }


    /* =====================================================
       NOTA FINALE
    ====================================================== */

    .ct25-lawbox-note{
      max-width:900px;
      margin:15px auto 0;
      padding:11px 14px;

      border:1px solid rgba(9,72,140,.14);
      border-radius:12px;

      background:rgba(9,72,140,.06);

      color:#445970;
      font-size:12.5px;
      line-height:1.5;
      text-align:center;
    }


    .ct25-lawbox-note strong{
      color:var(--navy);
      font-weight:900;
    }


    /* =====================================================
       MOBILE
    ====================================================== */

    @media(max-width:820px){

      .ct25-lawbox{
        margin:24px auto;
      }


      .ct25-lawbox-content{
        padding:19px 14px 18px;
      }


      .ct25-lawbox-grid{
        grid-template-columns:1fr;
      }


      .ct25-lawbox h2{
        font-size:21px;
      }


      .ct25-lawbox-inner{
        border-radius:19px;
      }


      .ct25-lawbox-card{
        padding:16px 14px;
      }


      .ct25-lawbox-card p{
        min-height:0;
      }

    }

/* ===== ACCESSO RAPIDO HUB ===== */
.ct25-quick-nav,.ct25-quick-nav *{box-sizing:border-box}.ct25-quick-nav{--blue:#09488c;--blue2:#0a5cae;--navy:#072654;--gold:#ffd400;--red:#d90000;--ink:#08224b;--line:rgba(9,72,140,.14);font-family:Arial,Helvetica,sans-serif;max-width:1180px;margin:-16px auto 30px;padding:0 14px;position:relative;z-index:5}.ct25-quick-box{background:#fff;border:1px solid var(--line);border-radius:20px;box-shadow:0 16px 38px rgba(9,72,140,.13);padding:16px}.ct25-quick-head{display:flex;align-items:center;justify-content:center;gap:8px;margin:0 0 13px;color:var(--navy);font-size:15px;line-height:1.3;font-weight:1000;text-align:center}.ct25-quick-head span{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:50%;background:var(--gold);color:var(--navy);font-size:14px;font-weight:1000;flex:0 0 auto}.ct25-quick-links{display:grid;grid-template-columns:repeat(5,1fr);gap:10px}.ct25-quick-link{display:flex;align-items:center;justify-content:center;min-height:46px;padding:11px 12px;border-radius:14px;background:#f3f8ff;border:1px solid rgba(9,72,140,.12);color:var(--blue);text-decoration:none;font-size:13.5px;font-weight:900;text-align:center;line-height:1.25;transition:.2s ease}.ct25-quick-link:hover{background:var(--blue);color:#fff;transform:translateY(-2px);box-shadow:0 10px 22px rgba(9,72,140,.18)}.ct25-quick-link.primary{background:linear-gradient(135deg,var(--red),#a90000);color:#fff;border-color:rgba(217,0,0,.28);box-shadow:0 10px 22px rgba(217,0,0,.16)}.ct25-quick-link.primary:hover{background:linear-gradient(135deg,#ff2020,#b80000);color:#fff}@media(max-width:900px){.ct25-quick-links{grid-template-columns:repeat(2,1fr)}}@media(max-width:768px){.ct25-quick-nav{margin:-10px auto 26px}.ct25-quick-box{padding:14px;border-radius:18px}.ct25-quick-links{grid-template-columns:1fr;gap:8px}.ct25-quick-link{min-height:44px}}

/* ===== PICCOLE INTEGRAZIONI NATIVE ===== */
body.ct25-art13-hub-native{background:#062b71}.ct25-hub-native-page{position:relative;width:100vw;max-width:100vw;margin-left:calc(50% - 50vw);padding:1px 0 40px;background:linear-gradient(180deg,#062b71 0%,#08224b 100%);overflow:hidden}.ct25-hub-native-page>.ct25-master-hero.ct25-hero30-master-style{background:#062b71!important;background-image:none!important}.ct25-hub-native-anchor{scroll-margin-top:110px}.ct25-um-inline-cta{display:inline-flex;align-items:center;justify-content:center;padding:9px 14px;border-radius:999px;background:#09488c;color:#fff!important;text-decoration:none!important;font-size:12.5px;font-weight:900;line-height:1.2}
