/* Emploisenior 1.0.0 — Cassiopeia child. Parent files stay inherited. */
:root{--cassiopeia-color-primary:#173e36;--cassiopeia-color-link:#245640;--cassiopeia-color-hover:#173e36;--link-color:#245640;--link-hover-color:#173e36;--link-color-rgb:36,86,64;--cassiopeia-font-family-body:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--cassiopeia-font-family-headings:system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;--cassiopeia-font-weight-normal:400;--cassiopeia-font-weight-headings:650;--body-color:#173e36;--body-bg:#fff;--body-font-size:1.125rem;--body-line-height:1.65;--template-bg-light:#f8f7f0;--template-text-dark:#173e36;--template-special-color:#173e36;--template-link-color:#245640}
body.site{background:#fff;color:#173e36;font-family:var(--cassiopeia-font-family-body);font-size:1.125rem;line-height:1.65;overflow-wrap:break-word}
body.site a{color:var(--link-color)}
body.site a:focus-visible,body.site button:focus-visible,body.site input:focus-visible,body.site select:focus-visible,body.site textarea:focus-visible,body.site summary:focus-visible{outline:3px solid #a04b14;outline-offset:4px}
body.site .container-header{background:#f8f7f0;background-image:none;color:#173e36;box-shadow:none;border-bottom:1px solid #dce2d6;padding-block:20px}
body.site .container-header .navbar-brand{margin:0;padding:0;font-size:30px;font-weight:750;letter-spacing:-1.2px;line-height:1.4}
body.site .container-header .navbar-brand a,body.site .container-header .mod-menu{color:#173e36}
body.site .container-header .site-description{font-size:16px;color:#526560;margin-top:5px}
body.site .container-header .navbar-toggler{border:1px solid #a6b79a;color:#173e36;border-radius:7px;min-width:48px;min-height:48px}
body.site .container-header .mod-menu a{padding-block:12px;line-height:1.5}
body.site .container-footer{background:#173e36;background-image:none;color:#f5f7ed;margin-top:40px;padding-block:28px}
body.site .container-footer a{color:#f5f7ed;text-underline-offset:4px}
body.site .back-to-top-link{background:#173e36;border:1px solid #dce2d6;color:#fff;width:48px;height:48px;display:flex;align-items:center;justify-content:center;border-radius:8px;text-decoration:none}
body.site .back-to-top-link:focus-visible{outline:3px solid #a04b14;outline-offset:4px}
/* Native Joomla pages: readable forms and articles, without overriding the component's own UI. */
body.site:not(.com_emploisenior) .container-component{min-width:0;margin-top:32px;margin-bottom:48px}
body.site:not(.com_emploisenior) main h1{font-size:clamp(2rem,4vw,3rem);line-height:1.2;letter-spacing:-1px;color:#173e36;margin-bottom:24px}
body.site:not(.com_emploisenior) main h2,body.site:not(.com_emploisenior) main h3{color:#173e36;line-height:1.3}
body.site:not(.com_emploisenior) main p{line-height:1.8}
body.site:not(.com_emploisenior) main .btn{min-height:48px;border-radius:7px;padding:12px 20px;font-size:17px;font-weight:600;line-height:1.4;white-space:normal}
body.site:not(.com_emploisenior) main .btn-primary{--btn-bg:#173e36;--btn-border-color:#173e36;--btn-hover-bg:#2b5e47;--btn-hover-border-color:#2b5e47;--btn-active-bg:#173e36;--btn-active-border-color:#173e36;--btn-color:#fff;--btn-hover-color:#fff;background:#173e36;color:#fff;border-color:#173e36}
body.site:not(.com_emploisenior) main .btn-primary:hover{background:#2b5e47;border-color:#2b5e47}
body.site:not(.com_emploisenior) main input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]):not([type=button]),body.site:not(.com_emploisenior) main select,body.site:not(.com_emploisenior) main textarea{font-size:18px;line-height:1.5;min-height:50px;border-radius:6px;border-color:#bdcbbb;max-width:100%}
body.site:not(.com_emploisenior) main .form-check-input{width:21px;height:21px}
body.site.com_users .container-component{max-width:760px;width:100%;margin-inline:auto}
body.site.com_users main{padding:30px;border:1px solid #dce2d6;border-radius:12px;background:#fcfcf7}
body.site.com_users main label{font-size:17px;font-weight:600}
body.site.com_users main .controls,body.site.com_users main .control-group,body.site.com_users main .input-group{max-width:100%}
body.site.com_users main .input-group input{min-width:0}
/* Emploisenior renders its own navigation. Keep Cassiopeia as a neutral full-width host. */
body.site.com_emploisenior .container-header{display:none}
body.site.com_emploisenior .site-grid{display:block;width:100%;max-width:none;margin:0;padding:0;gap:0}
body.site.com_emploisenior .site-grid>.container-component{display:block;max-width:none;width:100%;margin:0;padding:0;min-width:0}
body.site.com_emploisenior .site-grid>:not(.container-component){display:none}
body.site.com_emploisenior .container-component>main{display:block;width:100%;max-width:none;margin:0;padding:0;min-width:0}
body.site.com_emploisenior .container-component>#system-message-container:not(:empty){width:min(1184px,calc(100% - 36px));margin:18px auto}
body.site.com_emploisenior .container-component>.mod-breadcrumbs__wrapper,body.site.com_emploisenior .container-component>nav[aria-label="Breadcrumbs"]{display:none}
/* Home already provides its complete footer and all content sections. */
body.site.com_emploisenior.view-home .container-footer,body.site.com_emploisenior.view-home #back-top{display:none}
body.site.com_emploisenior.view-home .container-component>:not(main):not(#system-message-container){display:none}
/* Preserve the component's own colors against Cassiopeia's generic link rules. */
body.site.com_emploisenior .eh-home a{color:inherit}
body.site.com_emploisenior .eh-home .eh-btn,body.site.com_emploisenior .es-app .es-button{color:#fff}
body.site.com_emploisenior .eh-home .eh-btn-outline{color:#173e36}
body.site.com_emploisenior .es-app .es-button-light{color:#163a37}
body.site.com_emploisenior .es-app .es-button-danger{color:#963b24}
@media(max-width:767px){body.site:not(.com_emploisenior) .site-grid{column-gap:0}body.site:not(.com_emploisenior) .container-component{margin-top:24px}body.site .container-header .navbar-brand{font-size:27px}body.site .container-header .site-description{font-size:14px}body.site.com_users main{padding:23px 18px}body.site.com_users .container-component{width:calc(100% - 32px)}body.site:not(.com_emploisenior) main .btn{min-height:50px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto!important}body.site *,body.site *::before,body.site *::after{scroll-behavior:auto!important}}
/* Native page header: align the brand and menu with the page content. */
body.site .container-header>.grid-child{width:min(1184px,calc(100% - 48px));margin-inline:auto}
body.site .container-header .brand-logo{text-decoration:none}
body.site .container-header .site-description{font-weight:400;letter-spacing:0}
body.site .container-header .container-nav{margin-top:14px;padding-block:0;min-height:48px}
@media(max-width:767px){body.site .container-header>.grid-child{width:calc(100% - 36px)}}
body.site .container-header .mod-menu{flex-direction:row;flex-wrap:wrap;column-gap:22px;row-gap:0}

/* Simplifier le formulaire de profil des membres */
body.com_users.view-profile
.com-users-profile__edit fieldset:has(.plg_system_webauthn),
body.com_users.view-profile
.com-users-profile__multifactor {
    display: none;
}
