@import url(lay2-common.css?v=1);
.lay-nuage{--c1:#7FA8D6;--c2:#CFE2F3;--c3:#C9A66B;--c4:#F8FBFE;--ink:#2B4560;--serif:"Cormorant Garamond",Georgia,serif;--script:"Allura","Brush Script MT",cursive;
  --bg:var(--c4);--fg:var(--ink);--acc:var(--c1);--acc-ink:#fff;--ln:color-mix(in srgb,var(--c1) 40%,transparent);--r:999px;--r2:999px}
.lay-nuage{font-family:"Jost",system-ui,sans-serif}
.lay-nuage main{overflow:hidden}

/* porte : nuages */
.lay-nuage .gate{background:linear-gradient(var(--c1),var(--c2));overflow:hidden}
.lay-nuage .cloud{position:absolute;top:0;bottom:0;width:62%;transition:transform 1.9s cubic-bezier(.6,0,.2,1)}
.lay-nuage .cloud-l{left:-8%;background:
  radial-gradient(circle at 70% 18%,#fff 0 70px,transparent 71px),radial-gradient(circle at 40% 36%,#fff 0 90px,transparent 91px),
  radial-gradient(circle at 78% 55%,#fff 0 80px,transparent 81px),radial-gradient(circle at 36% 74%,#fff 0 100px,transparent 101px),
  radial-gradient(circle at 74% 92%,#fff 0 80px,transparent 81px),linear-gradient(90deg,#fff 60%,transparent 60%)}
.lay-nuage .cloud-r{right:-8%;background:
  radial-gradient(circle at 30% 10%,#fff 0 80px,transparent 81px),radial-gradient(circle at 62% 30%,#fff 0 90px,transparent 91px),
  radial-gradient(circle at 24% 52%,#fff 0 90px,transparent 91px),radial-gradient(circle at 66% 72%,#fff 0 100px,transparent 101px),
  radial-gradient(circle at 28% 94%,#fff 0 80px,transparent 81px),linear-gradient(270deg,#fff 60%,transparent 60%)}
.lay-nuage .ng-in{position:relative;z-index:2;text-align:center;padding:24px;max-width:420px;color:var(--ink);transition:opacity .8s}
.lay-nuage .ng-s{font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:color-mix(in srgb,var(--c1) 70%,#000)}
.lay-nuage .ng-n{font-family:var(--script);font-size:58px;line-height:1.05;margin:8px 0 8px;text-shadow:0 2px 14px #fff}
.lay-nuage .ng-f{margin-bottom:24px;font-size:15px}
.lay-nuage .ng-in .l2-btn{box-shadow:0 8px 24px color-mix(in srgb,var(--c1) 55%,transparent)}
.lay-nuage .gate.is-open .cloud-l{transform:translateX(-110%)}
.lay-nuage .gate.is-open .cloud-r{transform:translateX(110%)}
.lay-nuage .gate.is-open .ng-in{opacity:0}

/* hero */
.lay-nuage .hero{background:var(--c4);text-align:center}
.lay-nuage .n-photo{position:relative;height:min(74svh,520px)}
.lay-nuage .n-photo span{position:absolute;inset:0;background:var(--cover) center/cover,linear-gradient(var(--c1),var(--c2))}
.lay-nuage .n-photo::before{content:"";position:absolute;inset:0;background:linear-gradient(color-mix(in srgb,var(--c1) 30%,transparent),transparent 40%)}
.lay-nuage .n-edge{position:absolute;left:0;right:0;bottom:-1px;height:76px;background:
  radial-gradient(circle at 6% 100%,var(--c4) 0 38px,transparent 39px),radial-gradient(circle at 22% 100%,var(--c4) 0 54px,transparent 55px),
  radial-gradient(circle at 40% 100%,var(--c4) 0 44px,transparent 45px),radial-gradient(circle at 57% 100%,var(--c4) 0 58px,transparent 59px),
  radial-gradient(circle at 75% 100%,var(--c4) 0 46px,transparent 47px),radial-gradient(circle at 92% 100%,var(--c4) 0 56px,transparent 57px),
  linear-gradient(var(--c4),var(--c4)) bottom/100% 22px no-repeat}
.lay-nuage .hero-in{max-width:520px;margin:-22px auto 0;padding:0 20px 44px;position:relative}
.lay-nuage .n-arc{display:block;width:min(100%,400px);margin:0 auto -6px;overflow:visible}
.lay-nuage .n-arc text{font-family:var(--serif);font-style:italic;fill:var(--c1);filter:brightness(.8)}
.lay-nuage .n-intro{font-size:12px;letter-spacing:.28em;text-transform:uppercase;opacity:.75;line-height:1.8;margin-top:10px}
.lay-nuage .n-name{font-family:var(--script);font-weight:400;font-size:clamp(58px,19vw,96px);line-height:1;margin:10px 0 16px;color:var(--ink)}
.lay-nuage .n-date{display:flex;align-items:center;justify-content:center;gap:16px;font-family:var(--serif);font-weight:600;font-size:clamp(34px,10vw,50px);color:var(--c3);line-height:1}
.lay-nuage .n-date i{display:block;width:1.5px;height:.9em;background:currentColor;opacity:.7}
.lay-nuage .n-dline{margin-top:12px;font-size:14px;letter-spacing:.16em;text-transform:uppercase;font-weight:500}
.lay-nuage .n-where{margin-top:12px;font-family:var(--serif);font-size:21px;font-style:italic;display:flex;flex-direction:column;gap:2px}
.lay-nuage .n-where small{font-family:"Jost",sans-serif;font-style:normal;font-size:14px;opacity:.75}
.lay-nuage .n-outro{margin-top:16px;opacity:.8;font-family:var(--serif);font-style:italic;font-size:19px}

.lay-nuage .blk{max-width:620px;margin:0 auto;padding:44px 20px;text-align:center}
.lay-nuage .blk.wide{max-width:760px}
.lay-nuage .k2{font-size:12px;letter-spacing:.3em;text-transform:uppercase;color:var(--c3);font-weight:600;margin-bottom:6px}
.lay-nuage .sh{font-family:var(--script);font-weight:400;font-size:clamp(42px,12vw,58px);line-height:1.1;color:var(--ink);margin-bottom:22px}
.lay-nuage .n-card{background:#fff;border-radius:34px;padding:30px 24px;box-shadow:0 20px 44px -28px color-mix(in srgb,var(--c1) 80%,#000),0 0 0 1px color-mix(in srgb,var(--c1) 22%,transparent);text-align:left}
.lay-nuage .n-card>.ic2{display:block;width:28px;height:28px;color:var(--c3);margin:0 auto 14px}
.lay-nuage .n-card blockquote{text-align:center;font-family:var(--serif);font-style:italic;font-size:clamp(22px,5.8vw,27px);line-height:1.4;color:var(--ink)}
.lay-nuage .n-msg{margin-top:22px;padding-top:20px;border-top:1px dashed var(--ln);text-align:center;font-size:17px;line-height:1.75}
.lay-nuage .n-soft{background:linear-gradient(#fff,color-mix(in srgb,var(--c2) 45%,#fff))}
.lay-nuage .n-tl{position:relative;gap:22px}
.lay-nuage .n-tl .tl-i{background:#fff;border-radius:26px;padding:16px 18px;box-shadow:0 12px 26px -20px color-mix(in srgb,var(--c1) 80%,#000);grid-template-columns:72px 1fr}
.lay-nuage .n-tl .tl-t{display:flex;align-items:center;justify-content:center;width:64px;height:64px;border-radius:50%;background:var(--c2);flex-direction:column;text-align:center}
.lay-nuage .n-tl .tl-t b{font-family:var(--serif);font-weight:600;font-size:18px;color:var(--ink)}
.lay-nuage .n-tl .tl-t small{display:none}
.lay-nuage .n-tl .tl-b h3{font-size:21px}
.lay-nuage .n-tl .tl-b .lnk{color:color-mix(in srgb,var(--c1) 70%,#000)}
.lay-nuage .blk-act{margin-top:26px}
.lay-nuage .n-cd{max-width:440px;margin:6px auto 0;gap:8px}
.lay-nuage .n-cd div{background:#fff;border-radius:22px;padding:14px 4px;box-shadow:0 10px 22px -16px color-mix(in srgb,var(--c1) 80%,#000)}
.lay-nuage .n-cd b{font-family:var(--serif);font-weight:600;font-size:clamp(26px,8vw,36px);color:var(--c1);filter:brightness(.85)}
.lay-nuage .n-cd span{font-size:10px;letter-spacing:.12em;text-transform:uppercase;opacity:.7}
.lay-nuage .n-gal{gap:10px}
.lay-nuage .n-gal figure{border-radius:28px;overflow:hidden;aspect-ratio:1}
.lay-nuage .pi-name{color:var(--ink)}
.lay-nuage .foot{opacity:.75}
.lay-nuage .mus{--acc:var(--c1);--acc-ink:#fff}
