/* @license GPL-2.0-or-later https://www.drupal.org/licensing/faq */
.text-align-left{text-align:left;}.text-align-right{text-align:right;}.text-align-center{text-align:center;}.text-align-justify{text-align:justify;}.align-left{float:left;}.align-right{float:right;}.align-center{display:block;margin-right:auto;margin-left:auto;}
.container-inline div,.container-inline label{display:inline-block;}.container-inline .details-wrapper{display:block;}.container-inline .hidden{display:none;}
.clearfix::after{display:table;clear:both;content:"";}
.hidden{display:none;}.visually-hidden{position:absolute !important;overflow:hidden;clip:rect(1px,1px,1px,1px);width:1px;height:1px;word-wrap:normal;}.visually-hidden.focusable:active,.visually-hidden.focusable:focus-within{position:static !important;overflow:visible;clip:auto;width:auto;height:auto;}.invisible{visibility:hidden;}
.js .js-hide{display:none;}.js-show{display:none;}.js .js-show{display:block;}@media (scripting:enabled){.js-hide.js-hide{display:none;}.js-show{display:block;}}
.caption{display:table;}.caption > *{display:block;max-width:100%;}.caption > figcaption{display:table-caption;max-width:none;caption-side:bottom;}.caption > figcaption[contenteditable="true"]:empty::before{content:attr(data-placeholder);font-style:italic;}
.views-view-grid .views-col{float:left;}.views-view-grid .views-row{float:left;clear:both;width:100%;}.views-display-link + .views-display-link{margin-left:0.5em;}
.apb-access-card{position:relative;isolation:isolate;}.apb-access-ribbon{position:absolute;top:0;right:0;width:160px;height:160px;overflow:hidden;pointer-events:none;z-index:2;border-top-right-radius:inherit;}.apb-access-card .apb-access-ribbon > span{position:absolute;top:38px;right:-45px;box-sizing:border-box;width:220px;padding:7px 34px;transform:rotate(45deg);background:#c81e1e;color:#fff;box-shadow:0 2px 5px rgb(0 0 0 / 20%);text-align:center;font:700 11px/1.3 Arial,sans-serif;letter-spacing:.15px;overflow-wrap:anywhere;}.apb-access-card.year-card{padding-top:72px;}.apb-access-card.analysis-row,.apb-access-card.theme-card{padding-right:100px;min-height:160px;}body .year-card.apb-access-card{position:relative;padding-top:72px;}body .year-card.apb-access-card > span.apb-access-ribbon{display:block;position:absolute;top:0;right:0;bottom:auto;left:auto;width:160px;height:160px;margin:0;padding:0;border:0;background:transparent;box-shadow:none;transform:none;overflow:hidden;z-index:10;pointer-events:none;}body .year-card.apb-access-card > span.apb-access-ribbon > span{display:block;position:absolute;top:38px;right:-45px;width:220px;height:auto;box-sizing:border-box;margin:0;padding:7px 34px;border:0;border-radius:0;background:#c81e1e;color:#fff;transform:rotate(45deg);font:700 11px/1.3 Arial,sans-serif;text-align:center;white-space:normal;box-shadow:0 2px 5px rgb(0 0 0 / 20%);}
html[data-apb-habillage="november"]{--apb-season-dark:#142846;--apb-season-accent:#426fab;--apb-season-emblem:#b8d7ff;--apb-season-tint:#ecf3fd;}html[data-apb-habillage="christmas"]{--apb-season-dark:#153c34;--apb-season-accent:#966211;--apb-season-emblem:#ffdc89;--apb-season-tint:#f9f1df;}html[data-apb-habillage-accueil] body{background-color:var(--apb-season-tint);}html[data-apb-habillage-accueil] :where(main,[role="main"],.front-main){background-image:linear-gradient(180deg,var(--apb-season-tint),transparent 24rem);}html[data-apb-habillage-accueil] :where(header[role="banner"],.region-header,.site-header){box-shadow:inset 0 4px 0 var(--apb-season-accent);}html[data-apb-habillage-accueil] :where(footer[role="contentinfo"],.region-footer,.site-footer){box-shadow:inset 0 -4px 0 var(--apb-season-accent);}html[data-apb-habillage-accueil] :where(.news-card,.apb-home-article){outline:1px solid var(--apb-season-accent);outline-offset:-1px;}html[data-apb-habillage] .apb-habillage-banner{display:flex;align-items:center;justify-content:center;gap:.65rem;margin:0;padding:.7rem 1rem;border-block-end:3px solid var(--apb-season-accent);background:var(--apb-season-dark);color:#fff;text-align:center;font-size:clamp(.95rem,2vw,1.15rem);font-weight:650;line-height:1.4;}html[data-apb-habillage] .apb-habillage-banner span{color:var(--apb-season-emblem);font-size:1.35em;}html[data-apb-habillage="november"] .apb-habillage-banner{min-height:78px;box-sizing:border-box;gap:.85rem;padding:.8rem 1.25rem;border-block-end:4px solid #609fe3;background:linear-gradient(110deg,#10213a 25%,#29598d 50%,#10213a 75%);background-size:250% 100%;font-size:clamp(1.1rem,2vw,1.55rem);animation:apb-reflet-novembre 8s ease-in-out infinite alternate;}html[data-apb-habillage="november"] .apb-habillage-banner span{display:inline-block;flex:none;font-size:1.7em;line-height:1;animation:apb-bleuet-novembre 3.5s ease-in-out infinite;}@keyframes apb-reflet-novembre{from{background-position:0% 50%;}to{background-position:100% 50%;}}@keyframes apb-bleuet-novembre{0%,100%{transform:scale(1);}50%{transform:scale(1.18);}}@media (prefers-reduced-motion:reduce){html[data-apb-habillage="november"] .apb-habillage-banner,html[data-apb-habillage="november"] .apb-habillage-banner span{animation:none;}}html[data-apb-habillage="november"] .apb-habillage-banner{position:sticky;top:var(--drupal-displace-offset-top,0px);z-index:100;box-sizing:border-box;min-height:90px;font-size:clamp(1.2rem,2.2vw,1.85rem);box-shadow:0 4px 14px rgb(16 33 58 / 24%);}@media (max-width:600px){html[data-apb-habillage="november"] .apb-habillage-banner{min-height:68px;padding-inline:.75rem;font-size:1.15rem;}}html[data-apb-habillage="november"] .apb-habillage-banner{position:relative;top:auto;min-height:90px;font-size:clamp(1.2rem,2.2vw,1.85rem);}html[data-apb-habillage="november"] .apb-habillage-reminder{position:fixed;inset:auto 0 0;z-index:100;min-height:54px;padding-block-end:calc(.7rem + env(safe-area-inset-bottom,0px));font-size:clamp(1rem,1.6vw,1.3rem);pointer-events:none;}html[data-apb-habillage="november"] .apb-habillage-reminder[hidden]{display:none;}@media (max-width:600px){html[data-apb-habillage="november"] .apb-habillage-banner:not(.apb-habillage-reminder){min-height:68px;font-size:1.15rem;}}html[data-apb-habillage="christmas"] .apb-habillage-banner::after{content:none;}html[data-apb-habillage="christmas"]::after{content:"";position:fixed;inset:0;z-index:120;pointer-events:none;opacity:.8;background-image:radial-gradient(circle,#fff 2px,#8fa9c6 2.5px,transparent 3.5px),radial-gradient(circle,#fff 1px,#a8bad0 1.5px,transparent 2.5px),radial-gradient(circle,#fff 1.5px,#9fb3cc 2px,transparent 3px);background-size:173px 211px,127px 163px,233px 277px;animation:apb-neige-ecran 18s linear infinite;}@keyframes apb-neige-ecran{from{background-position:0 0,39px 57px,92px 113px;}to{background-position:173px 633px,39px 872px,325px 667px;}}@media (prefers-reduced-motion:reduce){html[data-apb-habillage="christmas"]::after{content:none;}}html[data-apb-habillage="christmas"] .apb-habillage-banner::before,html[data-apb-habillage="christmas"] .apb-habillage-banner::after{position:fixed;top:calc(var(--drupal-displace-offset-top,0px) + 14vh);right:100%;z-index:130;width:max-content;white-space:nowrap;line-height:1.3;pointer-events:none;}html[data-apb-habillage="christmas"] .apb-habillage-banner::before{content:"🎅🛷 🦌 🦌" / "";font-size:clamp(1.9rem,4.5vw,4rem);filter:drop-shadow(0 3px 5px rgb(0 0 0 / 35%));animation:apb-noel-traineau 24s linear infinite;}html[data-apb-habillage="christmas"] .apb-habillage-banner::after{content:"🎁  🎁  🎁" / "";font-size:clamp(1.15rem,2.5vw,2.25rem);animation:apb-noel-cadeaux 24s linear infinite;}@keyframes apb-noel-traineau{0%{transform:translate(0,0);}15%{transform:translate(36vw,-14px);}30%{transform:translate(73vw,8px);}46%,100%{transform:translate(calc(100vw + 100%),-10px);}}@keyframes apb-noel-cadeaux{0%,7%{opacity:0;transform:translate(0,12px);}14%{opacity:1;transform:translate(20vw,32px) rotate(-8deg);}30%{opacity:1;transform:translate(58vw,90px) rotate(10deg);}48%,100%{opacity:0;transform:translate(96vw,170px) rotate(22deg);}}@media (prefers-reduced-motion:reduce){html[data-apb-habillage="christmas"] .apb-habillage-banner::before,html[data-apb-habillage="christmas"] .apb-habillage-banner::after{content:none;animation:none;}}html[data-apb-habillage="christmas"] body .apb-habillage-reminder{position:fixed;inset:auto 0 0;z-index:140;box-sizing:border-box;min-height:60px;padding:.8rem 1rem;padding-bottom:calc(.8rem + env(safe-area-inset-bottom,0px));margin:0;background:#153c34;color:#fff;border-bottom:3px solid #cda34a;box-shadow:0 -3px 14px rgb(0 0 0 / 20%);font-size:clamp(1.05rem,2vw,1.5rem);pointer-events:none;}html[data-apb-habillage="christmas"] body .apb-habillage-reminder[hidden]{display:none;}html[data-apb-habillage="christmas"] body .apb-habillage-banner.apb-habillage-reminder::before,html[data-apb-habillage="christmas"] body .apb-habillage-banner.apb-habillage-reminder::after{content:none;animation:none;}
html[data-apb-habillage="christmas"] body .apb-habillage-banner::before{content:"";position:fixed;inset:auto;top:calc(var(--drupal-displace-offset-top,0px) + 30vh);right:100%;z-index:130;width:clamp(260px,40vw,560px);height:auto;aspect-ratio:3 / 1;background:url(/modules/custom/apb_habillage/images/traineau-noel-apb.png) center / contain no-repeat;pointer-events:none;filter:drop-shadow(0 3px 4px rgb(0 0 0 / 20%));animation:apb-traineau-illustre 16s linear infinite;}html[data-apb-habillage="christmas"] body .apb-habillage-banner::after{content:none;animation:none;}@keyframes apb-traineau-illustre{0%{transform:translate(0,0) rotate(0deg);}22%{transform:translate(25vw,-8vh) rotate(-4deg);}45%{transform:translate(50vw,12vh) rotate(4deg);}68%{transform:translate(78vw,-6vh) rotate(-3deg);}90%,100%{transform:translate(calc(100vw + 100%),6vh) rotate(0deg);}}@media (prefers-reduced-motion:reduce){html[data-apb-habillage="christmas"] body .apb-habillage-banner::before{content:none;animation:none;}}
