/* Carpisto : adaptation progressive des anciennes pages, sans largeur imposée. */
:root { --cp-green:#789900; --cp-line:#e0e5d5; }
html { -webkit-text-size-adjust:100%; scroll-padding-top:90px; }
body { min-width:0; line-height:1.45; }
#navbar { min-width:0; height:72px; display:flex; align-items:center; justify-content:space-between; gap:16px; padding:0 20px; box-sizing:border-box; }
#navbar .cp-brand { float:none!important; margin:0!important; display:flex; align-items:center; gap:12px; flex-shrink:0; }
#navbar .cp-brand > div { float:none!important; margin:0!important; }
#navbar .cp-brand img { display:block; width:48px!important; }
#navbar .cp-brand a { font-size:26px!important; }
#navbar .cp-nav-links { float:none!important; margin:0!important; }
#navbar .cp-nav-links > div { float:none!important; display:flex; align-items:center; gap:14px; }
#navbar .cp-nav-links a { margin-left:0!important; font-size:14px; }
#navbar #menuTopUser { margin-left:0; max-width:220px; }
#cp-menu-toggle { display:none; padding:9px 12px; border:1px solid var(--cp-line); border-radius:6px; color:#536900; background:#f6f8ef; font:inherit; cursor:pointer; }
#navbar #bk_profil { top:72px; margin-top:0!important; max-height:calc(100dvh - 90px); overflow:auto; border-radius:0 0 8px 8px; padding:12px; }
#navbar #bk_profil a { display:inline-block; padding:8px 0; font-size:15px!important; }
#navbar #bk_profil i { font-size:16px!important; width:28px!important; }
#second { min-height:50vh; display:flow-root; }
#whereiam { margin-top:90px; margin-bottom:16px; }
#accueil, #whereiam, #captures, #capture, #profil_container, #contact, #membres, #parametres, .records, .classement { max-width:1440px; box-sizing:border-box; }
#second img, #second video, #second canvas, #second iframe { max-width:100%; }
#second img { object-fit:contain; }
#what, #stats_site, #dernieres_captures { box-sizing:border-box; border-radius:10px; box-shadow:0 3px 14px #35431b14; border:1px solid var(--cp-line); padding:20px; }
#what { display:flex; flex-wrap:wrap; align-items:center; gap:20px; }
#what > .titre { flex-basis:100%; }
#what .cp-welcome-text, #what .cp-welcome-image { float:none!important; margin:0!important; flex:1 1 280px; min-width:0; }
#what .bigtitle, #what .texte { width:auto; margin-left:0; text-align:left; }
#what .cp-welcome-image img { display:block; margin:auto; height:auto; max-width:100%; box-shadow:none; }
.cp-home-grid { display:grid; grid-template-columns:repeat(6,minmax(0,1fr)); gap:12px; margin-top:16px; }
.cp-home-grid > .clear { display:none; }
.cp-home-grid .cp-home-card { box-sizing:border-box; width:100%!important; margin:0!important; padding:7px!important; height:160px!important; border-radius:7px; overflow:hidden; }
.cp-home-card > a { display:flex; height:100%; flex-direction:column; }
.cp-home-card > a > div:first-child { flex:1; min-height:0; border-radius:4px; }
.cp-home-card > a > div:last-child { padding-top:4px; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.cp-table-scroll { max-width:100%; overflow-x:auto; overscroll-behavior-x:contain; -webkit-overflow-scrolling:touch; margin:10px 0; }
.cp-table-scroll:focus-visible { outline:2px solid var(--cp-green); }
.cp-table-scroll > table { margin-left:auto; margin-right:auto; }
#second input, #second select, #second textarea { max-width:100%; box-sizing:border-box; }
#second textarea { min-height:85px; }
#second button, #second input[type=submit], #second input[type=button], #second select { min-height:40px; }
#footer > div { display:flex; flex-wrap:wrap; justify-content:center; gap:20px 40px; padding:24px!important; }
#footer > div > div { float:none!important; margin:0!important; }
#footer .clear { display:none; }
#footer a { display:inline-block; padding:5px 0; }
#copy { padding:12px; box-sizing:border-box; }
#login, #inscription, #inscription_ok { left:50%!important; top:50%!important; transform:translate(-50%,-50%); width:450px; max-width:calc(100vw - 24px); max-height:calc(100dvh - 32px); overflow:auto; z-index:10010; }
#login input, #inscription input { box-sizing:border-box; }
#commentaire_edit_div { left:50%; top:50%; transform:translate(-50%,-50%); margin-left:0; max-width:calc(100vw - 24px); max-height:85dvh; overflow:auto; padding:16px; box-sizing:border-box; }
#notifCapturesDiv, #notifMessagesDiv { top:82px; margin-top:0!important; right:16px; max-width:calc(100vw - 32px); max-height:calc(100dvh - 105px); }
#loader { left:50%; top:50%; transform:translate(-50%,-50%); max-width:calc(100vw - 32px); box-sizing:border-box; }
@media (max-width:1199px) {
 #cp-menu-toggle { display:block; flex-shrink:0; }
 #navbar .cp-nav-links { position:absolute; top:72px; left:0; right:0; padding:12px 20px; background:#fff; box-shadow:0 8px 15px #0002; }
 html.cp-responsive #navbar .cp-nav-links { display:none; }
 html.cp-responsive #navbar.cp-nav-open .cp-nav-links { display:block; }
 #navbar .cp-nav-links > div { flex-wrap:wrap; gap:10px 20px; }
 #navbar .cp-nav-links a { min-height:42px; display:inline-flex; align-items:center; }
 #navbar #bk_profil { position:fixed!important; top:145px; width:240px!important; max-width:calc(100vw - 32px); }
 .cp-home-grid { grid-template-columns:repeat(4,minmax(0,1fr)); }
 #capture_chart { min-width:0; width:100%; float:none; }
}
@media (max-width:900px) {
 #second .cp-stack-column { float:none!important; width:100%!important; min-width:0!important; margin-left:0!important; margin-right:0!important; box-sizing:border-box; margin-bottom:18px; }
 #profil_container { width:94%; }
 #profil_container .avatar { width:110px; }
 #add_comment, #view_comment { width:94%; }
 #what .bigtitle { font-size:22px; }
 .cp-home-grid { grid-template-columns:repeat(3,minmax(0,1fr)); }
 #second .records { width:94%!important; }
 #second form.cp-adapt-form > div { max-width:100%; box-sizing:border-box; }
 #second .cp-data-panel { max-width:100%; box-sizing:border-box; }
}
@media (max-width:600px) {
 #navbar { height:64px; padding:0 12px; gap:8px; }
 #navbar .cp-brand { gap:8px; }
 #navbar .cp-brand img { width:38px!important; }
 #navbar .cp-brand a { font-size:21px!important; }
 #navbar .cp-nav-links { top:64px; padding:12px; }
 #navbar .cp-nav-links > div { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:6px; }
 #navbar .cp-nav-links a { padding:5px 8px; font-size:13px; border-radius:5px; background:#f5f7f0; justify-content:center; min-width:0; box-sizing:border-box; }
 #navbar #menuTopUser { max-width:100%; border:0; font-size:12px; }
 #navbar #menuTopUser .avatar { display:none; }
 #navbar #bk_profil { top:132px; right:12px!important; }
 #whereiam { margin-top:80px; width:94%; font-size:12px; }
 #second { margin-top:20px; }
 #main > #navbar + #second { margin-top:80px; }
 #accueil { width:94%; margin-top:0; }
 #captures, #capture, #contact, #membres, #parametres, #records, #classement, #error404 { width:94%; margin-top:0; }
 #records, #classement { width:100%; }
 #second .cp-negative-offset { margin-top:0!important; }
 #profil_container { margin-top:0; }
 #profil_top { margin-top:15px; }
 #what, #stats_site, #dernieres_captures { padding:14px; }
 #accueil .titre { font-size:22px; }
 #what .bigtitle { font-size:20px; }
 #what .texte { font-size:15px; }
 #what .cp-welcome-image { flex-basis:100%; }
 .cp-home-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
 .cp-home-grid .cp-home-card { height:145px!important; }
 #second .cp-capture-card { box-sizing:border-box; width:calc(50% - 10px)!important; margin:6px 3px!important; height:auto!important; min-height:245px; overflow:hidden; font-size:12px; }
 #second .cp-card-photo { width:100%!important; height:125px!important; background-position:center; }
 #second .cp-capture-card .photo2 { max-width:38px!important; height:auto; }
 #second .cp-capture-card .titre { font-size:12px; }
 #second input:not([type=checkbox]):not([type=radio]):not([type=hidden]), #second select, #second textarea, #login input, #inscription input { font-size:16px; min-height:42px; }
 #second form table.cp-form-table, #second form table.cp-form-table > tbody, #second form table.cp-form-table > tbody > tr { display:block; width:100%!important; }
 #second form table.cp-form-table > tbody > tr > td { display:block; width:100%!important; box-sizing:border-box; padding:4px 0; }
 #second form table.cp-form-table > tbody > tr { margin-bottom:10px; }
 #second form table.cp-form-table input[type=file] { width:100%; }
 #second .cp-capture-card img { max-width:100%; }
 #second #capture .capture_img { height:auto; }
 #second #info_capture { text-align:center; }
 #commentaire_edit_div { width:calc(100vw - 24px); }
 #login > div, #inscription #pinscription { max-width:100%; box-sizing:border-box; }
 #login > div:nth-child(3), #inscription #pinscription { width:auto!important; margin:18px!important; }
 #login form div[style*="float"], #inscription .bk_input_div, #inscription .bk_texte_div { float:none!important; width:100%!important; margin-left:0!important; }
 #login form input, #inscription .bk_input_div input { width:100%!important; }
 #login .div_close a, #inscription .div_close a { display:inline-block; padding:12px; }
 .bk_cappthca { margin-left:0; transform-origin:left top; }
 #footer > div { justify-content:flex-start; gap:16px; padding:18px!important; }
 #footer > div > div { flex:1 1 180px; }
 #notifCapturesDiv, #notifMessagesDiv { top:76px; }
 #copy { font-size:11px; }
}
@media (max-width:359px) { .cp-home-grid { grid-template-columns:1fr; } #navbar .cp-brand a { font-size:18px!important; } .bk_cappthca { transform:scale(.85); margin-bottom:-10px; } }
@media (hover:none) { #navbar a, #footer a { -webkit-tap-highlight-color:#87a90030; } }
@media (prefers-reduced-motion:reduce) { html { scroll-behavior:auto; } }

#profil_top { display:flex; flex-wrap:wrap; align-items:flex-start; }
#profil_top > div { float:none!important; margin-left:0!important; min-width:0; box-sizing:border-box; overflow-wrap:anywhere; }
#profil_top > .clear { display:none; }
#consult_navig { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:8px; box-sizing:border-box; }
#consult_navig #page_precedente, #consult_navig #page_suivante { float:none; width:auto; min-width:60px; height:auto; }
#consult_navig #select_page { order:1; margin:0 auto; }
#consult_navig #page_suivante { order:2; }
#consult_navig #page_center { width:auto; }
.cp-map-scroll { max-width:94%; overflow-x:auto; margin:20px auto; }
.cp-map-scroll #francemap { margin:0 auto!important; }
/* Les conteneurs Google Charts restent sans overflow : leur contenu accessible ne doit pas créer de scrollbar. */
@media (max-width:600px) {
 #second .cp-form-table input:not([type=checkbox]):not([type=radio]):not([type=hidden]), #second .cp-form-table select { max-width:100%; }
 #bk_inscription { margin:18px; }
 #profil_top > div { padding:10px!important; }
 #profil_top > div:nth-child(2) { flex:1 1 160px; }
 #profil_top > div:nth-child(n+3):not(.clear) { flex:1 1 140px; }
 #second #info_capture { overflow-wrap:anywhere; }
 #second #capture .cp-stack-column { margin-top:10px!important; }
 #second #capture .cp-stack-column:first-child { display:flex; flex-wrap:wrap; gap:8px; align-items:flex-start; }
 #second #capture .cp-stack-column:first-child a { flex:1 1 45%; min-width:0; }
 #second #capture .cp-stack-column:first-child img.capture_img { width:100%!important; margin:0!important; }
 #footer { margin-top:25px; }
}
#second div[style*="float:"] { max-width:100%; box-sizing:border-box; }
#second .cp-adapt-form select { margin-bottom:5px; }
@media (max-width:900px) {
 #second > #calendrier_lunaire { width:94%!important; margin-top:0!important; }
 #second > #calendrier_lunaire #calendrier_lunaire { width:100%!important; }
}
@media (max-width:900px) {
 #stats_site #stats_annee { margin-left:0!important; clear:both; margin-top:20px; }
 #stats_site > div[style*="float"] { float:none!important; width:100%; }
}

/* Espacement explicite sous la barre fixe ; aucune accumulation des anciennes marges. */
.cp-page-home #second { margin-top:88px; }
.cp-page-home #accueil { margin-top:0; }
.cp-page-profile #second { margin-top:12px; }
.cp-page-profile #profil_container, .cp-page-profile #profil_top { margin-top:0; }
#second .cp-chart { max-width:100%; min-width:0; overflow:visible; box-sizing:border-box; }
#stats_site > div:has(> .cp-chart) { width:100%; }
@media (max-width:600px) { .cp-page-home #second { margin-top:80px; } }

/* Correction indépendante des classes de body et du cache de index.php. */
#main > #navbar + #second { margin-top:88px; }
#second > #accueil { margin-top:0; }
#second:has(> #profil_container) { margin-top:12px; }
#second > #profil_container, #second #profil_top { margin-top:0; }
@media (max-width:600px) { #main > #navbar + #second { margin-top:80px; } }

/* Profil : les deux colonnes basculent ensemble, sans mélange de flottants. */
#profil_container { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:20px; align-items:start; }
#profil_container > #profil_top { grid-column:1 / -1; }
#profil_container > #capture_liste, #profil_container > #capture_chart { float:none!important; width:100%!important; min-width:0!important; margin-top:0!important; margin-bottom:0!important; box-sizing:border-box; }
#profil_container > .clear { grid-column:1 / -1; }
#capture_chart > div:first-child { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
#capture_chart > div:first-child > .clear { display:none; }
#capture_chart #Total_Domaine_div, #capture_chart #Total_Lieu_div { float:none!important; width:100%!important; min-width:0!important; margin:0!important; }
#capture_chart #Total_Espece_div { grid-column:1 / -1; }
@media (max-width:1199px) {
 #profil_container { grid-template-columns:minmax(0,1fr); }
 #profil_container > #capture_liste, #profil_container > #capture_chart { grid-column:1; }
}
@media (max-width:600px) {
 #capture_chart > div:first-child { grid-template-columns:minmax(0,1fr); }
}

/* Les 100 % du bloc de filtres incluent son padding. */
#profil_container #profil_selectboxDiv { width:100%; max-width:100%; min-width:0; box-sizing:border-box; }
#profil_selectboxDiv #formulaire { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; margin:0; min-width:0; }
#profil_selectboxDiv #formulaire > select { flex:1 1 120px; width:auto!important; min-width:0; max-width:100%; box-sizing:border-box; margin:0; }
#profil_selectboxDiv #formulaire > input:not([type=hidden]) { max-width:100%; box-sizing:border-box; margin:0; }

/* Pied de page compact, commun à toutes les pages. */
#footer { padding:0; margin-top:18px; border-top:1px solid #dce3cc; box-shadow:0 -2px 8px #35431b12; box-sizing:border-box; }
#footer .cp-footer-links { display:flex; align-items:center; justify-content:safe center; gap:4px 18px; min-height:42px; padding:2px 16px; box-sizing:border-box; overflow-x:auto; white-space:nowrap; scrollbar-width:thin; }
#footer .cp-footer-links a { display:inline-flex; flex-shrink:0; align-items:center; min-height:36px; padding:0 2px; font-size:12px; line-height:1.25; }
#footer .cp-footer-links a:focus-visible { outline:2px solid #789900; outline-offset:1px; }
/* Les filtres restent visibles pendant le défilement de leur liste. */
body.cp-feed-page { padding-bottom:calc(var(--cp-footer-height, 52px) + 12px); }
body.cp-feed-page #footer { position:fixed; bottom:0; left:0; right:0; width:100%; margin:0; z-index:100; padding-bottom:env(safe-area-inset-bottom, 0px); background:#fff; }
body.cp-feed-page #profil_selectboxDiv { position:sticky; top:calc(var(--cp-navbar-height, 72px) + 8px); z-index:90; background:#fff; box-sizing:border-box; }
body.cp-feed-page #capture_liste { min-width:0; }
body.cp-feed-page .cp-feed-sentinel { scroll-margin-bottom:calc(var(--cp-footer-height, 52px) + 12px); }
@media (max-width:600px) {
 body.cp-feed-page { --cp-navbar-height:64px; }
 #footer .cp-footer-links { gap:14px; justify-content:flex-start; padding:2px 12px; }
 #footer .cp-footer-links a { font-size:12px; min-height:36px; }
}

/* Barre basse : hauteur constante, les liens secondaires sont dans Plus. */
#footer { padding:0; }
#footer .cp-footer-bar { display:flex; align-items:stretch; justify-content:center; height:44px; box-sizing:border-box; gap:20px; }
#footer .cp-footer-bar > a, #footer .cp-footer-more > summary { display:flex; align-items:center; justify-content:center; gap:5px; padding:0 12px; min-height:0; height:44px; box-sizing:border-box; color:#6d8d00; font-size:13px; line-height:1; white-space:nowrap; cursor:pointer; }
#footer .cp-footer-more { position:static; }
#footer .cp-footer-more > summary { list-style:none; }
#footer .cp-footer-more > summary::-webkit-details-marker { display:none; }
#footer .cp-footer-menu { position:absolute; right:8px; bottom:calc(100% + 6px); display:flex; flex-direction:column; width:260px; max-width:calc(100vw - 16px); max-height:60dvh; overflow-y:auto; padding:6px; border:1px solid #dce3cc; border-radius:7px; background:white; box-shadow:0 4px 20px #0003; box-sizing:border-box; }
#footer .cp-footer-menu a { padding:10px 12px; margin:0; font-size:13px; line-height:1.3; }
#footer .cp-footer-menu i { font-size:14px!important; }
#footer .cp-footer-more:not([open]) .cp-footer-menu { display:none; }
#footer .cp-footer-bar a:focus-visible, #footer summary:focus-visible { outline:2px solid #789900; outline-offset:-3px; }
body.cp-feed-page #footer { height:calc(45px + env(safe-area-inset-bottom, 0px)); padding:0 0 env(safe-area-inset-bottom, 0px); overflow:visible; }
@media (max-width:600px) {
 #footer .cp-footer-bar { gap:0; }
 #footer .cp-footer-bar > a, #footer .cp-footer-more { flex:1 1 25%; min-width:0; }
 #footer .cp-footer-bar > a, #footer .cp-footer-more > summary { padding:0 4px; font-size:12px; }
}

#footer { position:relative; }

/* Une seule barre fixe sur l’ensemble du site. */
body.cp-site-fixed { padding-bottom:calc(var(--cp-footer-height,45px) + 12px); }
body.cp-site-fixed #footer { position:fixed; left:0; right:0; bottom:0; width:100%; margin:0; z-index:100; height:calc(45px + env(safe-area-inset-bottom,0px)); padding:0 0 env(safe-area-inset-bottom,0px); overflow:visible; background:white; }
#footer .cp-footer-more { position:relative; }
#footer .cp-footer-menu { right:0; bottom:calc(100% + 6px); }
.cp-stream { width:100%; min-width:0; box-sizing:border-box; }
.cp-stream-items { display:flow-root; min-width:0; }
.cp-stream-status { clear:both; margin:12px 0; padding:12px 6px; text-align:center; color:#687245; font-size:13px; }
.cp-stream[aria-busy=true] .cp-stream-status::before { content:'◌ '; }
.cp-stream--members .cp-stream-items { display:grid; grid-template-columns:repeat(auto-fit,minmax(150px,1fr)); gap:10px; }
.cp-stream--members .cp-stream-items > div[style*="inline-block"] { width:100%!important; margin:0!important; box-sizing:border-box; }
.cp-stream--members .cp-stream-items > div[style*="clear"] { display:none; }
.cp-stream--captures .cp-stream-items { text-align:center; }
.cp-notification-list .elementNotif { height:auto; min-height:65px; }
.cp-notification-link { display:flex; flex-direction:column; padding:10px; gap:3px; }
@media(max-width:900px){#classement>div[style*="width"]{width:94%!important;box-sizing:border-box;} .cp-stream-items > .ombre_div{max-width:100%;box-sizing:border-box;} }
@media(max-width:600px){.cp-stream--members .cp-stream-items{grid-template-columns:repeat(2,minmax(0,1fr));} }

[id^="com_"] { scroll-margin-top:96px; scroll-margin-bottom:60px; }

/* La scrollbar appartient uniquement au contenu entre les deux barres fixes. */
html:has(body.cp-site-fixed) { height:100%; overflow:hidden; }
body.cp-site-fixed { height:100dvh; overflow:hidden; padding:0!important; }
#cp-content-scroll { position:fixed; top:var(--cp-navbar-height,72px); bottom:var(--cp-footer-height,45px); left:0; right:0; overflow-y:auto; overflow-x:hidden; overscroll-behavior-y:contain; -webkit-overflow-scrolling:touch; box-sizing:border-box; padding:0 0 16px; scroll-padding-top:12px; scroll-padding-bottom:16px; }
#cp-content-scroll:focus-visible { outline:2px solid #789900; outline-offset:-2px; }
#cp-content-scroll #whereiam { margin-top:12px; margin-bottom:14px; }
#cp-content-scroll #second { margin-top:0!important; }
#cp-content-scroll #second > div, #cp-content-scroll #accueil { margin-top:0!important; }
#cp-content-scroll .cp-negative-offset { margin-top:0!important; }
#cp-content-scroll #classement > .ombre_div:first-child { margin-top:0!important; }
body.cp-feed-page #cp-content-scroll #profil_selectboxDiv { top:8px; }
body.cp-feed-page #cp-content-scroll .cp-feed-sentinel { scroll-margin-bottom:16px; }
#cp-content-scroll [id^="com_"] { scroll-margin-top:16px; scroll-margin-bottom:16px; }

#cp-back-top { position:fixed; right:22px; bottom:calc(var(--cp-footer-height,45px) + 14px); z-index:85; display:flex; align-items:center; justify-content:center; width:40px; height:40px; padding:0; border:1px solid #dfe6d4; border-radius:12px; background:rgba(255,255,255,.94); color:#718e12; cursor:pointer; box-shadow:0 3px 12px #3446001a; opacity:0; visibility:hidden; pointer-events:none; transform:translateY(10px) scale(.96); transition:opacity .28s ease, transform .28s cubic-bezier(.2,.7,.3,1), visibility .28s, box-shadow .2s, background .2s; }
#cp-back-top.is-visible { visibility:visible; pointer-events:auto; opacity:var(--cp-backtop-progress,1); transform:translateY(calc((1 - var(--cp-backtop-progress,1))*10px)) scale(calc(.96 + var(--cp-backtop-progress,1)*.04)); }
#cp-back-top svg { display:block; }
#cp-back-top:hover { background:#f7faef; color:#597500; box-shadow:0 5px 16px #34460026; }
#cp-back-top:focus-visible { outline:2px solid #789900; outline-offset:3px; }
@media(prefers-reduced-motion:reduce) { #cp-back-top { transition:none; transform:none; } #cp-back-top.is-visible { transform:none; } }

.cp-page-home #cp-content-scroll #second > #accueil { margin-top:12px!important; }

/* Accueil : cadres identiques, photos entières et proportions conservées. */
#second .cp-home-grid .cp-home-card { height:auto!important; }
#second .cp-home-card > a { height:100%; }
#second .cp-home-grid .cp-home-photo-frame { position:relative; flex:0 0 auto; width:100%; height:auto; aspect-ratio:3/2; min-height:0; background:#f2f4ed; border-radius:4px; overflow:hidden; }
#second .cp-home-photo-frame img { position:absolute; inset:0; display:block; width:100%; height:100%; max-width:100%; object-fit:contain; object-position:center; }
#second .cp-home-card > a > div:last-child { flex:0 0 auto; min-height:22px; box-sizing:border-box; padding-top:5px; line-height:17px; font-size:12px; }

/* Navigation : petits pictogrammes, liens regroupés par usage. */
#navbar .cp-nav-icon { display:inline-block; width:14px; margin-right:5px; font-size:12px; text-align:center; }
#footer .cp-nav-icon { flex-shrink:0; width:15px; margin:0; font-size:13px; text-align:center; }
#footer .cp-footer-menu a { display:flex; align-items:center; gap:8px; }
.cp-nav-short { display:none; }
@media(max-width:600px){ .cp-nav-long{display:none;} .cp-nav-short{display:inline;} #footer .cp-footer-bar > a,#footer .cp-footer-more{flex-basis:33.333%;} }
