/* Pagina di accesso: stili caricati soltanto nella home pubblica. */
.arx-entry-page { color: #f9f7eb; background: #141613; }
.arx-entry-page * { box-sizing: border-box; }
.arx-entry-page a, .arx-entry-page button { touch-action: manipulation; }
.arx-entry-page a:focus-visible, .arx-entry-page button:focus-visible { outline: 3px solid #efd18a; outline-offset: 5px; }
.arx-entry-top { display: flex; align-items: center; justify-content: space-between; gap: 24px; padding: 17px clamp(24px,4vw,64px); background: #192016; border-bottom: 1px solid #85876966; }
.arx-entry-top__brand { display: block; width: 165px; flex-shrink: 0; }
.arx-entry-top__brand img { display: block; width: 100%; height: auto; }
.arx-entry-top__nav { display: flex; align-items: center; gap: 26px; margin-right: auto; }
.arx-entry-top a { color: #f3f0df; font-size: .9rem; text-decoration: none; }
.arx-entry-top__nav a { padding-block: 10px; border-bottom: 1px solid transparent; }
.arx-entry-top__nav a:hover { border-color: #d7bd7d; }
.arx-entry-top__help { display: inline-flex; align-items: center; gap: 8px; min-height: 44px; }
.arx-entry-top__help span { width: 23px; height: 23px; display: grid; place-items: center; border: 1px solid #e4dfc9; border-radius: 50%; }
.arx-entry-top .arx-entry-top__account { padding: 12px 17px; min-height: 44px; color: #223020; background: #efe7cc; border-radius: 5px; font-weight: 700; text-align: center; }
.arx-entry-hero { position: relative; isolation: isolate; min-height: calc(100svh - 78px); display: flex; align-items: center; padding: 42px clamp(28px,7vw,112px) 58px; background: #141613 url('../img/homepage-background-concept-v1.png') center / cover no-repeat; }
.arx-entry-hero::before { content: ''; position: absolute; inset: 0; z-index: -1; background: linear-gradient(90deg,#080b08d9 0%,#080b08b3 38%,#080b0866 59%,transparent 83%); }
.arx-entry-inner { width: min(58vw,650px); }
.arx-entry-municipalities { max-width: 610px; padding: 12px 16px 14px; border: 1px solid #9f9d7966; border-radius: 4px; background: #181d17ed; }
.arx-entry-municipalities h2 { margin: 0 0 11px; font: 600 .72rem/1.4 var(--arx-font-sans); letter-spacing: .17em; text-align: center; text-transform: uppercase; color: #e2dfc9; }
.arx-entry-crests { display: grid; grid-template-columns: repeat(5,minmax(0,1fr)); gap: 12px; padding: 0; margin: 0; list-style: none; }
.arx-entry-crests li { display: grid; grid-template-rows: 70px 2.6em; gap: 9px; justify-items: center; align-items: start; text-align: center; min-width: 0; }
.arx-entry-crest { display: grid; place-items: center; width: 76px; max-width: 100%; height: 70px; padding: 5px; background: #fff; border-radius: 3px; }
.arx-entry-page .arx-entry-crest img { display: block; width: 100%; height: 60px; max-height: 60px; object-fit: contain; object-position: center; filter: none; opacity: 1; }
.logged-in .arx-entry-hero { min-height: calc(100svh - 154px); }
.logged-in .arx-entry-top__brand { display: none; }
.arx-entry-crest-label { display: block; width: 100%; font: 600 .73rem/1.3 var(--arx-font-sans); color: #f7f5e9; }
.arx-entry-eyebrow { margin: 27px 0 15px; font: 700 .75rem/1.6 var(--arx-font-sans); letter-spacing: .2em; text-transform: uppercase; color: #f2efd8; }
.arx-entry-title { margin: 0; line-height: 1; }
.arx-entry-logo { display: block; width: min(100%,625px); height: auto; filter: drop-shadow(0 3px 5px #0006); }
.arx-entry-intro { max-width: 45ch; margin: 22px 0 0; font: 400 1.2rem/1.65 var(--arx-font-serif); color: #f0eddf; }
.arx-entry-shortcuts { display: grid; grid-template-columns: 1.35fr 1fr .8fr; gap: 10px; margin-top: 27px; }
.arx-entry-shortcut { display: flex; align-items: center; gap: 10px; min-height: 56px; padding: 9px 12px; background: #fdfcf2; border: 1px solid #fdfcf2; border-radius: 6px; color: #1f3025; font: 700 .85rem/1.3 var(--arx-font-sans); text-decoration: none; text-align: left; cursor: pointer; }
.arx-entry-shortcut:hover { color: #1f3025; background: #e7e5d4; }
.arx-entry-shortcut__icon { display: grid; place-items: center; width: 32px; height: 32px; flex-shrink: 0; background: #8d7a4b; color: #fffce1; border-radius: 5px; }
.arx-entry-actions { display: flex; align-items: stretch; gap: 13px; margin-top: 22px; }
.arx-entry-actions a { display: flex; align-items: center; justify-content: center; gap: 15px; min-height: 58px; padding: 12px 24px; border: 1px solid transparent; border-radius: 32px; font: 700 1rem/1.3 var(--arx-font-sans); text-align: center; text-decoration: none; }
.arx-entry-actions .arx-entry-visit { background: #d4b878; color: #1d281b; }
.arx-entry-visit:hover { background: #e4c98b; }
.arx-entry-actions .arx-entry-participate { flex-direction: column; gap: 3px; background: #fffef2; color: #243320; }
.arx-entry-participate:hover { background: #eae8d8; }
.arx-entry-participate strong { font-weight: 700; }
.arx-entry-participate small { font-size: .8rem; font-weight: 400; }
.arx-entry-docs { display: flex; flex-wrap: wrap; gap: 10px 21px; margin-top: 25px; }
.arx-entry-docs a { color: #f1eedf; font-size: .85rem; text-underline-offset: 5px; }
.arx-entry-caption { max-width: 61ch; margin: 17px 0 0; color: #e0e0cc; font-size: .8rem; line-height: 1.7; }
.arx-entry-page ~ .arx-promo-modal { color: #fff; }
.arx-entry-page .arx-entry-inner [hidden] { display: none; }
/* Gli strumenti di accessibilità e le preferenze cookie restano quelli del sito. */
.arx-a11y-high-contrast .arx-entry-hero::before { background: #000e; }
@media (min-width: 901px) and (max-height: 800px) {
  .arx-entry-top { padding-block: 12px; }
  .arx-entry-hero { min-height: calc(100svh - 70px); padding-block: 26px 44px; }
  .arx-entry-municipalities { padding: 10px 13px 12px; }
  .arx-entry-crests li { grid-template-rows: 60px 2.6em; gap: 7px; }
  .arx-entry-crest { height: 60px; width: 67px; }
  .arx-entry-page .arx-entry-crest img { height: 50px; max-height: 50px; }
  .arx-entry-eyebrow { margin-block: 19px 10px; font-size: .68rem; }
  .arx-entry-logo { max-width: 535px; }
  .arx-entry-intro { font-size: 1.08rem; margin-top: 17px; }
  .arx-entry-shortcuts { margin-top: 21px; }
  .arx-entry-shortcut { min-height: 50px; }
  .arx-entry-actions { margin-top: 19px; }
  .arx-entry-actions a { min-height: 52px; font-size: .93rem; }
  .arx-entry-docs { margin-top: 20px; }
}
@media (min-width: 901px) and (max-width: 1180px) {
  .arx-entry-hero { padding-inline: 52px; }
  .arx-entry-inner { width: 61vw; }
  .arx-entry-shortcut { font-size: .8rem; padding-inline: 9px; }
}
@media (max-width: 900px) {
  .arx-entry-top { gap: 17px; padding: 14px 24px; flex-wrap: wrap; }
  .arx-entry-top__brand { width: 145px; }
  .arx-entry-top__nav { gap: 18px; }
  .arx-entry-top a { font-size: .85rem; }
  .arx-entry-hero { min-height: calc(100svh - 80px); padding: 34px 38px 75px; justify-content: center; background-position: 64% top; }
  .arx-entry-hero::before { background: linear-gradient(90deg,#080d08ed,#080d08d9 70%,#080d08b8); }
  .arx-entry-inner { width: min(100%,650px); }
  .arx-entry-municipalities { margin-inline: auto; }
  .arx-entry-eyebrow, .arx-entry-intro, .arx-entry-caption { text-align: center; }
  .arx-entry-logo, .arx-entry-intro, .arx-entry-caption { margin-inline: auto; }
  .arx-entry-actions, .arx-entry-docs { justify-content: center; }
}
@media (max-width: 600px) {
  .arx-entry-top { gap: 8px 15px; padding: 12px 19px; }
  .arx-entry-top__brand { width: 137px; margin-right: auto; }
  .arx-entry-top__nav { order: 3; flex: 1 0 100%; justify-content: center; gap: 28px; }
  .arx-entry-top .arx-entry-top__account { padding: 9px 10px; max-width: 127px; font-size: .76rem; }
  .arx-entry-top__help { font-size: .78rem !important; gap: 5px; }
  .arx-entry-hero { min-height: 0; padding: 27px 22px 85px; align-items: start; }
  .arx-entry-municipalities { max-width: 440px; padding: 14px 12px 16px; }
  .arx-entry-municipalities h2 { font-size: .68rem; margin-bottom: 14px; }
  .arx-entry-crests { grid-template-columns: repeat(6,minmax(0,1fr)); gap: 19px 12px; }
  .arx-entry-crests li { grid-column: span 2; grid-template-rows: 70px 2.6em; }
  .arx-entry-crests li:nth-child(4) { grid-column: 2 / span 2; }
  .arx-entry-crests li:nth-child(5) { grid-column: 4 / span 2; }
  .arx-entry-crest-label { font-size: .74rem; }
  .arx-entry-eyebrow { font-size: .67rem; letter-spacing: .13em; margin-top: 27px; }
  .arx-entry-intro { font-size: 1.08rem; max-width: 33ch; }
  .arx-entry-shortcuts { grid-template-columns: 1fr; gap: 10px; max-width: 410px; margin: 25px auto 0; }
  .arx-entry-shortcut { font-size: .98rem; min-height: 56px; padding-inline: 16px; gap: 15px; }
  .arx-entry-actions { display: grid; grid-template-columns: 1fr; gap: 12px; max-width: 410px; margin: 23px auto 0; }
  .arx-entry-actions a { min-height: 56px; font-size: 1rem; }
  .arx-entry-docs { gap: 14px 21px; margin-top: 27px; }
  .arx-entry-docs a { font-size: .87rem; }
}
@media print {
  .arx-entry-top, .arx-entry-shortcuts, .arx-entry-actions { display: none; }
  .arx-entry-hero { min-height: 0; background: #fff; padding: 24px; color: #111; }
  .arx-entry-hero::before { display: none; }
  .arx-entry-inner { width: 100%; }
  .arx-entry-intro, .arx-entry-caption, .arx-entry-docs a, .arx-entry-eyebrow { color: #111; }
}
