HTML{margin:0;padding:0;width:100%;height:100%;overflow:hidden;}
BODY{margin:0;padding:0;width:100%;height:100%;overflow:hidden;background-size:100% 100%;background-image:url('image/background-bluesky.jpg');background-repeat:no-repeat;background-color:#CEECF5;color:#1c1c1c;-webkit-text-size-adjust:100%;}
*{box-sizing:border-box} img{display:block} button,input,select,textarea{font:inherit} button{cursor:pointer}.honeypot{position:absolute!important;left:-9999px!important;width:1px!important;height:1px!important;opacity:0!important}
H1{margin:0;padding:5px 0px;font-family:'Trade Winds',cursive,Georgia,serif;font-size:22px;font-weight:bold;border-radius:0 0 5px 5px;color:White;background-color:#2E2E2E;text-align:center;text-shadow:2px 2px 0 rgba(0,0,0,.38)}
H2{margin:0;padding:8px;font-family:'Prosto One',cursive,Arial,sans-serif;font-size:20px;font-weight:400;color:#fff;background-image:radial-gradient(circle,rgba(255,90,0,.95) 55%,rgba(255,180,0,.55) 80%,rgba(255,0,0,0));text-align:center;}
H3{margin:0;padding:0 5px;font-family:'Prosto One',cursive,Arial,sans-serif;font-size:20px;font-weight:400;color:White;background-color:#FF4000;text-align:center;}
P{margin:6px 0 18px 0;font-size:21px;font-weight:400;font-style:italic;font-family:'Kalam',cursive,Arial,sans-serif;color:#424242;text-align:center;}
A:link,A:visited{color:White;text-decoration:none} A:hover{color:Black;background-color:#F4FA58;text-decoration:none} A.title:hover{color:#FF4000;background-color:#2E2E2E} A.bottom:hover{color:Black;text-decoration:none}
#title{margin:0 auto;max-width:520px;padding:0;color:White;text-decoration:none;position:relative;z-index:50}
#subtitle{margin:0 auto;padding:0;width:100%;max-width:900px;position:relative;z-index:50} #subtitle p{line-height:1.15;margin:5px 0 15px}
#menu{margin:0 auto;padding:0;position:relative;width:100%;z-index:50} #menu h2{line-height:1.15} #menu .sep{color:#F4FA58;margin:0 12px}.navlink{display:inline-block;padding:0 5px;border-radius:4px}.navlink.actif{color:#F4FA58;text-shadow:1px 1px 2px rgba(0,0,0,.45)}
#media{position:absolute;top:8.9em;right:0;bottom:2.25em;left:0;overflow:hidden;z-index:20}
#bottom{position:fixed;width:100%;right:0;bottom:0;left:0;z-index:60;color:White}#bottom h3{min-height:2.25em;display:flex;align-items:center;justify-content:center;gap:24px;font-size:20px;line-height:1.1}.telephone{display:inline-block;background:#F4FA58;color:#000!important;font-family:Arial,sans-serif;padding:0 6px;line-height:1.15}
/* GALERIE */
.gallery{position:absolute;inset:0;display:grid;grid-template-columns:minmax(0,1fr) 128px;grid-template-rows:1fr;background:#000;border:3px solid rgba(255,255,255,.65);overflow:hidden}.stage-wrap{position:relative;min-width:0;min-height:0;display:flex;align-items:center;justify-content:center}.stage{position:absolute;inset:0;margin:0;display:flex;align-items:center;justify-content:center;overflow:hidden}.stage img{max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;user-select:none;-webkit-user-drag:none}#caption{position:absolute;left:0;right:0;bottom:8px;color:#fff;font-family:'Kalam',cursive;font-size:17px;text-align:center;text-shadow:2px 2px 2px #000}.thumbs{grid-column:2;grid-row:1;display:grid;grid-template-columns:1fr;grid-auto-rows:72px;align-content:start;gap:8px;padding:10px 8px;overflow-y:auto;overflow-x:hidden;background:#000}.thumb{border:0;background:transparent;padding:0;opacity:.78;width:100%;height:72px}.thumb img{width:100%;height:100%;object-fit:cover}.thumb:hover,.thumb.active{opacity:1;background:transparent;outline:3px solid #f4fa58}.arrow{position:absolute;top:50%;transform:translateY(-50%);border:0;background:transparent;color:#fff;font-family:Arial,sans-serif;font-size:58px;line-height:1;z-index:4;padding:8px 18px}.arrow:hover{background:#f4fa58;color:#000}.arrow.prev{left:12px}.arrow.next{right:12px}
/* INFOS */
.infos{position:absolute;inset:0;padding:32px 24px 28px;overflow:auto}.info-box{background:rgba(231,251,255,.74);border-radius:15px;margin:0 auto 10px;padding:10px 32px;max-width:calc(100vw - 48px);font-family:'Kalam',cursive;color:#000;font-style:italic;text-align:center;font-size:clamp(16px,1.45vw,20px);line-height:1.55}.info-box strong{font-weight:700}.info-box p{font-size:inherit;line-height:inherit;margin:0 0 7px;color:#111}.info-columns{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:12px}.info-columns .info-box{height:100%;margin:0;padding:14px 18px}.info-box h3{font-size:17px;margin-bottom:8px;border-radius:6px;background:#ff4000;color:white}.top-info{max-width:1180px}
/* FORMULAIRES */
.form-screen,.contract-screen,.merci-screen{position:absolute;inset:0;padding:16px 24px 22px;overflow:auto}.panel{max-width:1040px;margin:0 auto;background:rgba(240,253,255,.78);border-radius:15px;padding:15px 18px 18px;box-shadow:0 4px 16px rgba(0,0,0,.12)}.contract-form{max-width:1180px}.panel h3{border-radius:7px;margin-bottom:12px}.panel p,.panel label{font-family:'Kalam',cursive;font-style:italic}.form-intro{font-size:18px;line-height:1.35;margin:0 0 14px}.form-grid{display:grid;gap:9px}.form-grid.two{grid-template-columns:repeat(2,1fr)}.form-grid.three{grid-template-columns:repeat(3,1fr)}.form-grid.four{grid-template-columns:repeat(4,1fr)}.wide2{grid-column:span 2}label{font-family:'Kalam',cursive;font-size:16px;font-weight:700;color:#222}input,select,textarea{width:100%;border:1px solid rgba(0,0,0,.25);border-radius:5px;background:#fff;padding:7px;margin-top:2px;color:#111;font-family:Arial,sans-serif;font-size:15px}textarea{resize:vertical}.fieldset{border:1px solid rgba(0,0,0,.18);border-radius:10px;background:rgba(255,255,255,.28);padding:11px 12px;margin:10px 0}.fieldset legend{font-family:'Prosto One',Arial,sans-serif;color:#ff4000;background:rgba(244,250,88,.6);border-radius:5px;padding:2px 8px}.ages-enfants{display:grid;grid-template-columns:repeat(5,1fr);gap:7px;margin-top:8px}.mention-form,.small-note{font-size:15px;line-height:1.35;margin:8px 0;color:#444}.actions{display:flex;justify-content:center;gap:14px;margin-top:12px}.btn{display:inline-block;border:0;border-radius:7px;background:#ff4000!important;color:white!important;padding:9px 18px;font-family:'Prosto One',Arial,sans-serif;text-align:center}.btn:hover{background:#f4fa58!important;color:#000!important}.contract-note{font-size:17px;line-height:1.45;margin:8px 0;text-align:left;color:#111}.checks{display:grid;grid-template-columns:repeat(2,1fr);gap:7px}.checks label{font-weight:400;background:rgba(255,255,255,.45);border-radius:8px;padding:6px}.checks input{width:auto;margin-right:8px}.participants-table{display:block;overflow-x:auto;border:1px solid rgba(0,0,0,.25);background:#fff}.pt-row{display:grid;grid-template-columns:44px 1fr 1fr 90px 1.6fr;min-width:720px}.pt-row>*{border-right:1px solid #8aaa68;border-bottom:1px solid #8aaa68;padding:5px;margin:0;border-radius:0}.pt-row span{font-family:Arial,sans-serif;text-align:center;background:#f7fff0}.pt-head span{font-weight:bold;color:#3b6d1d;background:#eef8e6}.merci-panel{max-width:720px;text-align:center;margin-top:8vh}.merci-panel p{font-size:22px}
@media(max-width:760px){HTML,BODY{overflow:hidden}H1{font-size:18px;border-radius:0;padding:6px 8px}P{font-size:17px}H2{font-size:16px;padding:7px 3px}#menu .sep{margin:0 4px}#media{top:8.25em;bottom:2.1em}#bottom h3{min-height:2.1em;gap:8px;font-size:14px}.telephone{font-size:15px}.gallery{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr) 112px;border-width:0}.stage-wrap{grid-column:1;grid-row:1}.thumbs{grid-column:1;grid-row:2;display:grid;grid-auto-flow:column;grid-template-rows:repeat(2,48px);grid-auto-columns:66px;gap:6px;padding:6px 8px;overflow-x:auto;overflow-y:hidden}.thumb{height:48px;width:66px}.arrow{display:none}#caption{font-size:14px;bottom:5px}.infos{padding:12px 8px}.info-box{max-width:100%;padding:8px 12px;font-size:15px}.info-columns{grid-template-columns:1fr;gap:8px}.form-screen,.contract-screen,.merci-screen{padding:10px 8px 12px}.panel{padding:12px 10px}.panel h3{font-size:17px}.form-grid.two,.form-grid.three,.form-grid.four{grid-template-columns:1fr}.wide2{grid-column:span 1}.ages-enfants{grid-template-columns:repeat(2,1fr)}.checks{grid-template-columns:1fr}.actions{flex-direction:column}.btn{width:100%}.pt-row{min-width:650px}.contract-note{font-size:15px}.form-intro{font-size:16px}}

/* ===========================================================
   Correctif V9 — miniatures réellement agrandies et cache-bustées.
   Objectif :
   - desktop : colonne droite, 3 miniatures verticales visibles ;
   - mobile  : bandeau bas, une seule ligne, 2 miniatures horizontales visibles ;
   - aucun nom de photo affiché.
   =========================================================== */
body.page-photos #caption{
  display:none !important;
  visibility:hidden !important;
  height:0 !important;
  overflow:hidden !important;
}

body.page-photos .gallery{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) clamp(270px, 28vw, 390px) !important;
  grid-template-rows:minmax(0,1fr) !important;
  width:100% !important;
  height:100% !important;
}

body.page-photos .stage-wrap{
  grid-column:1 !important;
  grid-row:1 !important;
  min-width:0 !important;
  min-height:0 !important;
}

body.page-photos #thumbs.thumbs{
  grid-column:2 !important;
  grid-row:1 !important;
  display:grid !important;
  grid-template-columns:1fr !important;
  grid-template-rows:none !important;
  grid-auto-flow:row !important;
  grid-auto-rows:calc((100% - 20px) / 3) !important;
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  gap:10px !important;
  padding:10px !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  background:#000 !important;
  scroll-snap-type:y mandatory;
  scrollbar-gutter:stable;
}

body.page-photos #thumbs.thumbs .thumb{
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-width:0 !important;
  min-height:0 !important;
  border:0 !important;
  padding:0 !important;
  overflow:hidden !important;
  scroll-snap-align:start;
}

body.page-photos #thumbs.thumbs .thumb img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

@media(max-width:760px){
  body.page-photos #media{
    top:8.25em !important;
    bottom:2.1em !important;
  }

  body.page-photos .gallery{
    grid-template-columns:1fr !important;
    grid-template-rows:minmax(0,1fr) clamp(120px, 34vw, 170px) !important;
    border-width:0 !important;
  }

  body.page-photos .stage-wrap{
    grid-column:1 !important;
    grid-row:1 !important;
  }

  body.page-photos #thumbs.thumbs{
    grid-column:1 !important;
    grid-row:2 !important;
    display:grid !important;
    grid-auto-flow:column !important;
    grid-template-columns:none !important;
    grid-template-rows:1fr !important;
    grid-auto-columns:calc((100% - 8px) / 2) !important;
    width:100% !important;
    height:100% !important;
    min-width:0 !important;
    min-height:0 !important;
    gap:8px !important;
    padding:7px 8px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    background:#000 !important;
    scroll-snap-type:x mandatory;
    -webkit-overflow-scrolling:touch;
    scrollbar-gutter:auto;
  }

  body.page-photos #thumbs.thumbs .thumb{
    width:100% !important;
    height:100% !important;
    min-width:0 !important;
    min-height:0 !important;
  }
}




/* ===========================================================
   V46 — corrections éditoriales + Option C renforcée
   =========================================================== */
body.page-infos .infos{padding:24px 18px 28px;}
body.page-infos .info-box{border:2px solid rgba(46,46,46,.16);box-shadow:0 5px 18px rgba(0,0,0,.10);backdrop-filter:saturate(120%) blur(1px);}
body.page-infos .top-info,body.page-infos .slim-box{max-width:1040px;}
body.page-infos .top-info p,body.page-infos .slim-box p{margin:0;}
body.page-infos .info-columns{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}
.map-link{color:#0a3c78!important;background:transparent!important;text-decoration:underline;text-decoration-thickness:2px;text-underline-offset:3px;}
.map-link:hover{color:#000!important;background:#F4FA58!important;}
.telephone{position:relative;display:inline-block;overflow:hidden;isolation:isolate;padding:3px 12px;border-radius:999px;background:linear-gradient(135deg,#ffe85a 0%,#fff57a 44%,#ffd22d 100%)!important;color:#000!important;font-family:Arial,sans-serif;font-weight:700;letter-spacing:.02em;line-height:1.15;box-shadow:0 0 0 2px rgba(255,255,255,.38) inset,0 0 9px rgba(244,250,88,.45),0 2px 5px rgba(0,0,0,.22);}
.telephone::before{content:"";position:absolute;z-index:3;top:50%;left:12%;width:34px;height:34px;transform:translate(-50%,-50%) scale(.35) rotate(45deg);opacity:0;pointer-events:none;background:linear-gradient(90deg,transparent 42%,rgba(255,255,255,1) 48%,rgba(255,255,255,1) 52%,transparent 58%),linear-gradient(0deg,transparent 42%,rgba(255,255,255,1) 48%,rgba(255,255,255,1) 52%,transparent 58%),radial-gradient(circle,rgba(255,255,255,1) 0 16%,rgba(255,255,255,.92) 17% 23%,rgba(255,255,255,0) 55%);filter:drop-shadow(0 0 6px rgba(255,255,255,.95)) drop-shadow(0 0 12px rgba(255,235,40,.88));animation:ckSparkPointStrong 6.4s ease-in-out infinite;}
.telephone::after{content:"";position:absolute;z-index:2;top:-45%;bottom:-45%;left:-30%;width:28%;transform:skewX(-22deg);opacity:0;pointer-events:none;background:linear-gradient(90deg,rgba(255,255,255,0) 0%,rgba(255,255,255,.18) 18%,rgba(255,255,255,.98) 50%,rgba(255,255,255,.18) 82%,rgba(255,255,255,0) 100%);filter:blur(.25px);animation:ckSparkBandStrong 6.4s ease-in-out infinite;}
@keyframes ckSparkPointStrong{0%,9%{left:12%;opacity:0;transform:translate(-50%,-50%) scale(.35) rotate(45deg)}10%{left:12%;opacity:1;transform:translate(-50%,-50%) scale(1.05) rotate(45deg)}12%{left:12%;opacity:.95;transform:translate(-50%,-50%) scale(1.25) rotate(45deg)}15%{left:12%;opacity:0;transform:translate(-50%,-50%) scale(.45) rotate(45deg)}19%{left:82%;opacity:0;transform:translate(-50%,-50%) scale(.35) rotate(45deg)}20%{left:82%;opacity:1;transform:translate(-50%,-50%) scale(1.08) rotate(45deg)}22%{left:82%;opacity:.95;transform:translate(-50%,-50%) scale(1.28) rotate(45deg)}25%{left:82%;opacity:0;transform:translate(-50%,-50%) scale(.45) rotate(45deg)}100%{left:82%;opacity:0;transform:translate(-50%,-50%) scale(.35) rotate(45deg)}}
@keyframes ckSparkBandStrong{0%,8%{left:-30%;opacity:0}10%{left:5%;opacity:.95}13%{left:24%;opacity:0}18%{left:48%;opacity:0}20%{left:66%;opacity:.95}23%{left:96%;opacity:0}100%{left:96%;opacity:0}}
@media (prefers-reduced-motion: reduce){.telephone::before,.telephone::after{animation:none;opacity:0;}}
@media(max-width:760px){body.page-infos .infos{padding:10px 8px 12px;}.telephone{padding:3px 10px;font-size:15px;}.telephone::before{width:30px;height:30px;}}
