/* ARV : navigation commune, indépendante du contenu des pages. */
:root{--arv-fixed-header:90px;--arv-fixed-top:90px;--arv-fixed-footer:64px}
@media screen{
 html.arv-navigation-ready{scroll-padding-top:calc(var(--arv-fixed-top) + 20px)!important;scroll-padding-bottom:calc(var(--arv-fixed-footer) + 20px)!important}
 html.arv-navigation-ready body{padding-top:var(--arv-fixed-top)!important;padding-bottom:calc(var(--arv-fixed-footer) + 32px)!important}
 html body .arv-persistent-header{position:fixed!important;inset:0 0 auto 0!important;width:100%!important;max-width:none!important;margin:0!important;z-index:1000!important;background:#fff!important;box-shadow:0 3px 14px #33333312;box-sizing:border-box}
 html body .arv-persistent-header>.topbar{position:static!important;width:100%;max-width:none;box-sizing:border-box}
 html body .arv-persistent-footer{position:fixed!important;inset:auto 0 0 0!important;width:100%!important;max-width:none!important;min-height:0!important;margin:0!important;padding:10px 24px calc(10px + env(safe-area-inset-bottom))!important;z-index:1000!important;background:#fff!important;border-top:1px solid #ddd2d4;box-shadow:0 -3px 14px #3333330d;box-sizing:border-box;max-height:22vh;max-height:22dvh;overflow:auto;font-size:12px!important;line-height:1.4!important}
 .arv-persistent-footer p{margin:3px 0!important}.arv-persistent-footer img{width:auto!important;height:30px!important;object-fit:contain}.arv-persistent-footer .arv-footer-inner{display:flex!important;flex-wrap:wrap;gap:6px 18px;align-items:center;padding:0!important}.arv-persistent-footer .arv-footer-brand{display:flex;gap:10px;align-items:center}.arv-persistent-footer .brand{margin:0!important}
 html body a.arv-link-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:40px;max-width:100%;padding:8px 13px!important;border:1px solid #c9a9b0!important;border-radius:3px!important;background:#fff!important;color:#842d3c!important;text-decoration:none!important;box-shadow:0 1px 3px #33333308;font-family:Helvetica,Arial,sans-serif;font-weight:400!important;line-height:1.4;box-sizing:border-box;overflow-wrap:anywhere;vertical-align:middle}
 html body a.arv-link-card{border:1px solid #c9a9b0!important;border-radius:3px!important;text-decoration:none!important;box-shadow:0 1px 3px #33333308}
 html body a.arv-link-logo{border:1px solid #eadde0!important;border-radius:3px!important;padding:4px 8px!important;text-decoration:none!important}
 html body a:is(.arv-link-button,.arv-link-card,.arv-link-logo):hover{border-color:#842d3c!important;background:#f8eff1!important}
 html body a:focus-visible,html body #arv-back-to-top:focus-visible{outline:3px solid #356a85!important;outline-offset:3px!important}
 html body #arv-back-to-top{position:fixed!important;right:14px!important;bottom:calc(var(--arv-fixed-footer) + 14px)!important;z-index:1100!important;display:flex!important;align-items:center;justify-content:center;width:46px!important;height:46px!important;min-height:46px!important;padding:0!important;margin:0!important;border:1px solid #842d3c!important;border-radius:3px!important;background:#fff!important;color:#842d3c!important;box-shadow:0 3px 12px #33333322;font:400 27px/1 Arial,Helvetica,sans-serif!important;cursor:pointer}
 html body #arv-back-to-top:hover{background:#f8eff1!important}
 html.arv-navigation-ready :is(h1,h2,h3,fieldset,input,button,section[id]){scroll-margin-top:calc(var(--arv-fixed-top) + 16px);scroll-margin-bottom:calc(var(--arv-fixed-footer) + 16px)}
 body:has(#practice-questions)>.arv-persistent-header nav,body:has(#quiz)>.arv-persistent-header nav{gap:8px}
 .arv-fallback-header{display:flex;align-items:center;justify-content:space-between;padding:12px 4%;gap:16px}.arv-fallback-header img{height:42px;width:auto}
 @media(max-width:700px){html body .arv-persistent-footer{padding:7px 12px calc(7px + env(safe-area-inset-bottom))!important;font-size:10px!important;max-height:18vh;max-height:18dvh;gap:4px 10px!important}.arv-persistent-footer .arv-footer-inner{gap:4px 10px}.arv-persistent-footer img{height:22px!important}.arv-persistent-footer .brand strong{font-size:12px!important}html body #arv-back-to-top{right:10px!important}.arv-persistent-header>a.arv-link-button{font-size:13px}.arv-persistent-header nav a.arv-link-button{font-size:13px;min-height:40px;padding:8px 10px!important}body:has(#practice-questions)>.arv-persistent-header nav,body:has(#quiz)>.arv-persistent-header nav{width:100%;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px}body:has(#practice-questions)>.arv-persistent-header nav>a,body:has(#quiz)>.arv-persistent-header nav>a{flex:0 0 auto}.arv-persistent-header:has(>#leave){gap:8px;padding:10px 14px}.arv-persistent-header .brand img{max-height:38px;object-fit:contain}}
}
@media print{html body #arv-back-to-top{display:none!important}.arv-persistent-header,.arv-persistent-footer{position:static!important;max-height:none!important}html.arv-navigation-ready body{padding:0!important}}

@media screen{html body .reading-position{top:var(--arv-fixed-header)!important;width:100%!important;box-sizing:border-box}}
@media screen and (max-width:700px){html body>header.arv-persistent-header:not(.site-header):not(.masthead){padding:10px 14px!important;gap:8px!important}html body .route-head.arv-persistent-header img{height:34px!important;width:auto!important}html body .route-head.arv-persistent-header nav{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:6px;width:100%;padding-bottom:3px}html body .route-head.arv-persistent-header nav a{flex:0 0 auto}html body .arv-persistent-footer{max-height:14dvh!important}}

/* Shared rhythm and restrained ARV separators on the homepage. */
@media screen{
 html.arv-navigation-ready :is(h1,h2,h3,fieldset,input,button,section[id]){scroll-margin-top:12px!important}
 html body.home-page main>.section{position:relative;margin-top:48px!important;padding-top:36px!important;padding-bottom:0!important}
 html body.home-page main>.section::before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(to right,#8e2f3d 0 48px,#dfd2d5 48px 100%);pointer-events:none}
 html body.home-page main>.content-group{margin-top:64px!important;margin-bottom:28px!important;padding-top:28px!important}
 html body.home-page main>.content-group+.section{margin-top:0!important;padding-top:16px!important}
 html body.home-page main>.content-group+.section::before{display:none}
 html body.home-page main>.arv-art{margin:48px auto!important;padding-top:16px!important;padding-bottom:16px!important}
 @media(max-width:700px){html body.home-page main>.section{margin-top:36px!important;padding-top:28px!important}html body.home-page main>.content-group{margin-top:44px!important;margin-bottom:20px!important}html body.home-page main>.arv-art{margin:36px auto!important}}
}

/* Native anchors: root padding already reserves both fixed top bars. */
@media screen{html.arv-navigation-ready [id]{scroll-margin-top:12px!important}}
