/* ==========================================================================
   ATLAS ESTATE — VARIANTI DI PAGINA
   Sezioni che vivono fuori dalla home: landing proprietari, funnel, pagine
   editoriali, schede, pagine legali.
   Regola invariata: nessuna sezione adiacente ripete lo stesso scheletro.
   ========================================================================== */

/* --------------------------------------------------------------------------
   BREADCRUMB
   Markup e dati strutturati escono dalla stessa fonte in shell.mjs, cosi non
   possono divergere.
   -------------------------------------------------------------------------- */
.ae-crumbs{
  padding-block: calc(var(--header-h) + var(--sp-6)) 0;
}
.ae-crumbs ol{
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-2);
  align-items: center;
  width: 100%;
  max-width: var(--container);
  margin-inline: auto;
  padding-inline: var(--gutter);
  list-style: none;
  font-size: var(--fs-label);
  letter-spacing: .04em;
  color: var(--text-muted);
}
.ae-crumbs li + li::before{
  content: "/";
  margin-inline-end: var(--sp-2);
  color: var(--border-interactive);
}
.ae-crumbs a{ text-decoration: none; color: var(--text-secondary); }
.ae-crumbs a:hover{ color: var(--accent-text); }
.ae-crumbs [aria-current]{ color: var(--text-primary); }

@media (max-width: 768px){
  .ae-crumbs{ padding-block-start: calc(var(--header-h-sm) + var(--sp-5)); }
}

/* --------------------------------------------------------------------------
   INTESTAZIONE DI PAGINA
   Due colonne asimmetriche: il testo porta il messaggio, la colonna laterale
   porta i fatti verificabili. Sono due cose diverse e vanno lette come tali.
   -------------------------------------------------------------------------- */
.s-lead{ padding-block: var(--sp-8) var(--section-y); }

.s-lead__grid{
  display: grid;
  gap: var(--sp-7);
  grid-template-columns: 1fr;
  align-items: start;
}
@media (min-width: 980px){
  .s-lead__grid{ grid-template-columns: 1.5fr 1fr; gap: var(--sp-9); }
}

.s-lead__text h1{
  margin-block: var(--sp-4) var(--sp-5);
  max-width: 17ch;
}
.s-lead__text .ae-lead{ margin-block-end: var(--sp-6); }
.s-lead__text--wide{ max-width: 54rem; }
.s-lead__text--wide h1{ max-width: 20ch; }

.s-lead__aside{
  padding: var(--sp-6);
  border: var(--bw) solid var(--border);
  border-radius: var(--r-sm);
  background: var(--panel);
}

/* Elenco di fatti. Non e una scheda decorativa: contiene i dati verificabili,
   ed e la ragione per cui un proprietario si fida. */
.ae-facts{ display: grid; gap: var(--sp-5); }
.ae-facts > div{ display: grid; gap: var(--sp-1); }
.ae-facts dt{
  font-size: var(--fs-label);
  font-weight: var(--fw-medium);
  letter-spacing: var(--ls-label);
  text-transform: uppercase;
  color: var(--text-muted);
}
.ae-facts dd{ margin: 0; font-size: var(--fs-small); color: var(--text-primary); }
.ae-facts a{ color: var(--accent-text); text-decoration: none; }
.ae-facts a:hover{ text-decoration: underline; }
.ae-facts--legal{ margin-block: var(--sp-6); }
@media (min-width: 680px){
  .ae-facts--legal{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-5) var(--sp-7); }
}

/* --------------------------------------------------------------------------
   TRASPARENZA
   -------------------------------------------------------------------------- */
.s-trust{
  background: var(--canvas-alt);
  padding-block: var(--section-y-lg);
}
.s-trust__grid{
  display: grid;
  gap: var(--sp-7);
  grid-template-columns: 1fr;
  align-items: start;
}
@media (min-width: 980px){
  .s-trust__grid{ grid-template-columns: 1fr 1fr; gap: var(--sp-9); }
}
.s-trust h2{ margin-block: var(--sp-4) var(--sp-5); }
.s-trust p + p{ margin-block-start: var(--sp-4); }
.s-trust p{ color: var(--text-secondary); }

.s-trust__list{ display: grid; gap: var(--sp-5); list-style: none; padding: 0; margin: 0; }
.s-trust__list li{
  padding-block-start: var(--sp-4);
  border-block-start: var(--bw) solid var(--border-gold);
  font-size: var(--fs-small);
  color: var(--text-secondary);
}
.s-trust__list strong{ color: var(--text-primary); font-weight: var(--fw-semi); }

/* --------------------------------------------------------------------------
   PROCESSO IN PAGINA
   Verticale e numerato: qui si legge, non si scorre. Diverso dalla timeline
   della home, che e orizzontale.
   -------------------------------------------------------------------------- */
.s-steps{ padding-block: var(--section-y-lg); }
.s-steps__list{ display: grid; gap: var(--sp-7); list-style: none; padding: 0; margin: 0; }

.s-steps__item{
  display: grid;
  gap: var(--sp-4);
  grid-template-columns: 1fr;
  padding-block-start: var(--sp-5);
  border-block-start: var(--bw) solid var(--border-gold);
}
@media (min-width: 760px){
  .s-steps__item{ grid-template-columns: 6rem 1fr; gap: var(--sp-7); }
}
.s-steps__n{
  font-family: var(--font-display);
  font-size: var(--fs-h3);
  color: var(--accent-text);
  line-height: 1;
  font-variant-numeric: tabular-nums;
}
.s-steps__item h2{ font-size: var(--fs-h3); margin-block-end: var(--sp-3); }
.s-steps__item p{ color: var(--text-secondary); max-width: 62ch; }

/* --------------------------------------------------------------------------
   SERVIZI
   Ogni voce e una riga: titolo e descrizione a sinistra, elenco a destra.
   -------------------------------------------------------------------------- */
.s-services{ padding-block: var(--section-y-lg); }
.s-services__item{
  display: grid;
  gap: var(--sp-4);
  grid-template-columns: 1fr;
  padding-block: var(--sp-6);
  border-block-start: var(--bw) solid var(--border);
}
.s-services__item:last-child{ border-block-end: var(--bw) solid var(--border); }
@media (min-width: 900px){
  .s-services__item{ grid-template-columns: 1.2fr 1fr; gap: var(--sp-8); align-items: start; }
}
.s-services__head h2{ font-size: var(--fs-h3); margin-block-end: var(--sp-3); }
.s-services__head p{ color: var(--text-secondary); font-size: var(--fs-small); max-width: 46ch; }
.s-services__list{ display: grid; gap: var(--sp-3); list-style: none; padding: 0; margin: 0; }
.s-services__list li{
  padding-inline-start: var(--sp-5);
  position: relative;
  font-size: var(--fs-small);
  color: var(--text-secondary);
}
.s-services__list li::before{
  content: "";
  position: absolute;
  inset-block-start: .62em;
  inset-inline-start: 0;
  width: 10px; height: 1px;
  background: var(--accent);
}

/* --------------------------------------------------------------------------
   SEZIONI DI SUPPORTO
   -------------------------------------------------------------------------- */
.s-split{ padding-block: var(--section-y); background: var(--canvas-alt); }
.s-split__note{
  margin-block-start: var(--sp-6);
  font-size: var(--fs-small);
  color: var(--text-muted);
  max-width: 62ch;
}

.s-standard{ padding-block: var(--section-y-lg); }

.s-prelaunch{
  padding-block: var(--section-y-lg);
  background: var(--canvas-alt);
  text-align: center;
}
.s-prelaunch h2{ margin-block: var(--sp-5) var(--sp-5); margin-inline: auto; }
.s-prelaunch p{ margin-inline: auto; }
.s-prelaunch .ae-lead{ margin-block-end: var(--sp-4); }
.s-prelaunch .ae-btn-row{ justify-content: center; margin-block-start: var(--sp-6); }

/* --------------------------------------------------------------------------
   EDITORIALE
   -------------------------------------------------------------------------- */
.s-article{ padding-block: var(--section-y); }
.s-article h2{
  margin-block: var(--sp-8) var(--sp-4);
  font-size: var(--fs-h3);
}
.s-article h2:first-child{ margin-block-start: 0; }
.s-article p{ color: var(--text-secondary); margin-block-end: var(--sp-4); }
.s-article a{ color: var(--accent-text); }

.s-editorial{ padding-block: var(--section-y-lg); background: var(--canvas-alt); }
.s-editorial h2{ margin-block: var(--sp-4) var(--sp-4); }
.s-editorial__planned{
  display: grid;
  gap: var(--sp-6);
  margin-block: var(--sp-7) var(--sp-6);
  list-style: none;
  padding: 0;
  counter-reset: art;
}
.s-editorial__planned li{
  padding-block-start: var(--sp-5);
  border-block-start: var(--bw) solid var(--border-gold);
  counter-increment: art;
  position: relative;
}
.s-editorial__planned li::before{
  content: "0" counter(art);
  position: absolute;
  inset-block-start: var(--sp-5);
  inset-inline-end: 0;
  font-family: var(--font-display);
  font-size: var(--fs-small);
  color: var(--text-muted);
}
.s-editorial__planned h3{ font-size: var(--fs-h4); margin-block-end: var(--sp-2); padding-inline-end: 3rem; }
.s-editorial__planned p{ color: var(--text-secondary); font-size: var(--fs-small); }
.s-editorial__note{ font-size: var(--fs-small); color: var(--text-muted); max-width: 62ch; }

/* --------------------------------------------------------------------------
   FUNNEL DI VALUTAZIONE
   La conversione primaria. Colonna singola, niente distrazioni, niente CTA
   sticky: qui l azione e gia in corso.
   -------------------------------------------------------------------------- */
.s-funnel{ padding-block: var(--sp-6) var(--section-y-lg); }
.s-funnel__head{ margin-block-end: var(--sp-6); }

/* Qui la headline scende di una taglia rispetto alle altre pagine, e non e
   una scelta estetica: alla scala dell hero il primo passo del modulo
   finiva sotto la piega. Su una pagina di conversione la cosa che deve
   vedersi e il modulo, non il titolo. */
.s-funnel__head h1{
  font-size: var(--fs-h2);
  margin-block: var(--sp-3) var(--sp-4);
  max-width: 20ch;
}
.s-funnel__head .ae-lead{ font-size: var(--fs-body); }

.s-funnel .ae-progress{ margin-block-end: var(--sp-5); }

.s-funnel__form{
  padding: var(--sp-7) var(--sp-6);
  background: var(--panel);
  border: var(--bw) solid var(--border);
  border-radius: var(--r-md);
}
@media (max-width: 560px){
  .s-funnel__form{ padding: var(--sp-6) var(--sp-4); }
}

.s-funnel__step{
  border: 0;
  padding: 0;
  margin: 0;
  display: grid;
  gap: var(--sp-6);
}
.s-funnel__step legend{
  font-family: var(--font-display);
  font-size: var(--fs-h3);
  font-weight: var(--fw-medium);
  line-height: var(--lh-heading);
  margin-block-end: var(--sp-5);
  padding: 0;
  outline: none;
  display: flex;
  align-items: baseline;
  gap: var(--sp-3);
}
.s-funnel__stepn{
  font-family: var(--font-ui);
  font-size: var(--fs-label);
  font-weight: var(--fw-medium);
  letter-spacing: var(--ls-label);
  color: var(--accent-text);
  font-variant-numeric: tabular-nums;
}

/* Senza JavaScript i cinque passi restano tutti visibili e il modulo si
   invia comunque: la separazione fra loro deve leggersi lo stesso. */
.s-funnel__form:not([data-enhanced]) .s-funnel__step + .s-funnel__step{
  margin-block-start: var(--sp-8);
  padding-block-start: var(--sp-7);
  border-block-start: var(--bw) solid var(--border);
}

.s-funnel__row{
  display: grid;
  gap: var(--sp-5);
  grid-template-columns: 1fr;
}
@media (min-width: 560px){
  .s-funnel__row{ grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

.s-funnel__nav{
  display: flex;
  flex-wrap: wrap;
  gap: var(--sp-4);
  align-items: center;
  margin-block-start: var(--sp-7);
  padding-block-start: var(--sp-6);
  border-block-start: var(--bw) solid var(--border);
}
.s-funnel__nav .ae-btn--primary{ margin-inline-start: auto; }
@media (max-width: 480px){
  .s-funnel__nav{ flex-direction: column-reverse; align-items: stretch; }
  .s-funnel__nav .ae-btn{ width: 100%; margin-inline-start: 0; }
}

.s-funnel__note{
  margin-block-start: var(--sp-5);
  font-size: var(--fs-label);
  color: var(--text-muted);
}
.s-funnel__fatal{ margin-block-start: var(--sp-4); }

.s-funnel__reassure{
  margin-block-start: var(--sp-7);
  padding-block-start: var(--sp-6);
  border-block-start: var(--bw) solid var(--border-gold);
}
.s-funnel__reassure h2{ font-size: var(--fs-h4); margin-block-end: var(--sp-3); }
.s-funnel__reassure p{ color: var(--text-secondary); font-size: var(--fs-small); }
.s-funnel__legal{
  margin-block-start: var(--sp-4);
  color: var(--text-muted) !important;
  font-size: var(--fs-label) !important;
}

button[aria-busy="true"]{ opacity: .72; pointer-events: none; }

/* --------------------------------------------------------------------------
   CONFERMA
   Non un "Grazie" e via: si dice cosa succede adesso.
   -------------------------------------------------------------------------- */
.s-thanks{
  padding-block: calc(var(--header-h) + var(--sp-9)) var(--section-y-lg);
  position: relative;
}
.s-thanks__mark{
  width: 64px;
  aspect-ratio: 4 / 5;
  margin-block-end: var(--sp-6);
  border: 1px solid var(--accent);
  border-block-end: 0;
  border-radius: var(--r-arch);
  opacity: .5;
}
.s-thanks h1{ margin-block: var(--sp-4) var(--sp-5); }
.s-thanks__steps{
  display: grid;
  gap: var(--sp-6);
  margin-block: var(--sp-8) var(--sp-7);
  list-style: none;
  padding: 0;
}
@media (min-width: 760px){
  .s-thanks__steps{ grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sp-5); }
}
.s-thanks__steps li{
  padding-block-start: var(--sp-4);
  border-block-start: var(--bw) solid var(--border-gold);
}
.s-thanks__n{
  display: block;
  font-family: var(--font-ui);
  font-size: var(--fs-label);
  letter-spacing: var(--ls-label);
  color: var(--accent-text);
  margin-block-end: var(--sp-2);
}
.s-thanks__steps h2{ font-size: var(--fs-h4); margin-block-end: var(--sp-2); }
.s-thanks__steps p{ color: var(--text-secondary); font-size: var(--fs-small); }
.s-thanks__meanwhile{ color: var(--text-secondary); font-size: var(--fs-small); }
.s-thanks__meanwhile a{ color: var(--accent-text); }

/* --------------------------------------------------------------------------
   PAGINE LEGALI
   Su avorio: qui si legge e basta.
   -------------------------------------------------------------------------- */
.s-legal{ padding-block: var(--sp-8) var(--section-y-lg); }
.s-legal h1{ margin-block-end: var(--sp-4); }
.s-legal h2{
  font-size: var(--fs-h3);
  margin-block: var(--sp-8) var(--sp-4);
}
.s-legal h3{ font-size: var(--fs-h4); margin-block: var(--sp-6) var(--sp-3); }
.s-legal p{ color: var(--text-secondary); margin-block-end: var(--sp-4); }
.s-legal a{ color: var(--accent-text); }
.s-legal code{
  font-family: ui-monospace, SFMono-Regular, Menlo, monospace;
  font-size: .92em;
  padding: .1em .35em;
  background: var(--canvas-alt);
  border-radius: var(--r-xs);
}
.s-legal__meta{ font-size: var(--fs-label); color: var(--text-muted); }

/* Il riquadro che dice che il testo e una bozza. Deve dare fastidio:
   e li per essere sostituito, non per restare. */
.s-legal__warning{
  margin-block: var(--sp-6);
  padding: var(--sp-5);
  border: 1px dashed var(--error);
  border-radius: var(--r-sm);
  background: rgba(179,57,46,.06);
  color: var(--text-primary);
  font-size: var(--fs-small);
}
.s-legal__warning strong{ display: block; margin-block-end: var(--sp-2); color: var(--error); }

/* --------------------------------------------------------------------------
   FAQ COME PAGINA INTERA
   -------------------------------------------------------------------------- */
.s-faq--page{ padding-block: var(--sp-7) var(--section-y-lg); }
.s-faq--page h1{ margin-block: var(--sp-4) var(--sp-5); }
.s-faq--page .s-faq__aside p{ margin-block-end: var(--sp-6); }

/* Nota del team fuori dalla griglia dei ritratti */
.s-team__note{
  margin-block-start: var(--sp-7);
  font-size: var(--fs-small);
  color: var(--text-muted);
  max-width: 62ch;
}

/* --------------------------------------------------------------------------
   ATLAS HOSPITALITY SERVICES · LINEN
   Il payoff del verticale e il ciclo. Vedi DECISIONS.md D-15.
   -------------------------------------------------------------------------- */

/* Il claim sta da solo perche e l idea intera in due righe. */
.s-loopclaim{
  padding-block: var(--section-y);
  background: var(--canvas-alt);
}
.s-loopclaim__line{
  font-family: var(--font-display);
  font-size: clamp(1.9rem, 1.2rem + 3vw, 3.4rem);
  font-weight: var(--fw-medium);
  line-height: 1.12;
  letter-spacing: var(--ls-h2);
  max-width: none;
}
.s-loopclaim__line--accent{ color: var(--accent-text); }

/* Il ciclo. Non e una lista: e un anello, e la numerazione torna al punto di
   partenza. La linea d oro corre lungo i sei passaggi e si chiude. */
.s-loop{ padding-block: var(--section-y-lg); position: relative; }

.s-loop__list{
  display: grid;
  gap: var(--sp-6);
  grid-template-columns: 1fr;
  list-style: none;
  padding: 0;
  margin: 0;
  position: relative;
}
@media (min-width: 760px){
  .s-loop__list{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-6) var(--sp-7); }
}
@media (min-width: 1180px){
  .s-loop__list{ grid-template-columns: repeat(3, minmax(0, 1fr)); }
}

.s-loop__step{
  display: grid;
  grid-template-columns: auto 1fr;
  gap: var(--sp-4);
  align-items: start;
  padding-block-start: var(--sp-5);
  border-block-start: var(--bw) solid var(--border);
  position: relative;
}
/* La porzione d oro sul bordo alto avanza con lo scroll della sezione:
   e la stessa linea firma, qui in sei tratti che chiudono il ciclo. */
.s-loop__step::before{
  content: "";
  position: absolute;
  inset-block-start: -1px;
  inset-inline-start: 0;
  width: 100%;
  height: 1px;
  background: var(--accent);
  transform: scaleX(var(--draw, 0));
  transform-origin: left;
  transition: transform 800ms var(--ease-cine);
}
.s-loop__step:nth-child(2)::before{ transition-delay: 90ms; }
.s-loop__step:nth-child(3)::before{ transition-delay: 180ms; }
.s-loop__step:nth-child(4)::before{ transition-delay: 270ms; }
.s-loop__step:nth-child(5)::before{ transition-delay: 360ms; }
.s-loop__step:nth-child(6)::before{ transition-delay: 450ms; }

/* L ultimo passaggio e il primo: si chiude il cerchio, e si vede. */
.s-loop__step:last-child{ border-block-start-color: var(--border-gold); }
.s-loop__step:last-child .s-loop__n{ color: var(--accent); }

.s-loop__n{
  font-family: var(--font-display);
  font-size: var(--fs-h4);
  color: var(--accent-text);
  line-height: 1.2;
  font-variant-numeric: tabular-nums;
}
.s-loop__step h3{
  font-family: var(--font-display);
  font-size: var(--fs-h4);
  font-weight: var(--fw-medium);
  margin-block-end: var(--sp-2);
}
.s-loop__step p{ color: var(--text-secondary); font-size: var(--fs-small); max-width: 40ch; }

.s-loop__close{
  margin-block-start: var(--sp-8);
  font-family: var(--font-display);
  font-size: var(--fs-h4);
  color: var(--text-primary);
  text-align: center;
  max-width: 46ch;
  margin-inline: auto;
}

/* Il footer guadagna una colonna: Hospitality Services sta in posizione
   secondaria, mai in navigazione principale. */
@media (min-width: 1100px){
  .ae-footer__top{ grid-template-columns: 1.35fr repeat(4, minmax(0, 1fr)); }
}

/* --------------------------------------------------------------------------
   ARCHETIPI DI APERTURA
   Undici pagine su diciotto aprivano con la stessa identica sezione: occhiello
   dorato, H1 a sinistra, pannello dati a destra, fondo blu notte. Testi
   diversi, forma identica, e il visitatore che passa da una all'altra dal
   menu ha la sensazione di non essersi mosso.

   La differenza non puo venire dalle fotografie, che non esistono e per D-12
   non si inventano. Viene dalla FORMA: che cosa domina l'apertura, come sono
   disposti i dati, quanto e grande il titolo, di che colore e il fondo.

   Cinque archetipi, assegnati per ruolo della pagina, mai due uguali
   adiacenti nel menu. Nessuno di essi introduce nuovo contenuto: riorganizza
   quello che la pagina ha gia.
   -------------------------------------------------------------------------- */

/* 1 · CLAIM — la pagina che fa un'affermazione.
   Il titolo occupa la scena, i fatti scendono sotto come una fascia di
   riscontro invece di stare in una scheda a lato. */
.s-lead--claim .s-lead__grid{ grid-template-columns: 1fr; gap: var(--sp-7); }
.s-lead--claim .s-lead__text h1{
  font-size: clamp(2.7rem, 1.2rem + 5vw, 5.2rem);
  line-height: 1.02;
  max-width: 14ch;
}
.s-lead--claim .s-lead__text .ae-lead{ max-width: 46ch; }
.s-lead--claim .s-lead__aside{
  padding: var(--sp-5) 0 0;
  border: 0;
  border-block-start: var(--bw) solid var(--border-gold);
  background: none;
  border-radius: 0;
}
@media (min-width: 760px){
  .s-lead--claim .ae-facts{ grid-template-columns: repeat(3, minmax(0, 1fr)); gap: var(--sp-6); }
}

/* 2 · DOSSIER — la pagina che E un documento.
   Qui contano i dati, non il titolo: il record diventa una tabella rigata a
   piena larghezza e il titolo arretra. E la pagina della societa, e deve
   sembrare una visura, non una brochure. */
.s-lead--dossier .s-lead__grid{ grid-template-columns: 1fr; gap: var(--sp-6); }
.s-lead--dossier .s-lead__text h1{ font-size: var(--fs-h3); max-width: 24ch; }
.s-lead--dossier .s-lead__aside{
  padding: 0; border: 0; background: none; border-radius: 0;
}
.s-lead--dossier .ae-facts{ gap: 0; }
.s-lead--dossier .ae-facts > div{
  grid-template-columns: 1fr;
  gap: var(--sp-1);
  padding-block: var(--sp-4);
  border-block-start: 1px solid var(--border);
}
.s-lead--dossier .ae-facts > div:last-child{ border-block-end: 1px solid var(--border); }
@media (min-width: 720px){
  .s-lead--dossier .ae-facts > div{
    grid-template-columns: minmax(0, 15rem) 1fr;
    gap: var(--sp-5);
    align-items: baseline;
  }
}

/* 3 · CANALI — la pagina dei contatti.
   Chi arriva qui vuole scrivere, non leggere: i recapiti sono l'apertura, in
   righe grandi e toccabili, e il titolo sta sopra in una riga sola. */
.s-lead--canali .s-lead__grid{ grid-template-columns: 1fr; gap: var(--sp-6); }
.s-lead--canali .s-lead__text h1{ font-size: var(--fs-h2); max-width: 18ch; }
.s-lead--canali .s-lead__aside{
  padding: 0; border: 0; background: none; border-radius: 0;
}
.s-lead--canali .ae-facts{ gap: var(--sp-1); }
.s-lead--canali .ae-facts > div{
  padding: var(--sp-5) var(--sp-5) var(--sp-5) var(--sp-6);
  border: var(--bw) solid var(--border);
  border-radius: var(--r-sm);
  position: relative;
  transition: border-color var(--dur-ui) var(--ease-out);
}
.s-lead--canali .ae-facts > div::before{
  content: "";
  position: absolute;
  inset-block: var(--sp-5);
  inset-inline-start: 0;
  width: 2px;
  background: var(--accent);
  opacity: .5;
}
.s-lead--canali .ae-facts > div:hover{ border-color: var(--border-gold); }
.s-lead--canali .ae-facts dd{ font-size: var(--fs-lead); }
@media (min-width: 860px){
  .s-lead--canali .ae-facts{ grid-template-columns: repeat(2, minmax(0, 1fr)); gap: var(--sp-4); }
}

/* 4 · SCHEDA — il verticale hospitality.
   Non e la societa e non e una landing: e un servizio in attivazione, e si
   presenta come una scheda tecnica, dati a sinistra e titolo a destra. */
@media (min-width: 980px){
  .s-lead--scheda .s-lead__grid{ grid-template-columns: 1fr 1.4fr; }
  .s-lead--scheda .s-lead__aside{ order: -1; }
}
.s-lead--scheda .s-lead__aside{
  padding: var(--sp-5);
  border: 0;
  border-inline-start: 2px solid var(--border-gold);
  border-radius: 0;
  background: var(--panel-alt, var(--panel));
}
.s-lead--scheda .s-lead__text h1{ max-width: 20ch; }

/* 5 · EDITORIALE — le pagine che si leggono.
   Misura stretta, titolo centrato, filetto sopra e sotto. Sul fondo chiaro
   che queste pagine gia adottano, e un'altra cosa dal resto del sito. */
.s-lead--editoriale{ padding-block: var(--section-y) var(--sp-8); }
.s-lead--editoriale .s-lead__grid{ grid-template-columns: 1fr; justify-items: center; }
.s-lead--editoriale .s-lead__text{
  max-width: 34rem;
  text-align: center;
  border-block: 1px solid var(--border);
  padding-block: var(--sp-7);
}
.s-lead--editoriale .s-lead__text h1{
  max-width: none;
  font-size: clamp(2.2rem, 1.4rem + 2.6vw, 3.4rem);
  margin-inline: auto;
}
.s-lead--editoriale .s-lead__text .ae-lead{ margin-inline: auto; max-width: 44ch; }
.s-lead--editoriale .ae-eyebrow{ justify-content: center; }

/* Il filetto d'oro che apre la pagina. Un segno solo, diverso per archetipo:
   e il modo piu economico per dire "sei in un posto diverso" prima ancora
   che si legga il titolo. */
.s-lead--claim .ae-eyebrow::before   { width: 54px; }
.s-lead--dossier .ae-eyebrow::before { width: 14px; }
.s-lead--canali .ae-eyebrow::before  { width: 28px; }
.s-lead--scheda .ae-eyebrow::before  { width: 40px; }
