/* =========================================================
   Compléments du thème : intégration Elementor, formulaires,
   accessibilité. Chargé après site.css.
   ========================================================= */

.skip-link{position:absolute;left:-9999px;top:8px;z-index:100;background:var(--navy);color:var(--white);padding:.6em 1em;border-radius:4px;font-weight:700}
.skip-link:focus{left:16px}
.admin-bar .site-header{top:32px}
@media (max-width:782px){.admin-bar .site-header{top:46px}}
@media (max-width:600px){.admin-bar .site-header{top:0}}

[hidden]{display:none!important}
.wrap{width:100%}
.isa-hidden{display:none!important}
.entry-content > * + *{margin-top:1em}
.logo-isa,.logo-crsa{object-fit:contain}

/* ---------- Conteneurs Elementor : les classes du thème pilotent la mise en page ---------- */
body.isa .e-con{--padding-top:0px;--padding-right:0px;--padding-bottom:0px;--padding-left:0px;--margin-top:0px;--margin-bottom:0px;--gap:0px;--row-gap:0px;--column-gap:0px}
body.isa .elementor-widget:not(:last-child){margin-block-end:0}
body.isa .elementor-widget-text-editor,
body.isa .elementor-widget-heading{color:inherit;font-family:inherit}
body.isa :is(h1,h2,h3,h4).elementor-heading-title{line-height:1.18;color:var(--navy);font-family:var(--f-display)}
body.isa :is(.hero,.section--navy,.cta-card) :is(h1,h2,h3,h4).elementor-heading-title{color:var(--white)}
body.isa .elementor-widget-text-editor p:last-child{margin-bottom:0}
body.isa .btn-row,
body.isa .card-foot,
body.isa .toc{flex-direction:row;flex-wrap:wrap;align-items:center}
body.isa .card-foot{margin-top:auto}
body.isa .legal .elementor-widget-heading{scroll-margin-top:140px}
body.isa .cta-card > .elementor-widget-html{align-self:stretch}
body.isa .cta-card > .elementor-widget-html .ph{height:100%}

/* ---------- Boutons Elementor aux couleurs de la charte ---------- */
body.isa .isa-btn a.elementor-button{display:inline-flex;align-items:center;font-family:var(--f-display);font-weight:700;font-size:.9rem;line-height:1.2;padding:.8em 1.35em;border-radius:999px;border:2px solid transparent;background:transparent;color:var(--navy);text-decoration:none;box-shadow:none;transition:background .2s,color .2s,border-color .2s}
body.isa .isa-btn .elementor-button-content-wrapper{display:inline-flex;align-items:center}
body.isa .isa-btn .elementor-button-text::after{content:"›";display:inline-block;margin-left:.5em;font-size:1.25em;line-height:.8;transition:transform .2s}
body.isa .isa-btn a.elementor-button:hover .elementor-button-text::after{transform:translateX(3px)}
body.isa .isa-btn--primary a.elementor-button{background:var(--orange);color:var(--navy)}
body.isa .isa-btn--primary a.elementor-button:hover{background:#EF9F27;color:var(--navy)}
body.isa .isa-btn--light a.elementor-button{background:var(--white);color:var(--navy)}
body.isa .isa-btn--light a.elementor-button:hover{background:var(--mist-2);color:var(--navy)}
body.isa .isa-btn--ghost a.elementor-button{border-color:rgba(255,255,255,.7);color:var(--white)}
body.isa .isa-btn--ghost a.elementor-button:hover{background:rgba(255,255,255,.1);color:var(--white)}
body.isa .isa-btn--outline a.elementor-button{border-color:var(--navy);color:var(--navy)}
body.isa .isa-btn--outline a.elementor-button:hover{background:var(--navy);color:var(--white)}
body.isa .isa-btn--royal a.elementor-button{background:var(--royal-bright);color:var(--white)}
body.isa .isa-btn--royal a.elementor-button:hover{background:var(--royal);color:var(--white)}
body.isa .spec .isa-btn{margin-top:22px}
body.isa .spec .isa-btn a.elementor-button{width:100%;justify-content:center}

/* ---------- Partage, formulaires ---------- */
body.isa .hero .share{color:#C9D6E4}
body.isa .hero .share a{color:var(--white);border-color:rgba(255,255,255,.4)}
body.isa .spec .share{margin-top:18px}
.section:not(.section--navy) .form-card{border:1px solid var(--line)}
.form-status--ok{border-left-color:#1D6B43;background:#E3F2EA}
.isa-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.isa-contact .form-card{box-shadow:none;border:0!important;padding:0}
.contact-intro{display:grid;gap:8px;margin-bottom:24px}
.field .req{color:var(--orange-deep)}

/* ---------- Sélecteur de langue ---------- */
.lang-switch{display:inline-flex;align-items:center;gap:4px;font-family:var(--f-display);font-weight:700;font-size:.78rem;letter-spacing:.04em}
.lang-switch a{color:var(--muted);text-decoration:none;padding:.2em .5em;border-radius:4px}
.lang-switch a:hover{color:var(--navy)}
.lang-switch a.is-current{color:var(--navy);background:var(--mist-2)}
.mobile-util .lang-switch{margin-left:auto;font-size:.9rem}

@media (max-width:860px){
  body.isa .event .isa-btn{grid-column:2;justify-self:start}
}
