/* ==========================================================================
   Event landing — riconciliazione con base.html

   Questa pagina estende base.html, che carica {% tailwind_css %} prima di
   extra_css. Il foglio compilato da theme/static_src/src/styles.css impone
   alcune regole globali incompatibili con l'impianto della landing: qui si
   neutralizzano, e solo su questa pagina.

   Tutto il resto (font-family, font-size e line-height del body, le misure
   pixel di h1-h6) e' gia' ridichiarato da event-landing.css, che carica dopo.
   ========================================================================== */

body.event-landing {
    /* styles.css mette touch-action: none sul body: senza questo la pagina
       non scorre su mobile. Stesso rimedio di .pitch-page / .contact-page. */
    touch-action: auto;

    /* styles.css mette font-weight: 300; Instrument Sans e' caricato 400..600,
       quindi il 300 verrebbe sintetizzato dal browser. */
    font-weight: 400;

    /* Valore esplicito e non `revert` perche' `* { cursor: none }` colpisce
       anche <html>, che un selettore scoped su body non puo' raggiungere:
       senza questo i discendenti erediterebbero il `none` da la'. */
    cursor: auto;
}

/* `revert` scarta le dichiarazioni d'autore (incluso `* { cursor: none }`, che
   styles.css usa per il cursore custom sopra i 1025px) e torna allo UA
   stylesheet: <a href> riprende la mano, il testo il cursore di testo, il
   resto eredita l'auto del body. Con `auto` al posto di `revert` i link
   restavano senza pointer — ed e' proprio quello su cui la landing conta,
   perche' non dichiara nessuna regola cursor: il commento su .button in
   event-landing.css lo dice esplicitamente. */
body.event-landing * {
    cursor: revert;
}

/* `* { cursor: none }` colpisce anche <html>, che nessun selettore scoped su
   body puo' raggiungere. In pratica non si vede — il body copre il viewport,
   ha min-height 100dvh e un background — ma con questa regola i cursori della
   pagina combaciano esattamente con quelli dell'originale. Se :has() non e'
   supportato la regola viene ignorata e resta solo il caso invisibile. */
html:has(body.event-landing) {
    cursor: auto;
}

/* I due .follower di base.html stanno fuori dai block, quindi vengono
   renderizzati anche qui: su una pagina volutamente non brandizzata il
   pallino che segue il mouse non ha senso. */
body.event-landing .follower {
    display: none;
}
