/* ===================================================
   TULÉAR — thème "Néon Sud" : jaune éclatant, noir profond, violet
   Chargé APRÈS tous les autres CSS. Tout est préfixé body.tul-neon.
   Pour revenir à l'ancien design : retirer la classe tul-neon du <body>
   (ou le <link> vers tulear-neon.css).
=================================================== */

body.tul-neon{
  --nx-yellow:#FFE600;
  --nx-yellow-2:#FFD000;
  --nx-black:#07060C;
  --nx-ink:#0E0B18;
  --nx-card:#15102A;
  --nx-violet:#7C3AED;
  --nx-violet-2:#A855F7;
  --nx-violet-deep:#2A0F55;
  --nx-text:#E9E4F7;
  --nx-muted:#B7ADD3;
  background:var(--nx-black);
  color:var(--nx-text);
}

/* ---------- Header ---------- */
body.tul-neon #navbar{
  background:rgba(7,6,12,.82) !important;
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(124,58,237,.45);
}
body.tul-neon #navbar .logo,
body.tul-neon #navbar nav a{color:#fff !important}
body.tul-neon #navbar .logo span{color:var(--nx-yellow) !important}
body.tul-neon #navbar nav a:hover{color:var(--nx-yellow) !important}

/* ---------- Hero ---------- */
body.tul-neon .tulear-hero{
  background:
    radial-gradient(900px 500px at 85% 10%, rgba(168,85,247,.55), transparent 60%),
    radial-gradient(700px 420px at 5% 100%, rgba(255,230,0,.22), transparent 60%),
    linear-gradient(135deg,#07060C 0%,#1B0B3A 55%,#07060C 100%);
}
body.tul-neon .tulear-hero::before{opacity:.35;mix-blend-mode:luminosity}
body.tul-neon .tulear-hero-scrim{
  background:linear-gradient(180deg,rgba(7,6,12,.35) 0%,rgba(7,6,12,.88) 100%);
}
body.tul-neon .tulear-hero-content .eyebrow,
body.tul-neon .eyebrow{
  color:#07060C !important;
  background:var(--nx-yellow) !important;
  border:0 !important;
  font-weight:700;
  letter-spacing:.14em;
  box-shadow:0 0 28px rgba(255,230,0,.45);
}
body.tul-neon .tulear-hero-content h1{
  background:linear-gradient(100deg,#fff 0%,var(--nx-yellow) 55%,var(--nx-violet-2) 100%);
  -webkit-background-clip:text;background-clip:text;
  -webkit-text-fill-color:transparent;
  text-shadow:none;
}
body.tul-neon .tulear-hero-content p{color:var(--nx-text)}
body.tul-neon .tulear-hero-tags span{
  background:rgba(124,58,237,.25);
  border:1px solid var(--nx-violet-2);
  color:#fff;
}
body.tul-neon .canyon-edge path{fill:var(--nx-black)}

/* ---------- Boutons ---------- */
body.tul-neon .btn,
body.tul-neon .tulear-hero-content .btn,
body.tul-neon .tulear-contact .btn,
body.tul-neon .circuit-whatsapp-cta .btn{
  background:var(--nx-yellow);
  color:#07060C !important;
  font-weight:800;
  border:2px solid var(--nx-yellow);
  box-shadow:0 8px 30px rgba(255,230,0,.35);
}
body.tul-neon .btn:hover,
body.tul-neon .tulear-hero-content .btn:hover,
body.tul-neon .tulear-contact .btn:hover,
body.tul-neon .circuit-whatsapp-cta .btn:hover{
  background:var(--nx-violet-2);
  border-color:var(--nx-violet-2);
  color:#fff !important;
  box-shadow:0 8px 34px rgba(168,85,247,.55);
}
body.tul-neon .contact-buttons .btn-outline{
  background:transparent;
  color:var(--nx-yellow) !important;
  border:2px solid var(--nx-yellow);
  box-shadow:none;
}
body.tul-neon .contact-buttons .btn-outline:hover{
  background:var(--nx-yellow);
  color:#07060C !important;
  border-color:var(--nx-yellow);
}
body.tul-neon .contact-buttons .btn:first-child{
  background:var(--nx-violet);border-color:var(--nx-violet);color:#fff !important;
}
body.tul-neon .contact-buttons .btn:first-child:hover{
  background:var(--nx-yellow);border-color:var(--nx-yellow);color:#07060C !important;
}

/* ---------- Intro ---------- */
body.tul-neon .tulear-intro{
  background:var(--nx-ink);
  border-top:1px solid rgba(124,58,237,.35);
  border-bottom:1px solid rgba(124,58,237,.35);
}
body.tul-neon .tulear-intro h2,
body.tul-neon .section-heading h2,
body.tul-neon .mosaic .section-heading h2{color:#fff}
body.tul-neon .tulear-intro p,
body.tul-neon .section-heading p,
body.tul-neon .mosaic .section-heading p{color:var(--nx-muted)}
body.tul-neon .tulear-intro p a{
  color:var(--nx-yellow);
  border-bottom:2px solid var(--nx-violet-2);
}
body.tul-neon .tulear-intro p a:hover{color:#fff;border-bottom-color:var(--nx-yellow)}
body.tul-neon .section-heading .eyebrow{
  color:#07060C !important;background:var(--nx-yellow) !important;
}

/* ---------- Mosaïque ---------- */
body.tul-neon .mosaic{
  background:
    radial-gradient(800px 400px at 100% 0%, rgba(124,58,237,.35), transparent 60%),
    var(--nx-black);
}
body.tul-neon .mosaic-tile{
  background:var(--nx-card);
  border:1px solid rgba(168,85,247,.55);
  box-shadow:0 0 0 1px rgba(7,6,12,.6),0 18px 50px rgba(124,58,237,.22);
}
body.tul-neon .mosaic-tile:hover{
  border-color:var(--nx-yellow);
  box-shadow:0 0 36px rgba(255,230,0,.35),0 18px 50px rgba(124,58,237,.35);
}
body.tul-neon .mosaic-tile::after,
body.tul-neon .mosaic-tile.turquoise::after{
  background:linear-gradient(0deg,rgba(7,6,12,.96) 0%,rgba(42,15,85,.45) 55%,rgba(7,6,12,0) 100%) !important;
}
body.tul-neon .mosaic-badge{
  background:var(--nx-yellow) !important;
  color:#07060C !important;
  font-weight:800;
}
body.tul-neon .mosaic-info h3{color:#fff}
body.tul-neon .mosaic-info p{color:var(--nx-text)}
body.tul-neon .mosaic-tags span{
  background:rgba(124,58,237,.35);
  border:1px solid rgba(168,85,247,.7);
  color:#fff;
}

/* ---------- Activités ---------- */
body.tul-neon .tulear-activities{
  background:linear-gradient(180deg,var(--nx-violet-deep) 0%,#12082B 100%);
}
body.tul-neon .activity-card{
  background:rgba(7,6,12,.72);
  border:1px solid rgba(168,85,247,.5);
  box-shadow:0 14px 40px rgba(0,0,0,.45);
}
body.tul-neon .activity-card:hover{
  border-color:var(--nx-yellow);
  box-shadow:0 0 30px rgba(255,230,0,.3);
  transform:translateY(-6px);
}
body.tul-neon .activity-card h3{color:var(--nx-yellow)}
body.tul-neon .activity-card p{color:var(--nx-text)}

/* ---------- Contact ---------- */
body.tul-neon .tulear-contact{
  background:
    radial-gradient(700px 360px at 50% 0%, rgba(255,230,0,.20), transparent 65%),
    linear-gradient(135deg,#0E0B18,#3A1480);
}
body.tul-neon .tulear-contact h2{color:#fff}
body.tul-neon .tulear-contact p{color:var(--nx-text)}
body.tul-neon .tulear-contact .eyebrow{color:#07060C !important;background:var(--nx-yellow) !important}

/* ---------- CTA WhatsApp ---------- */
body.tul-neon .circuit-whatsapp-cta{
  background:linear-gradient(110deg,var(--nx-yellow) 0%,var(--nx-yellow-2) 100%);
  border:0;
}
body.tul-neon .circuit-whatsapp-cta h2,
body.tul-neon .circuit-whatsapp-cta p{color:#07060C}
body.tul-neon .circuit-whatsapp-cta .eyebrow{
  background:#07060C !important;color:var(--nx-yellow) !important;box-shadow:none;
}
body.tul-neon .circuit-whatsapp-cta .btn{
  background:#07060C;color:var(--nx-yellow) !important;border-color:#07060C;box-shadow:0 10px 30px rgba(7,6,12,.4);
}
body.tul-neon .circuit-whatsapp-cta .btn:hover{
  background:var(--nx-violet);border-color:var(--nx-violet);color:#fff !important;
}

/* ---------- Hub SEO ---------- */
body.tul-neon .destination-seo-hub{background:var(--nx-ink)}
body.tul-neon .destination-seo-card{
  background:var(--nx-card);
  border:1px solid rgba(168,85,247,.45);
  box-shadow:none;
}
body.tul-neon .destination-seo-card:hover{
  border-color:var(--nx-yellow);box-shadow:0 0 28px rgba(255,230,0,.28);
}
body.tul-neon .destination-seo-card h3{color:#fff}
body.tul-neon .destination-seo-card p{color:var(--nx-muted)}
body.tul-neon .destination-seo-card a{color:var(--nx-yellow)}
body.tul-neon .destination-seo-card a:hover{color:#fff}

/* ---------- Pied de page ---------- */
body.tul-neon .footer-glass{
  background:linear-gradient(180deg,#07060C 0%,#1B0B3A 100%);
  border-top:2px solid var(--nx-violet);
}
body.tul-neon .footer-glass h3,
body.tul-neon .footer-glass-panel h4,
body.tul-neon .footer-brand h3{color:var(--nx-yellow)}
body.tul-neon .footer-glass a:hover{color:var(--nx-yellow)}
body.tul-neon .footer-glass-btn.filled{
  background:var(--nx-yellow);color:#07060C;border-color:var(--nx-yellow);
}
body.tul-neon .footer-glass-btn.filled:hover{
  background:var(--nx-violet-2);border-color:var(--nx-violet-2);color:#fff;
}

@media (max-width:760px){
  body.tul-neon .tulear-hero{min-height:78vh}
}

/* ---------- Correctifs : pleine largeur, SVG, formulaire, mentions ---------- */
body.tul-neon{overflow-x:hidden}
body.tul-neon .canyon-edge path{fill:#07060C !important}

/* fonds pleine largeur même si la section est limitée en largeur */
body.tul-neon .tulear-intro,
body.tul-neon .tulear-activities,
body.tul-neon .tulear-contact,
body.tul-neon .circuit-whatsapp-cta,
body.tul-neon .destination-seo-hub,
body.tul-neon .mosaic{
  border-radius:0 !important;
  clip-path:inset(0 -100vmax);
}
body.tul-neon .tulear-intro{box-shadow:0 0 0 100vmax var(--nx-ink);border:0}
body.tul-neon .tulear-activities{box-shadow:0 0 0 100vmax #12082B}
body.tul-neon .tulear-contact{box-shadow:0 0 0 100vmax #3A1480}
body.tul-neon .circuit-whatsapp-cta{box-shadow:0 0 0 100vmax var(--nx-yellow);margin:0 auto}
body.tul-neon .destination-seo-hub{box-shadow:0 0 0 100vmax var(--nx-ink)}
body.tul-neon .mosaic{box-shadow:0 0 0 100vmax var(--nx-black)}

/* tuiles étroites : plus de hauteur pour que le badge ne chevauche pas le titre */
body.tul-neon .mosaic-grid{grid-auto-rows:minmax(270px,auto) !important}

/* formulaire */
body.tul-neon .lead-form-section{
  background:
    radial-gradient(700px 380px at 50% 0%, rgba(124,58,237,.45), transparent 65%),
    var(--nx-black);
}
body.tul-neon .lead-form-wrapper .section-heading h2{color:#fff}
body.tul-neon .lead-form-wrapper .section-heading p{color:var(--nx-muted)}
body.tul-neon .lead-form{
  background:var(--nx-card);
  border:1px solid rgba(168,85,247,.6);
  box-shadow:0 0 40px rgba(124,58,237,.35);
}
body.tul-neon .lead-form label{color:var(--nx-yellow);font-weight:700}
body.tul-neon .lead-form input[type=text],
body.tul-neon .lead-form input[type=email],
body.tul-neon .lead-form textarea{
  background:#0A0713;color:#fff;border:1px solid rgba(168,85,247,.55);
}
body.tul-neon .lead-form input::placeholder,
body.tul-neon .lead-form textarea::placeholder{color:#8D82B0}
body.tul-neon .lead-form input:focus,
body.tul-neon .lead-form textarea:focus{
  outline:none;border-color:var(--nx-yellow);box-shadow:0 0 0 3px rgba(255,230,0,.25);
}
body.tul-neon .lead-note{color:var(--nx-muted)}
body.tul-neon .lead-whatsapp-alt{color:var(--nx-muted)}
body.tul-neon .lead-whatsapp-alt a{color:var(--nx-yellow)}

/* mentions officielles */
body.tul-neon .official-accreditation,
body.tul-neon .official-accreditation span,
body.tul-neon .official-accreditation strong{color:var(--nx-text)}
body.tul-neon .official-accreditation a{color:var(--nx-yellow)}

@media (max-width:760px){
  body.tul-neon .mosaic-grid{grid-auto-rows:minmax(440px,auto) !important}
  body.tul-neon .mosaic-info{padding-top:70px}
}

/* ---------- Pages EN / IT / ZH (structure plus simple) ---------- */
body.tul-neon .tulear-hero{min-height:100vh;padding-top:130px}
body.tul-neon .tulear-hero-content h1{font-size:clamp(34px,5vw,62px);line-height:1.08}
body.tul-neon .mosaic{padding-bottom:90px}
body.tul-neon .circuit-whatsapp-cta{
  display:flex;align-items:center;justify-content:space-between;gap:28px;flex-wrap:wrap;
  max-width:1100px;padding:44px 6%;
}
body.tul-neon .circuit-whatsapp-cta > div{flex:1 1 360px}
body.tul-neon .circuit-whatsapp-cta h2{margin:12px 0 8px}
body.tul-neon .destination-seo-hub{padding-left:6%;padding-right:6%}
body.tul-neon .destination-seo-grid{max-width:1200px;margin-left:auto;margin-right:auto}

body.tul-neon .eyebrow{padding:7px 16px;border-radius:999px;display:inline-block}
body.tul-neon .mosaic-badge{padding:6px 14px;border-radius:999px}
body.tul-neon .mosaic-tile:not(.large):not(.wide) .mosaic-info{padding-top:56px}
