@font-face{font-family:Bangers;src:url('assets/fonts/bangers-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
@font-face{font-family:Inter;src:url('assets/fonts/inter-variable.woff2') format('woff2');font-style:normal;font-weight:100 900;font-display:swap}
@font-face{font-family:Kalam;src:url('assets/fonts/kalam-regular.woff2') format('woff2');font-style:normal;font-weight:400;font-display:swap}
:root{--bg:#fbf8f2;--surface:#fff;--text:#17171b;--muted:#54515b;--purple:#7130c8;--orange:#ed7100;--pink:#e72f88;--blue:#168ad5;--line:#ded6cc;--shadow:0 18px 60px #5b31551c;color-scheme:light}
:root[data-theme=dark]{--bg:#07101d;--surface:#101a2b;--text:#fffaf1;--muted:#c7c1ca;--purple:#9a48f0;--orange:#ff8a00;--pink:#ff3b9d;--blue:#19a7ef;--line:#34304c;--shadow:0 24px 80px #0008;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--text);font-family:Inter,system-ui,sans-serif;transition:background .35s,color .35s}a{color:inherit}button{font:inherit}.page{max-width:1536px;margin:auto}.home{min-height:min(100vh,960px);padding:18px 5vw 50px;position:relative;overflow:hidden}.nav{display:grid;grid-template-columns:minmax(240px,1fr) auto minmax(240px,1fr);grid-template-areas:"logo socials side";align-items:center;gap:clamp(14px,2vw,30px);position:relative;z-index:10}.logo-link{grid-area:logo;justify-self:start}.logo{display:block;width:240px;height:135px;object-fit:contain;object-position:center}.header-socials{grid-area:socials;justify-self:center}.nav-side{grid-area:side;justify-self:end;display:flex;align-items:center;gap:12px}.links{display:flex;justify-content:flex-end;gap:clamp(10px,1.2vw,18px)}.links a{text-decoration:none;font-size:14px;font-weight:600;white-space:nowrap;padding:12px 0;border-bottom:2px solid transparent}.links a:hover,.links a:focus-visible{color:var(--purple);border-color:var(--purple)}.tools{display:flex;align-items:center;gap:10px}.icon-btn,.theme{border:1px solid var(--orange);background:var(--surface);color:var(--text);height:44px;cursor:pointer}.icon-btn{width:44px;border-radius:50%;font-size:20px}.theme{border-radius:24px;padding:4px;display:flex;gap:2px}.theme span{width:34px;height:34px;display:grid;place-items:center;border-radius:50%}.theme span:first-child{background:var(--orange);color:white}:root[data-theme=dark] .theme span:first-child{background:transparent;color:var(--muted)}:root[data-theme=dark] .theme span:last-child{background:var(--purple);color:white}
.hero-grid{display:grid;grid-template-columns:minmax(350px,.82fr) minmax(580px,1.3fr);align-items:center;min-height:690px;position:relative}.copy{z-index:4;padding-left:2vw}.copy h1{margin:0 0 26px;font-family:Bangers,Impact,sans-serif;font-size:clamp(72px,7vw,112px);line-height:.82;letter-spacing:.015em}.line{display:block;text-shadow:2px 3px 0 #00000010}.l1{color:var(--text)}.l2{color:var(--purple)}.l3{color:var(--orange)}.copy p{font-size:clamp(18px,1.45vw,24px);line-height:1.45;max-width:520px;font-weight:500}.actions{display:flex;gap:18px;margin-top:28px}.actions a{min-width:170px;padding:16px 25px;border-radius:11px;text-decoration:none;text-align:center;font-weight:700}.primary{background:linear-gradient(135deg,var(--purple),#9224d0);color:white}.secondary{border:2px solid var(--purple);background:color-mix(in srgb,var(--surface) 80%,transparent)}
.art{height:650px;position:relative;align-self:end;isolation:isolate}.watermark{position:absolute;z-index:0;inset:7% -8% 5% -12%;background:url('assets/fond-urbain-transparent.png') center/cover no-repeat;opacity:.14;filter:saturate(1.5);-webkit-mask-image:radial-gradient(ellipse 88% 82% at center,#000 58%,#000b 72%,transparent 100%);mask-image:radial-gradient(ellipse 88% 82% at center,#000 58%,#000b 72%,transparent 100%)}:root[data-theme=dark] .watermark{opacity:.18;filter:hue-rotate(230deg) saturate(1.8) brightness(.75)}.alpacas{position:absolute;left:50%;bottom:18%;z-index:2;width:min(620px,84%);height:76%;display:flex;align-items:flex-end;justify-content:center;transform:translateX(-50%);pointer-events:none}.alpaca{position:relative;width:41%;height:100%;margin:0 -6%}.alpaca img{position:absolute;left:50%;bottom:0;width:250%;height:250%;object-fit:contain;object-position:bottom;transform:translateX(-50%);transition:opacity .72s ease,transform .72s cubic-bezier(.22,.8,.32,1)}.alpaca-costumed{opacity:0;transform:translateX(-50%) translateY(14px) scale(.98)}.alpacas.is-costumed .alpaca-nude{opacity:0;transform:translateX(-50%) translateY(-8px) scale(1.02)}.alpacas.is-costumed .alpaca-costumed{opacity:1;transform:translateX(-50%)}.alpaca:nth-child(2){z-index:3;width:45%;height:108%;margin-bottom:-2%}.brush{position:absolute;left:50%;right:auto;bottom:30%;z-index:4;width:min(680px,88%);transform:translateX(-50%) rotate(-2deg);background:#050505;color:white;padding:10px 30px 14px;font-family:Kalam,cursive;font-size:clamp(24px,2.3vw,40px);text-align:center;clip-path:polygon(2% 12%,98% 0,100% 75%,96% 89%,2% 100%,0 72%)}.socials{display:flex;align-items:center;justify-content:center;gap:clamp(14px,1.6vw,24px)}.social{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;color:white;text-decoration:none;font-weight:800;box-shadow:0 5px 14px #0003}.social svg{width:42px;height:42px;fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}.social .dot{fill:currentColor;stroke:none}.instagram{background:linear-gradient(45deg,#ff9c28,#e22c82,#7130c8)}.youtube{background:#e21b18}.facebook{background:#1877f2}
.section{padding:90px max(6vw,28px);border-top:1px solid var(--line)}.kicker{color:var(--purple);font-size:13px;text-transform:uppercase;letter-spacing:.16em;font-weight:800}.section h2{font-family:Bangers,sans-serif;font-size:clamp(52px,6vw,82px);letter-spacing:.02em;margin:0 0 30px}.prose{max-width:900px;font-size:18px;line-height:1.75;color:var(--muted)}.prose,.contact-heading .contact-intro,.media-meta p{text-align:justify;text-justify:inter-word;hyphens:auto;-webkit-hyphens:auto}

.media-section{overflow:hidden;padding:clamp(12px,2.5vw,34px) max(2vw,12px)}.media-grid{columns:4 220px;column-gap:clamp(8px,1vw,14px)}.media-card{display:inline-block;width:100%;margin:0 0 clamp(8px,1vw,14px);padding:0;border:0;border-radius:14px;overflow:hidden;background:#251530;box-shadow:0 8px 28px #26142e24;vertical-align:top;cursor:pointer;break-inside:avoid;-webkit-column-break-inside:avoid;page-break-inside:avoid;transition:box-shadow .2s ease,filter .2s ease}.media-card:hover{box-shadow:0 14px 38px #26142e4a;filter:brightness(1.06)}.media-card:focus-visible,.media-tool:focus-visible,.media-close:focus-visible,.media-arrow:focus-visible{outline:3px solid var(--orange);outline-offset:4px}.media-frame{position:relative;width:100%;aspect-ratio:var(--media-ratio,16/9);overflow:hidden;background:#251530}.media-frame img{display:block;width:100%;height:100%;object-fit:cover}.media-placeholder{position:absolute;inset:0;overflow:hidden}.media-placeholder::before,.media-placeholder::after{content:"";position:absolute;border-radius:50%;filter:blur(2px)}.media-placeholder::before{width:72%;aspect-ratio:1;right:-16%;top:-25%;background:#ffba6338}.media-placeholder::after{width:64%;aspect-ratio:1;left:-14%;bottom:-32%;background:#ee82c847}.tone-1{background:linear-gradient(145deg,#6d22bd,#e12f89 55%,#ef7800)}.tone-2{background:linear-gradient(145deg,#122542,#1a8dd5 48%,#8b2cd1)}.tone-3{background:linear-gradient(145deg,#ed7100,#dc2b76 55%,#5d27b5)}

.media-dialog{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;padding:clamp(18px,3vw,44px);border:0;background:#060811f7;color:#fff}.media-dialog::backdrop{background:#060811f7}.media-viewer{min-height:100%;display:grid;grid-template-rows:auto 1fr auto;gap:24px}.media-viewer-header{display:flex;align-items:center;justify-content:space-between;gap:24px;max-width:1280px;width:100%;margin:auto}.media-viewer-header h2{margin:3px 0 0;font-size:clamp(22px,3vw,38px)}.media-counter{margin:0;color:#c6bfd2;font-size:12px;font-weight:800;letter-spacing:.14em}.media-viewer-tools{display:flex;align-items:center;gap:12px}.media-tool,.media-close,.media-arrow{border:1px solid #ffffff42;background:#ffffff12;color:#fff;cursor:pointer}.media-tool{min-height:44px;padding:0 18px;border-radius:999px;font-weight:700}.media-close{width:48px;height:48px;border-radius:50%;font-size:30px;line-height:1}.media-stage{display:grid;grid-template-columns:56px minmax(0,1fr) 56px;align-items:center;gap:18px;width:100%;max-width:1380px;margin:auto}.media-arrow{width:56px;height:56px;border-radius:50%;font-size:40px;line-height:1}.media-viewer-visual{display:grid;place-items:center;min-width:0;min-height:0}.media-viewer-visual .media-frame{width:min(78vw,1080px);max-height:68vh;border-radius:18px;box-shadow:0 26px 90px #000b}.media-viewer-visual .ratio-portrait{width:min(54vw,520px)}.media-meta{width:min(100%,960px);margin:auto;padding:20px 24px;border:1px solid #ffffff30;border-radius:18px;background:#ffffff0c}.media-meta dl{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin:0}.media-meta dl div{min-width:0}.media-meta dt{margin-bottom:5px;color:#bbb4c5;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}.media-meta dd{margin:0;font-weight:650}.media-meta p{margin:18px 0 0;color:#d7d2dd;line-height:1.55}

footer{padding:35px 6vw 50px;border-top:1px solid var(--line);display:flex;gap:28px;align-items:center;color:var(--muted)}footer strong{color:var(--text)}footer a{margin-left:auto}.qr-dialog{width:100vw;height:100vh;max-width:none;max-height:none;margin:0;border:0;background:#070b13f5;color:white;opacity:0;transition:.18s}.qr-dialog.is-open{opacity:1}.qr-content{height:100%;display:grid;place-items:center;align-content:center;gap:16px;text-align:center}.qr-logo{width:200px}.qr-code{background:white;padding:16px;border-radius:20px}.qr-close{position:fixed;right:22px;top:22px;border:0;border-radius:50%;width:48px;height:48px;font-size:30px}.error{padding:50px}

@media(min-width:791px){.nav{grid-template-columns:auto minmax(0,1fr) auto}.header-socials{justify-self:start}}
@supports not (aspect-ratio:1){.media-frame{height:0;padding-top:56.25%}.media-frame.ratio-portrait{padding-top:125%}.media-frame>*{position:absolute;inset:0}}
@media(max-width:900px){.home{padding:14px 22px 40px}.logo{width:180px;height:101px}.links{display:none}.hero-grid{grid-template-columns:1fr;min-height:auto}.copy{padding:42px 5px 0}.copy h1{font-size:clamp(66px,18vw,105px)}.copy p{max-width:430px}.art{height:550px;margin-top:-10px}.alpacas{left:50%;bottom:18%;width:min(590px,100%);height:76%}.alpaca{width:42%;margin:0 -6%}.alpaca:nth-child(2){width:46%}.brush{left:50%;right:auto;bottom:30%;width:min(680px,92%);transform:translateX(-50%) rotate(-2deg);font-size:26px}.media-grid{columns:3 180px}.media-stage{grid-template-columns:46px minmax(0,1fr) 46px;gap:10px}.media-arrow{width:46px;height:46px}.media-viewer-visual .media-frame{width:min(76vw,900px)}.media-viewer-visual .ratio-portrait{width:min(62vw,520px)}.media-meta dl{grid-template-columns:repeat(2,1fr)}footer{flex-wrap:wrap}footer a{margin-left:0}}
@media(max-width:790px){.nav{grid-template-columns:1fr auto;grid-template-areas:"logo side" "socials socials";align-items:center;row-gap:12px}.logo-link{width:100%;max-width:200px;min-width:0}.logo-link,.nav-side{align-self:center}.logo-link picture,.logo{width:100%}.logo{height:auto}.header-socials{width:100%;justify-content:center}.social{width:80px;height:80px}.social svg{width:44px;height:44px}}
@media(max-width:520px){.nav{column-gap:10px}.logo{width:100%;height:auto;border-radius:14px;border-width:3px}.socials{gap:clamp(8px,3vw,12px)}.social{width:56px;height:56px}.social svg{width:30px;height:30px}.hero-grid{display:flex;flex-direction:column}.copy{width:100%;padding-top:32px}.copy h1{font-size:18vw}.copy p{font-size:17px}.actions{flex-wrap:wrap}.actions a{flex:1;min-width:135px}.art{width:100%;height:480px}.alpacas{left:50%;bottom:18%;width:min(460px,106%);height:76%}.alpaca{width:43%;margin:0 -7%}.alpaca:nth-child(2){width:48%}.brush{left:50%;right:auto;bottom:28%;width:min(calc(100vw - 32px),680px);max-width:none;transform:translateX(-50%) rotate(-2deg);padding:8px 10px;font-size:21px;text-align:center;white-space:nowrap}.section{padding:65px 24px}.section h2{font-size:54px}.media-section{padding:8px}.media-grid{columns:2 130px;column-gap:8px}.media-card{margin-bottom:8px;border-radius:10px}.media-dialog{padding:14px}.media-viewer{gap:14px}.media-viewer-header{align-items:flex-start}.media-viewer-tools{gap:7px}.media-tool{padding:0 12px}.media-stage{display:block;position:relative}.media-viewer-visual .media-frame,.media-viewer-visual .ratio-portrait{width:min(92vw,520px);max-height:67vh}.media-arrow{position:absolute;top:50%;z-index:3;transform:translateY(-50%);background:#060811b8}.media-prev{left:8px}.media-next{right:8px}.media-meta{max-height:32vh;overflow:auto;padding:16px}.media-meta dl{grid-template-columns:1fr 1fr;gap:14px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

/* Décorations vectorielles à la craie, dérivées de l'identité vidéo Remotion. */
.doodle-field{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:0}.hero-grid{z-index:1}.section{position:relative;overflow:hidden}.section>:not(.doodle-field){position:relative;z-index:1}.doodle{--doodle-alpha:.26;--doodle-rotate:0deg;--doodle-speed:18s;position:absolute;display:block;background:var(--doodle-color);opacity:var(--doodle-alpha);-webkit-mask:var(--doodle-image) center/contain no-repeat;mask:var(--doodle-image) center/contain no-repeat;transform:rotate(var(--doodle-rotate));animation:chalk-float var(--doodle-speed) ease-in-out infinite alternate;mix-blend-mode:multiply}.tone-pink{--doodle-color:var(--pink)}.tone-blue{--doodle-color:var(--blue)}.tone-orange{--doodle-color:var(--orange)}.tone-purple{--doodle-color:var(--purple)}.doodle-star{--doodle-image:url('assets/decorations/chalk-star.svg')}.doodle-spark{--doodle-image:url('assets/decorations/chalk-spark.svg')}.doodle-heart{--doodle-image:url('assets/decorations/chalk-heart.svg')}.doodle-arrow{--doodle-image:url('assets/decorations/chalk-arrow.svg')}.doodle-underline{--doodle-image:url('assets/decorations/chalk-underline.svg')}.doodle-swoosh{--doodle-image:url('assets/decorations/chalk-swoosh.svg')}.doodle-paint{--doodle-image:url('assets/decorations/chalk-paint-splash.svg')}:root[data-theme=dark] .doodle{opacity:calc(var(--doodle-alpha) + .06);mix-blend-mode:screen}.hero-doodles .doodle-paint{left:-4%;top:22%;width:clamp(180px,19vw,300px);aspect-ratio:260/220;--doodle-alpha:.12;--doodle-rotate:-12deg;--doodle-speed:22s}.hero-doodles .doodle-star{right:1%;top:18%;width:clamp(82px,8vw,132px);aspect-ratio:1;--doodle-alpha:.36;--doodle-rotate:9deg;--doodle-speed:16s;animation-delay:-5s}.hero-doodles .doodle-spark{right:42%;top:30%;width:clamp(54px,5vw,84px);aspect-ratio:1;--doodle-alpha:.3;--doodle-rotate:-7deg;--doodle-speed:14s;animation-delay:-9s}.hero-doodles .doodle-heart{right:3%;bottom:9%;width:clamp(82px,8vw,132px);aspect-ratio:190/180;--doodle-alpha:.27;--doodle-rotate:8deg;--doodle-speed:20s;animation-delay:-4s}.hero-doodles .doodle-arrow{left:25%;top:57%;width:clamp(170px,18vw,280px);aspect-ratio:280/180;--doodle-alpha:.2;--doodle-rotate:-8deg;--doodle-speed:24s;animation-delay:-12s}.hero-doodles .doodle-underline{left:4%;top:56%;width:clamp(220px,28vw,360px);aspect-ratio:320/90;--doodle-alpha:.16;--doodle-rotate:-3deg;--doodle-speed:26s;animation-delay:-16s}.section-doodles .doodle-paint{right:-4%;top:9%;width:clamp(180px,20vw,310px);aspect-ratio:260/220;--doodle-alpha:.08;--doodle-rotate:14deg;--doodle-speed:25s}.section-doodles .doodle-swoosh{left:2%;bottom:5%;width:clamp(220px,30vw,420px);aspect-ratio:360/150;--doodle-alpha:.13;--doodle-rotate:-5deg;--doodle-speed:27s;animation-delay:-11s}.section-doodles .doodle-star{right:7%;bottom:8%;width:clamp(70px,8vw,118px);aspect-ratio:1;--doodle-alpha:.18;--doodle-rotate:11deg;--doodle-speed:19s;animation-delay:-6s}.section-doodles .doodle-heart{left:54%;top:12%;width:clamp(68px,7vw,108px);aspect-ratio:190/180;--doodle-alpha:.12;--doodle-rotate:-9deg;--doodle-speed:21s;animation-delay:-14s}@keyframes chalk-float{from{transform:translate3d(0,-4px,0) rotate(var(--doodle-rotate))}to{transform:translate3d(8px,8px,0) rotate(calc(var(--doodle-rotate) + 2deg))}}
@media(max-width:790px){.hero-doodles .doodle-arrow,.hero-doodles .doodle-underline,.section-doodles .doodle-heart{display:none}.hero-doodles .doodle-paint{left:-18%;top:39%;width:230px}.hero-doodles .doodle-star{right:-4%;top:41%;width:86px}.hero-doodles .doodle-spark{right:8%;top:66%;width:58px}.hero-doodles .doodle-heart{right:-5%;bottom:5%;width:86px}.section-doodles .doodle-paint{right:-18%;top:5%;width:220px}.section-doodles .doodle-swoosh{left:-14%;bottom:2%;width:290px}.section-doodles .doodle-star{right:2%;bottom:4%;width:74px}}
@media(prefers-reduced-motion:reduce){.doodle{animation:none!important}}

/* Ces fichiers sont produits exclusivement par tools/build-site.py. */
.logo-link picture{display:block}
.watermark{background-image:url('assets/generated/fond-urbain-transparent-1440.png');background-image:image-set(url('assets/generated/fond-urbain-transparent-960.avif') type('image/avif') 1x,url('assets/generated/fond-urbain-transparent-960.webp') type('image/webp') 1x,url('assets/generated/fond-urbain-transparent-1440.avif') type('image/avif') 2x,url('assets/generated/fond-urbain-transparent-1440.webp') type('image/webp') 2x)}
.alpaca img.alpaca-nude{transition:opacity 1.6s cubic-bezier(.4,0,.2,1),transform 1.6s cubic-bezier(.4,0,.2,1)}
.alpaca img.alpaca-costumed{transition:opacity 1.1s cubic-bezier(.22,.8,.32,1) .18s,transform 1.1s cubic-bezier(.22,.8,.32,1) .18s}
@media(max-width:790px){.watermark{background-image:url('assets/generated/fond-urbain-transparent-960.png');background-image:image-set(url('assets/generated/fond-urbain-transparent-960.avif') type('image/avif') 1x,url('assets/generated/fond-urbain-transparent-960.webp') type('image/webp') 1x)}}

/* Héros : rapproche le message du bandeau supérieur sur grand écran. */
@media(min-width:901px){
  .home{padding-top:8px}
  .hero-grid{min-height:560px;align-items:start}
  .copy{padding-top:clamp(48px,5vh,68px)}
  .art{height:590px}
}

/* Resserrement volontaire : le héros démarre immédiatement sous la navigation. */
@media(min-width:901px){
  .hero-grid{min-height:0;align-items:start}
  .copy{padding-top:0}
  .art{height:560px}
}

/* Lisibilité du titre de groupe sur les paysages en filigrane. */
#groupe h2{
  text-shadow:0 2px 2px #fff,0 0 12px #fff,0 0 30px #fff;
}
:root[data-theme=dark] #groupe h2{
  text-shadow:0 2px 2px #07101d,0 0 12px #fff9,0 0 30px #fff6;
}

/* Pied de page volontairement réduit à la mention légale. */
footer{justify-content:center;text-align:center}

/* Halo renforcé pour isoler le titre des paysages les plus contrastés. */
#groupe h2{
  text-shadow:
    -3px -3px 0 #fff,
     3px -3px 0 #fff,
    -3px  3px 0 #fff,
     3px  3px 0 #fff,
     0 0 14px #fff,
     0 0 32px #fff,
     0 0 56px #fff;
}
:root[data-theme=dark] #groupe h2{
  text-shadow:
    -1px -1px 0 #07101d,
     1px -1px 0 #07101d,
    -1px  1px 0 #07101d,
     1px  1px 0 #07101d,
     0 0 10px #07101d,
     0 0 16px #fff4;
}

/* Raccourci QR aligné sur les boutons sociaux. */
.qr-social{
  margin:0;
  padding:0;
  border:0;
  background:linear-gradient(135deg,#111827 8%,var(--purple) 58%,var(--pink));
  cursor:pointer;
  -webkit-appearance:none;
  appearance:none;
}
.qr-social:hover,.qr-social:focus-visible{
  transform:translateY(-2px);
  box-shadow:0 9px 22px #0004;
}
.qr-social:focus-visible{outline:3px solid var(--orange);outline-offset:4px}

/* Modale QR épurée. */
.qr-dialog{padding:0}
.qr-content{gap:clamp(24px,4vh,38px);padding:32px}
.qr-content h2{
  margin:0;
  font-family:Kalam,cursive;
  font-size:clamp(34px,5vw,62px);
  line-height:1.1;
}
.qr-code{
  padding:clamp(12px,2vw,20px);
  border-radius:24px;
  box-shadow:0 24px 80px #0009,0 0 0 1px #ffffff24;
}
.qr-code img{
  display:block;
  width:min(280px,72vw)!important;
  height:auto!important;
  aspect-ratio:1;
}
.qr-close{
  z-index:2;
  background:#ffffff18;
  color:#fff;
  cursor:pointer;
}

/* Halo lisible sur l’intégralité du contenu éditorial du groupe. */
#groupe{
  text-shadow:
    -1px -1px 0 #fff,
     1px -1px 0 #fff,
    -1px  1px 0 #fff,
     1px  1px 0 #fff,
     0 0 10px #fff,
     0 0 24px #fff,
     0 0 42px #fff;
}
:root[data-theme=dark] #groupe{
  text-shadow:
    0 1px 1px #07101d,
    0 0 6px #07101d,
    0 0 12px #fff3;
}


/* Formulaire de contact intégré — interface prête pour un futur service d’envoi. */
.contact-social{margin:0;padding:0;border:0;background:linear-gradient(135deg,var(--blue),var(--purple) 58%,var(--pink));cursor:pointer;-webkit-appearance:none;appearance:none}
.contact-social:hover,.contact-social:focus-visible{transform:translateY(-2px);box-shadow:0 9px 22px #0004}
.contact-social:focus-visible,.contact-form :focus-visible{outline:3px solid var(--orange);outline-offset:3px}
.contact-section{scroll-margin-top:24px;background:linear-gradient(145deg,#168ad50d,#7130c812 54%,#e72f880d)}
.contact-layout{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(380px,1fr);align-items:start;gap:clamp(34px,6vw,88px);max-width:1180px;margin:auto}
.contact-heading{display:flex;align-items:flex-start;gap:18px;padding-top:clamp(6px,2vw,22px)}
.contact-heading-icon{display:grid;flex:0 0 62px;width:62px;height:62px;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--purple),var(--pink));color:#fff;box-shadow:0 14px 34px #7130c83d;font-size:30px}
.contact-heading p{margin:0 0 5px;color:var(--purple);font-family:Kalam,cursive;font-size:20px}
.contact-heading h2{margin:0 0 20px;font-family:Bangers,sans-serif;font-size:clamp(52px,6vw,78px);font-weight:400;letter-spacing:.025em;line-height:.92}
.contact-heading .contact-intro{max-width:430px;margin:0;color:var(--muted);font-family:Inter,system-ui,sans-serif;font-size:17px;line-height:1.65}
.contact-panel{padding:clamp(24px,4vw,40px);border:1px solid #ffffff22;border-radius:28px;background:linear-gradient(145deg,#131c30,#261636 65%,#30172a);color:#fff;box-shadow:0 24px 80px #26142e38}
.contact-form{display:grid;gap:9px}
.contact-form label{margin-top:7px;font-size:13px;font-weight:800;letter-spacing:.035em}
.contact-form label span,.contact-notice{color:#bdb5c6;font-weight:500}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #ffffff28;border-radius:13px;background:#ffffff0d;color:#fff;padding:13px 15px;font:inherit}
.contact-form select{appearance:auto}
.contact-form option{background:#131c30;color:#fff}
.contact-form textarea{resize:vertical;min-height:118px;line-height:1.45}
.contact-form input::placeholder,.contact-form textarea::placeholder{color:#aaa2b4}
.contact-message-label{display:flex;align-items:center;justify-content:space-between;margin-top:7px}
.contact-message-label label{margin:0}
.contact-message-label span{color:#bdb5c6;font-size:12px}
.contact-submit{margin-top:14px;padding:15px 22px;border:0;border-radius:13px;background:linear-gradient(135deg,var(--purple),var(--pink));color:#fff;font-weight:850}
.contact-submit:disabled{cursor:not-allowed;filter:grayscale(.35);opacity:.68}
.contact-notice{margin:2px 0 0;text-align:center;font-size:12px;line-height:1.45}
.contact-notice.is-success{color:#8ee6b0}.contact-notice.is-error{color:#ff9d9d}
.contact-trap{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}
@media(max-width:790px){.contact-layout{grid-template-columns:1fr}.contact-heading{max-width:620px}.contact-heading .contact-intro{max-width:560px}}
@media(max-width:520px){.contact-section{padding-left:18px;padding-right:18px}.contact-layout{gap:28px}.contact-heading{gap:12px}.contact-heading-icon{flex-basis:50px;width:50px;height:50px;font-size:24px}.contact-heading h2{font-size:48px}.contact-heading .contact-intro{font-size:16px}.contact-panel{padding:24px 18px;border-radius:20px}.contact-form input,.contact-form select,.contact-form textarea{padding:12px}}


/* Sélecteur de langue : adjacent au thème, sans modifier la hiérarchie mobile. */
.language-switcher{position:relative}.language-toggle{display:inline-flex;align-items:center;justify-content:center;gap:3px;min-width:48px;height:48px;padding:0 9px;border:1px solid var(--line);border-radius:999px;background:var(--surface);color:var(--text);cursor:pointer;box-shadow:0 4px 14px #00000012}.language-toggle:hover{transform:translateY(-1px)}.language-toggle:focus-visible,.language-option:focus-visible{outline:3px solid var(--orange);outline-offset:3px}.language-code{font-size:10px;font-weight:850;letter-spacing:.04em}.language-menu{position:absolute;z-index:20;top:calc(100% + 9px);right:0;min-width:148px;max-height:min(70vh,420px);overflow-y:auto;padding:6px;border:1px solid var(--line);border-radius:14px;background:var(--surface);box-shadow:var(--shadow)}.language-option{display:flex;align-items:center;gap:9px;width:100%;padding:10px;border:0;border-radius:9px;background:transparent;color:var(--text);text-align:left;cursor:pointer;font-weight:700}.language-option:hover,.language-option[aria-current=true]{background:color-mix(in srgb,var(--purple) 13%,transparent)}.language-option span{font-size:18px}.tools{display:flex;align-items:center;gap:10px}@media(max-width:520px){.language-toggle{min-width:42px;height:42px;padding:0 7px}.language-code{display:none}.tools{gap:7px}}
