/* Ajustements WordPress et comportements partagés. */
.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.screen-reader-text:focus{clip:auto!important;width:auto;height:auto;top:8px;left:8px;z-index:99999;padding:12px 18px;background:#fff;color:#000;border-radius:8px}.search-panel{position:absolute;z-index:80;top:100%;right:clamp(20px,5vw,80px);padding:16px;background:#fff;border:1px solid rgba(0,0,0,.1);border-radius:16px;box-shadow:0 16px 45px rgba(0,0,0,.14)}.search-panel form{display:flex;gap:8px}.search-panel input{min-width:min(420px,65vw);min-height:46px;border:1px solid rgba(0,0,0,.18);border-radius:10px;padding:0 14px;font:inherit}.lang{position:relative;cursor:default}.lang__menu{display:none;position:absolute;top:100%;left:50%;transform:translateX(-50%);min-width:100px;padding:10px;background:#fff;border-radius:10px;box-shadow:0 10px 30px rgba(0,0,0,.12);list-style:none}.lang:hover .lang__menu,.lang:focus-within .lang__menu{display:block}.lang__menu li{list-style:none}.lang__menu a{display:block;padding:5px;color:#000}.wp-caption,.prose img,.art-body img{max-width:100%;height:auto}.prose iframe,.art-body iframe{max-width:100%}.prose .et_pb_row,.prose .et_pb_column,.art-body .et_pb_row,.art-body .et_pb_column{width:auto!important;max-width:none!important;margin:0!important;padding:0!important}.carexpat-pagination{display:flex;justify-content:center;gap:8px;margin-top:42px}.carexpat-pagination .page-numbers{display:grid;place-items:center;min-width:42px;height:42px;padding:0 12px;border:1px solid #111;border-radius:999px;color:#111}.carexpat-pagination .current{background:#111;color:#fff}.empty-state{padding:48px;text-align:center;border:1px dashed rgba(0,0,0,.2);border-radius:18px}.cta-banner__stars{letter-spacing:2px;color:#00b67a}.site-footer__socials a{display:grid!important;place-items:center;font-weight:700;font-size:13px}.carexpat-cf7 .wpcf7-form{display:flex;gap:8px;align-items:flex-start}.carexpat-cf7 .wpcf7-form>div,.carexpat-cf7 .wpcf7-form p{display:contents}.carexpat-cf7 input[type=email]{min-height:46px;border:0;border-radius:999px;padding:0 16px}.carexpat-cf7 input[type=submit]{min-height:46px;border:0;border-radius:999px;padding:0 20px;background:#111;color:#fff;font-weight:600;cursor:pointer}.carexpat-cf7 .wpcf7-spinner{display:none}.carexpat-quote-form button svg,.btn-pri svg,.acard__more svg,.country__chev,.rel-card__meta~svg{width:18px;height:18px;max-width:18px;max-height:18px;display:inline-block;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:2.2}.acard__more svg{width:15px;height:15px;max-width:15px;max-height:15px;flex-basis:15px}.tick{display:inline-grid;place-items:center}.site-header__logo{display:block!important;width:auto!important;height:24px!important;max-width:120px!important;object-fit:contain}.site-footer__brand-logo{display:block;width:min(250px,100%)!important;height:auto!important;max-height:none!important;object-fit:contain}.wp-block-image figcaption{font-size:.85rem;opacity:.7}.art-body:empty{display:none}
@media(max-width:920px){.site-nav{display:none!important;position:absolute;top:100%;left:0;right:0;padding:18px 22px;background:#fff;box-shadow:0 18px 30px rgba(0,0,0,.12);flex-direction:column;align-items:stretch}.site-nav.is-open{display:flex!important}.site-nav a{padding:10px 0}.site-header__burger{display:block}.site-header__actions>.btn{display:none}.site-header__logo{height:20px!important;max-width:100px!important}.search-panel{left:14px;right:14px}.search-panel form{flex-direction:column}.search-panel input{min-width:0;width:100%}.carexpat-cf7 .wpcf7-form{flex-direction:column}.nav-open{overflow:hidden}}

/* Alignement final sur les gabarits HTML livrés. */
.site-footer__brand-logo{width:auto!important;height:40px!important;max-width:100%!important;max-height:40px!important;margin-bottom:22px;object-fit:contain}
.site-footer__bottom a{color:inherit}
.site-footer__socials a{display:flex!important;align-items:center;justify-content:center;width:36px;height:36px;padding:0;border-radius:50%;background:rgba(0,0,0,.10)}
.site-footer__socials svg{width:17px;height:17px;fill:none;stroke:#000;stroke-width:1.8}
.site-footer__socials .social-fill{fill:#000;stroke:none}
.carexpat-newsletter-form{display:block;max-width:360px;width:100%}
.carexpat-newsletter-form .wpcf7-form{display:block;margin:0;width:100%}
.carexpat-newsletter-form #responsive-form{display:block!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;border-radius:0!important;background:transparent!important;overflow:visible!important}
.carexpat-newsletter-form .form-row{display:flex!important;align-items:center!important;gap:8px!important;width:100%!important;margin:0!important}
.carexpat-newsletter-form .column-half{float:none!important;width:auto!important;margin:0!important;padding:0!important}
.carexpat-newsletter-form .column-half:first-child{flex:1 1 auto!important;min-width:0}
.carexpat-newsletter-form .column-half:last-child{flex:0 0 auto!important}
.carexpat-newsletter-form .wpcf7-form-control-wrap{display:block;min-width:0}
.carexpat-newsletter-form input[type=email]{display:block;width:100%!important;min-width:0;height:44px;padding:0 18px;border:1px solid rgba(0,0,0,.18);border-radius:var(--radius-pill);background:rgba(255,255,255,.28)!important;color:#000;font:inherit;font-size:14px}
.carexpat-newsletter-form input[type=submit],.site-footer .news-form button{display:block;flex:0 0 auto;min-width:96px;width:auto!important;height:44px;padding:0 20px;border:0;border-radius:var(--radius-pill);background:#000!important;color:#fff!important;font:inherit;font-size:13px;font-weight:var(--fw-semibold);cursor:pointer}
.carexpat-newsletter-form .wpcf7-spinner,.carexpat-newsletter-form .wpcf7-response-output{display:none}
.carexpat-trust-summary{color:inherit;text-decoration:none!important}
.chip{display:inline-flex;align-items:center;min-height:24px;padding:3px 12px;border-radius:var(--radius-pill);font-size:10.5px;font-weight:var(--fw-bold);line-height:1.2;text-transform:uppercase;letter-spacing:.08em}
.chip--destinations{background:var(--cyan-tint);color:var(--cyan-dark)}
.chip--profils{background:var(--violet-tint);color:var(--violet-dark)}
.chip--guide{background:var(--orange-tint);color:var(--orange-dark)}
.chip--sante{background:rgba(219,219,25,.18);color:#6c6c0d}
.carexpat-quote-cf7 .wpcf7-form{display:flex;flex-direction:column;gap:18px;margin:0}
.carexpat-quote-cf7 .wpcf7-form p,.carexpat-quote-cf7 .wpcf7-form>div,.carexpat-quote-cf7 .wpcf7-form>label{margin:0!important}
.carexpat-quote-cf7 .wpcf7-form label{font-size:12px;font-weight:var(--fw-semibold);color:var(--text-2)}
.carexpat-quote-cf7 .wpcf7-form label>span:first-child:not(.wpcf7-form-control-wrap){display:block;margin-bottom:7px!important}
.carexpat-quote-cf7 #responsive-form,.carexpat-quote-cf7 .form-row,.carexpat-quote-cf7 .column-half{display:block!important;width:100%!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;float:none!important}
.carexpat-quote-cf7 .wpcf7-form-control-wrap{display:block;width:100%;margin-top:7px}
.carexpat-quote-cf7 select,.carexpat-quote-cf7 input[type=date]{display:block;width:100%;height:48px;padding:0 15px;border:1px solid var(--border-mid);border-radius:12px;background:#fff;color:var(--text-1);font:inherit;font-size:14px}
.carexpat-quote-cf7 select:focus,.carexpat-quote-cf7 input[type=date]:focus{outline:none;border-color:var(--black);box-shadow:var(--shadow-focus)}
.carexpat-quote-cf7 .wpcf7-radio{display:grid;grid-template-columns:1fr;gap:8px;margin-top:8px}
.carexpat-quote-cf7 .wpcf7-list-item{display:block;margin:0}
.carexpat-quote-cf7 .wpcf7-list-item label{display:flex;align-items:center;gap:10px;min-height:44px;padding:8px 13px;border:1px solid var(--border-mid);border-radius:12px;background:#fff;color:var(--text-1);font-size:13px;font-weight:var(--fw-semibold);cursor:pointer;transition:border-color var(--t-fast),box-shadow var(--t-fast),background var(--t-fast)}
.carexpat-quote-cf7 .wpcf7-list-item label:hover{border-color:var(--black)}
.carexpat-quote-cf7 .wpcf7-list-item label:has(input:checked){border-color:var(--black);box-shadow:0 0 0 1px var(--black);background:rgba(0,0,0,.025)}
.carexpat-quote-cf7 input[type=radio]{appearance:none;display:grid;place-content:center;flex:0 0 17px;width:17px;height:17px;margin:0;border:1.5px solid rgba(0,0,0,.55);border-radius:50%;background:#fff}
.carexpat-quote-cf7 input[type=radio]::before{content:"";width:9px;height:9px;border-radius:50%;background:#000;transform:scale(0);transition:transform var(--t-fast)}
.carexpat-quote-cf7 input[type=radio]:checked::before{transform:scale(1)}
.carexpat-quote-cf7 input[type=radio]:focus-visible{outline:2px solid var(--black);outline-offset:3px}
.carexpat-quote-cf7 input[type=submit]{align-self:stretch;width:100%;min-height:48px;padding:0 24px;border:0;border-radius:var(--radius-pill);background:#000;color:#fff;font:inherit;font-size:14px;font-weight:var(--fw-semibold);cursor:pointer}
.carexpat-quote-cf7 input[type=submit]:hover{opacity:.88}
.carexpat-quote-cf7 .wpcf7-spinner{margin:0 0 0 10px}
.carexpat-quote-cf7 .wpcf7-not-valid-tip{margin-top:5px;font-size:12px;color:var(--error)}
.carexpat-quote-cf7 .wpcf7-response-output{margin:0!important;padding:10px 14px!important;border-radius:10px;font-size:13px}
.carexpat-quote-cf7.is-compact select,.carexpat-quote-cf7.is-compact input[type=date]{height:44px}
.carexpat-quote-cf7.is-compact .wpcf7-form{gap:15px}
.carexpat-trust-summary .stars,.devis__trust .stars{display:inline-flex;gap:2px;flex-shrink:0}
.carexpat-trust-summary .stars svg,.devis__trust .stars svg{width:14px;height:14px;fill:#00b67a;stroke:none}
.devis__trust.carexpat-trust-summary{display:flex}
.devis__logo,.hero-logos__item{display:inline-flex;align-items:center;justify-content:center}
.devis__logo.is-linked:hover img,.hero-logos__item.is-linked:hover img{opacity:1;filter:none}
.insurer-logo-card img{width:100%;height:100%;padding:30px;object-fit:contain}
.faqA__aside .h-1{margin-top:14px}
.faq__a-inner p{margin:0}
.art-aside>.aside-form{order:1}
.art-aside>.toc{order:2;padding:0;border:0;border-radius:0;background:transparent}
.toc summary{list-style:none;display:flex;align-items:center;justify-content:space-between;gap:12px;cursor:pointer;padding:2px 0}
.toc summary::-webkit-details-marker{display:none}
.toc summary .toc__label{margin-bottom:0}
.toc summary svg{display:block;flex:0 0 14px;width:14px;height:14px;stroke:var(--text-3);stroke-width:2.2;fill:none;transition:transform var(--t-fast)}
.toc[open] summary svg{transform:rotate(180deg)}
.toc[open] summary{margin-bottom:12px}
.toc__label{font-size:11px;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.14em;color:var(--text-3)}
.toc ul{list-style:none;display:flex;flex-direction:column;gap:2px;margin:0;padding:0;border-left:2px solid var(--border)}
.toc a{display:block;padding:7px 0 7px 16px;margin-left:-2px;border-left:2px solid transparent;font-size:13.5px;line-height:1.35;color:var(--text-2);transition:color var(--t-fast),border-color var(--t-fast)}
.toc a:hover{color:var(--text-1)}
.toc a.is-active{color:var(--black);border-left-color:var(--black);font-weight:var(--fw-semibold)}
.carexpat-composer>.vc_row,.carexpat-composer>.wpb-content-wrapper>.vc_row{margin-left:0;margin-right:0}
.carexpat-composer .wpb_content_element{margin-bottom:0}
.carexpat-composer .vc_column_container>.vc_column-inner{padding-left:0;padding-right:0}
.carexpat-composer .vc-insurers{padding:28px 0;background:#fff}
.carexpat-composer .vc-insurers .devis__logos{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}
.carexpat-composer .vc-insurers .devis__logo{min-width:120px;height:64px;padding:12px 18px;border:1px solid var(--border);border-radius:var(--radius-md);background:#fff}
.carexpat-composer .vc-insurers .devis__logo img{display:block;width:auto;max-width:100%;height:auto;max-height:36px;object-fit:contain;filter:grayscale(1);opacity:.72}
.carexpat-composer .vc-insurers--hero{margin-top:0;padding:24px 0 26px;border-top:0;background:var(--cyan);overflow:hidden}
.carexpat-composer .vc-insurers--hero .container{display:grid;grid-template-columns:auto minmax(0,1fr);gap:44px;align-items:center}
.carexpat-composer .vc-insurers--hero .hero-logos__label{margin:0;max-width:17ch;font-size:11px;font-weight:var(--fw-bold);text-transform:uppercase;letter-spacing:.13em;line-height:1.5;color:rgba(0,0,0,.6)}
.carexpat-composer .vc-insurers--hero .logobar__viewport{position:relative;min-width:0;overflow:hidden;mask-image:linear-gradient(90deg,#000 0,#000 88%,transparent);-webkit-mask-image:linear-gradient(90deg,#000 0,#000 88%,transparent)}
.carexpat-composer .vc-insurers--hero .logobar__track{display:flex;align-items:center;gap:62px;width:max-content;animation:logoscroll 46s linear infinite}
.carexpat-composer .vc-insurers--hero .hero-logos__item{display:flex;align-items:center;flex-shrink:0}
.carexpat-composer .vc-insurers--hero .hero-logos__item img{display:block;width:auto;max-width:180px;height:auto;max-height:36px;object-fit:contain;opacity:.78;filter:grayscale(1);mix-blend-mode:multiply}
.carexpat-composer .vc-insurers--hero .hero-logos__item:hover img{opacity:1;filter:none}
.carexpat-composer .vc-insurers--hero:hover .logobar__track,.carexpat-composer .vc-insurers--hero:focus-within .logobar__track{animation-play-state:paused}
.carexpat-composer .et-hero__meta,.carexpat-composer .art-meta{display:flex;align-items:center;flex-wrap:wrap;gap:8px 14px;margin-top:24px;font-size:13px;line-height:1.5;color:rgba(0,0,0,.62)}
.carexpat-composer .et-hero__meta .sep,.carexpat-composer .art-meta .sep{display:inline-block;flex:0 0 4px;width:4px;height:4px;border-radius:50%;background:rgba(0,0,0,.3)}
.carexpat-composer .art-author{display:inline-flex;align-items:center;gap:9px}
.carexpat-composer .art-author__av{display:flex;align-items:center;justify-content:center;flex:0 0 30px;width:30px;height:30px;border-radius:50%;background:var(--violet);font-size:12px;font-weight:var(--fw-bold);color:#000}
@media(max-width:920px){.carexpat-composer .vc-insurers--hero .container{grid-template-columns:1fr;gap:16px}.carexpat-composer .vc-insurers--hero .hero-logos__label{max-width:none}}
@media(prefers-reduced-motion:reduce){.carexpat-composer .vc-insurers--hero .logobar__track{animation:none;flex-wrap:wrap;justify-content:center;width:auto}.carexpat-composer .vc-insurers--hero .hero-logos__item[aria-hidden="true"]{display:none}}
.carexpat-composer .country>svg{margin-left:auto;width:15px;height:15px;fill:none;stroke:currentColor;stroke-width:2.2}
/* Pont de survol : le mÃ©ga-menu est dÃ©calÃ© sous le header de la maquette. */
@media(min-width:921px){
  .site-nav>.nav-offres::after{content:"";position:absolute;z-index:29;top:100%;left:0;right:0;height:28px;display:none;pointer-events:auto}
  .site-nav>.nav-offres:hover::after,.site-nav>.nav-offres:focus-within::after{display:block}
  .site-nav>.nav-offres.is-mega-open .nav-offres__menu{opacity:1;visibility:visible;pointer-events:auto;transform:translateX(-50%) translateY(0)}
}
@media(max-width:600px){.carexpat-newsletter-form,.news-form{max-width:100%}.carexpat-newsletter-form .form-row,.site-footer form.news-form{display:flex!important;flex-direction:row!important}.carexpat-newsletter-form input[type=submit],.site-footer .news-form button{width:auto!important;padding-inline:16px}}

/* Trois cartes par ligne sur les pages intérieures, avec titres compacts. */
.carexpat-template-country .agrid,.carexpat-template-profile .agrid{grid-template-columns:repeat(3,minmax(0,1fr))}
.carexpat-template-country .acard__title,.carexpat-template-profile .acard__title{font-size:14.5px;line-height:1.3}
@media(max-width:920px){.carexpat-template-country .agrid,.carexpat-template-profile .agrid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.carexpat-template-country .agrid,.carexpat-template-profile .agrid{grid-template-columns:1fr}}

/* Navigation WordPress à deux niveaux. */
.site-nav__menu{display:flex;align-items:center;gap:28px;margin:0;padding:0;list-style:none}
.site-nav__menu>li{position:relative;margin:0;padding:0;list-style:none}
.site-nav__menu>li.menu-item-has-children>a{gap:7px}
.site-nav__menu>li.menu-item-has-children>a::after{content:"";width:7px;height:7px;border-right:1.8px solid currentColor;border-bottom:1.8px solid currentColor;transform:translateY(-2px) rotate(45deg);opacity:.55;transition:transform .18s ease}
.site-nav__menu .sub-menu{position:absolute;z-index:90;top:calc(100% + 14px);left:50%;min-width:230px;margin:0;padding:10px;background:#fff;border:1px solid rgba(0,0,0,.07);border-radius:16px;box-shadow:0 22px 50px rgba(60,30,90,.18);list-style:none;opacity:0;visibility:hidden;pointer-events:none;transform:translate(-50%,-6px);transition:opacity .18s ease,transform .18s ease,visibility .18s ease}
.site-nav__menu .sub-menu::before{content:"";position:absolute;left:0;right:0;top:-16px;height:16px}
.site-nav__menu .sub-menu li{margin:0;padding:0;list-style:none}
.site-nav__menu .sub-menu a{display:flex;width:100%;padding:10px 12px;border-radius:10px;font-size:13.5px;line-height:1.3;white-space:nowrap}
.site-nav__menu .sub-menu a:hover,.site-nav__menu .sub-menu a:focus{background:var(--bg);color:#000}
.site-nav__menu>li:hover>.sub-menu,.site-nav__menu>li:focus-within>.sub-menu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}

@media(max-width:920px){
  .site-nav__menu{display:flex;flex-direction:column;align-items:stretch;gap:2px;width:100%}
  .site-nav__menu>li{width:100%}
  .site-nav__menu>li>a{display:flex;align-items:center;justify-content:space-between;width:100%;padding:13px 12px!important;border-radius:10px;font-size:16px;font-weight:var(--fw-semibold)}
  .site-nav__menu>li>a:hover,.site-nav__menu>li>a:focus{background:var(--bg);color:#000}
  .site-nav__menu>li.menu-item-has-children>a::after{width:9px;height:9px;margin-right:3px}
  .site-nav__menu>li.is-submenu-open>a::after{transform:translateY(2px) rotate(225deg)}
  .site-nav__menu .sub-menu{display:none;position:static;min-width:0;margin:2px 0 8px;padding:6px 10px 8px 18px;border:0;border-left:2px solid var(--violet);border-radius:0;box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;transition:none}
  .site-nav__menu>li.is-submenu-open>.sub-menu{display:block}
  .site-nav__menu .sub-menu::before{display:none}
  .site-nav__menu .sub-menu a{padding:10px 12px;font-size:14px;white-space:normal}

  /* Version mobile du méga-menu livré : liste compacte, ouverte au toucher. */
  .site-header.is-open .site-nav>.nav-offres{display:block;width:100%}
  .site-header.is-open .site-nav>.nav-offres>a{display:flex;align-items:center;justify-content:space-between;width:100%;padding:13px 12px;border-radius:10px;font-size:16px;font-weight:var(--fw-semibold)}
  .site-header.is-open .site-nav>.nav-offres.is-submenu-open>a{background:var(--bg)}
  .site-header.is-open .site-nav>.nav-offres.is-submenu-open>a .nav-caret{transform:rotate(180deg)}
  .site-header.is-open .site-nav>.nav-offres .nav-offres__menu{display:none;position:static;width:auto;min-width:0;margin:2px 0 10px;padding:8px 10px 10px 18px;border:0;border-left:2px solid var(--violet);border-radius:0;box-shadow:none;opacity:1;visibility:visible;pointer-events:auto;transform:none;grid-template-columns:1fr;transition:none}
  .site-header.is-open .site-nav>.nav-offres.is-submenu-open .nav-offres__menu{display:grid!important}
  .site-header.is-open .site-nav>.nav-offres .nav-offres__menu::before,.site-header.is-open .site-nav>.nav-offres .nav-offres__exclu,.site-header.is-open .site-nav>.nav-offres .nav-offres__foot{display:none}
  .site-header.is-open .site-nav>.nav-offres .nav-offres__kicker{margin:4px 0 6px}
  .site-header.is-open .site-nav>.nav-offres .nav-offres__row{padding:9px 4px;font-size:14px}
}
.carexpat-cookie-status{display:block;max-width:40ch;margin-top:8px;font-size:13px;line-height:1.5}
