@charset "UTF-8";

    /* =========================================================
   MENU ADHÉSION NOVIJOB
   PLACEMENT COMME LE CSS ORIGINAL
   ========================================================= */

   .container-adhesion {
        position:fixed;
        top:0;
        left:100px;
        width:100%;
        z-index:9999;
        background-color:#fff;
    }
    .container-adhesion .row {
        width:100%;
        margin-left:0;
        margin-right:0;
    }
    .img-adhesion {
        padding-top:40px;
        padding-bottom:30px;
        text-align:center;
    }
    .img-size-adhesion {
        width:200px;
        height:auto;
        display:block;
        margin:0 auto;
    }
    .align-adhesion {
        display:flex;
        align-items:center;
        gap:6px;
        position:relative;
        text-align:left;
        padding-bottom:5px;
        list-style:none;
        margin-left:6px;
    }
    #align-emploi-scroll {
        overflow:hidden;
        white-space:nowrap;
        flex:0 1 auto;
        text-align:left;
    }
    .align-adhesion form[name="submitcode"] {
        display:inline-flex;
        flex-wrap:nowrap;
        white-space:nowrap;
        gap:6px;
        margin:0;
        padding:0;
    }
    #tout {
        background-color:#099dce9c;
    }
    .b-menuonglet {
        flex:0 0 auto;
        white-space:nowrap;
        background-color:white;
        font-weight:500;
        border:none;
        color:#333333;
        padding:5px 10px;
        text-align:center;
        text-decoration:none;
        display:inline-block;
        font-size:16px;
        margin:2px;
        transition-duration:.4s;
        cursor:pointer;
        border-radius:6px;
    }
    .b-menuonglet:hover,
    .b-menuonglet:active {
        background-color:#099dce3f;
        color:#333333;
        text-decoration:none;
        border:none;
    }
    #arrow-left,
    #arrow-right {
        border:none;
        background:transparent;
        font-size:20px;
        color:#bbb;
        cursor:pointer;
        padding:0 4px;
        display:none;
    }
    #arrow-left:focus,
    #arrow-right:focus,
    #arrow-left:active,
    #arrow-right:active {
        outline:none;
        box-shadow:none;
    }

    /* =========================================================
    PAGE ADHÉSION EMPLOYEUR – PUBLICATION ET AFFICHAGE
    CSS relié à adhesion_publication
    ========================================================= */

    .point {
        color: black;
        font-size: 20px;
        padding-right: 10px;
    }
    .b-formulaire {
        background-color: #fb567c;
        width: 100%;
        border: none;
        color: white;
        padding: 12px 30px;
        text-align: center;
        text-decoration: none;
        display: inline-block;
        font-size: 20px;
        margin: 2px 2px;
        transition-duration: 0.4s;
        cursor: pointer;
        border-radius: 6px;
        box-sizing: border-box;
    }
    .b-formulaire:hover,
    .b-formulaire:active {
        background-color: #f82052;
        text-decoration: none;
    }
    .b-formulaire2 {
        background-color: #0390bef5;
        width: 100%;
        border: none;
        color: white;
        padding: 12px 20px;
        text-align: center;
        text-decoration: none;
        font-size: 20px;
        margin: 0;
        transition-duration: 0.4s;
        cursor: pointer;
        border-radius: 6px;
        display: block;
        box-sizing: border-box;
    }
    .b-formulaire2:hover,
    .b-formulaire2:active {
        background-color: #035774f5;
        text-decoration: none;
    }
    .form-employeur input[type=text],
    .form-employeur input[type=email],
    .form-employeur input[type=password] {
        width: 100%;
        font-size: 20px;
        max-width: 500px;
        padding: 12px;
        border: 1px solid #ccc;
        border-radius: 6px;
        display: inline-block;
        background: #ffffff;
        box-sizing: border-box;
    }
    .form-employeur button {
        max-width: 500px;
    }
    .titre-inscrit {
        font-size: 40px;
    }
    .text-inscrit {
        font-size: 20px;
        margin-top: 0px;
        color: red;
    }
    .titre-inscription {
        font-size: 26px;
        font-weight: bold;
        padding-top: 15px;
        padding-bottom: 10px;
        text-align: center;
        background: rgb(1, 143, 238);
        color: white;
    }
    .titre-inscription2 {
        font-size: 26px;
        font-weight: bold;
        padding-top: 15px;
        padding-bottom: 10px;
        text-align: center;
        background: rgb(224, 224, 224);
    }
    .cadre-populaire {
        background: #c0bfbf;
        color: #333333;
        text-align: center;
        max-width: 300px;
        font-weight: bold;
        letter-spacing: 2px;
        margin-left: auto;
        margin-right: auto;
        margin-top: -20px;
        padding: 10px;
        border-top-left-radius: 15px;
        border-top-right-radius: 15px;
        position: relative;
    }
    .prix-inscrit {
        padding-top: 30px;
        padding-bottom: 20px;
        text-align: center;
    }
    .prix {
        font-family: -apple-system, BlinkMacSystemFont, "Segoe UI",
        Roboto, "Helvetica Neue", Arial, sans-serif,
        "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
        font-size: 55px;
        font-weight: lighter;
        padding-bottom: 20px;
    }
    .prix-inscrit p {
        font-size: 16px;
        font-style: italic;
    }
    .outline {
        border: .5px solid #ccc;
    }
    .outline-ligne {
        width: 100%;
        padding: 16px;
        margin: 0;
        background: rgb(235, 235, 235);
        box-sizing: border-box;
    }
    .hauteur-text {
        text-align:left;
        padding-top:15px;
    }
    .container-condition {
        display: block;
        position: relative;
        padding-right: 50px;
        margin-top: 20px;
        margin-bottom: 10px;
        cursor: pointer;
        user-select: none;
    }
    .container-condition input {
        position: absolute;
        opacity: 0;
        cursor: pointer;
        height: 0;
        width: 0;
    }
    .checkmark-condition {
        position: absolute;
        top: 0;
        padding-right: 20px;
        height: 37px;
        width: 37px;
        background-color: #c9c7c7;
        border: solid 1px #6b6b6b;
    }
    .container-condition:hover input ~ .checkmark-condition {
        background-color: #ccc;
    }
    .container-condition input:checked ~ .checkmark-condition {
        background-color: #4971f5;
    }
    .checkmark-condition::before {
        content: "";
        position: absolute;
        display: none;
    }
    .container-condition input:checked ~ .checkmark-condition::before {
        display: block;
    }
    .container-condition .checkmark-condition::before {
        left: 12px;
        top: 1px;
        width: 11px;
        height: 28px;
        border: solid white;
        border-width: 0 3px 3px 0;
        transform: rotate(45deg);
    }
    .checkcondition {
        width: 100%;
        display: flex;
        align-items: center;
        gap: 15px;
        margin: 0;
    }
    .checkcondition-texte {
        flex: 1;
        min-width: 0;
    }
    .checkcondition-texte .hauteur-text {
        margin: 0;
        padding: 15px 0;
    }
    .checkcondition-case {
        flex: 0 0 42px;
        width: 42px;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .checkcondition .container-condition {
        width: 37px;
        height: 37px;
        margin: 0;
        padding: 0;
    }
    .checkcondition .checkmark-condition {
        top: 0;
        left: 0;
    }
    .tarif-accordeon {
        width: 100%;
        margin-bottom: 8px;
        border: none;
        outline: none;
        box-shadow: none;
    }
    .tarif-titre {
        width: 100%;
        display: flex;
        justify-content: space-between;
        align-items: center;
        padding: 15px 0;
        background: none;
        border: none;
        outline: none;
        box-shadow: none;
        color: #5c5c5c;
        text-align: left;
        cursor: pointer;
        font-family: inherit;
        font-size: inherit;
    }
    .tarif-titre:hover {
        color: #1364bc;
    }
    .tarif-titre,
    .tarif-titre:hover,
    .tarif-titre:focus,
    .tarif-titre:active {
        border:none !important;
        outline:none !important;
        box-shadow:none !important;
        background:none !important;
    }
    .tarif-titre:focus-visible {
        outline:3px solid #1364bc !important;
        outline-offset:2px;
        border-radius:6px;
    }
    .tarif-titre .point {
        margin-right: 5px;
    }
    .tarif-fleche {
        flex-shrink: 0;
        margin-left: 10px;
        font-size: 15px;
        font-weight: bold;
        transition: transform 0.2s ease;
    }
    .tarif-contenu {
        width: 100%;
        margin-left: 0;
        padding: 3px 0 10px 0;
        color: #5c5c5c;
        text-align: left;
        border: none;
        outline: none;
        box-shadow: none;
    }
    .tarif-contenu p {
        margin: 0 0 5px 0;
    }
    .tarif-contenu ul {
        margin: 5px 0 0 18px;
        padding: 0;
    }
    .tarif-accordeon.ouvert .tarif-contenu {
        border: none !important;
        outline: none !important;
        box-shadow: none !important;
    }
    .tarif-accordeon.ouvert .tarif-fleche {
        transform: rotate(45deg);
    }
    .titre-premium-wrapper {
        position: relative;
        width: 100%;
    }
    .titre-inscription2 > span {
        display: inline-block;
        vertical-align: middle;
    }
    .container-page-adhesion {
        --nj-blue: #155a9c;
        --nj-blue-dark: #123c67;
        --nj-navy: #18324d;
        --nj-red: #ef4f62;
        --nj-orange: #ff8a3d;
        --nj-bg: #f5f8fb;
        --nj-bg-soft: #f8fafc;
        --nj-border: #dbe5ee;
        --nj-text: #273747;
        --nj-muted: #687887;
        --nj-green: #21895d;
        width: min(1540px, calc(100% - 30px));
        margin-left: auto;
        margin-right: auto;
        padding-top: 25px;
        padding-bottom: 80px;
        color: var(--nj-text);
    }
    .container-page-adhesion > .titre-inscrit {
        max-width: 920px;
        margin: 0 auto 15px;
        color: var(--nj-navy);
        font-size: clamp(30px, 3vw, 44px);
        font-weight: 800;
        line-height: 1.15;
        text-align: center;
        letter-spacing: -0.5px;
    }
    .container-page-adhesion > .text-inscrit {
        max-width: 900px;
        margin-left: auto;
        margin-right: auto;
        color: var(--nj-muted);
        font-size: 17px;
        line-height: 1.65;
        text-align: center;
    }
    .container-page-adhesion > .text-inscrit small {
        display: block;
        max-width: 900px;
        margin: 15px auto 0;
        padding: 18px 22px;
        background: #fff8f8;
        border: 1px solid #f5d5d8;
        border-left: 5px solid var(--nj-red);
        border-radius: 10px;
        color: #8c3c45 !important;
        font-size: 13px;
        line-height: 1.55;
        text-align: left;
    }
    .container-page-adhesion > .row > .col-lg-4 {
        width: 100%;
        max-width: none;
        padding: 25px 0 0 !important;
        margin: 0;
        display: flex;
        flex-direction: column;
        position: relative;
    }
    .container-page-adhesion .outline {
        position: relative;
        display: flex;
        flex-direction: column;
        flex: none;
        overflow: hidden;
        background: #ffffff;
        border: 1px solid #b5bcc3;
        border-radius: 20px;
        box-shadow:
        0 12px 32px rgba(24, 50, 77, 0.08);
        transition:
        transform 0.25s ease,
        box-shadow 0.25s ease,
        border-color 0.25s ease;
    }
    .container-page-adhesion .outline:hover {
        transform: translateY(-5px);
        border-color: #437cac;
        box-shadow:
        0 20px 42px rgba(24, 50, 77, 0.14);
    }
    .container-page-adhesion .titre-inscription,
    .container-page-adhesion .titre-inscription2 {
        min-height: 125px;
        margin: 0 !important;
        padding: 28px 24px 22px !important;
        display: flex;
        flex-direction: column;
        justify-content: center;
        background:
        linear-gradient(
        135deg,
        #173c60,
        #155a9c
        );
        color: #ffffff !important;
        font-size: 21px;
        font-weight: 800;
        text-align: center;
        line-height: 1.25;
        letter-spacing: 0.3px;
    }
    .container-page-adhesion .titre-inscription p,
    .container-page-adhesion .titre-inscription2 p {
        margin-bottom: 0 !important;
        color: rgba(255, 255, 255, 0.82) !important;
        font-size: 12px !important;
        font-weight: 400;
        line-height: 1.45;
    }
    .container-page-adhesion .cadre-populaire {
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%);
        z-index: 10;
        width: max-content;
        max-width: 90%;
        margin: 0;
        padding: 7px 22px;
        border-radius: 10px;
        background: linear-gradient(90deg,var(--nj-red),var(--nj-orange));
        color: #ffffff;
        font-size: 13px;
        font-weight: 800;
        letter-spacing: 0.5px;
        box-shadow: 0 6px 16px rgba(239, 79, 98, 0.25);
    }
    .container-page-adhesion >
    .row >
    .col-lg-4:nth-child(2)
    .outline {
        border: 2px solid #ef6c67;
        box-shadow:
        0 18px 45px rgba(239, 79, 98, 0.14);
    }
    .container-page-adhesion >
    .row >
    .col-lg-4:nth-child(2)
    .titre-inscription2 {
        background:
        linear-gradient(
        135deg,
        #d94e5d,
        #f36b55
        );
        color: #ffffff !important;
    }
    .container-page-adhesion
    .btn-conseil-premium {
        width: 34px;
        height: 34px;
        margin-left: 8px;
        padding: 0;
        border: 0;
        border-radius: 50%;
        background: #080808;
        box-shadow:
        0 3px 10px rgba(0, 0, 0, 0.12);
        cursor: pointer;
        font-size: 18px;
        transition:
        transform 0.2s ease,
        box-shadow 0.2s ease;
    }
    .container-page-adhesion
    .btn-conseil-premium:hover {
        transform: scale(1.08);
        background: #ffffff;
        box-shadow: 0 5px 14px rgba(0, 0, 0, 0.18);
        text-decoration: none;
    }
    .container-page-adhesion .btn-conseil-premium:focus,
    .container-page-adhesion .btn-conseil-premium:active {
        outline: none;
        border: none;
    }
    .container-page-adhesion .btn-conseil-premium:focus-visible {
        outline: 3px solid #1364a3;
        outline-offset: 3px;
        box-shadow: 0 0 0 3px rgba(19,100,188,.12);
    }
    .container-page-adhesion .prix-inscrit {
        flex: 1;
        padding: 28px 0 0;
        text-align: center;
    }
    .container-page-adhesion .prix-inscrit > p {
        padding-left: 20px;
        padding-right: 20px;
    }
    .container-page-adhesion
    .prix-inscrit mark {
        display: inline-block;
        padding: 8px 13px;
        background: #fff1d8;
        border-radius: 8px;
        color: #865400;
        font-size: 15px;
        font-weight: 800;
        line-height: 1.35;
        letter-spacing: 0.5px;
    }
    .container-page-adhesion
    .prix-inscrit mark small {
        display: block;
        margin-top: 3px;
        color: #806a42;
    }
    .container-page-adhesion .prix {
        display: block;
        margin: 18px 0 8px;
        color: var(--nj-navy);
        font-size: 46px;
        font-weight: 900;
        line-height: 1;
        letter-spacing: -1.5px;
    }
    .container-page-adhesion
    .prix-inscrit >
    div[style*="padding-left"] {
        margin-top: 25px !important;
        padding-left: 25px !important;
        padding-right: 25px !important;
    }
    .container-page-adhesion
    .prix-inscrit >
    div[style*="padding-left"] >
    b:first-child span {
        display: inline-block;
        padding: 7px 13px;
        border-radius: 999px;
        background: #eaf7f0;
        color: var(--nj-green) !important;
        font-size: 15px;
        letter-spacing: 0.4px;
    }
    .container-page-adhesion
    .tarif-accordeon {
        margin: 0;
        border-bottom:
        1px solid #e6edf3;
    }
    .container-page-adhesion
    .tarif-titre {
        width: 100%;
        display: flex;
        align-items: flex-start;
        justify-content: space-between;
        gap: 12px;
        padding: 17px 3px;
        background: transparent;
        border: 0;
        outline: 0;
        color: var(--nj-navy);
        font-size: 14px;
        line-height: 1.45;
        text-align: left;
        cursor: pointer;
    }
    .container-page-adhesion
    .tarif-titre:hover {
        color: var(--nj-blue);
    }
    .container-page-adhesion
    .tarif-titre .point {
        color: var(--nj-green);
        font-size: 20px;
    }
    .container-page-adhesion
    .tarif-fleche {
        width: 27px;
        height: 27px;
        min-width: 27px;
        display: flex;
        align-items: center;
        justify-content: center;
        border-radius: 50%;
        background: #edf4fa;
        color: var(--nj-blue);
        font-size: 19px;
        font-weight: 500;
        transition:
        transform 0.25s ease,
        background 0.25s ease;
    }
    .container-page-adhesion
    .tarif-accordeon.ouvert
    .tarif-fleche {
        transform: rotate(45deg);
        background: #dcecf8;
    }
    .container-page-adhesion
    .tarif-contenu {
        max-height: 0;
        overflow: hidden;
        opacity: 0;
        color: var(--nj-muted);
        font-size: 13px;
        line-height: 1.55;
        text-align: left;
        transition:
        max-height 0.35s ease,
        opacity 0.25s ease,
        padding 0.25s ease;
    }
    .container-page-adhesion
    .tarif-accordeon.ouvert
    .tarif-contenu {
        max-height: 1000px;
        padding: 0 3px 15px;
        opacity: 1;
    }
    .container-page-adhesion .tarif-contenu p {
        margin: 0 0 10px;
        color: #3f4a54;
    }
    .container-page-adhesion .tarif-contenu ul {
        color: #3f4a54;
    }
    .container-page-adhesion .tarif-contenu small {
        font-size: 13px;
    }
    .container-page-adhesion
    .prix-inscrit
    p[style*="text-align: left"] {
        margin:
        20px 25px 0 !important;
        padding:
        14px 15px !important;
        background: #fafbfc;
        border-radius: 8px;
        color: #566675 !important;
        font-size: 12px;
        line-height: 1.5;
    }
    .container-page-adhesion
    .outline-ligne {
        margin-top: auto;
        padding: 24px;
        border-top:
        1px solid #edf1f5;
        background: #ffffff;
    }
    .container-page-adhesion
    .b-formulaire2 {
        width: 100%;
        min-height: 52px;
        padding: 13px 18px;
        border: 0;
        border-radius: 9px;
        background: linear-gradient(135deg,#174f84,#1364bc);
        color: #ffffff;
        font-size: 14px;
        font-weight: 800;
        cursor: pointer;
        box-shadow: 0 7px 17px rgba(19, 100, 188, 0.20);
        transition: transform 0.2s ease,box-shadow 0.2s ease;
        letter-spacing: 0.3px;
    }
    .container-page-adhesion
    .b-formulaire2:hover {
        transform: translateY(-2px);
        color:#e6d706;
        text-decoration: none;
    }
    .container-page-adhesion >
    .row >
    .col-lg-4:nth-child(2)
    .b-formulaire2 {
        background:
        linear-gradient(
        135deg,
        #e94f61,
        #f2794e
        );
        box-shadow:
        0 7px 18px rgba(233, 79, 97, 0.25);
    }
    .container-page-adhesion
    .form-employeur {
        margin-top: 18px;
        padding: 22px;
        border: 1px solid #e2eaf0;
        border-radius: 12px;
        background: var(--nj-bg-soft);
    }
    .container-page-adhesion
    .form-employeur input[type="text"],
    .container-page-adhesion
    .form-employeur input[type="email"],
    .container-page-adhesion
    .form-employeur input[type="password"] {
        width: 100%;
        min-height: 46px;
        margin-bottom: 11px;
        padding: 10px 13px;
        border: 1px solid #cad8e3;
        border-radius: 7px;
        background: #ffffff;
        color: var(--nj-text);
        font-size: 14px;
        outline: none;
        transition: border-color 0.2s ease, box-shadow 0.2s ease;
    }
    .container-page-adhesion
    .form-employeur input:focus {
        border-color: var(--nj-blue);
        box-shadow: 0 0 0 3px rgba(21, 90, 156, 0.10);
    }
    .container-page-adhesion
    .form-employeur
    .b-formulaire {
        width: 100%;
        min-height: 48px;
        margin-top: 15px;
        border: 0;
        border-radius: 8px;
        background: var(--nj-green);
        color: #ffffff;
        font-weight: 800;
        cursor: pointer;
        letter-spacing: 0.3px;
    }
    .container-page-adhesion
    .form-employeur
    .b-formulaire:hover {
        width: 100%;
        min-height: 48px;
        margin-top: 15px;
        border: 0;
        border-radius: 8px;
        background: var(--nj-green);
        color: #e6d706;
        font-weight: 800;
        cursor: pointer;
    }
    .container-page-adhesion >
    .row >
    .col-lg-4 >
    p[style*="font-size:10px"] {
        max-width: 100% !important;
        margin:
        12px 12px 0 !important;
        padding:
        11px 14px !important;
        border-radius: 8px;
        background: #edf6ff;
        color: #49708f !important;
        font-size: 10px !important;
        line-height: 1.45;
        text-align: left;
    }
    .container-page-adhesion > .row {
        display: grid;
        grid-template-columns: repeat(3, minmax(0, 1fr));
        gap: 22px;
        align-items: start;
        width: 100%;
        margin: 55px 0 0 !important;
        padding: 0 !important;
    }
    .container-page-adhesion > .row > .col-lg-4 .outline {
        margin-top: 0;
    }
    .container-page-adhesion .message.success {
        max-width:900px;
        margin:20px auto 0;
        padding:14px 18px;
        border:1px solid #b9dfc9;
        border-left:5px solid var(--nj-green);
        border-radius:8px;
        background:#f1faf5;
        color:#17633f;
        font-size:14px;
        line-height:1.5;
    }
    .titre-premium-ligne {
        width: 100%;
        display: flex;
        align-items: center;
        justify-content: center;
        gap: 8px;
    }
    .titre-premium-ligne > span {
        display: inline-block;
    }
    .titre-premium-ligne .btn-conseil-premium {
        flex: 0 0 34px;
        margin: 0;
    }

    /* =========================================================
    PAGE : POURQUOI AFFICHER SUR NOVIJOB
    CSS DESKTOP UNIQUEMENT
    ========================================================= */
    
    .page-pourquoi-afficher {
        --novi-blue:#0d4f8b;
        --novi-blue-light:#eaf4fb;
        --novi-dark:#17324d;
        --novi-light:#f4f8fb;
        --novi-accent:#f2a900;
        --novi-green:#2f8f63;
        --text:#24313d;
        --muted:#647381;
        --white:#ffffff;
        --border:#dce6ee;
        --shadow:0 10px 30px rgba(13,79,139,.08);
        --radius:18px;
        color:var(--text);
        line-height:1.6;
        overflow:hidden;
    }
    .page-pourquoi-afficher *,
    .page-pourquoi-afficher *::before,
    .page-pourquoi-afficher *::after {
        box-sizing:border-box;
    }
    .pourquoi-container {
        max-width:1280px;
        width:calc(100% - 140px);
        margin-left:110px;
        margin-right:30px;
        box-sizing:border-box;
    }
    .page-pourquoi-afficher h1,
    .page-pourquoi-afficher h2,
    .page-pourquoi-afficher h3 {
        color:var(--novi-dark);
        line-height:1.18;
        margin-top:0;
    }
    .page-pourquoi-afficher h1 {
        font-size:clamp(2.3rem,5vw,4.35rem);
        letter-spacing:-.04em;
        margin-bottom:22px;
    }
    .page-pourquoi-afficher h2 {
        font-size:clamp(1.8rem,3.2vw,2.75rem);
        letter-spacing:-.025em;
        margin-bottom:18px;
    }
    .page-pourquoi-afficher h3 {
        font-size:1.28rem;
        margin-bottom:10px;
    }
    .pourquoi-hero {
        position:relative;
        padding:175px 0 40px;
        background:radial-gradient(circle at top right,rgba(242,169,0,.18),transparent 30%),linear-gradient(135deg,#eef7ff 0%,#ffffff 52%,#f7fbff 100%);
    }
    .pourquoi-hero-grid {
        display:grid;
        grid-template-columns:1.2fr .8fr;
        gap:48px;
        align-items:center;
    }
    .pourquoi-eyebrow {
        display:inline-flex;
        align-items:center;
        padding:8px 14px;
        margin-bottom:18px;
        border-radius:999px;
        background:#e9f3fb;
        color:var(--novi-blue);
        font-size:.88rem;
        font-weight:700;
        letter-spacing:.02em;
    }
    .pourquoi-hero-content p {
        max-width:760px;
        margin:0 0 18px;
        font-size:1.15rem;
    }
    .pourquoi-hero-content strong {
        color:var(--novi-blue);
    }
    .pourquoi-actions {
        display:flex;
        flex-wrap:wrap;
        gap:14px;
        margin-top:20px;
    }
    .pourquoi-actions-center {
        justify-content:center;
    }
    .pourquoi-btn {
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-height:48px;
        padding:13px 21px;
        border:2px solid transparent;
        border-radius:10px;
        text-decoration:none;
        font-weight:700;
        transition:transform .2s ease,box-shadow .2s ease,background .2s ease;
    }
    .pourquoi-btn-primary {
        background:var(--novi-blue);
        color:#fff;
    }
    .pourquoi-btn-primary:hover {
        color:var(--novi-blue);
        border-color:var(--novi-blue);
        background:#949393;
        text-decoration:none;
    }
    .pourquoi-btn-secondary {
        background:#fff;
        border-color:var(--novi-blue);
        color:var(--novi-blue);
    }
    .pourquoi-btn-secondary:hover {
        background:var(--novi-blue);
        color:#fff;
        text-decoration:none;
    }
    .pourquoi-hero-card {
        padding:30px;
        background:#fff;
        border:1px solid var(--border);
        border-radius:24px;
        box-shadow:var(--shadow);
    }
    .pourquoi-hero-card h2 {
        font-size:1.5rem;
    }
    .pourquoi-check-list {
        list-style:none;
        padding:0;
        margin:0;
    }
    .pourquoi-check-list li {
        position:relative;
        padding-left:30px;
        margin:12px 0;
    }
    .pourquoi-check-list li::before {
        content:"✓";
        position:absolute;
        left:0;
        top:0;
        color:var(--novi-green);
        font-weight:900;
    }
    .pourquoi-section {
        padding:72px 0;
    }
    .pourquoi-section-soft {
        background:var(--novi-light);
    }
    .pourquoi-section-title {
        max-width:820px;
        margin-bottom:34px;
    }
    .pourquoi-section-title p {
        margin-bottom:0;
        color:var(--muted);
        font-size:1.06rem;
    }
    .pourquoi-cards {
        display:grid;
        grid-template-columns:repeat(3,1fr);
        gap:20px;
    }
    .pourquoi-card {
        padding:26px;
        background:#fff;
        border:1px solid var(--border);
        border-radius:var(--radius);
        box-shadow:0 7px 18px rgba(27,58,88,.045);
    }
    .pourquoi-card p {
        color:#4c5a66;
    }
    .pourquoi-icon {
        width:46px;
        height:46px;
        display:flex;
        align-items:center;
        justify-content:center;
        margin-bottom:17px;
        border-radius:14px;
        background:var(--novi-blue-light);
        font-size:1.35rem;
    }
    .pourquoi-split {
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:44px;
        align-items:center;
    }
    .pourquoi-feature-panel {
        padding:30px;
        background:#fff;
        border:1px solid var(--border);
        border-radius:24px;
        box-shadow:var(--shadow);
    }
    .pourquoi-feature-grid {
        display:grid;
        grid-template-columns:1fr 1fr;
        gap:14px;
        margin-top:24px;
    }
    .pourquoi-feature-item {
        padding:17px;
        background:#f8fbfd;
        border:1px solid #e4edf3;
        border-radius:14px;
    }
    .pourquoi-feature-item strong {
        display:block;
        margin-bottom:4px;
        color:var(--novi-dark);
    }
    .pourquoi-feature-item span {
        display:block;
        color:#50606d;
    }
    .pourquoi-highlight {
        padding:42px;
        color:#fff;
        border-radius:28px;
        background:linear-gradient(135deg,var(--novi-dark),var(--novi-blue));
    }
    .pourquoi-highlight h2,
    .pourquoi-highlight h3 {
        color:#fff;
    }
    .pourquoi-highlight-intro {
        max-width:850px;
        color:rgba(255,255,255,.9);
    }
    .pourquoi-services {
        display:grid;
        grid-template-columns:repeat(3,1fr);
        gap:18px;
        margin-top:28px;
    }
    .pourquoi-service {
        padding:22px;
        background:rgba(255,255,255,.09);
        border:1px solid rgba(255,255,255,.16);
        border-radius:16px;
    }
    .pourquoi-service p {
        color:rgba(255,255,255,.88);
    }
    .pourquoi-candidate-box {
        display:grid;
        grid-template-columns:1.05fr .95fr;
        gap:32px;
        padding:38px;
        background:#fff;
        border:1px solid var(--border);
        border-radius:26px;
        box-shadow:var(--shadow);
    }
    .pourquoi-candidate-preview {
        display:grid;
        gap:14px;
    }
    .pourquoi-profile {
        padding:18px;
        background:#f8fbfd;
        border:1px solid #dbe6ef;
        border-radius:16px;
    }
    .pourquoi-profile-top {
        display:flex;
        align-items:center;
        gap:14px;
        margin-bottom:10px;
    }
    .pourquoi-avatar {
        width:48px;
        height:48px;
        flex-shrink:0;
        display:flex;
        align-items:center;
        justify-content:center;
        border-radius:50%;
        background:#d9eaf7;
        color:var(--novi-blue);
        font-weight:800;
    }
    .pourquoi-profile strong {
        display:block;
        color:var(--novi-dark);
    }
    .pourquoi-profile small {
        display:block;
        color:var(--muted);
    }
    .pourquoi-message-important {
        margin-top:24px;
        padding:18px 20px;
        background:#eef7ff;
        border-left:4px solid var(--novi-blue);
        border-radius:8px;
        color:var(--novi-dark);
    }
    .pourquoi-trust-grid {
        display:grid;
        grid-template-columns:repeat(2,1fr);
        gap:22px;
    }
    .pourquoi-trust-item {
        display:flex;
        gap:15px;
        padding:20px 0;
        border-bottom:1px solid var(--border);
    }
    .pourquoi-num {
        width:36px;
        height:36px;
        flex:0 0 36px;
        display:flex;
        align-items:center;
        justify-content:center;
        background:var(--novi-blue-light);
        border-radius:10px;
        color:var(--novi-blue);
        font-weight:800;
    }
    .pourquoi-trust-item h3 {
        margin-bottom:5px;
    }
    .pourquoi-trust-item p {
        margin:0;
        color:#53616d;
    }
    .pourquoi-steps {
        display:grid;
        grid-template-columns:repeat(4,1fr);
        gap:18px;
        counter-reset:pourquoiSteps;
    }
    .pourquoi-step {
        padding:22px;
        background:#fff;
        border-top:4px solid var(--novi-accent);
        border-radius:0 0 16px 16px;
        box-shadow:0 7px 18px rgba(27,58,88,.045);
    }
    .pourquoi-step::before {
        counter-increment:pourquoiSteps;
        content:counter(pourquoiSteps);
        width:34px;
        height:34px;
        display:flex;
        align-items:center;
        justify-content:center;
        margin-bottom:14px;
        border-radius:50%;
        background:var(--novi-dark);
        color:#fff;
        font-weight:800;
    }
    .pourquoi-faq {
        display:grid;
        gap:12px;
    }
    .pourquoi-faq-item {
        overflow:hidden;
        background:#fff;
        border:1px solid var(--border);
        border-radius:14px;
    }
    .pourquoi-faq-question {
        width:100%;
        display:flex;
        align-items:center;
        justify-content:space-between;
        gap:20px;
        padding:20px;
        background:transparent;
        border:none;
        color:var(--novi-dark);
        font-size:1rem;
        font-weight:800;
        text-align:left;
        cursor:pointer;
    }
    .pourquoi-faq-plus {
        width:32px;
        height:32px;
        flex:0 0 32px;
        display:flex;
        align-items:center;
        justify-content:center;
        border-radius:50%;
        background:var(--novi-blue-light);
        color:var(--novi-blue);
        font-size:1.4rem;
        transition:transform .25s ease;
    }
    .pourquoi-faq-answer {
        max-height:0;
        overflow:hidden;
        padding:0 20px;
        transition:max-height .35s ease,padding .35s ease;
    }
    .pourquoi-faq-answer p {
        color:#50606d;
    }
    .pourquoi-faq-item.is-open .pourquoi-faq-answer {
        padding-bottom:18px;
    }
    .pourquoi-faq-item.is-open .pourquoi-faq-plus {
        transform:rotate(45deg);
    }
    .pourquoi-faq-question:focus,
    .pourquoi-faq-question:active {
        outline:none;
        box-shadow:none;
    }
    .pourquoi-faq-question:focus-visible {
        outline:3px solid var(--novi-blue);
        outline-offset:2px;
    }
    .pourquoi-cta {
        padding:62px 0;
    }
    .pourquoi-cta-box {
        padding:44px;
        text-align:center;
        background:#f5f9fc;
        border:1px solid var(--border);
        border-radius:28px;
    }
    .pourquoi-cta-box p {
        max-width:760px;
        margin:0 auto 24px;
        color:#4f5d68;
        font-size:1.08rem;
    }
    .pourquoi-wow {
        margin-top:22px;
        color:var(--muted);
        font-size:.92rem;
        font-weight:600;
    }



    /* =========================================================
    FAQ EMPLOYEURS
    CSS DESKTOP UNIQUEMENT
    ========================================================= */

    .faq-employeur {
        width:100%;
        min-height:100vh;
        padding:185px 100px 100px 110px;
        box-sizing:border-box;
        background:linear-gradient(180deg,#f5f9fc 0%,#eef4f8 100%);
        font-family:"Lato",Arial,sans-serif;
        color:#252525;
    }
    .faq-employeur-container {
        width:100%;
        max-width:none;
        margin:0;
        box-sizing:border-box;
    }
    .faq-employeur-entete {
        max-width:980px;
        margin:0 0 45px;
        text-align:left;
    }
    .faq-employeur-badge {
        display:inline-block;
        margin-bottom:15px;
        padding:8px 16px;
        border-radius:999px;
        background:#e6f1fb;
        color:#155a9c;
        font-size:12px;
        font-weight:800;
        letter-spacing:1px;
        text-transform:uppercase;
    }
    .faq-employeur-entete h1 {
        margin:0 0 15px;
        font-family:"Montserrat",Arial,sans-serif;
        font-size:48px;
        font-weight:800;
        line-height:1.1;
        color:#17324d;
    }
    .faq-employeur-entete p {
        max-width:850px;
        margin:0;
        font-size:18px;
        line-height:1.7;
        color:#5d6b78;
    }
    .faq-employeur-layout {
        display:grid;
        grid-template-columns:300px minmax(0,1fr);
        gap:30px;
        align-items:start;
    }
    .faq-employeur-sidebar {
        grid-column:1;
        grid-row:1;
    }
    .faq-employeur-contenu {
        grid-column:2;
        grid-row:1;
        width:100%;
        min-width:0;
    }
    .faq-employeur-sidebar-card {
        position:sticky;
        top:180px;
        padding:32px 25px;
        border:none;
        border-radius:18px;
        background:linear-gradient(145deg,#17324d 0%,#155a9c 100%);
        box-shadow:0 16px 34px rgba(21,90,156,.22);
        text-align:center;
        color:#fff;
    }
    .faq-employeur-sidebar-icon {
        display:flex;
        width:68px;
        height:68px;
        margin:0 auto 18px;
        align-items:center;
        justify-content:center;
        border-radius:50%;
        background:rgba(255,255,255,.16);
        font-size:30px;
    }
    .faq-employeur-sidebar-card h2 {
        margin:0 0 14px;
        font-family:"Montserrat",Arial,sans-serif;
        font-size:26px;
        font-weight:800;
        color:#fff;
    }
    .faq-employeur-sidebar-card p {
        margin:0;
        font-size:15px;
        line-height:1.7;
        color:rgba(255,255,255,.88);
    }
    .faq-employeur-sidebar-ligne {
        width:60px;
        height:2px;
        margin:24px auto;
        background:rgba(255,255,255,.45);
        border-radius:999px;
    }
    .faq-employeur-sidebar-card small {
        display:block;
        font-size:12px;
        line-height:1.6;
        color:rgba(255,255,255,.72);
    }
    .faq-employeur-item {
        overflow:hidden;
        margin-bottom:16px;
        border:1px solid #dbe5ee;
        border-left:5px solid #dbe5ee;
        border-radius:16px;
        background:#fff;
        box-shadow:0 8px 22px rgba(23,50,77,.05);
        transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease;
    }
    .faq-employeur-item:hover {
        border-color:#bfd5e8;
        border-left-color:#155a9c;
        box-shadow:0 14px 28px rgba(21,90,156,.10);
        transform:translateY(-2px);
    }
    .faq-employeur-item[open] {
        border-color:#bfd5e8;
        border-left-color:#155a9c;
        box-shadow:0 16px 30px rgba(21,90,156,.12);
    }
    .faq-employeur-question {
        display:flex;
        min-height:72px;
        padding:20px 24px;
        align-items:center;
        justify-content:space-between;
        gap:20px;
        cursor:pointer;
        list-style:none;
        user-select:none;
        background:#fff;
    }
    .faq-employeur-question::-webkit-details-marker {
        display:none;
    }
    .faq-employeur-question::marker {
        content:"";
    }
    .faq-employeur-question-texte {
        flex:1;
        min-width:0;
        font-size:17px;
        font-weight:800;
        line-height:1.45;
        color:#203246;
    }
    .faq-employeur-plus {
        display:flex;
        flex:0 0 38px;
        width:38px;
        height:38px;
        align-items:center;
        justify-content:center;
        border-radius:50%;
        background:#e8f2fb;
        color:#155a9c;
        font-size:24px;
        font-weight:400;
        line-height:1;
        transition:transform .25s ease,background .25s ease,color .25s ease;
    }
    .faq-employeur-item[open] .faq-employeur-plus {
        transform:rotate(45deg);
        background:#155a9c;
        color:#fff;
    }
    .faq-employeur-reponse {
        border-top:1px solid #e6eef5;
        background:#f8fbfe;
    }
    .faq-employeur-reponse-interieur {
        padding:22px 24px 25px;
    }
    .faq-employeur-reponse-interieur p {
        margin:0 0 14px;
        font-size:15.5px;
        line-height:1.8;
        color:#546372;
    }
    .faq-employeur-reponse-interieur p:last-child {
        margin-bottom:0;
    }
    .faq-employeur-reponse-interieur strong {
        color:#17324d;
    }
    .faq-employeur-reponse-interieur a {
        color:#155a9c;
        font-weight:700;
        text-decoration:none;
    }
    .faq-employeur-reponse-interieur a:hover {
        text-decoration:underline;
    }

    /* =========================================================
    CONDITIONS GÉNÉRALES D'UTILISATION
    CSS DESKTOP UNIQUEMENT
    ========================================================= */

    .legal-wrapper {
    width: calc(88% - 24px);
    max-width: none;
    margin-left: auto;
    margin-right: auto;
    margin-top: 175px;
    margin-bottom: 40px;
    overflow: hidden;
    font-family: Arial, Helvetica, sans-serif;
    font-size: 16px;
    line-height: 1.65;
    color: #1f2937;
    background: #ffffff;
    border: 1px solid #d9e2ec;
    border-radius: 14px;
    box-shadow: 0 8px 30px rgba(15, 23, 42, 0.06);
    }

    /* Évite aussi qu’un titre ciblé depuis la table des matières se retrouve
    caché derrière le menu fixe. */
    .legal-wrapper section[id],
    .legal-wrapper [id] {
    scroll-margin-top: 175px;
    }

    .legal-wrapper .legal-header {
    padding: 36px 42px 28px;
    color: #ffffff;
    background: linear-gradient(135deg, #0b3a67, #155c91);
    }

    .legal-wrapper .legal-header h1 {
    margin: 0 0 8px;
    font-size: clamp(28px, 4vw, 42px);
    line-height: 1.15;
    color: #ffffff;
    }

    .legal-wrapper .legal-header p {
    margin: 4px 0;
    }

    .legal-wrapper .beta-badge {
    display: inline-block;
    margin-top: 12px;
    padding: 6px 10px;
    font-size: 13px;
    font-weight: 700;
    letter-spacing: 0.03em;
    background: rgba(255, 255, 255, 0.16);
    border-radius: 999px;
    }

    .legal-wrapper .legal-content {
    padding: 34px 42px 50px;
    }

    .legal-wrapper .notice {
    margin: 0 0 28px;
    padding: 16px 18px;
    background: #eef5fb;
    border-left: 4px solid #0b3a67;
    border-radius: 8px;
    }

    .legal-wrapper .legal-final-notice {
    margin-top: 40px;
    }
    /* ================================
    TABLE DES MATIÈRES
    ================================ */

    .legal-wrapper .toc {
        width: 100%;
        margin: 0 0 34px 0;
        padding: 22px;

        background: #fbfdff;
        border: 1px solid #d9e2ec;
        border-radius: 10px;

        text-align: left !important;
    }


    /* Titre Table des matières */
    .legal-wrapper .toc h2 {
        margin: 0 0 14px 0;
        padding: 0 0 8px 0;

        font-size: 27px;
        font-weight: 500;

        color: #0b3a67;

        text-align: left !important;

        border-bottom: 2px solid #0b3a67;
    }


    /* Liste en 2 colonnes */
    .legal-wrapper .toc ul {
        display: block !important;

        width: 100%;

        margin: 0 !important;
        padding-left: 18px !important;

        column-count: 2;
        column-gap: 70px;

        list-style-type: disc !important;
        list-style-position: outside !important;

        text-align: left !important;
    }


    /* Chaque ligne */
    .legal-wrapper .toc li {
        display: list-item !important;

        margin: 0 0 7px 0 !important;
        padding: 0 !important;

        list-style-type: disc !important;

        text-align: left !important;

        break-inside: avoid;
        -webkit-column-break-inside: avoid;
    }


    /* Liens */
    .legal-wrapper .toc li a {
        display: inline !important;

        color: #0b3a67;

        text-decoration: none;

        text-align: left !important;
    }


    /* Survol */
    .legal-wrapper .toc li a:hover {
        text-decoration: underline;
    }

    .legal-wrapper h2 {
    margin-top: 44px;
    padding-bottom: 10px;
    font-size: 27px;
    color: #0b3a67;
    border-bottom: 2px solid #0b3a67;
    }

    .legal-wrapper h3 {
    margin-top: 34px;
    font-size: 21px;
    color: #17324d;
    }

    .legal-wrapper h4 {
    margin-top: 24px;
    font-size: 18px;
    color: #243b53;
    }

    .legal-wrapper p {
    margin: 0 0 16px;
    }

    .legal-wrapper ul,
    .legal-wrapper ol {
    margin: 0 0 18px 24px;
    }

    .legal-wrapper li {
    margin-bottom: 7px;
    }

    .legal-wrapper a {
    color: #0b3a67;
    }

    .legal-wrapper .caps {
    font-weight: 700;
    text-transform: uppercase;
    }

    .legal-wrapper .section-note {
    font-size: 14px;
    color: #667085;
    }

    .legal-wrapper .contact-box {
    padding: 18px;
    background: #fafafa;
    border: 1px solid #d9e2ec;
    border-radius: 8px;
    }


    /* =========================================
    ANNEXE B - MESURES DE SÉCURITÉ
    ========================================= */

    .legal-wrapper #annexe-b {
        text-align: left !important;
    }


    /* Titre ANNEXE B */
    .legal-wrapper #annexe-b h2 {
        margin-top: 44px;
        margin-bottom: 20px;
        padding-bottom: 10px;

        font-size: 27px;
        font-weight: 700;

        color: #0b3a67;

        text-align: left !important;

        border-bottom: 2px solid #0b3a67;
    }


    /* Sous-titres */
    .legal-wrapper #annexe-b h3 {
        margin-top: 30px;
        margin-bottom: 14px;

        font-size: 20px;
        font-weight: 700;

        color: #17324d;

        text-align: left !important;
    }


    /* Paragraphes */
    .legal-wrapper #annexe-b p {
        margin: 0 0 16px;

        text-align: left !important;
    }


    /* Listes */
    .legal-wrapper #annexe-b ul {
        display: block !important;

        margin: 0 0 28px 38px !important;
        padding: 0 !important;

        list-style-type: disc !important;
        list-style-position: outside !important;

        text-align: left !important;
    }


    /* Chaque élément de liste */
    .legal-wrapper #annexe-b ul li {
        display: list-item !important;

        margin: 0 0 8px 0 !important;
        padding: 0 !important;

        list-style-type: disc !important;

        text-align: left !important;

        line-height: 1.6;
    }

    /* =========================================
    SECTION 21 - RÈGLES DU SITE
    Ciblage exact de la liste après le titre
    ========================================= */

    .legal-wrapper #s21 + p + ul {
        display: block !important;
        width: auto !important;

        margin: 10px 0 22px 40px !important;
        padding: 0 0 0 20px !important;

        list-style: disc outside !important;

        text-align: left !important;

        float: none !important;
    }

    .legal-wrapper #s21 + p + ul > li {
        display: list-item !important;
        width: auto !important;

        margin: 0 0 7px 0 !important;
        padding: 0 !important;

        list-style: disc outside !important;

        text-align: left !important;

        float: none !important;
    }

    /* =========================================
    LISTES - PAGE CONFIDENTIALITÉ
    ========================================= */

    .container-page-adhesion ul {
        display: block !important;

        margin: 12px 0 22px 40px !important;
        padding-left: 20px !important;

        list-style-type: disc !important;
        list-style-position: outside !important;

        text-align: left !important;
    }

    .container-page-adhesion ul > li {
        display: list-item !important;

        width: auto !important;

        margin: 0 0 7px 0 !important;
        padding: 0 !important;

        list-style-type: disc !important;
        list-style-position: outside !important;

        text-align: left !important;

        float: none !important;

        line-height: 1.6;
    }

    .titre-adhesion {
    font-size: 23px;
    font-weight: 500;
    padding-top: 25px;
    }


    .img-adhesion {
        padding-top: 40px;
        padding-left: 10px;
        padding-bottom: 30px;
    }

    .img-size-adhesion {
        width: 200px;
        height: auto;
    }

    .container-adhesion {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        z-index: 9999;
        background-color: white;
    }

    .container-adhesion .row {
        width: 90%;
        justify-content: center;
        text-align: center;
        margin-left: auto;
        margin-right: auto;
    }

    .container-page-adhesion {
        width: 88%;
        margin: auto;
        padding-bottom: 100px;
        margin-top: 190px;
    }

    /* =========================================================
    POLITIQUE DE CONFIDENTIALITÉ
    CSS DESKTOP UNIQUEMENT
    ========================================================= */
    
    .privacy-page {
        --privacy-blue:#155a9c;
        --privacy-blue-dark:#173c60;
        --privacy-navy:#18324d;
        --privacy-text:#344554;
        --privacy-muted:#687887;
        --privacy-bg:#f5f8fb;
        --privacy-soft:#edf5fb;
        --privacy-border:#dbe5ee;
        --privacy-green:#21895d;
        --privacy-text-size:17px;
        width:100%;
        padding:165px 0 90px;
        background:linear-gradient(180deg,#f5f9fc 0,#fff 390px);
        color:var(--privacy-text);
        font-size:var(--privacy-text-size);
    }
    .privacy-page *,
    .privacy-page *::before,
    .privacy-page *::after {
        box-sizing:border-box;
    }
    .privacy-container {
        width:calc(100% - 140px);
        max-width:1450px;
        margin-left:110px;
        margin-right:30px;
        margin-top:30px;
    }
    .privacy-hero {
        position:relative;
        overflow:hidden;
        margin-bottom:25px;
        padding:44px 48px;
        border:1px solid #dce8f1;
        border-radius:24px;
        background:linear-gradient(135deg,#eef7ff 0,#fff 58%,#f8fbfd 100%);
        box-shadow:0 12px 35px rgba(24,50,77,.06);
    }
    .privacy-hero::after {
        content:"";
        position:absolute;
        width:260px;
        height:260px;
        top:-130px;
        right:-70px;
        border-radius:50%;
        background:rgba(21,90,156,.07);
    }
    .privacy-badge {
        display:inline-flex;
        align-items:center;
        margin-bottom:14px;
        padding:7px 13px;
        border-radius:999px;
        background:#dfeefa;
        color:var(--privacy-blue);
        font-size:var(--privacy-text-size);
        font-weight:800;
        letter-spacing:.6px;
    }
    .privacy-hero h1 {
        max-width:850px;
        margin:0 0 13px;
        color:var(--privacy-navy);
        font-size:clamp(38px,calc(4vw + 2px),58px);
        font-weight:800;
        line-height:1.08;
        letter-spacing:-1px;
    }
    .privacy-update {
        display:inline-block;
        margin-bottom:15px;
        color:var(--privacy-blue);
        font-size:var(--privacy-text-size);
        font-weight:700;
    }
    .privacy-intro {
        position:relative;
        z-index:1;
        max-width:900px;
        margin:0;
        color:#536574;
        font-size:var(--privacy-text-size);
        line-height:1.6;
    }
    .privacy-actions {
        display:flex;
        flex-wrap:wrap;
        gap:10px;
        margin-top:20px;
    }
    .privacy-btn {
        display:inline-flex;
        align-items:center;
        justify-content:center;
        min-height:44px;
        padding:10px 17px;
        border-radius:8px;
        font-size:var(--privacy-text-size);
        font-weight:700;
        text-decoration:none!important;
    }
    .privacy-btn-primary {
        background:var(--privacy-blue);
        color:#fff!important;
    }
    .privacy-btn-secondary {
        border:1px solid #b9d2e5;
        background:#fff;
        color:var(--privacy-blue)!important;
    }
    .privacy-summary {
        display:grid;
        grid-template-columns:repeat(3,minmax(0,1fr));
        gap:16px;
        margin-bottom:25px;
    }
    .privacy-summary-card {
        padding:22px;
        border:1px solid var(--privacy-border);
        border-radius:15px;
        background:#fff;
        box-shadow:0 7px 20px rgba(24,50,77,.04);
    }
    .privacy-summary-icon {
        width:40px;
        height:40px;
        display:flex;
        align-items:center;
        justify-content:center;
        margin-bottom:10px;
        border-radius:11px;
        background:var(--privacy-soft);
        color:var(--privacy-blue);
        font-size:20px;
        font-weight:800;
    }
    .privacy-summary-card strong {
        display:block;
        margin-bottom:4px;
        color:var(--privacy-navy);
        font-size:19px;
    }
    .privacy-summary-card p {
        margin:0;
        color:var(--privacy-muted);
        font-size:var(--privacy-text-size);
        line-height:1.55;
    }
    .privacy-summary-note {
        grid-column:1/-1;
        margin:0;
        color:#7a8792;
        font-size:var(--privacy-text-size);
    }
    .privacy-layout {
        display:grid;
        grid-template-columns:280px minmax(0,1fr);
        gap:30px;
        align-items:start;
    }
    .privacy-nav {
        position:sticky;
        top:145px;
        max-height:calc(100vh - 170px);
        overflow-y:auto;
        overflow-x:hidden;
        padding:20px;
        border:1px solid var(--privacy-border);
        border-radius:16px;
        background:#fff;
        box-shadow:0 8px 24px rgba(24,50,77,.05);
    }
    .privacy-nav::-webkit-scrollbar {
        width:6px;
    }
    .privacy-nav::-webkit-scrollbar-track {
        background:transparent;
    }
    .privacy-nav::-webkit-scrollbar-thumb {
        background:#c8d8e5;
        border-radius:10px;
    }
    .privacy-nav::-webkit-scrollbar-thumb:hover {
        background:#9fbcd1;
    }
    .privacy-nav-title {
        margin:0 0 10px;
        color:var(--privacy-navy);
        font-size:20px;
        font-weight:800;
    }
    .privacy-nav a {
        display:flex;
        align-items:flex-start;
        gap:9px;
        padding:6px 7px;
        border-radius:7px;
        color:#536574;
        font-size:var(--privacy-text-size);
        line-height:1.3;
        text-decoration:none;
        transition:background .2s ease,color .2s ease;
    }
    .privacy-nav a:hover {
        background:var(--privacy-soft);
        color:var(--privacy-blue);
    }
    .privacy-nav-num {
        min-width:25px;
        color:var(--privacy-blue);
        font-size:15px;
        font-weight:800;
    }
    .privacy-mobile-nav {
        display:none;
    }
    .privacy-content {
        min-width:0;
        display:grid;
        gap:15px;
    }
    .privacy-section {
        scroll-margin-top:155px;
        padding:28px 34px;
        border:1px solid var(--privacy-border);
        border-radius:18px;
        background:#fff;
        box-shadow:0 7px 22px rgba(24,50,77,.045);
    }
    .privacy-section-heading {
        display:flex;
        align-items:flex-start;
        gap:14px;
        margin-bottom:16px;
        padding-bottom:14px;
        border-bottom:1px solid #e9eef2;
    }
    .privacy-section-number {
        min-width:50px;
        padding:0;
        border-radius:9px;
        background:var(--privacy-soft);
        color:var(--privacy-blue);
        font-size:24px;
        font-weight:900;
        text-align:center;
        margin-left:-7px;
    }
    .privacy-section h2 {
        margin:4px 0 0;
        color:var(--privacy-navy);
        font-size:24px;
        font-weight:800;
        line-height:1.25;
    }
    .privacy-section h3 {
        margin:20px 0 7px;
        color:var(--privacy-blue-dark);
        font-size:21px;
        font-weight:800;
    }
    .privacy-section p {
        margin:0 0 8px;
        color:#4d5e6c;
        font-size:var(--privacy-text-size);
        line-height:1.6;
    }
    .privacy-section ul {
        margin:5px 0 10px;
        padding-left:22px;
    }
    .privacy-section li {
        margin-bottom:4px;
        color:#4d5e6c;
        font-size:var(--privacy-text-size);
        line-height:1.55;
    }
    .privacy-section strong {
        color:#30475b;
    }
    .privacy-section a {
        color:var(--privacy-blue);
        font-size:inherit;
        font-weight:600;
        text-decoration:none;
    }
    .privacy-section a:hover {
        text-decoration:underline;
    }
    .privacy-notice {
        margin:12px 0;
        padding:14px 18px;
        border-left:4px solid var(--privacy-blue);
        border-radius:7px;
        background:#f2f8fc;
    }
    .privacy-notice p:last-child {
        margin-bottom:0;
    }
    .privacy-warning {
        margin:12px 0;
        padding:14px 18px;
        border-left:4px solid #d69a21;
        border-radius:7px;
        background:#fff9ec;
    }
    .privacy-contact-card {
        margin-top:12px;
        padding:18px 20px;
        border:1px solid #cfe2d8;
        border-radius:12px;
        background:#f3faf6;
    }
    .privacy-contact-card p:last-child {
        margin-bottom:0;
    }
    .privacy-cookie-section {
        border-color:#cbdfea;
        background:linear-gradient(180deg,#f7fbfe 0,#fff 180px);
    }
    .privacy-cookie-section p,
    .privacy-cookie-section li {
        font-size:var(--privacy-text-size);
        line-height:1.6;
    }
    .privacy-cookie-label {
        display:inline-block;
        margin-bottom:12px;
        padding:6px 11px;
        border-radius:999px;
        background:#dfeefa;
        color:var(--privacy-blue);
        font-size:var(--privacy-text-size);
        font-weight:800;
        letter-spacing:.5px;
    }
    .privacy-back-top {
        margin-top:10px;
        text-align:right;
    }
    .privacy-back-top a {
        color:#7890a2;
        font-size:var(--privacy-text-size);
        text-decoration:none;
    }
