/* Cardinali – Menu Grafico: palette crema, verde bosco e terracotta */
:root{--cm-green:#244b3b;--cm-deep:#17372b;--cm-terracotta:#a45e43;--cm-paper:#fffdf8;--cm-soft:#edf1e9;--cm-line:#dbe2d8;--cm-shadow:0 16px 36px rgba(23,55,43,.14)}
/* Tema Cardinali Natura */
.cn-header{position:relative;z-index:100;background:rgba(255,253,248,.97);box-shadow:0 5px 22px rgba(25,54,39,.045)}
.cn-header-inner{gap:clamp(10px,1.4vw,24px)}
.cn-nav{gap:clamp(7px,.85vw,15px);flex:1;justify-content:flex-end;min-width:0}
.cn-menu{display:flex!important;flex-flow:row nowrap!important;align-items:center;justify-content:flex-end;gap:clamp(2px,.25vw,5px)!important;white-space:nowrap;min-width:0}
.cn-menu>li{flex:0 0 auto;position:relative}
.cn-menu>li>a{display:inline-flex;align-items:center;justify-content:center;gap:5px;padding:12px clamp(5px,.48vw,9px)!important;border-radius:9px;font-size:clamp(10px,.76vw,12px)!important;line-height:1.25;white-space:nowrap!important;color:#30483a!important;transition:background .2s ease,color .2s ease,transform .2s ease}
.cn-menu>li>a:hover,.cn-menu>li:focus-within>a,.cn-menu>li.current-menu-item>a,.cn-menu>li.current-menu-ancestor>a{background:#edf1e9;color:var(--cm-terracotta)!important;transform:translateY(-1px)}
.cn-menu>li.current-menu-item>a:before,.cn-menu>li.current-menu-ancestor>a:before{content:"";width:5px;height:5px;border-radius:50%;background:var(--cm-terracotta);flex:0 0 5px}
.cn-menu .menu-item-has-children>a:after{width:5px!important;height:5px!important;margin-left:1px!important;margin-top:-3px!important;border-width:1.5px!important}
.cn-member-link{flex:0 0 auto;gap:7px;padding:10px 12px!important;border:1px solid #aebead!important;border-radius:999px!important;background:#f2f4ed;font-size:clamp(10px,.72vw,11px)!important;transition:background .2s,color .2s,box-shadow .2s}
.cn-member-link:hover{background:var(--cm-green)!important;color:#fff!important;box-shadow:0 5px 14px rgba(36,75,59,.16)}
.cn-member-dot{box-shadow:0 0 0 4px rgba(164,94,67,.12)}
.cn-menu .sub-menu{min-width:250px!important;padding:9px!important;border:1px solid var(--cm-line)!important;border-radius:13px!important;background:var(--cm-paper)!important;box-shadow:var(--cm-shadow)!important;overflow:visible}
.cn-menu .sub-menu:before{content:"";position:absolute;top:-5px;left:23px;width:9px;height:9px;background:var(--cm-paper);border-left:1px solid var(--cm-line);border-top:1px solid var(--cm-line);transform:rotate(45deg)}
.cn-menu .sub-menu li{position:relative}
.cn-menu .sub-menu a{display:flex!important;justify-content:flex-start!important;padding:10px 12px!important;border-radius:8px!important;font-size:13px!important;white-space:normal!important;color:#33463a!important}
.cn-menu .sub-menu a:before{content:"↗";display:inline-grid;place-items:center;width:22px;height:22px;flex:0 0 22px;border-radius:50%;background:var(--cm-soft);color:var(--cm-green);font-size:11px}
.cn-menu .sub-menu a:hover{background:var(--cm-soft)!important;color:var(--cm-terracotta)!important;transform:translateX(2px)}
.cn-menu .sub-menu .sub-menu:before{display:none}
/* Piccoli simboli tematici, senza richiedere immagini o font esterni */
.cn-menu>li>a[href*="associazione"]:before{content:"✳"}
.cn-menu>li>a[href*="attivit"]:before{content:"❋"}
.cn-menu>li>a[href*="territorio"]:before{content:"⌁"}
.cn-menu>li>a[href*="scout"]:before{content:"⚑"}
.cn-menu>li>a[href*="notizie"]:before{content:"✎"}
.cn-menu>li>a[href*="eventi"]:before{content:"◷"}
.cn-menu>li>a[href*="partecipa"],.cn-menu>li>a[href*="sostienici"]{font-weight:750}
.cn-menu>li>a[href*="contatti"]:before{content:"✉"}
.cn-menu>li>a[href*="accoglienza"]:before{content:"♡"}
.cn-menu>li>a[href*="area-riservata"],.cn-menu>li>a[href*="area-personale"]{color:var(--cm-terracotta)!important}
.cn-menu>li>a[href*="associazione"]:before,.cn-menu>li>a[href*="attivit"]:before,.cn-menu>li>a[href*="territorio"]:before,.cn-menu>li>a[href*="scout"]:before,.cn-menu>li>a[href*="notizie"]:before,.cn-menu>li>a[href*="eventi"]:before,.cn-menu>li>a[href*="contatti"]:before,.cn-menu>li>a[href*="accoglienza"]:before{font-size:13px;line-height:1;color:var(--cm-terracotta)}
/* Regola adattiva: mantiene il menu su una riga sui desktop, passa al menu mobile del tema sotto 980px */
@media (min-width:1201px){.cn-header-inner{gap:clamp(12px,1.5vw,26px)}.cn-menu>li>a{font-size:clamp(10px,.78vw,12px)!important}}
@media (min-width:981px) and (max-width:1200px){.cn-container{width:calc(100% - 32px)!important}.cn-header-inner{gap:8px!important}.cn-wordmark strong{font-size:16px!important}.cn-wordmark small{font-size:8px!important;letter-spacing:.09em!important}.cn-brand-symbol{width:36px!important;height:36px!important;font-size:21px!important}.cn-nav{gap:4px!important}.cn-menu{gap:0!important}.cn-menu>li>a{padding:10px 4px!important;font-size:10px!important;gap:3px!important}.cn-member-link{padding:8px 9px!important;font-size:9px!important;gap:5px!important}}
@media (max-width:980px){.cn-nav{flex:initial;justify-content:initial}.cn-menu{display:flex!important;flex-flow:column nowrap!important;align-items:stretch!important;justify-content:flex-start!important;gap:0!important;white-space:normal}.cn-menu>li>a{justify-content:space-between;padding:13px 8px!important;font-size:14px!important;border-radius:8px}.cn-menu>li.current-menu-item>a:before,.cn-menu>li.current-menu-ancestor>a:before{margin-right:3px}.cn-menu .sub-menu:before{display:none}.cn-menu .sub-menu{border-radius:8px!important}.cn-menu .sub-menu a{font-size:13px!important}.cn-member-link{font-size:12px!important;padding:12px 14px!important}}
@media (prefers-reduced-motion:reduce){.cn-menu a,.cn-member-link{transition:none!important;transform:none!important}}

/* v1.0.1: cache-busting is handled by PHP; strengthen the theme-specific layout */
body .cn-header .cn-header-inner{display:flex!important;align-items:center!important;justify-content:space-between!important}
body .cn-header .cn-nav{display:flex!important;align-items:center!important;flex:1 1 auto!important;min-width:0!important}
body .cn-header .cn-menu{display:flex!important;flex-direction:row!important;flex-wrap:nowrap!important;align-items:center!important;min-width:0!important}
body .cn-header .cn-menu>li{flex:0 0 auto!important}
body .cn-header .cn-menu>li>a{white-space:nowrap!important;max-width:none!important}
@media (min-width:981px){body .cn-header .cn-header-inner{width:calc(100% - 40px)!important;gap:clamp(6px,1vw,16px)!important}body .cn-header .cn-menu{gap:0!important}body .cn-header .cn-menu>li>a{padding-inline:clamp(3px,.38vw,7px)!important;font-size:clamp(9px,.72vw,11px)!important}body .cn-header .cn-member-link{padding:8px 9px!important;font-size:10px!important}}
@media (min-width:981px) and (max-width:1100px){body .cn-header .cn-wordmark strong{font-size:15px!important}body .cn-header .cn-wordmark small{font-size:8px!important}body .cn-header .cn-brand-symbol{width:32px!important;height:32px!important}body .cn-header .cn-menu>li>a{font-size:9px!important;padding-inline:2px!important}body .cn-header .cn-member-link{font-size:9px!important;padding:7px!important}}

/* Decorative icon supplied from the visible menu label by menu.js */
.cn-menu>li>a[data-cm-icon]:before{content:attr(data-cm-icon)!important;display:inline-block!important;font-size:13px!important;line-height:1!important;color:#a45e43!important;margin-right:2px!important;flex:0 0 auto!important}
