/* Classifica page-owned composition */
.classifica-page {
  --classifica-ink: #11111c;
  --classifica-blue: #4055a1;
  --classifica-lilac: #d9c9ff;
  --classifica-pink: #cf5bb5;
  --classifica-lime: #a5c83d;
  --classifica-paper: #f6f4ef;
  background: var(--classifica-paper);
  color: var(--classifica-ink);
  font-family: Kameron, Georgia, "Times New Roman", serif;
}
@media (max-width:760px){.classifica-page .classifica-intro__content>*{min-width:0;max-width:100%}.classifica-page .classifica-directory-row>*{min-width:0}.classifica-page .classifica-directory-row :is(h3,p){overflow-wrap:anywhere}}
@media(max-width:420px){.classifica-page .classifica-intro h1{font-size:clamp(2.7rem,14vw,3.8rem);overflow-wrap:anywhere}.classifica-page .classifica-intro__content{min-width:0}}
.classifica-page a { color: inherit; }
.classifica-page img { max-width: 100%; }
.classifica-page main { display: block; }
.classifica-page .classifica-shell-header { position: relative; z-index: 2; min-height: 110px; background: #fff; color: var(--classifica-ink); }
.classifica-page .classifica-shell-header [data-homepage-region-content] { height: auto; min-height: 110px; background: #fff; background-image: none; }
.classifica-page .classifica-shell-header .hero-header { min-height: 110px; }
.classifica-page .classifica-shell-header .hero-stage { display: none; }
.classifica-page .classifica-shell-header .hero-logo:focus-visible,
.classifica-page .classifica-shell-header .hero-nav a:focus-visible,
.classifica-page .classifica-shell-header .hero-menu-toggle:focus-visible { outline-color: var(--classifica-blue); }
.classifica-page .classifica-intro,
.classifica-page .classifica-method,
.classifica-page .classifica-featured,
.classifica-page .classifica-directory,
.classifica-page .classifica-taxonomy,
.classifica-page .classifica-destinations,
.classifica-page .classifica-note { padding: clamp(4rem, 8vw, 8.5rem) clamp(1.25rem, 8vw, 9.5rem); }
.classifica-page .classifica-intro { position: relative; background: var(--classifica-blue); color: #fff; }
.classifica-page .classifica-intro__content { display: grid; grid-template-columns: minmax(0, 1.1fr) minmax(280px, .9fr); align-items: center; gap: clamp(2rem, 7vw, 8rem); max-width: 1500px; margin-inline: auto; }
.classifica-page .classifica-intro__copy { max-width: 680px; }
.classifica-page .classifica-kicker { margin: 0 0 1.25rem; color: inherit; font-size: .86rem; font-weight: 700; letter-spacing: .14em; line-height: 1.35; text-transform: uppercase; }
.classifica-page .classifica-intro h1 { max-width: 760px; margin: 0; color: #fff; font-family: "Jersey 10", Impact, "Arial Black", sans-serif; font-size: clamp(3.5rem, 8vw, 8.5rem); font-weight: 400; line-height: .92; letter-spacing: .01em; text-wrap: balance; -webkit-text-stroke: clamp(2px, .35vw, 6px) #000; paint-order: stroke fill; }
.classifica-page .classifica-intro__lead { max-width: 590px; margin: 2rem 0 2.25rem; font-size: clamp(1.08rem, 1.4vw, 1.4rem); line-height: 1.45; }
.classifica-page .classifica-intro__visual { margin: 0; }
.classifica-page .classifica-intro__visual img { display: block; width: 100%; aspect-ratio: 1.1 / 1; border: 5px solid #000; object-fit: cover; object-position: center; box-shadow: 1rem 1rem 0 var(--classifica-lilac); }
.classifica-page .classifica-intro__visual figcaption { margin-top: 1.25rem; font-size: .95rem; line-height: 1.35; }
.classifica-page .classifica-button { display: inline-flex; min-height: 3.5rem; align-items: center; justify-content: center; padding: .8rem 1.35rem; border: 3px solid #000; border-radius: 999px; font-size: 1rem; font-weight: 700; line-height: 1.1; text-align: center; text-decoration: none; transition: transform 160ms ease, background-color 160ms ease, color 160ms ease; }
.classifica-page .classifica-button:hover { transform: translateY(-3px); }
.classifica-page .classifica-button:focus-visible { outline: 3px solid currentColor; outline-offset: 4px; }
.classifica-page .classifica-button--dark { background: #000; color: #fff; }
.classifica-page .classifica-button--light { background: #fff; color: #000; }
.classifica-page .classifica-button--outline { background: transparent; color: #000; }
.classifica-page .classifica-method { display: grid; grid-template-columns: minmax(0, 1.2fr) minmax(220px, .55fr); gap: 3rem clamp(2rem, 8vw, 10rem); background: var(--classifica-lilac); }
.classifica-page .classifica-method__intro { max-width: 680px; }
.classifica-page .classifica-method h2,
.classifica-page .classifica-section-heading h2,
.classifica-page .classifica-taxonomy h2,
.classifica-page .classifica-note h2 { margin: 0; color: var(--classifica-ink); font-family: "Jersey 10", Impact, "Arial Black", sans-serif; font-size: clamp(2.6rem, 5.4vw, 6rem); font-weight: 400; line-height: .96; text-wrap: balance; }
.classifica-page .classifica-method__intro > p:last-child,
.classifica-page .classifica-section-heading > p:last-child,
.classifica-page .classifica-taxonomy__lead > p:last-child,
.classifica-page .classifica-note__copy > p:last-child { max-width: 600px; margin: 1.5rem 0 0; font-size: 1.14rem; line-height: 1.48; }
.classifica-page .classifica-method__sidebar { align-self: start; padding: 1.5rem; border: 3px solid #000; background: #fff; box-shadow: .75rem .75rem 0 #000; }
.classifica-page .classifica-method__number { display: block; margin-bottom: 2.75rem; font-size: 2.2rem; font-weight: 700; }
.classifica-page .classifica-method__sidebar p { margin: 0; font-size: 1.05rem; line-height: 1.4; }
.classifica-page .classifica-method__grid { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.classifica-page .classifica-method__card { min-height: 220px; padding: 1.4rem; border-top: 5px solid var(--classifica-blue); background: #fff; }
.classifica-page .classifica-method__card > span { display: block; margin-bottom: 2rem; color: var(--classifica-blue); font-size: .9rem; font-weight: 700; letter-spacing: .1em; }
.classifica-page .classifica-method__card h3 { margin: 0 0 .75rem; font-size: 1.3rem; line-height: 1.1; }
.classifica-page .classifica-method__card p { margin: 0; font-size: .98rem; line-height: 1.4; }
.classifica-page .classifica-featured { background: var(--classifica-ink); color: #fff; }
.classifica-page .classifica-section-heading { max-width: 760px; margin-bottom: 3.5rem; }
.classifica-page .classifica-section-heading h2 { color: inherit; }
.classifica-page .classifica-section-heading > p:last-child { color: inherit; }
.classifica-page .classifica-featured__grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 1.25rem; max-width: 1500px; margin-inline: auto; }
.classifica-page .classifica-feature-card { display: flex; min-width: 0; min-height: 600px; flex-direction: column; padding: 1.25rem; border: 3px solid #000; color: #000; }
.classifica-page .classifica-feature-card--violet { background: #b13faf; }
.classifica-page .classifica-feature-card--pink { background: #be5abb; }
.classifica-page .classifica-feature-card--lime { background: var(--classifica-lime); }
.classifica-page .classifica-feature-card__rank { display: flex; min-height: 3rem; align-items: center; gap: .75rem; margin: -1.25rem -1.25rem 1.25rem; padding: .75rem 1.25rem; border-bottom: 3px solid #000; background: #fff; font-size: 1.3rem; font-weight: 700; }
.classifica-page .classifica-feature-card__rank span { font-size: .9rem; font-weight: 400; }
.classifica-page .classifica-feature-card__image-link { display: block; border: 3px solid #000; }
.classifica-page .classifica-feature-card__image-link:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
.classifica-page .classifica-feature-card__image-link img { display: block; width: 100%; aspect-ratio: 1.6 / 1; object-fit: cover; }
.classifica-page .classifica-feature-card h3 { margin: 1.25rem 0 .35rem; font-size: 1.65rem; line-height: 1.1; }
.classifica-page .classifica-feature-card p { margin: 0 0 .8rem; font-size: 1rem; line-height: 1.35; }
.classifica-page .classifica-feature-card .classifica-feature-card__tags { font-weight: 700; }
.classifica-page .classifica-feature-card .classifica-button { width: 100%; margin-top: auto; }
.classifica-page .classifica-directory { background: #fff; }
.classifica-page .classifica-section-heading--directory { max-width: 870px; }
.classifica-page .classifica-directory__list { display: grid; gap: .8rem; max-width: 1500px; margin-inline: auto; }
.classifica-page .classifica-directory-row { display: grid; grid-template-columns: minmax(170px, 1fr) minmax(140px, 1.1fr) minmax(210px, 1.5fr) minmax(130px, .8fr) minmax(120px, .65fr); gap: 1.2rem; align-items: center; padding: 1rem; border: 2px solid #000; background: #cf5bb5; }
.classifica-page .classifica-directory-row:nth-child(even) { background: #d9c9ff; }
.classifica-page .classifica-directory-row__thumb { display: block; border: 2px solid #000; }
.classifica-page .classifica-directory-row__thumb:focus-visible { outline: 3px solid var(--classifica-blue); outline-offset: 3px; }
.classifica-page .classifica-directory-row__thumb img { display: block; width: 100%; aspect-ratio: 1.55 / 1; object-fit: cover; }
.classifica-page .classifica-directory-row__identity h3 { margin: .75rem 0 .45rem; font-size: 1.35rem; line-height: 1.05; }
.classifica-page .classifica-directory-row__identity p,
.classifica-page .classifica-directory-row__description,
.classifica-page .classifica-directory-row__details { margin: 0; font-size: .98rem; line-height: 1.35; }
.classifica-page .classifica-directory-row__identity p { font-weight: 700; }
.classifica-page .classifica-directory-row__details { font-size: .9rem; }
.classifica-page .classifica-taxonomy { display: grid; grid-template-columns: minmax(0, 1fr) minmax(280px, .8fr); gap: 3rem clamp(2rem, 9vw, 10rem); align-items: start; background: var(--classifica-lime); }
.classifica-page .classifica-taxonomy__lead { max-width: 690px; }
.classifica-page .classifica-taxonomy__groups { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 1rem; }
.classifica-page .classifica-taxonomy__group { padding: 1.5rem; border: 3px solid #000; background: #fff; }
.classifica-page .classifica-taxonomy__group h3 { margin: 0 0 1rem; font-size: 1.5rem; }
.classifica-page .classifica-taxonomy__group ul { display: flex; flex-wrap: wrap; gap: .45rem; margin: 0; padding: 0; list-style: none; }
.classifica-page .classifica-taxonomy__group li { padding: .45rem .7rem; border: 1px solid #000; border-radius: 999px; font-size: .9rem; }
.classifica-page .classifica-taxonomy__image { grid-column: 1 / -1; max-width: 800px; margin: 0 auto; }
.classifica-page .classifica-taxonomy__image img { display: block; width: 100%; aspect-ratio: 2 / 1; border: 4px solid #000; object-fit: cover; object-position: center 42%; }
.classifica-page .classifica-destinations { background: var(--classifica-pink); }
.classifica-page .classifica-destinations__grid { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 1rem; }
.classifica-page .classifica-destination-card { display: grid; min-height: 190px; grid-template-rows: auto 1fr auto auto; gap: .65rem; padding: 1.3rem; border: 3px solid #000; background: #fff; text-decoration: none; transition: transform 160ms ease, background-color 160ms ease; }
.classifica-page .classifica-destination-card:hover { background: var(--classifica-lilac); transform: translateY(-4px); }
.classifica-page .classifica-destination-card:focus-visible { outline: 3px solid #fff; outline-offset: 4px; }
.classifica-page .classifica-destination-card span { font-size: .9rem; font-weight: 700; }
.classifica-page .classifica-destination-card strong { align-self: center; font-size: 1.3rem; line-height: 1.05; }
.classifica-page .classifica-destination-card em { font-size: .95rem; font-style: normal; }
.classifica-page .classifica-destination-card b { justify-self: end; font-size: 1.5rem; }
.classifica-page .classifica-note { display: grid; grid-template-columns: auto minmax(0, 1fr) auto; gap: clamp(1.5rem, 4vw, 4rem); align-items: center; background: #fff; }
.classifica-page .classifica-note__mark { display: grid; width: 5rem; height: 5rem; place-items: center; border: 4px solid #000; border-radius: 50%; background: var(--classifica-blue); color: #fff; font-family: "Jersey 10", Impact, sans-serif; font-size: 3rem; line-height: 1; }
.classifica-page .classifica-note__copy { max-width: 850px; }
.classifica-page .classifica-note__copy .classifica-kicker { margin-bottom: .75rem; color: var(--classifica-blue); }
.classifica-page .classifica-note__copy h2 { font-size: clamp(2.3rem, 4vw, 4.5rem); }
.classifica-page .classifica-note__copy > p:last-child { margin-top: 1rem; }
.classifica-page .footer-settings { cursor: pointer; font: inherit; }
.classifica-page .footer-settings:hover, .classifica-page .footer-settings:focus-visible { color: var(--classifica-blue); }
.classifica-page .classifica-consent-panel { position: fixed; z-index: 1100; inset: 0; display: grid; place-items: center; padding: 1rem; background: rgb(8 8 8 / 58%); }
.classifica-page .classifica-consent-panel[hidden] { display: none; }
.classifica-page .classifica-consent-panel__card { position: relative; width: min(100%, 530px); padding: clamp(1.5rem, 4vw, 3rem); border: 3px solid #000; background: #fff; color: #000; box-shadow: .7rem .7rem 0 var(--classifica-lime); }
.classifica-page .classifica-consent-panel__card h2 { margin: 0 0 1rem; font-family: "Jersey 10", Impact, sans-serif; font-size: clamp(2rem, 4vw, 3.4rem); font-weight: 400; line-height: .95; }
.classifica-page .classifica-consent-panel__card p { margin: 0; font-size: 1rem; line-height: 1.4; }
.classifica-page .classifica-consent-panel__close { position: absolute; top: .75rem; right: .75rem; width: 2.2rem; height: 2.2rem; border: 2px solid #000; background: #fff; cursor: pointer; font-size: 1.4rem; line-height: 1; }
.classifica-page .classifica-consent-panel__choice { display: flex; gap: .65rem; align-items: center; margin: 1.5rem 0; font-weight: 700; }
.classifica-page .classifica-consent-panel__choice input { accent-color: var(--classifica-blue); }
.classifica-page .classifica-consent-panel__actions { display: flex; justify-content: flex-end; }
.classifica-page .classifica-consent-panel__actions button { min-height: 3rem; padding: .65rem 1rem; border: 2px solid #000; background: var(--classifica-pink); color: #000; cursor: pointer; font: inherit; font-weight: 700; }
.classifica-page .classifica-consent-panel button:focus-visible, .classifica-page .footer-settings:focus-visible { outline: 3px solid var(--classifica-blue); outline-offset: 3px; }

@media (max-width: 1050px) {
  .classifica-page .classifica-featured__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .classifica-page .classifica-feature-card:last-child { grid-column: 1 / -1; max-width: calc(50% - .625rem); justify-self: center; }
  .classifica-page .classifica-method__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .classifica-page .classifica-directory-row { grid-template-columns: minmax(130px, .8fr) minmax(150px, 1fr) minmax(200px, 1.4fr) minmax(130px, .8fr); }
  .classifica-page .classifica-directory-row .classifica-button { grid-column: 3 / -1; justify-self: end; min-width: 150px; }
  .classifica-page .classifica-destinations__grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .classifica-page .classifica-shell-header, .classifica-page .classifica-shell-header [data-homepage-region-content], .classifica-page .classifica-shell-header .hero-header { min-height: 86px; }
  .classifica-page .classifica-intro, .classifica-page .classifica-method, .classifica-page .classifica-featured, .classifica-page .classifica-directory, .classifica-page .classifica-taxonomy, .classifica-page .classifica-destinations, .classifica-page .classifica-note { padding: 4.25rem 1.1rem; }
  .classifica-page .classifica-intro__content, .classifica-page .classifica-method, .classifica-page .classifica-taxonomy { grid-template-columns: 1fr; }
  .classifica-page .classifica-intro__visual { max-width: 620px; margin-inline: auto; }
  .classifica-page .classifica-intro__visual img { box-shadow: .65rem .65rem 0 var(--classifica-lilac); }
  .classifica-page .classifica-method__sidebar { max-width: 420px; }
  .classifica-page .classifica-featured__grid, .classifica-page .classifica-method__grid { grid-template-columns: 1fr; }
  .classifica-page .classifica-feature-card:last-child { grid-column: auto; max-width: none; }
  .classifica-page .classifica-feature-card { min-height: 0; }
  .classifica-page .classifica-directory-row { display: grid; grid-template-columns: 108px minmax(0, 1fr); gap: .9rem; }
  .classifica-page .classifica-directory-row__thumb { grid-row: span 2; }
  .classifica-page .classifica-directory-row__identity h3 { margin-top: 0; }
  .classifica-page .classifica-directory-row__description, .classifica-page .classifica-directory-row__details { grid-column: 1 / -1; }
  .classifica-page .classifica-directory-row .classifica-button { grid-column: 1 / -1; width: 100%; }
  .classifica-page .classifica-taxonomy__groups, .classifica-page .classifica-destinations__grid { grid-template-columns: 1fr; }
  .classifica-page .classifica-taxonomy__image { grid-column: auto; }
  .classifica-page .classifica-note { grid-template-columns: 1fr; }
  .classifica-page .classifica-note .classifica-button { justify-self: start; }
  .classifica-page [data-consent-layout="split"] { padding: 1rem; }
  .classifica-page [data-consent-layout="split"] aside { width: 100%; margin-left: 0; }
}
@media (max-width: 420px) {
  .classifica-page .classifica-intro h1 { font-size: clamp(3rem, 16vw, 4.2rem); }
  .classifica-page .classifica-button { width: 100%; }
  .classifica-page .classifica-directory-row { grid-template-columns: 90px minmax(0, 1fr); }
  .classifica-page .classifica-consent-panel__actions button { width: 100%; }
}
