/* Profilo pubblico della Compagnia — CSS isolato per evitare regressioni sulle altre pagine. */
.cp-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,#061d38 0%,#0b3f75 58%,#0c6d8e 100%);color:#fff;padding:3rem 0 2.5rem}.cp-hero:after{content:"";position:absolute;inset:auto -8rem -13rem auto;width:34rem;height:34rem;border-radius:50%;background:radial-gradient(circle,rgba(47,220,174,.22),transparent 67%)}.cp-hero-inner{position:relative;z-index:1;display:flex;align-items:center;justify-content:space-between;gap:2rem}.cp-identity{display:flex;align-items:center;gap:1.35rem;min-width:0}.cp-logo{width:112px;height:112px;border-radius:30px;display:grid;place-items:center;flex:0 0 auto;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.22);box-shadow:0 18px 46px rgba(0,0,0,.2);overflow:hidden}.cp-logo img{width:100%;height:100%;object-fit:contain;padding:10px;background:#fff}.cp-logo .icn{width:52px;height:52px;color:#5de0b4}.cp-kicker,.cp-section-kicker{margin:0 0 .38rem;text-transform:uppercase;letter-spacing:.12em;font-weight:800;font-size:.74rem;color:#58dbb2}.cp-identity h1{margin:0;font-size:clamp(2rem,4vw,4rem);line-height:1.02;color:#fff;overflow-wrap:anywhere}.cp-motto{margin:.7rem 0 0;color:#f8cc5e;font-size:1.05rem}.cp-hero-links{display:flex;flex-wrap:wrap;gap:.65rem 1rem;margin-top:1rem}.cp-hero-links a,.cp-hero-links span{display:inline-flex;align-items:center;gap:.4rem;color:#ddecf9;text-decoration:none;font-weight:700}.cp-hero-links a:hover{color:#fff}.cp-hero-links .icn{width:18px;height:18px}.cp-hero-actions{display:flex;flex-direction:column;gap:.7rem;min-width:190px}.cp-share-button,.cp-book-button{display:flex;align-items:center;justify-content:center;gap:.55rem;min-height:48px;border-radius:14px;padding:.75rem 1rem;font-weight:850;text-decoration:none;border:1px solid rgba(255,255,255,.25);cursor:pointer}.cp-share-button{background:rgba(4,25,48,.38);color:#fff}.cp-book-button{background:#f1bd45;color:#071f38;border-color:#f1bd45}.cp-share-button .icn,.cp-book-button .icn{width:19px;height:19px}
.cp-kpi-band{background:#fff;border-bottom:1px solid #dce7f1;box-shadow:0 13px 30px rgba(10,49,82,.07)}.cp-kpis{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0}.cp-kpis article{padding:1.25rem 1rem;border-right:1px solid #e7eef5;min-width:0}.cp-kpis article:last-child{border-right:0}.cp-kpis span,.cp-kpis small{display:block;color:#667b8f}.cp-kpis span{font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.06em}.cp-kpis strong{display:block;margin:.15rem 0;color:#0b3157;font-size:1.8rem;line-height:1}.cp-kpis small{font-size:.78rem}
.cp-main{background:linear-gradient(180deg,#f2f7fb 0%,#fff 100%)}.cp-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.75fr);gap:1.4rem;align-items:start}.cp-content,.cp-sidebar{display:grid;gap:1.25rem;min-width:0}.cp-sidebar{position:sticky;top:116px}.cp-panel,.cp-side-card{background:#fff;border:1px solid #dbe6ef;border-radius:24px;box-shadow:0 18px 44px rgba(11,49,87,.08)}.cp-panel{padding:1.45rem}.cp-side-card{padding:1.25rem}.cp-panel h2,.cp-side-card h2{margin:0;color:#0a3158;font-size:1.35rem}.cp-prose{color:#425d72;line-height:1.7}.cp-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem}.cp-section-head p{margin:.3rem 0 0;color:#5b7388}.cp-story{border-left:5px solid #48cfa4}
.cp-filters{display:grid;grid-template-columns:minmax(220px,1.45fr) minmax(150px,.75fr) minmax(140px,.62fr) minmax(140px,.62fr) auto auto;gap:.7rem;align-items:end;margin:1rem 0 1.1rem;padding:1rem;border-radius:18px;background:#f4f8fb}.cp-filters label{display:grid;gap:.35rem;min-width:0}.cp-filters label span{font-size:.75rem;text-transform:uppercase;letter-spacing:.06em;font-weight:850;color:#4f687e}.cp-filters input,.cp-filters select{width:100%;min-height:44px;border:1px solid #cfdde8;border-radius:12px;background:#fff;padding:.65rem .75rem;color:#173a58;font-size:1rem}.cp-filters button,.cp-reset{min-height:44px;border-radius:12px;padding:.65rem .9rem;font-weight:850;text-decoration:none;display:flex;align-items:center;justify-content:center}.cp-filters button{border:0;background:#0e6f9e;color:#fff}.cp-reset{border:1px solid #ccdbe6;color:#36566f;background:#fff}.cp-voci-results{position:relative}.cp-archive-summary{display:flex;align-items:baseline;gap:.4rem;margin-bottom:.8rem;color:#61788c}.cp-archive-summary strong{font-size:1.35rem;color:#0b3157}.cp-voci-list{display:grid;gap:.85rem}.cp-voce-card{min-width:0;padding:1.15rem;border:1px solid #dce7ef;border-radius:18px;background:linear-gradient(180deg,#fff,#f9fbfd)}.cp-voce-top{display:flex;flex-wrap:wrap;gap:.45rem;align-items:center}.cp-type,.cp-badge{display:inline-flex;border-radius:999px;padding:.28rem .6rem;font-size:.72rem;font-weight:850}.cp-type{background:#e8f1f8;color:#2c5977}.cp-badge--new{background:#fff0c7;color:#805800}.cp-badge--audio{background:#dff8ef;color:#087655}.cp-voce-card h3{margin:.65rem 0 .55rem;color:#0b3157;font-size:1.25rem;overflow-wrap:anywhere}.cp-italiano,.cp-example{display:grid;gap:.65rem;margin:.45rem 0;color:#405e75;overflow-wrap:anywhere}.cp-italiano{grid-template-columns:1fr;gap:.18rem}.cp-example{grid-template-columns:90px minmax(0,1fr)}.cp-italiano-label,.cp-example span{font-weight:850;color:#718699;font-size:.78rem;text-transform:uppercase}.cp-italiano-text{display:block;color:#405e75;line-height:1.55}.cp-audio{width:100%;margin-top:.65rem}.cp-author{display:block;margin-top:.6rem;color:#72879a}.cp-empty{display:grid;gap:.25rem;padding:1rem;border-radius:16px;background:#f3f7fa;color:#516b80}.cp-pagination{display:flex;flex-wrap:wrap;gap:.45rem;justify-content:center;margin-top:1.1rem}.cp-page,.cp-page-dots{min-width:40px;height:40px;display:grid;place-items:center;border-radius:11px}.cp-page{border:1px solid #cbdbe7;background:#fff;color:#244d6c;text-decoration:none;font-weight:850}.cp-page:hover,.cp-page.is-current{background:#0d6f9f;border-color:#0d6f9f;color:#fff}.cp-page--wide{padding:0 .8rem;min-width:auto}.cp-page.is-disabled{opacity:.45;pointer-events:none}.cp-loading{position:absolute;inset:0;z-index:4;display:flex;align-items:center;justify-content:center;gap:.6rem;background:rgba(255,255,255,.88);border-radius:18px;font-weight:800;color:#244c68}.cp-loading span{width:20px;height:20px;border:3px solid #d8e5ee;border-top-color:#0d7ca9;border-radius:50%;animation:cp-spin .8s linear infinite}@keyframes cp-spin{to{transform:rotate(360deg)}}
.cp-audio-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.cp-audio-card{min-width:0;padding:1rem;border-radius:18px;background:#f4f8fb;border:1px solid #dce7ef}.cp-audio-card>span{font-size:.72rem;text-transform:uppercase;font-weight:850;color:#0f8568}.cp-audio-card h3{margin:.35rem 0;color:#0b3157;overflow-wrap:anywhere}.cp-audio-card p{margin:.2rem 0 .7rem;color:#536d81;overflow-wrap:anywhere}.cp-audio-card audio{width:100%}.cp-audio-card small{display:block;margin-top:.45rem;color:#71869a}
.cp-territory-head{display:flex;align-items:center;gap:.9rem}.cp-stemma{width:76px;height:76px;border-radius:18px;display:grid;place-items:center;overflow:hidden;background:#f3f7fa;border:1px solid #d9e5ee;flex:0 0 auto}.cp-stemma img{width:100%;height:100%;object-fit:contain;padding:7px}.cp-stemma .icn{width:34px;height:34px;color:#0c729e}.cp-territory h2{font-size:1.2rem}.cp-territory-head p{margin:.2rem 0 0;color:#657d90}.cp-territory>a{display:flex;align-items:center;justify-content:space-between;gap:.6rem;margin-top:1rem;padding:.8rem;border-radius:13px;background:#e8f5fb;color:#0b5f87;font-weight:850;text-decoration:none}.cp-territory>a .icn{width:18px;height:18px}.cp-progress-row{margin-top:1rem}.cp-progress-row>div{display:flex;justify-content:space-between;gap:.7rem;margin-bottom:.35rem;color:#526d82}.cp-progress-row b{color:#0a3158}.cp-progress-row progress{width:100%;height:11px;accent-color:#35c99a}.cp-data-list{display:grid;gap:.55rem;margin:1rem 0 0}.cp-data-list div{display:flex;justify-content:space-between;gap:.8rem;padding-top:.55rem;border-top:1px solid #e6eef4}.cp-data-list dt{color:#60788b}.cp-data-list dd{margin:0;font-weight:850;color:#0b3157;text-align:right}.cp-book-card{background:linear-gradient(145deg,#092a4d,#0b5277);color:#fff}.cp-book-card .cp-section-kicker{color:#f4c450}.cp-book-card h2{color:#fff}.cp-book-card p{color:#dceaf4}.cp-book-download,.cp-primary-action{display:flex;align-items:center;justify-content:center;gap:.5rem;width:100%;min-height:48px;border:0;border-radius:14px;background:#efbd48;color:#09233f;text-decoration:none;font-weight:900;cursor:pointer}.cp-book-download .icn{width:19px;height:19px}.cp-book-secondary{display:block;margin-top:.65rem;text-align:center;color:#d9ecf7;font-weight:750}.cp-note{padding:.7rem;border-radius:12px;background:rgba(255,255,255,.1)}.cp-join-card p{color:#5a7285}.cp-join-card form{margin:0}
.cp-members{margin-top:1.4rem}.cp-member-count{padding:.4rem .7rem;border-radius:999px;background:#e8f5fb;color:#0b638d;font-weight:850}.cp-members-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem}.cp-member-card{display:flex;min-width:0;border:1px solid #dce7ef;border-radius:18px;overflow:hidden;background:#fbfdfe}.cp-member-rank{width:48px;display:grid;place-items:center;background:#0b4d78;color:#fff;font-size:1.1rem;font-weight:900;flex:0 0 auto}.cp-member-body{padding:.9rem;min-width:0;flex:1}.cp-member-name{display:flex;align-items:center;justify-content:space-between;gap:.7rem}.cp-member-name h3{margin:0;color:#0b3157;font-size:1rem;overflow-wrap:anywhere}.cp-member-name span{white-space:nowrap;border-radius:999px;background:#e5f6ef;color:#087554;padding:.22rem .5rem;font-size:.68rem;font-weight:850}.cp-member-body>p{margin:.25rem 0 .65rem;color:#6a8092}.cp-member-body dl{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.4rem;margin:0}.cp-member-body dl div{min-width:0}.cp-member-body dt{font-size:.66rem;text-transform:uppercase;color:#718699}.cp-member-body dd{margin:0;color:#0b3157;font-weight:900}
.cp-share-modal[hidden]{display:none}.cp-share-modal{position:fixed;inset:0;z-index:1090;display:grid;place-items:center;padding:1rem}.cp-share-backdrop{position:absolute;inset:0;border:0;background:rgba(3,19,35,.72);cursor:pointer}.cp-share-dialog{position:relative;z-index:1;width:min(520px,100%);padding:1.5rem;border-radius:24px;background:#fff;box-shadow:0 28px 80px rgba(0,0,0,.3)}.cp-share-dialog h2{margin:0;color:#0b3157}.cp-share-dialog>p:not(.cp-section-kicker){color:#5b7386}.cp-share-close{position:absolute;right:1rem;top:.8rem;width:38px;height:38px;border-radius:50%;border:1px solid #d6e2eb;background:#fff;color:#183f5e;font-size:1.5rem;line-height:1}.cp-share-networks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.cp-share-networks button{min-height:48px;border-radius:13px;border:1px solid #cbdce7;background:#f5f9fb;color:#173f5e;font-weight:900}.cp-share-networks button:hover{background:#0d6f9f;color:#fff;border-color:#0d6f9f}.cp-share-status{min-height:1.3rem;margin:.8rem 0 0!important;font-weight:750}.cp-share-status.is-error{color:#a52424}.cp-share-open{overflow:hidden}
@media (max-width:1199px){.cp-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.cp-kpis article:nth-child(3){border-right:0}.cp-kpis article:nth-child(-n+3){border-bottom:1px solid #e7eef5}.cp-grid{grid-template-columns:minmax(0,1.45fr) minmax(280px,.75fr)}.cp-sidebar{position:static}}
@media (max-width:900px){.cp-hero-inner{align-items:flex-start}.cp-grid{grid-template-columns:1fr}.cp-sidebar{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-members-grid{grid-template-columns:1fr}.cp-filters{grid-template-columns:1fr 1fr}.cp-search{grid-column:1/-1}.cp-filters button,.cp-reset{width:100%}.cp-audio-grid{grid-template-columns:1fr}}
@media (max-width:767px){.cp-hero{padding:1.5rem 0}.cp-hero-inner{display:grid;gap:1rem}.cp-identity{align-items:flex-start}.cp-logo{width:76px;height:76px;border-radius:20px}.cp-logo .icn{width:38px;height:38px}.cp-identity h1{font-size:clamp(1.8rem,9vw,2.7rem)}.cp-motto{font-size:.92rem}.cp-hero-actions{display:grid;grid-template-columns:1fr 1fr;width:100%;min-width:0}.cp-hero-actions>*:only-child{grid-column:1/-1}.cp-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-kpis article{border-right:1px solid #e7eef5!important;border-bottom:1px solid #e7eef5}.cp-kpis article:nth-child(even){border-right:0!important}.cp-kpis strong{font-size:1.45rem}.cp-panel,.cp-side-card{border-radius:18px;padding:1rem}.cp-sidebar{grid-template-columns:1fr}.cp-section-head{display:grid}.cp-filters{grid-template-columns:1fr;padding:.8rem}.cp-search{grid-column:auto}.cp-italiano,.cp-example{grid-template-columns:1fr;gap:.15rem}.cp-page--wide{order:2;flex:1}.cp-pagination{justify-content:flex-start}.cp-member-body dl{grid-template-columns:repeat(2,minmax(0,1fr))}.cp-member-name{align-items:flex-start}.cp-share-networks{grid-template-columns:1fr}}
@media (max-width:420px){.cp-identity{display:grid}.cp-logo{width:66px;height:66px}.cp-hero-actions{grid-template-columns:1fr}.cp-kpis article{padding:1rem .7rem}.cp-kpis span{font-size:.68rem}.cp-member-card{display:grid;grid-template-columns:40px minmax(0,1fr)}.cp-member-rank{width:40px}.cp-member-name{display:grid;gap:.35rem}.cp-member-name span{justify-self:start}.cp-territory-head{align-items:flex-start}.cp-stemma{width:64px;height:64px}}


/* Classifica territoriale della Compagnia */
.cp-ranking-band{padding:1.35rem 0;background:linear-gradient(180deg,#edf5fa,#f8fbfd);border-top:1px solid #dce8f0;border-bottom:1px solid #dce8f0}
.cp-ranking-head{display:flex;align-items:end;justify-content:space-between;gap:1.2rem;margin-bottom:.9rem}
.cp-ranking-head h2{margin:.15rem 0 0;color:#0b3157;font-size:clamp(1.35rem,2.2vw,1.85rem)}
.cp-ranking-head>p{margin:0;color:#627b8f;text-align:right}
.cp-ranking-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.8rem}
.cp-ranking-card{min-width:0;padding:1rem 1.1rem;border:1px solid #d7e5ee;border-radius:18px;background:#fff;box-shadow:0 10px 26px rgba(17,59,88,.06)}
.cp-ranking-card span{display:block;color:#60798e;font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase}
.cp-ranking-card strong{display:block;margin:.3rem 0 .15rem;color:#d99b13;font-size:2rem;line-height:1}
.cp-ranking-card b{display:block;color:#0b3157;overflow-wrap:anywhere}
.cp-ranking-card small{display:block;margin-top:.3rem;color:#71889a}
.cp-book-public{margin:.7rem 0 0!important;color:#d9ecf7!important;font-size:.82rem;line-height:1.45}
@media (max-width:767px){.cp-ranking-head{display:grid;gap:.35rem}.cp-ranking-head>p{text-align:left}.cp-ranking-grid{grid-template-columns:1fr}.cp-ranking-card{display:grid;grid-template-columns:auto 1fr;column-gap:.8rem;align-items:center}.cp-ranking-card span,.cp-ranking-card small{grid-column:1/-1}.cp-ranking-card strong{grid-row:2;font-size:1.75rem}.cp-ranking-card b{grid-row:2}}

/* Profilo pubblico multiterritoriale della Compagnia. */
.cp-territory-count {
  display: inline-flex;
  align-items: center;
  padding: .42rem .72rem;
  border-radius: 999px;
  background: #e7f6f1;
  color: #087554;
  font-weight: 850;
  white-space: nowrap;
}
.cp-territories-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .8rem;
}
.cp-territory-card {
  display: grid;
  gap: .8rem;
  min-width: 0;
  padding: 1rem;
  border: 1px solid #d8e5ee;
  border-radius: 18px;
  background: linear-gradient(180deg, #fff, #f7fbfd);
  color: inherit;
  text-decoration: none;
  transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.cp-territory-card:hover,
.cp-territory-card:focus-visible {
  transform: translateY(-2px);
  border-color: #77b9d3;
  box-shadow: 0 14px 30px rgba(11, 49, 87, .10);
  outline: none;
}
.cp-territory-card-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: .7rem;
}
.cp-territory-card h3 {
  margin: 0;
  color: #0b3157;
  font-size: 1.08rem;
}
.cp-territory-card p {
  margin: .18rem 0 0;
  color: #6b8193;
  font-size: .82rem;
}
.cp-seat-badge {
  flex: 0 0 auto;
  padding: .25rem .55rem;
  border-radius: 999px;
  background: #fff0c7;
  color: #805800;
  font-size: .68rem;
  font-weight: 900;
  text-transform: uppercase;
  letter-spacing: .05em;
}
.cp-territory-card dl {
  display: grid;
  grid-template-columns: repeat(4, minmax(0, 1fr));
  gap: .5rem;
  margin: 0;
}
.cp-territory-card dl div {
  min-width: 0;
  padding: .55rem;
  border-radius: 11px;
  background: #f0f6fa;
}
.cp-territory-card dt {
  color: #718699;
  font-size: .64rem;
  text-transform: uppercase;
  letter-spacing: .04em;
}
.cp-territory-card dd {
  margin: .1rem 0 0;
  color: #0b3157;
  font-weight: 900;
}
.cp-territory-open {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .6rem;
  color: #0b6b96;
  font-size: .82rem;
  font-weight: 850;
}
.cp-territory-open .icn,
.cp-badge--territory .icn,
.cp-audio-territory .icn {
  width: 15px;
  height: 15px;
}
.cp-badge--territory {
  margin-left: auto;
  align-items: center;
  gap: .28rem;
  background: #e8f5fb;
  color: #0b638d;
  text-decoration: none;
}
.cp-badge--territory:hover {
  background: #d8edf7;
  color: #084f70;
}
.cp-audio-territory {
  display: inline-flex;
  align-items: center;
  gap: .3rem;
  margin: .15rem 0 .55rem;
  color: #0b638d;
  font-size: .78rem;
  font-weight: 800;
  text-decoration: none;
}
.cp-audio-territory:hover { text-decoration: underline; }
.cp-seat-note {
  margin: .85rem 0 0;
  padding: .7rem;
  border-radius: 12px;
  background: #f3f8fb;
  color: #5d7487;
  font-size: .82rem;
  line-height: 1.5;
}
.cp-member-body > p a {
  color: #0b638d;
  font-weight: 800;
  text-decoration: none;
}
.cp-member-body > p a:hover { text-decoration: underline; }
@media (max-width: 900px) {
  .cp-territories-grid { grid-template-columns: 1fr; }
}
@media (max-width: 560px) {
  .cp-territory-card dl { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .cp-territory-count { white-space: normal; }
  .cp-badge--territory { margin-left: 0; }
}
.cp-ranking-card:only-child {
  grid-column: 1 / -1;
  width: min(100%, 420px);
}

/* Tono visivo rafforzato: classifica, territori e archivio della Compagnia. */
.cp-main{
  background:
    radial-gradient(circle at 8% 12%,rgba(30,157,180,.12),transparent 28%),
    radial-gradient(circle at 92% 34%,rgba(242,190,72,.13),transparent 24%),
    linear-gradient(180deg,#eef6fa 0%,#f7fbfd 46%,#eef7f4 100%);
}
.cp-ranking-band{
  position:relative;
  overflow:hidden;
  padding:1.75rem 0;
  background:linear-gradient(125deg,#061f3a 0%,#0b4b76 50%,#0b806f 100%);
  border:0;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.12),0 18px 45px rgba(5,35,61,.18);
}
.cp-ranking-band:before,.cp-ranking-band:after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.cp-ranking-band:before{width:280px;height:280px;right:-70px;top:-170px;background:rgba(255,206,86,.16)}
.cp-ranking-band:after{width:240px;height:240px;left:-90px;bottom:-180px;background:rgba(82,223,184,.14)}
.cp-ranking-band .app-shell{position:relative;z-index:1}
.cp-ranking-head h2{color:#fff}
.cp-ranking-head>p{color:#d8eaf4;max-width:520px}
.cp-ranking-band .cp-section-kicker{color:#f4c95b}
.cp-ranking-grid{gap:1rem}
.cp-ranking-card{
  position:relative;
  overflow:hidden;
  border:1px solid rgba(255,255,255,.24);
  background:rgba(255,255,255,.96);
  box-shadow:0 18px 38px rgba(1,23,42,.22);
  transition:transform .18s ease,box-shadow .18s ease;
}
.cp-ranking-card:hover{transform:translateY(-3px);box-shadow:0 24px 46px rgba(1,23,42,.28)}
.cp-ranking-card:before{content:"";position:absolute;inset:0 auto 0 0;width:6px;background:#38cfa1}
.cp-ranking-card--regione:before{background:#f0ba3e}
.cp-ranking-card--provincia:before{background:#24a9c8}
.cp-ranking-card--comune:before{background:#39bf89}
.cp-ranking-card--regione strong{color:#c58300}
.cp-ranking-card--provincia strong{color:#087ca0}
.cp-ranking-card--comune strong{color:#07815b}
.cp-panel,.cp-side-card{box-shadow:0 20px 48px rgba(9,48,79,.10)}
.cp-story{background:linear-gradient(140deg,#ffffff 0%,#edf9f5 100%);border-left-color:#2fc79a}
.cp-territories{
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,#eef8fc 0%,#ffffff 52%,#eef9f3 100%);
  border-color:#cfe3e7;
}
.cp-territories:after{
  content:"";
  position:absolute;
  width:240px;height:240px;border-radius:50%;
  right:-130px;bottom:-145px;
  background:radial-gradient(circle,rgba(40,192,145,.16),transparent 68%);
  pointer-events:none;
}
.cp-territories>*{position:relative;z-index:1}
.cp-territory-card{
  background:linear-gradient(145deg,#ffffff 0%,#f0f8fb 62%,#edf9f3 100%);
  border-color:#cfe2e8;
  box-shadow:0 10px 24px rgba(11,65,92,.07);
}
.cp-territory-card:nth-child(3n+2){background:linear-gradient(145deg,#fffdf7 0%,#fff5d9 100%);border-color:#ead9a9}
.cp-territory-card:nth-child(3n){background:linear-gradient(145deg,#f5fbff 0%,#e9f4ff 100%);border-color:#c9dded}
.cp-territory-identity{display:flex;align-items:center;gap:.75rem;min-width:0}
.cp-territory-emblem{
  width:62px;height:62px;flex:0 0 auto;
  display:grid;place-items:center;
  border-radius:16px;
  overflow:hidden;
  background:rgba(255,255,255,.92);
  border:1px solid rgba(17,75,108,.13);
  box-shadow:0 8px 18px rgba(10,55,83,.10);
}
.cp-territory-emblem img{width:100%;height:100%;object-fit:contain;padding:6px}
.cp-territory-emblem .icn{width:28px;height:28px;color:#0a7d9d}
.cp-territory-card dl div{background:rgba(255,255,255,.72);border:1px solid rgba(32,95,124,.08)}
.cp-archive{
  position:relative;
  overflow:hidden;
  background:linear-gradient(145deg,#edf8fc 0%,#ffffff 48%,#eefaf5 100%);
  border-color:#bfdce4;
  box-shadow:0 24px 56px rgba(6,54,82,.14);
}
.cp-archive>.cp-section-head{
  position:relative;
  overflow:hidden;
  margin:-1.45rem -1.45rem 1.15rem;
  padding:1.45rem;
  background:linear-gradient(120deg,#08385f 0%,#0b6f8d 57%,#0b8a70 100%);
}
.cp-archive>.cp-section-head:after{content:"";position:absolute;width:210px;height:210px;border-radius:50%;right:-90px;top:-120px;background:rgba(245,197,78,.18)}
.cp-archive>.cp-section-head>div{position:relative;z-index:1}
.cp-archive>.cp-section-head h2{color:#fff}
.cp-archive>.cp-section-head p{color:#d9edf4;max-width:760px}
.cp-archive>.cp-section-head .cp-section-kicker{color:#f5cb62}
.cp-filters{
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:.75rem;
  padding:1rem;
  background:linear-gradient(135deg,#0a3558 0%,#0c5975 100%);
  border:1px solid rgba(255,255,255,.18);
  box-shadow:0 14px 30px rgba(8,52,81,.18);
}
.cp-filters .cp-search{grid-column:span 2}
.cp-filters label span{color:#d8edf5}
.cp-filters input,.cp-filters select{border-color:rgba(255,255,255,.32);box-shadow:0 3px 0 rgba(0,0,0,.04)}
.cp-filters input:focus,.cp-filters select:focus{outline:3px solid rgba(244,197,77,.30);border-color:#f4c54d}
.cp-filters button{background:#f0bd46;color:#082742;box-shadow:0 8px 18px rgba(0,0,0,.16)}
.cp-filters button:hover{background:#ffd369}
.cp-reset{border-color:rgba(255,255,255,.42);color:#fff;background:rgba(255,255,255,.10)}
.cp-reset:hover{background:rgba(255,255,255,.18);color:#fff}
.cp-archive-summary{display:inline-flex;padding:.45rem .75rem;border-radius:999px;background:#dff5ee;color:#176a57}
.cp-archive-summary strong{color:#08775a}
.cp-voci-list{gap:1rem}
.cp-voce-card{
  position:relative;
  overflow:hidden;
  padding:1.2rem 1.2rem 1.2rem 1.35rem;
  background:linear-gradient(145deg,#ffffff 0%,#f1f8fb 100%);
  border-color:#cfe0e8;
  box-shadow:0 10px 24px rgba(13,61,90,.07);
}
.cp-voce-card:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,#17a7c6,#28c58f)}
.cp-voce-card:nth-child(2n){background:linear-gradient(145deg,#fffdf7 0%,#fff7e4 100%);border-color:#eadcb8}
.cp-voce-card:nth-child(2n):before{background:linear-gradient(180deg,#efb640,#e77e49)}
.cp-type{background:#dceef6;color:#145a76}
.cp-badge--territory{background:#dff4ed;color:#087255}
.cp-author{font-weight:750;color:#496d82}
.cp-audio-section{background:linear-gradient(145deg,#f4fbff 0%,#eaf8f3 100%);border-color:#cfe4df}
.cp-audio-card{background:rgba(255,255,255,.82);box-shadow:0 8px 20px rgba(9,58,85,.07)}
.cp-members{background:linear-gradient(145deg,#ffffff 0%,#eef7fb 58%,#f5f0ff 100%);border-color:#d5e2eb}
.cp-member-card{background:rgba(255,255,255,.78);box-shadow:0 8px 20px rgba(14,58,84,.06)}
.cp-member-rank{background:linear-gradient(180deg,#0b4d78,#0a846f)}
@media (max-width:1100px){
  .cp-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cp-filters .cp-search{grid-column:1/-1}
}
@media (max-width:767px){
  .cp-archive>.cp-section-head{margin:-1rem -1rem 1rem;padding:1.1rem}
  .cp-filters{grid-template-columns:1fr}
  .cp-filters .cp-search{grid-column:auto}
  .cp-territory-emblem{width:54px;height:54px;border-radius:14px}
}

/* Filtri richiudibili dell'archivio della Compagnia. */
.cp-filter-disclosure{
  margin:0 0 1rem;
  border:1px solid rgba(8,56,95,.18);
  border-radius:17px;
  background:#fff;
  box-shadow:0 12px 28px rgba(6,48,76,.09);
  overflow:hidden;
}
.cp-filter-disclosure>summary{
  list-style:none;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:1rem;
  min-height:66px;
  padding:.85rem 1rem;
  cursor:pointer;
  color:#fff;
  background:linear-gradient(120deg,#082f52 0%,#0b6684 58%,#0b806f 100%);
  user-select:none;
}
.cp-filter-disclosure>summary::-webkit-details-marker{display:none}
.cp-filter-disclosure>summary:focus-visible{outline:3px solid rgba(244,197,77,.55);outline-offset:-3px}
.cp-filter-summary-main{display:flex;align-items:center;gap:.75rem;min-width:0}
.cp-filter-summary-main>span:last-child{display:grid;gap:.12rem;min-width:0}
.cp-filter-summary-main strong{font-size:.94rem;font-weight:900;color:#fff}
.cp-filter-summary-main small{color:#d8edf5;font-size:.73rem;line-height:1.35}
.cp-filter-summary-icon{
  width:38px;height:38px;flex:0 0 auto;
  display:grid;place-items:center;
  border-radius:11px;
  background:rgba(255,255,255,.14);
  color:#f4c54d;
  font-size:1rem;
  font-weight:900;
}
.cp-filter-summary-state{
  flex:0 0 auto;
  display:inline-flex;
  align-items:center;
  gap:.42rem;
  color:#f7d77f;
  font-size:.72rem;
  font-weight:900;
  white-space:nowrap;
}
.cp-filter-summary-state:before{content:"Apri filtri"}
.cp-filter-summary-state:after{content:"⌄";font-size:1.05rem;line-height:1;transition:transform .18s ease}
.cp-filter-disclosure[open] .cp-filter-summary-state:before{content:"Chiudi filtri"}
.cp-filter-disclosure[open] .cp-filter-summary-state:after{transform:rotate(180deg)}
.cp-filter-disclosure .cp-filters{
  margin:0;
  border:0;
  border-radius:0;
  box-shadow:none;
}
@media (max-width:767px){
  .cp-filter-disclosure>summary{align-items:flex-start;padding:.78rem}
  .cp-filter-summary-main small{display:none}
  .cp-filter-summary-state:before{content:"Apri"}
  .cp-filter-disclosure[open] .cp-filter-summary-state:before{content:"Chiudi"}
  .cp-filter-summary-icon{width:34px;height:34px;border-radius:10px}
}
