:root{--pink:#e85f7d;--ink:#171715;--ivory:#f7f2e9;--sand:#e9dfcf;--gold:#806b47;--white:#fff;--serif:Georgia,'Times New Roman',serif;--sans:Arial,Helvetica,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#fff;color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.65}a{color:inherit;text-decoration:none}img{display:block;max-width:100%}.eyebrow{text-transform:uppercase;letter-spacing:.22em;font-size:11px;color:var(--gold)}h1,h2,h3{font-family:var(--serif);font-weight:400;margin:.15em 0;line-height:1.05}h1{font-size:clamp(48px,7vw,100px)}h2{font-size:clamp(34px,5vw,66px)}h3{font-size:28px}.lead{font-family:var(--serif);font-size:clamp(20px,2.3vw,30px);line-height:1.35}.wrap{width:min(1180px,90vw);margin:auto}.section{padding:100px 0}.beige{background:var(--ivory)}.dark{background:var(--ink);color:white}.pinkline{width:54px;height:2px;background:var(--pink);margin:22px 0}.btn{display:inline-block;padding:14px 22px;border:1px solid currentColor;text-transform:uppercase;letter-spacing:.13em;font-size:11px;transition:.25s}.btn:hover{background:var(--ink);color:#fff;border-color:var(--ink)}.btn.gold{background:var(--gold);color:#fff;border-color:var(--gold)}.btn.pink{background:var(--pink);color:#fff;border-color:var(--pink)}
header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.96);border-bottom:1px solid #eee}.nav{height:86px;display:flex;align-items:center;gap:28px}.brand img{width:145px}.links{margin-left:auto;display:flex;align-items:center;gap:20px;text-transform:uppercase;letter-spacing:.1em;font-size:10px;white-space:nowrap}.navcta{padding:11px 15px;background:var(--gold);color:#fff}.burger{display:none;margin-left:auto;border:0;background:none;font-size:25px}
.intro{position:fixed;inset:0;z-index:100;background:#f7f2e9;display:grid;place-items:center;overflow:hidden;transition:opacity .8s,visibility .8s}.intro.hide{opacity:0;visibility:hidden}.intro-bg{position:absolute;inset:0;background:url('assets/hero-houppa.png') center 72%/cover;filter:saturate(.65) contrast(.8) brightness(1.12);opacity:.26}.intro:before,.intro:after{content:'';position:absolute;top:0;bottom:0;width:50%;background:rgba(247,242,233,.70);backdrop-filter:blur(2px);transition:transform 1.25s cubic-bezier(.77,0,.18,1)}.intro:before{left:0}.intro:after{right:0}.intro.open:before{transform:translateX(-100%)}.intro.open:after{transform:translateX(100%)}.intro-card{position:relative;z-index:3;text-align:center;padding:30px}.intro-card img{width:220px;margin:0 auto 22px}.intro-card .lead{max-width:570px}.intro.open .intro-card{opacity:0;transition:.35s}
.hero{min-height:calc(100vh - 86px);position:relative;display:flex;align-items:flex-end;color:white;background:url('assets/hero-houppa.png') center 72%/cover}.hero:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,rgba(0,0,0,.08),rgba(0,0,0,.58))}.hero-content{position:relative;z-index:2;padding:80px 0;width:min(1180px,90vw);margin:auto}.hero h1{max-width:850px}.hero p{max-width:750px}.hero .eyebrow{color:white}.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:28px}
.grid2{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}.grid3{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.service{padding:34px 0;border-top:1px solid #cfc4b3}.service .num{color:var(--pink);font-family:var(--serif);font-size:20px}.service p{max-width:620px}.service details summary{cursor:pointer;text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:var(--gold);margin-top:15px}.photo-tall{height:650px;object-fit:cover;width:100%}.photo-card{position:relative;overflow:hidden;background:#ddd}.photo-card img{height:430px;width:100%;object-fit:cover;transition:.5s}.photo-card:hover img{transform:scale(1.025)}.photo-card .cap{position:absolute;left:0;right:0;bottom:0;padding:35px 25px 20px;color:white;background:linear-gradient(transparent,rgba(0,0,0,.65))}.strip{display:grid;grid-template-columns:1.4fr .8fr .8fr;gap:8px}.strip img{height:460px;width:100%;object-fit:cover}.quote{max-width:830px;margin:auto;text-align:center}.quote blockquote{font-family:var(--serif);font-size:clamp(24px,3vw,42px);line-height:1.35;margin:25px 0}.social-row{display:flex;gap:10px;flex-wrap:wrap}.social-row a{border:1px solid #ccc;padding:10px 14px;font-size:11px;text-transform:uppercase;letter-spacing:.12em}
.pagehero{padding:95px 0 75px;background:var(--ivory);text-align:center}.pagehero p{max-width:760px;margin:20px auto}.gallery{columns:3 260px;column-gap:14px}.gallery img{width:100%;margin:0 0 14px;break-inside:avoid;cursor:zoom-in}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{padding:28px;background:#fff;border:1px solid #e5ddd0}.form{display:grid;grid-template-columns:1fr 1fr;gap:16px}.form .full{grid-column:1/-1}.form input,.form select,.form textarea{width:100%;padding:14px;border:1px solid #d8d0c4;background:#fff;font:inherit}.form textarea{min-height:150px}.whatsapp{position:fixed;right:18px;bottom:18px;z-index:45;background:#fff;border:1px solid #ddd;padding:12px 15px;border-radius:999px;box-shadow:0 5px 25px #0002;font-size:12px}
footer{background:#111;color:#fff;padding:70px 0 30px}.footerlogo{font-family:var(--serif);font-size:32px;letter-spacing:.08em}.footerlogo .be{color:var(--pink)}.footergrid{display:grid;grid-template-columns:1.4fr 1fr 1fr;gap:50px}.footerlinks{display:grid;gap:8px;font-size:13px}.copy{margin-top:50px;padding-top:20px;border-top:1px solid #333;font-size:11px;color:#aaa;display:flex;justify-content:space-between;gap:20px;flex-wrap:wrap}.cookie{position:fixed;left:18px;right:18px;bottom:18px;z-index:90;background:#fff;border:1px solid #ddd;box-shadow:0 10px 40px #0003;padding:18px;display:flex;align-items:center;gap:20px}.cookie p{margin:0;flex:1;font-size:12px}.cookie.hide{display:none}
@media(max-width:980px){.links{display:none;position:absolute;top:86px;left:0;right:0;background:white;padding:24px;flex-direction:column;align-items:flex-start}.links.open{display:flex}.burger{display:block}.grid2{grid-template-columns:1fr;gap:35px}.grid3,.cards{grid-template-columns:1fr 1fr}.photo-tall{height:520px}.strip{grid-template-columns:1fr 1fr}.strip img:first-child{grid-column:1/-1}.footergrid{grid-template-columns:1fr 1fr}}
@media(max-width:640px){.section{padding:70px 0}.nav{height:72px}.links{top:72px}.brand img{width:125px}.hero{min-height:78vh;background-position:58% 72%}.hero-content{padding:55px 0}.grid3,.cards,.form,.footergrid{grid-template-columns:1fr}.form .full{grid-column:auto}.strip{grid-template-columns:1fr}.strip img,.strip img:first-child{grid-column:auto;height:380px}.photo-card img{height:360px}.cookie{flex-wrap:wrap}.whatsapp{bottom:86px}}
/* V2 — ouverture enveloppe aquarelle */
.intro{position:fixed;inset:0;z-index:1000;background:#f4eee4;display:flex;flex-direction:column;align-items:center;justify-content:center;overflow:hidden;perspective:1600px;transition:opacity .75s ease,visibility .75s ease}.intro.gone{opacity:0;visibility:hidden;pointer-events:none}.intro-kicker{position:absolute;top:6vh;z-index:8;font-family:var(--serif);font-size:11px;letter-spacing:.34em;color:#705936}.envbtn{position:relative;width:min(790px,88vw);height:min(510px,62vw);max-height:66vh;border:0;background:transparent;padding:0;cursor:pointer;filter:drop-shadow(0 28px 35px rgba(62,45,32,.18));transform-style:preserve-3d}.env-back{position:absolute;inset:9% 0 0;background:#eadfce;border:1px solid rgba(112,89,54,.25);border-radius:3px;z-index:0}.env-letter{position:absolute;left:7%;right:7%;top:0;height:86%;background:#faf7f0;overflow:hidden;z-index:2;box-shadow:0 4px 22px rgba(50,35,20,.12);transition:transform 1.15s cubic-bezier(.2,.72,.2,1) .45s}.watercolor{position:absolute;inset:0;background:linear-gradient(to bottom,rgba(255,255,255,.08),rgba(255,255,255,.12)),url('assets/houppa-aquarelle.png') center 48%/cover no-repeat}.intro-logo{position:absolute;z-index:3;width:min(300px,45%);height:auto;left:50%;top:7%;transform:translateX(-50%);filter:drop-shadow(0 2px 4px rgba(255,255,255,.6))}.intro-destination{position:absolute;z-index:3;left:0;right:0;bottom:5%;font-size:10px;letter-spacing:.22em;color:#705936;text-align:center}.env-pocket{position:absolute;z-index:4;pointer-events:none}.env-pocket-left{left:0;bottom:0;width:51%;height:72%;background:linear-gradient(145deg,#f6efe4 8%,#eadfce 95%);clip-path:polygon(0 0,100% 65%,100% 100%,0 100%);border-left:1px solid rgba(112,89,54,.22)}.env-pocket-right{right:0;bottom:0;width:51%;height:72%;background:linear-gradient(215deg,#f8f1e7 8%,#eadfce 95%);clip-path:polygon(100% 0,0 65%,0 100%,100% 100%);border-right:1px solid rgba(112,89,54,.22)}.env-pocket-bottom{left:0;right:0;bottom:0;height:48%;background:linear-gradient(0deg,#efe4d4,#f8f2e8);clip-path:polygon(0 100%,50% 8%,100% 100%);z-index:5;border-bottom:1px solid rgba(112,89,54,.2)}.env-flap{position:absolute;z-index:6;left:0;right:0;top:9%;height:58%;transform-origin:50% 0;transform:rotateX(0deg);background:linear-gradient(180deg,#f9f3e9,#e9ddcb);clip-path:polygon(0 0,100% 0,50% 100%);border-top:1px solid rgba(112,89,54,.25);transition:transform 1.05s cubic-bezier(.3,.65,.2,1)}.env-seal{position:absolute;z-index:7;left:50%;top:53%;width:74px;height:74px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle at 35% 28%,#f5a0b2,#e85f7d 58%,#b73e59);box-shadow:0 3px 12px rgba(84,34,43,.3),inset 0 0 0 5px rgba(255,255,255,.15);display:grid;place-items:center;transition:opacity .3s ease .15s,transform .45s ease}.env-seal:after{content:'';position:absolute;inset:8px;border:1px solid rgba(255,255,255,.48);border-radius:50%}.env-seal span{font-family:var(--serif);font-size:25px;color:#fff}.intro-hint{margin-top:30px;font-size:11px;letter-spacing:.3em;color:#705936;z-index:8;transition:opacity .25s}.intro.open .env-flap{transform:rotateX(178deg);z-index:1}.intro.open .env-seal{opacity:0;transform:translate(-50%,-50%) scale(.72)}.intro.open .env-letter{transform:translateY(-31%) scale(1.03);transition-delay:.75s}.intro.open .intro-hint,.intro.open .intro-kicker{opacity:0}.brand img{background:transparent!important}
@media(max-width:700px){.envbtn{width:92vw;height:66vw;min-height:310px}.intro-kicker{top:8vh}.env-seal{width:60px;height:60px}.env-seal span{font-size:21px}.intro-logo{width:48%;top:7%}.intro-destination{font-size:8px;letter-spacing:.13em}.intro-hint{margin-top:24px;font-size:9px;letter-spacing:.24em}}
/* V3 — retours 29/09 */
.intro:before,.intro:after{display:none!important}.env-seal{display:none!important}.intro.open .envbtn{transform:scale(1.18);transition:transform 1.15s cubic-bezier(.2,.75,.2,1) .85s}.intro.open .env-letter{transform:translateY(-23%) scale(1.13);z-index:9}.intro.open .env-flap{transform:rotateX(178deg);z-index:1}.hero-title{font-weight:400;letter-spacing:-.025em}.hero-title em{font-weight:400}.hero-title span,.savoir-title span,.prest-intro h2 span,.editorial-feature h2 span{color:var(--pink)}.savoir-title{font-weight:400;letter-spacing:-.02em}.cookie{left:50%;right:auto;bottom:28px;transform:translateX(-50%);width:min(760px,calc(100vw - 32px));padding:24px 26px;border:0;border-radius:18px;box-shadow:0 18px 70px #0003;gap:12px;background:rgba(255,255,255,.98)}.cookie p{font-family:var(--serif);font-size:14px;line-height:1.5;margin-right:10px}.cookie .btn{padding:11px 14px;border-radius:999px}.prest-intro{max-width:760px;margin:0 auto 70px;text-align:center}.prest-intro h2{font-size:clamp(36px,4.5vw,62px)}.signature-services{display:grid;gap:80px}.signature-service{display:grid;grid-template-columns:1fr 1fr;gap:60px;align-items:center}.signature-service.reverse .signature-copy{order:2}.signature-service.reverse img{order:1}.signature-service>img{width:100%;height:560px;object-fit:cover}.signature-copy .num{font-family:var(--serif);color:var(--pink);font-size:20px}.signature-copy details summary{cursor:pointer;text-transform:uppercase;letter-spacing:.14em;font-size:11px;color:var(--gold);margin-top:20px}.visual-services{display:grid;grid-template-columns:repeat(2,1fr);gap:20px;margin-top:110px}.visual-service{position:relative;height:500px;overflow:hidden;background:#ddd}.visual-service>img,.pro-collage{width:100%;height:100%}.visual-service>img{object-fit:cover;transition:.6s}.visual-service:hover>img{transform:scale(1.035)}.visual-overlay{position:absolute;inset:0;display:flex;flex-direction:column;justify-content:flex-end;padding:34px;color:white;background:linear-gradient(180deg,transparent 35%,rgba(0,0,0,.68));transition:.3s}.visual-overlay h3{font-size:34px}.visual-overlay span{text-transform:uppercase;letter-spacing:.16em;font-size:10px}.pro-collage{display:grid;grid-template-columns:1fr 1fr}.pro-collage img{width:100%;height:50%;object-fit:cover}.pro-collage img:first-child{grid-row:1/3;height:100%}.service-descriptions{display:grid;grid-template-columns:repeat(2,1fr);gap:18px;margin-top:22px}.service-descriptions>div{padding:30px;background:var(--ivory);scroll-margin-top:110px}.service-descriptions h3{font-size:26px}.editorial-feature{margin-top:100px;display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}.editorial-feature img{width:100%;height:650px;object-fit:cover}.editorial-feature h2{font-size:clamp(38px,4vw,58px)}.no-price{margin-top:45px}
@media(max-width:800px){.intro.open .envbtn{transform:scale(1.08)}.signature-service,.editorial-feature{grid-template-columns:1fr}.signature-service.reverse .signature-copy,.signature-service.reverse img{order:initial}.signature-service>img,.editorial-feature img{height:460px}.visual-services,.service-descriptions{grid-template-columns:1fr}.visual-service{height:440px}.cookie{flex-wrap:wrap}.cookie p{flex-basis:100%;margin:0 0 6px}}
/* V4 — entrée cinématique, typographie plus fine, cartes prestations */
.intro-cinematic{background:#f6f0e7!important;padding:0!important;perspective:none!important}
.intro-scene{position:absolute;inset:0;width:100%;height:100%;border:0;padding:0;background:#f6f0e7;cursor:pointer;overflow:hidden;color:inherit}
.intro-art{position:absolute;inset:7vh 7vw;background:url('assets/houppa-aquarelle.png') center/cover no-repeat;box-shadow:0 30px 90px rgba(58,43,32,.16);transition:transform 2.1s cubic-bezier(.2,.75,.2,1),inset 2.1s cubic-bezier(.2,.75,.2,1),filter 2s ease;border-radius:2px}
.intro-veil{position:absolute;inset:0;background:linear-gradient(90deg,rgba(247,242,233,.78),rgba(247,242,233,.32),rgba(247,242,233,.78));transition:opacity 1.5s ease}
.intro-center{position:absolute;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:20px;transition:opacity .75s ease}
.intro-cinematic .intro-logo{position:static;transform:none;width:min(330px,54vw);filter:none}
.intro-cinematic .intro-destination{position:static;font-size:10px;letter-spacing:.24em;color:#5e4b38}
.intro-enter{margin-top:12px;padding:14px 24px;border-bottom:1px solid var(--pink);font-size:10px;letter-spacing:.28em;color:#33291f}
.intro-cinematic.open .intro-art{inset:0;transform:scale(1.07);filter:saturate(.9) brightness(1.03)}
.intro-cinematic.open .intro-veil{opacity:0}
.intro-cinematic.open .intro-center{opacity:0}
.hero-title{font-weight:300!important;line-height:.98;letter-spacing:-.035em}.hero-title em{font-weight:300!important}.hero-title span{font-weight:400}
.visual-overlay{gap:8px}.visual-overlay p{margin:2px 0 0;max-width:560px;font-size:14px;line-height:1.5;color:rgba(255,255,255,.92)}
.pro-collage{display:grid!important;grid-template-columns:1.25fr .75fr!important;grid-template-rows:1fr 1fr!important;gap:4px;background:#fff}.pro-collage img{display:block!important;width:100%!important;height:100%!important;object-fit:cover!important;min-height:0}.pro-collage img:first-child{grid-row:1/3!important;height:100%!important}.copy a{color:inherit;text-decoration:none;border-bottom:1px solid rgba(255,255,255,.35)}.copy a:hover{color:var(--pink)}
.legal-content{max-width:820px}.legal-content h2{margin-top:34px}.legal-content a{color:var(--pink)}
@media(max-width:700px){.intro-art{inset:5vh 5vw}.intro-cinematic .intro-destination{font-size:8px;letter-spacing:.14em}.visual-overlay{padding:24px}.visual-overlay h3{font-size:29px}.visual-overlay p{font-size:13px}.hero-title{font-weight:300!important}}

/* V4 — corrections finales demandées */
.hero-title,.savoir-title,.prest-intro h2,.editorial-feature h2,.pagehero h1,.section h2{font-weight:300!important;}
.hero-title em{font-weight:300!important;}
.intro-cinematic .intro-logo{animation:jbeLogoFade 1.8s ease both .35s;}
.intro-enter{animation:jbeLogoFade 1.5s ease both 1.05s;}
@keyframes jbeLogoFade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
.intro-cinematic .intro-logo{transform:none!important;}

/* V5 — entrée sans enveloppe + typographie éditoriale affinée */
/* Neutralise définitivement tous les anciens composants d'enveloppe */
.envbtn,.env-back,.env-letter,.env-pocket,.env-pocket-left,.env-pocket-right,.env-pocket-bottom,.env-flap,.env-seal,.intro-kicker,.intro-hint{display:none!important}
.intro-cinematic{background:#f6f0e7!important}
.intro-scene{display:block!important}
.intro-art{inset:0!important;border-radius:0!important;box-shadow:none!important;background-image:url('assets/houppa-aquarelle.png')!important;background-position:center!important;background-size:cover!important}
.intro-veil{background:rgba(247,242,233,.22)!important}
.intro-cinematic.open .intro-art{inset:0!important;transform:scale(1.035)!important}

/* Titres : plus fins et plus couture */
.hero-title,.hero-title em,.savoir-title,.prest-intro h2,.editorial-feature h2{font-family:Georgia,'Times New Roman',serif!important;font-weight:300!important;letter-spacing:-.045em!important;line-height:1.02!important}
.hero-title span,.savoir-title span,.prest-intro h2 span,.editorial-feature h2 span{font-weight:300!important}

/* Pages légales : hiérarchie plus discrète */
body.legal-page .pagehero{padding:64px 0 50px}
body.legal-page .pagehero h1{font-size:clamp(38px,5vw,62px)!important;font-weight:300!important;letter-spacing:-.025em}
body.legal-page .legal-content h2{font-size:clamp(23px,2.4vw,31px)!important;font-weight:400!important;line-height:1.15;margin-top:34px}


/* V6 — entrée simplifiée : aucune enveloppe visible */
.intro-cinematic{background:#f7f2e9!important}
.intro-scene{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;overflow:hidden!important;background:#f7f2e9!important}
/* L'image source contient un ancien habillage d'enveloppe : cadrage CSS volontaire sur la houppa + artifices uniquement. */
.intro-art{position:absolute!important;inset:0!important;background-image:url('assets/houppa-aquarelle.png')!important;background-repeat:no-repeat!important;background-size:165% auto!important;background-position:50% 24%!important;transform:scale(1)!important;filter:none!important;opacity:1!important;transition:transform 1.7s ease!important}
.intro-veil{position:absolute!important;inset:0!important;background:rgba(247,242,233,.46)!important;opacity:1!important;transition:opacity 1.05s ease!important}
.intro-center{position:absolute!important;inset:0!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;gap:30px!important;opacity:1!important;transition:opacity .55s ease!important;z-index:3!important}
.intro-cinematic .intro-logo{position:static!important;width:min(350px,58vw)!important;height:auto!important;opacity:0;animation:v6Fade 1.5s ease .35s forwards!important;transform:none!important;filter:drop-shadow(0 2px 12px rgba(255,255,255,.7))!important}
.intro-enter{appearance:none;border:1px solid rgba(53,43,34,.58)!important;background:rgba(255,255,255,.50)!important;color:#2c241e!important;padding:14px 24px!important;font:400 10px/1 Arial,Helvetica,sans-serif!important;letter-spacing:.27em!important;text-transform:uppercase!important;cursor:pointer!important;opacity:0;animation:v6Fade 1.35s ease 1.05s forwards!important;transition:background .25s ease,color .25s ease,opacity .35s ease!important}
.intro-enter:hover{background:#fff!important;color:#111!important}
@keyframes v6Fade{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
/* Au clic : logo + bouton disparaissent, le voile s'efface et l'aquarelle apparaît seule avant l'accueil. */
.intro-cinematic.open .intro-center{opacity:0!important;pointer-events:none!important}
.intro-cinematic.open .intro-veil{opacity:0!important}
.intro-cinematic.open .intro-art{transform:scale(1.025)!important}

/* Typographie éditoriale réellement plus fine (Bodoni/Didot plutôt que Georgia). */
.hero-title,.hero-title em,.savoir-title,.prest-intro h2,.editorial-feature h2,.section h2{
  font-family:"Bodoni 72",Didot,"Bodoni MT","Times New Roman",serif!important;
  font-weight:400!important;
  letter-spacing:-.035em!important;
  line-height:1.01!important;
}
.hero-title span,.savoir-title span,.prest-intro h2 span,.editorial-feature h2 span{font-weight:400!important}
@media(max-width:700px){.intro-art{background-size:auto 115%!important;background-position:50% 22%!important}.intro-cinematic .intro-logo{width:min(300px,72vw)!important}.intro-center{gap:24px!important}}
/* V7 — entrée enveloppe validée */
.intro-envelope{position:fixed;inset:0;z-index:9999;background:#f6efe5;overflow:hidden;display:block!important;opacity:1;transition:opacity .85s ease}
.entry-envelope{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;z-index:3;transition:transform 1.05s cubic-bezier(.2,.75,.2,1),opacity .75s ease}
.entry-envelope img{display:block;width:min(94vw,1500px);height:auto;max-height:94vh;object-fit:contain;filter:drop-shadow(0 18px 32px rgba(86,62,42,.13));transition:transform .9s ease}
.seal-click{position:absolute;left:50%;top:56%;width:min(190px,13vw);aspect-ratio:1;transform:translate(-50%,-50%);border:0;border-radius:50%;background:transparent;cursor:pointer;z-index:4}
.seal-click:focus-visible{outline:2px solid #d49a87;outline-offset:7px}
.watercolor-reveal{position:absolute;inset:0;z-index:1;background:url('assets/houppa-aquarelle.png') center/cover no-repeat;opacity:0;transform:scale(.88);transition:opacity .8s ease .55s,transform 2.15s cubic-bezier(.18,.7,.18,1) .45s}
.intro-envelope.open .entry-envelope{transform:translateY(-13vh) scale(1.06);opacity:0;pointer-events:none}
.intro-envelope.open .entry-envelope img{transform:scale(1.035)}
.intro-envelope.open .watercolor-reveal{opacity:1;transform:scale(1.08)}
.intro-envelope.finish{opacity:0;pointer-events:none}
/* Titres plus fins / éditoriaux */
.hero-title,.hero-title em,.savoir-title,.prest-intro h2,.editorial-feature h2,.section h2,.pagehero h1{font-family:'Bodoni 72','Didot','Bodoni MT','Times New Roman',serif!important;font-weight:400!important;letter-spacing:-.055em!important;line-height:.96!important}
.hero-title em{font-weight:400!important;font-style:italic!important}
.hero-title span,.savoir-title span,.prest-intro h2 span,.editorial-feature h2 span{font-weight:400!important}
@media(max-width:700px){.entry-envelope img{width:112vw;max-width:none}.seal-click{top:55%;width:25vw}.watercolor-reveal{background-position:center}}

/* V8 — séquence d'entrée conforme au storyboard validé */
@import url('https://fonts.googleapis.com/css2?family=Cormorant+Garamond:ital,wght@0,300;0,400;1,300&display=swap');
.intro-envelope{background:#f5ecdf!important;perspective:1600px}
.entry-closed{z-index:6;transition:opacity .55s ease,transform .8s cubic-bezier(.2,.75,.2,1)!important}
.entry-closed img{width:min(94vw,1500px)!important;max-height:94vh!important;object-fit:contain!important}
.seal-click{top:58%!important;width:min(220px,16vw)!important;min-width:110px!important;z-index:8!important}
.entry-opening{position:absolute;left:50%;top:50%;width:min(92vw,1420px);aspect-ratio:1.78;transform:translate(-50%,-50%) scale(.92);opacity:0;z-index:4;filter:drop-shadow(0 24px 35px rgba(83,58,38,.12));transition:opacity .35s ease .28s,transform .8s ease .25s}
.open-envelope-back{position:absolute;inset:0;background:#f7efe4;border:1px solid #d8b98f}
.open-watercolor{position:absolute;left:4%;right:4%;top:5%;bottom:6%;background:url('assets/houppa-aquarelle.png') center/cover no-repeat;opacity:0;transform:scale(.82);transition:opacity .65s ease 1s,transform 1.9s cubic-bezier(.2,.72,.2,1) 1s;z-index:2}
.open-envelope-left,.open-envelope-right,.open-envelope-bottom{position:absolute;z-index:3;bottom:0;background:linear-gradient(160deg,#fffaf2,#eee0ce);border-color:#d8b98f;border-style:solid;border-width:0 0 1px}
.open-envelope-left{left:0;width:51%;height:76%;clip-path:polygon(0 0,100% 67%,100% 100%,0 100%);border-left-width:1px}
.open-envelope-right{right:0;width:51%;height:76%;clip-path:polygon(100% 0,0 67%,0 100%,100% 100%);border-right-width:1px}
.open-envelope-bottom{left:0;right:0;height:52%;clip-path:polygon(0 100%,50% 8%,100% 100%)}
.open-envelope-flap{position:absolute;left:0;right:0;top:0;height:60%;z-index:5;transform-origin:50% 0;transform:rotateX(0deg);background:linear-gradient(180deg,#fffaf3,#ecddc9);clip-path:polygon(0 0,100% 0,50% 100%);border-top:1px solid #d8b98f;transition:transform 1s cubic-bezier(.2,.7,.2,1) .42s}
.watercolor-full{position:absolute;inset:0;background:url('assets/houppa-aquarelle.png') center/cover no-repeat;opacity:0;transform:scale(.82);z-index:5;transition:opacity .8s ease,transform 2.2s cubic-bezier(.16,.7,.18,1)}
.intro-envelope.open .entry-closed{opacity:0!important;transform:translate(-50%,-50%) scale(.97)!important;pointer-events:none}
.intro-envelope.open .entry-opening{opacity:1;transform:translate(-50%,-50%) scale(1)}
.intro-envelope.open .open-envelope-flap{transform:rotateX(178deg);z-index:1}
.intro-envelope.open .open-watercolor{opacity:1;transform:scale(1)}
.intro-envelope.expand .entry-opening{opacity:0;transition:opacity .55s ease}
.intro-envelope.expand .watercolor-full{opacity:1;transform:scale(1.08)}
.intro-envelope.finish{opacity:0!important;pointer-events:none}
/* vraie typo fine, et non une fausse graisse sur Times/Bodoni */
.hero-title,.hero-title em,.savoir-title,.prest-intro h2,.editorial-feature h2,.section h2,.pagehero h1,.quote blockquote,.lead{
  font-family:'Cormorant Garamond','Baskerville','Iowan Old Style',serif!important;
  font-weight:300!important;letter-spacing:-.025em!important;line-height:.98!important
}
.hero-title{font-size:clamp(54px,7.2vw,104px)!important}
.hero-title em{font-style:italic!important;font-weight:300!important}
.hero-title span,.savoir-title span{font-weight:300!important;color:var(--pink)}
/* cookies */
.cookie{left:50%!important;right:auto!important;bottom:24px!important;transform:translateX(-50%);width:min(900px,calc(100vw - 32px));border:0!important;border-radius:18px;background:rgba(255,253,249,.97)!important;box-shadow:0 18px 70px rgba(45,32,22,.18)!important;padding:22px 24px!important;gap:12px!important}
.cookie p{font-size:12px!important;color:#51483f}.cookie .btn{background:transparent}.cookie .btn.pink{background:var(--pink)}
.cookie-settings{position:fixed;inset:0;z-index:10050;background:rgba(25,20,16,.38);display:none;align-items:center;justify-content:center;padding:20px}
.cookie-settings.open{display:flex}.cookie-panel{width:min(560px,100%);background:#fffaf5;border-radius:20px;padding:30px;box-shadow:0 24px 90px rgba(0,0,0,.22)}
.cookie-panel h2{font-family:'Cormorant Garamond',serif!important;font-size:38px!important;font-weight:300!important;margin:0 0 8px}.cookie-panel p{font-size:13px;color:#62584f}.cookie-row{display:flex;align-items:center;justify-content:space-between;gap:25px;padding:18px 0;border-top:1px solid #eee2d5}.cookie-row strong{font-family:Arial,sans-serif;font-size:13px}.cookie-row small{display:block;color:#81766c;margin-top:4px}.cookie-switch{width:44px;height:24px;border:0;border-radius:20px;background:#d8cec3;position:relative;cursor:pointer}.cookie-switch:after{content:'';position:absolute;width:18px;height:18px;left:3px;top:3px;border-radius:50%;background:white;transition:.2s}.cookie-switch.on{background:var(--pink)}.cookie-switch.on:after{left:23px}.cookie-switch.locked{background:#b7aa9c;cursor:not-allowed}.cookie-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px;flex-wrap:wrap}
@media(max-width:700px){.entry-opening{width:108vw}.seal-click{width:28vw!important}.cookie{flex-wrap:wrap!important}.cookie p{flex-basis:100%}.cookie .btn{flex:1;text-align:center;padding:12px 8px}.cookie-panel{padding:24px}.hero-title{font-size:clamp(48px,15vw,72px)!important}}

.cookie.cookie-waiting{opacity:0!important;visibility:hidden!important;pointer-events:none!important}.cookie{transition:opacity .45s ease,visibility .45s ease}.cookie-settings{z-index:20000!important}

/* V10 — transition simplifiée : enveloppe fermée -> disparition -> aquarelle zoom plein écran -> accueil */
.entry-opening,.open-envelope-back,.open-watercolor,.open-envelope-left,.open-envelope-right,.open-envelope-bottom,.open-envelope-flap{display:none!important}
.entry-closed{opacity:1!important;transform:none!important;transition:opacity .38s ease,transform .38s ease!important}
.intro-envelope.open .entry-closed{opacity:0!important;transform:scale(.985)!important;pointer-events:none!important}
.watercolor-full{position:absolute!important;inset:0!important;z-index:5!important;background:url('assets/houppa-aquarelle.png') center/cover no-repeat!important;opacity:0!important;transform:scale(.72)!important;transition:opacity .55s ease .12s,transform 2.45s cubic-bezier(.12,.68,.12,1) .12s!important}
.intro-envelope.open .watercolor-full,.intro-envelope.expand .watercolor-full{opacity:1!important;transform:scale(1.22)!important}
.intro-envelope.finish{opacity:0!important;transition:opacity .8s ease!important;pointer-events:none!important}

/* V11 — aquarelle seule après le clic : aucun cachet JB / aucun texte d'entrée visible */
.watercolor-full{
  background-image:url('assets/houppa-aquarelle.png')!important;
  background-repeat:no-repeat!important;
  background-size:190% auto!important;
  background-position:50% 18%!important;
  opacity:0!important;
  transform:scale(.82)!important;
  transition:opacity .5s ease .08s,transform 2.5s cubic-bezier(.12,.68,.12,1) .08s!important;
}
.intro-envelope.open .watercolor-full,.intro-envelope.expand .watercolor-full{
  opacity:1!important;
  transform:scale(1.28)!important;
}
@media(max-width:700px){
  .watercolor-full{background-size:auto 150%!important;background-position:50% 12%!important}
}

/* V12 — l'aquarelle apparaît d'abord EN ENTIER, puis zoome jusqu'au plein écran */
.watercolor-full{
  background-color:#f5ecdf!important;
  background-size:contain!important;
  background-position:center center!important;
  opacity:0!important;
  transform:scale(.96)!important;
  transition:opacity .55s ease,transform 2.35s cubic-bezier(.12,.68,.12,1)!important;
}
.intro-envelope.open .watercolor-full{
  opacity:1!important;
  transform:scale(1)!important;
}
.intro-envelope.expand .watercolor-full{
  opacity:1!important;
  transform:scale(1.38)!important;
}
@media(max-width:700px){
  .watercolor-full{background-size:contain!important;background-position:center center!important}
  .intro-envelope.expand .watercolor-full{transform:scale(1.72)!important}
}

/* V13 — après clic : photo aquarelle fournie par Audrey, seule, sans enveloppe */
.watercolor-full{
  background-image:url('assets/houppa-aquarelle.png')!important;
  background-size:contain!important;
  background-position:center center!important;
  background-repeat:no-repeat!important;
  background-color:#fbfaf6!important;
  opacity:0!important;
  transform:scale(.94)!important;
  transition:opacity .55s ease .08s,transform 2.45s cubic-bezier(.12,.68,.12,1) .35s!important;
}
.intro-envelope.open .watercolor-full{
  opacity:1!important;
  transform:scale(1)!important;
}
.intro-envelope.expand .watercolor-full{
  opacity:1!important;
  transform:scale(1.65)!important;
}
@media(max-width:700px){
  .intro-envelope.expand .watercolor-full{transform:scale(1.42)!important}
}


/* V15 — séquence propre : enveloppe fermée > ouverture > retrait > aquarelle plein écran */
.entry-envelope.entry-closed{z-index:20!important;transition:opacity .28s ease!important}
.entry-opening{display:block!important;position:absolute!important;left:50%!important;top:50%!important;width:min(94vw,1500px)!important;aspect-ratio:1.82/1!important;transform:translate(-50%,-50%)!important;z-index:19!important;opacity:0!important;pointer-events:none!important;perspective:1600px!important;transition:opacity .18s ease!important}
.opening-back{position:absolute;inset:0;background:#f8efe2;border:1px solid #d8b98f;box-shadow:0 18px 32px rgba(86,62,42,.13)}
.opening-flap{position:absolute;left:0;right:0;top:0;height:58%;z-index:6;transform-origin:50% 0;transform:rotateX(0deg);background:linear-gradient(180deg,#fff8ee,#ecd8c2);clip-path:polygon(0 0,100% 0,50% 100%);border-top:1px solid #d8b98f;transition:transform .72s cubic-bezier(.2,.72,.2,1)}
.opening-left,.opening-right,.opening-bottom{position:absolute;bottom:0;z-index:5;background:linear-gradient(160deg,#fff9f0,#ead8c2)}
.opening-left{left:0;width:51%;height:76%;clip-path:polygon(0 0,100% 67%,100% 100%,0 100%)}
.opening-right{right:0;width:51%;height:76%;clip-path:polygon(100% 0,0 67%,0 100%,100% 100%)}
.opening-bottom{left:0;right:0;height:52%;clip-path:polygon(0 100%,50% 8%,100% 100%)}
.intro-envelope.open .entry-closed{opacity:0!important;pointer-events:none!important}
.intro-envelope.open .entry-opening{opacity:1!important}
.intro-envelope.open .opening-flap{transform:rotateX(178deg)!important}
.intro-envelope.expand .entry-opening{opacity:0!important;transition:opacity .32s ease!important}
.watercolor-full{position:absolute!important;inset:0!important;z-index:30!important;background-image:url('assets/houppa-aquarelle.png')!important;background-size:cover!important;background-position:center center!important;background-repeat:no-repeat!important;background-color:#fbfaf6!important;opacity:0!important;transform:scale(1)!important;transition:opacity .62s ease,transform 2.2s cubic-bezier(.12,.68,.12,1)!important;pointer-events:none!important}
.intro-envelope.open .watercolor-full{opacity:0!important;transform:scale(1)!important}
.intro-envelope.expand .watercolor-full{opacity:1!important;transform:scale(1.10)!important}
@media(max-width:900px){.entry-opening{width:96vw!important}.watercolor-full{background-size:cover!important;background-position:center center!important}.intro-envelope.expand .watercolor-full{transform:scale(1.08)!important}}
@media(max-width:600px){.entry-opening{width:108vw!important}.watercolor-full{background-size:cover!important;background-position:center center!important}.intro-envelope.expand .watercolor-full{transform:scale(1.06)!important}}

/* V16 — cadrage aquarelle recentré sur tous les écrans */
.watercolor-full{
  background-position:50% 50%!important;
  transform-origin:50% 50%!important;
}
@media (orientation:portrait){
  .watercolor-full{background-position:50% 50%!important;transform-origin:50% 50%!important}
}
@media (orientation:landscape){
  .watercolor-full{background-position:50% 50%!important;transform-origin:50% 50%!important}
}

/* V17 — aquarelle réellement centrée dans le viewport */
.watercolor-full{
  position:fixed!important;
  inset:0!important;
  width:100vw!important;
  height:100vh!important;
  background-size:cover!important;
  background-position:50% 50%!important;
  transform-origin:50% 50%!important;
  margin:0!important;
}
.intro-envelope.expand .watercolor-full{
  transform:scale(1.035)!important;
}
@media (max-width:900px){
  .watercolor-full{background-position:50% 50%!important}
  .intro-envelope.expand .watercolor-full{transform:scale(1.025)!important}
}
@media (max-width:600px){
  .watercolor-full{background-position:50% 50%!important}
  .intro-envelope.expand .watercolor-full{transform:scale(1.015)!important}
}

/* V18 — navigation, WhatsApp et nouvelles réalisations */
.links a.active:not(.navcta){color:var(--pink);font-weight:700;text-transform:uppercase}.whatsapp{width:54px;height:54px;padding:0;display:grid;place-items:center;background:#25D366;border:0}.whatsapp svg{width:30px;height:30px;fill:#fff}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.realisation-cta{text-align:center;margin-top:36px}.realisation-list{display:grid;gap:110px;margin-top:70px}.realisation-item{display:grid;grid-template-columns:1.15fr .85fr;gap:60px;align-items:center}.realisation-item.reverse>div:first-child,.realisation-item.reverse>img:first-child{order:2}.realisation-item.reverse>div:last-child{order:1}.realisation-single{width:100%;height:620px;object-fit:cover}.realisation-collage{display:grid;gap:7px;height:620px;overflow:hidden}.realisation-collage img{width:100%;height:100%;object-fit:cover;min-height:0}.collage-2{grid-template-columns:1fr 1fr}.collage-3{grid-template-columns:1.25fr .75fr;grid-template-rows:1fr 1fr}.collage-3 img:first-child{grid-row:1/3}.collage-4{grid-template-columns:1fr 1fr;grid-template-rows:1fr 1fr}.realisation-item h3{font-size:clamp(30px,3vw,46px);margin:12px 0 18px}.realisation-item p{max-width:520px}@media(max-width:800px){.realisation-list{gap:75px}.realisation-item{grid-template-columns:1fr;gap:28px}.realisation-item.reverse>div:first-child,.realisation-item.reverse>img:first-child,.realisation-item.reverse>div:last-child{order:initial}.realisation-single,.realisation-collage{height:500px}}

/* V19 — finitions navigation, réalisations et WhatsApp */
.pagehero h1{text-transform:uppercase;color:var(--pink);letter-spacing:.045em}
.realisation-item{opacity:0;transform:translateY(34px);transition:opacity .8s ease,transform .8s cubic-bezier(.2,.7,.2,1)}
.realisation-item.is-visible{opacity:1;transform:none}
.realisation-item img{transition:transform .65s ease,filter .65s ease}
.realisation-item:hover img{transform:scale(1.018)}
.realisation-collage{background:#f5f0e8}
.realisation-item h3 span{color:var(--pink);font-style:italic}
.whatsapp{width:62px;height:62px;background:#25D366;border:4px solid #fff;box-shadow:0 8px 28px #0004,0 0 0 1px #25D366;transition:transform .25s ease,box-shadow .25s ease}
.whatsapp:hover{transform:scale(1.08);box-shadow:0 10px 32px #0005,0 0 0 1px #25D366}
.whatsapp svg{width:35px;height:35px}
.whatsapp:after{content:'WhatsApp';position:absolute;right:70px;background:#1f1f1f;color:#fff;padding:7px 10px;border-radius:5px;font-size:11px;letter-spacing:.04em;opacity:0;pointer-events:none;transform:translateX(6px);transition:.2s}
.whatsapp:hover:after{opacity:1;transform:none}
@media(max-width:800px){.realisation-item{transform:translateY(22px)}.whatsapp{width:58px;height:58px}.whatsapp:after{display:none}}
.realisation-cta{grid-column:1/-1;width:100%;text-align:center;margin-top:28px}

/* V20 — interactions, cookies visibles et WhatsApp plus lisible */
.realisations-link{position:relative;overflow:hidden;transition:transform .18s ease,box-shadow .28s ease,background .28s ease!important}
.realisations-link:hover{transform:translateY(-2px);box-shadow:0 10px 28px rgba(232,95,125,.25)}
.realisations-link:active,.realisations-link.is-clicked{transform:scale(.96);box-shadow:0 3px 12px rgba(232,95,125,.22)}
.realisations-link:after{content:'';position:absolute;inset:50% auto auto 50%;width:8px;height:8px;border-radius:50%;background:rgba(255,255,255,.55);transform:translate(-50%,-50%) scale(0);opacity:0;pointer-events:none}
.realisations-link.is-clicked:after{animation:jbeRipple .48s ease-out}
@keyframes jbeRipple{0%{opacity:.7;transform:translate(-50%,-50%) scale(0)}100%{opacity:0;transform:translate(-50%,-50%) scale(24)}}
.whatsapp{color:#fff!important}
.whatsapp svg{width:39px!important;height:39px!important;display:block;overflow:visible;color:#fff;filter:drop-shadow(0 1px 0 rgba(0,0,0,.08))}
.cookie{z-index:30000!important}
@media(max-width:800px){.whatsapp svg{width:37px!important;height:37px!important}}

/* V21 — finitions accueil et page À propos */
.whatsapp{display:none!important}
.dark .quote blockquote{white-space:normal;max-width:1050px;margin-left:auto;margin-right:auto}
.story-btn{border-color:#fff!important;color:#fff!important;background:transparent!important;transition:background .25s ease,color .25s ease,border-color .25s ease,transform .2s ease}
.story-btn:hover,.story-btn:focus-visible{background:#fff!important;color:#1c2120!important;border-color:#fff!important;transform:translateY(-2px)}
.founder-photo{margin:0;position:relative}.founder-photo .photo-tall{width:100%;display:block}.founder-photo figcaption{position:absolute;left:18px;bottom:18px;background:rgba(255,255,255,.92);color:#1c2120;padding:10px 14px;font-size:12px;letter-spacing:.08em;text-transform:uppercase;box-shadow:0 4px 18px #0002}
@media(max-width:640px){.founder-photo figcaption{left:12px;bottom:12px;font-size:10px;padding:8px 10px}}

/* V22 — finitions expérience & histoire */
.brand-pink{color:var(--pink)!important;font-weight:700}
@media (min-width:1100px){.experience-quote{white-space:nowrap!important;font-size:clamp(23px,2.35vw,35px)!important;max-width:none!important;width:max-content;transform:translateX(-50%);position:relative;left:50%}}
@media (max-width:1099px){.experience-quote{white-space:normal!important}}

/* V23 — À propos enrichi */
.why-jbe{text-align:center}.why-jbe h2{margin-bottom:46px}.why-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.why-grid article{padding:38px 28px;border:1px solid rgba(112,89,54,.18);background:#fff;transition:transform .3s ease,box-shadow .3s ease}.why-grid article:hover{transform:translateY(-6px);box-shadow:0 16px 38px rgba(28,33,32,.08)}.why-grid article>span{display:block;color:var(--pink);font-size:12px;letter-spacing:.18em;margin-bottom:18px}.why-grid h3{font-size:24px;margin:0 0 12px}.family-section{background:#f6f0e7}.family-inner{max-width:860px;text-align:center}.family-inner h2{max-width:700px;margin-left:auto;margin-right:auto}.family-inner p{max-width:760px;margin-left:auto;margin-right:auto}.timeline-section{text-align:center}.jbe-timeline{display:flex;align-items:center;justify-content:center;gap:26px;margin-top:36px}.jbe-timeline article{display:flex;flex-direction:column;gap:8px;min-width:190px}.jbe-timeline strong{color:var(--pink);font-size:20px}.jbe-timeline span{font-size:14px;letter-spacing:.04em}.jbe-timeline i{width:80px;height:1px;background:rgba(112,89,54,.35)}@media(max-width:800px){.why-grid{grid-template-columns:1fr}.jbe-timeline{flex-direction:column;gap:18px}.jbe-timeline i{width:1px;height:34px}.jbe-timeline article{min-width:0}}

/* V25 — Parcours EFAP */
.efap-gallery{margin:32px 0 34px;display:grid;grid-template-columns:1.25fr 1fr 1fr;grid-template-rows:190px 190px;gap:12px}
.efap-gallery figure{margin:0;overflow:hidden;border-radius:3px;background:#f5f0ea;position:relative}
.efap-gallery .efap-main{grid-row:1 / span 2}
.efap-gallery img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .7s cubic-bezier(.2,.7,.2,1),filter .5s ease}
.efap-gallery figure:hover img{transform:scale(1.035)}
@media(max-width:760px){.efap-gallery{grid-template-columns:1fr 1fr;grid-template-rows:300px 150px 150px}.efap-gallery .efap-main{grid-column:1 / -1;grid-row:auto}.efap-gallery figure:last-child{grid-column:1 / -1}.efap-gallery img{object-position:center}}

/* V26 — À propos refinements */
@media(min-width:981px){
  .founder-photo{align-self:start;margin-top:42px}
  .founder-photo .photo-tall{height:620px;object-position:center 32%}
}
.name-story{margin:34px 0 26px;padding:24px 26px;border-left:2px solid var(--pink);background:rgba(232,95,125,.045)}
.name-story .eyebrow{color:var(--pink);margin-bottom:10px}
.name-story p{margin:0}
.about-transition{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin-top:38px}
.about-transition span{height:1px;background:linear-gradient(90deg,transparent,rgba(112,89,54,.38))}
.about-transition span:last-child{background:linear-gradient(90deg,rgba(112,89,54,.38),transparent)}
.about-cta{white-space:nowrap;transition:transform .25s ease,background .25s ease,color .25s ease,border-color .25s ease}
.about-cta:hover{transform:translateY(-2px);background:var(--pink);border-color:var(--pink);color:#fff}
@media(max-width:640px){.about-transition{grid-template-columns:1fr;gap:14px;text-align:center}.about-transition span{display:none}.about-cta{white-space:normal}.name-story{padding:20px}}

/* V29 — galerie EFAP horizontale pleine largeur */
.efap-strip-section{padding-top:0;padding-bottom:56px;background:var(--ivory)}
.efap-gallery-horizontal{margin:0;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));grid-template-rows:none;gap:12px;width:100%}
.efap-gallery-horizontal figure,.efap-gallery-horizontal .efap-main{margin:0;grid-column:auto;grid-row:auto;height:230px;overflow:hidden;border-radius:3px;background:#f5f0ea}
.efap-gallery-horizontal img{width:100%;height:100%;object-fit:cover;object-position:center;display:block}
@media(max-width:900px){.efap-gallery-horizontal{grid-template-columns:repeat(3,1fr)}.efap-gallery-horizontal figure{height:220px}.efap-gallery-horizontal figure:nth-child(4),.efap-gallery-horizontal figure:nth-child(5){grid-column:span 1}}
@media(max-width:640px){.efap-gallery-horizontal{display:flex;overflow-x:auto;gap:10px;scroll-snap-type:x mandatory;padding-bottom:8px}.efap-gallery-horizontal figure{flex:0 0 78vw;height:300px;scroll-snap-align:center}.efap-gallery-horizontal figure:last-child{grid-column:auto}}

/* V31 — EFAP gallery visibly centered with generous ivory margins */
.efap-strip-section .wrap{width:min(980px,78vw);margin-left:auto;margin-right:auto}
.efap-gallery-horizontal{gap:18px;width:100%;margin-left:auto;margin-right:auto}
.efap-gallery-horizontal figure,.efap-gallery-horizontal .efap-main{height:220px}
@media(max-width:1100px){.efap-strip-section .wrap{width:84vw}}
@media(max-width:900px){.efap-strip-section .wrap{width:88vw}}
@media(max-width:640px){.efap-strip-section .wrap{width:88vw}.efap-gallery-horizontal{padding-left:0;padding-right:0}}

/* V32 — Galerie EFAP sans bande beige */
.efap-strip-section{background:#fff;padding-top:0;padding-bottom:56px}
.efap-gallery-horizontal figure,.efap-gallery-horizontal .efap-main{background:#fff}

/* V34 — accueil : rose sans gras dans “Vos mots” */
.home-pink{color:var(--pink);font-weight:inherit}

/* V35 — Avis : choix multiples */
.service-choices{border:1px solid #d8d0c4;padding:20px 22px;margin:0;display:grid;grid-template-columns:1fr 1fr;gap:12px 22px;background:#fff}.service-choices legend{padding:0 8px;font-family:inherit}.service-choices label{display:flex;align-items:flex-start;gap:9px;line-height:1.4}.service-choices input[type="checkbox"]{width:auto;margin-top:4px;accent-color:var(--pink)}.service-choices .other-service{grid-column:1/-1;margin-top:4px}.service-choices .other-service label{margin-bottom:8px}.service-choices .other-service input{width:100%}@media(max-width:640px){.service-choices{grid-template-columns:1fr}}

/* V36 — Formulaire Avis : prestations en liste horizontale pleine largeur */
.service-choices{grid-template-columns:1fr;gap:0;padding:18px 22px}
.service-choices>label{width:100%;padding:11px 0;border-bottom:1px solid rgba(112,89,54,.13);align-items:center}
.service-choices>label:last-of-type{border-bottom:0}
.service-choices input[type="checkbox"]{margin-top:0}
/* Survol élégant du bouton d'envoi */
form[name="avis"] button[type="submit"]{transition:transform .25s ease,box-shadow .25s ease,background .25s ease,border-color .25s ease}
form[name="avis"] button[type="submit"]:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(28,33,32,.14);background:#1c2120;border-color:#1c2120;color:#fff}
form[name="avis"] button[type="submit"]:active{transform:translateY(-1px)}

/* V37 — Question hors du bloc, cases à cocher de nouveau en grille */
.service-question{display:block;width:100%;margin:2px 0 10px;font-family:inherit;line-height:1.4}
.service-choices{grid-template-columns:1fr 1fr;gap:12px 22px;padding:20px 22px}
.service-choices>label{width:auto;padding:0;border-bottom:0;align-items:flex-start}
.service-choices input[type="checkbox"]{margin-top:4px}
@media(max-width:640px){.service-choices{grid-template-columns:1fr}}

/* V38 — CTA Au-delà des frontières + formulaire contact */
.frontier-cta,.request-submit{transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease,border-color .25s ease}
.frontier-cta:hover,.request-submit:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(28,33,32,.14);background:var(--pink);border-color:var(--pink);color:#fff}
.frontier-cta:active,.request-submit:active{transform:translateY(-1px)}

/* V39 — rose sans graisse */
.pink-only{color:var(--pink)!important;font-weight:inherit!important}

/* V41 — Au-delà des frontières : recentrage de la photo équipe */
.strip img:nth-child(2){object-position:50% 38%}

/* V43 — FAQ */
.faq-wrap{max-width:980px}
.faq-list{border-top:1px solid rgba(112,89,54,.28)}
.faq-item{border-bottom:1px solid rgba(112,89,54,.28);padding:0}
.faq-item summary{list-style:none;cursor:pointer;padding:28px 52px 28px 0;position:relative;color:var(--pink);font-weight:700;font-size:clamp(18px,2vw,24px);line-height:1.35}
.faq-item summary::-webkit-details-marker{display:none}
.faq-item summary:after{content:'+';position:absolute;right:4px;top:50%;transform:translateY(-50%);font-size:28px;font-weight:400;color:var(--gold);transition:.25s}
.faq-item[open] summary:after{transform:translateY(-50%) rotate(45deg)}
.faq-answer{padding:0 52px 26px 0;line-height:1.75}
.faq-answer p{margin:0 0 12px}
.home-faq{text-align:center}
.home-faq h2{margin-bottom:34px}
.home-faq-grid{max-width:980px;margin:0 auto 32px;border-top:1px solid rgba(112,89,54,.28);text-align:left}
.home-faq-card{display:flex;justify-content:space-between;align-items:center;gap:24px;padding:22px 4px;border-bottom:1px solid rgba(112,89,54,.28);font-family:var(--serif);font-size:clamp(18px,2vw,24px);transition:color .25s,padding .25s}
.home-faq-card b{color:var(--pink);font-weight:400;transition:transform .25s}
.home-faq-card:hover{color:var(--pink);padding-left:10px}
.home-faq-card:hover b{transform:translateX(5px)}
.faq-cta{transition:transform .25s,box-shadow .25s}
.faq-cta:hover{transform:translateY(-2px);box-shadow:0 10px 24px rgba(0,0,0,.12)}
@media(max-width:640px){.faq-item summary{padding-right:38px}.faq-answer{padding-right:0}}

/* V45 — Foulards personnalisés */
.scarf-feature{margin:78px 0 84px;padding:54px 0 0;border-top:1px solid rgba(112,89,54,.18)}
.scarf-heading{max-width:760px;margin:0 auto 32px;text-align:center}
.scarf-heading h2{margin:8px 0 14px}
.scarf-heading h2 span{color:var(--pink)}
.scarf-heading p{margin:0;line-height:1.75}
.scarf-gallery{display:grid;grid-template-columns:1.15fr .85fr .85fr;grid-template-rows:280px 280px;gap:14px}
.scarf-gallery img{width:100%;height:100%;object-fit:cover;display:block}
.scarf-gallery img:first-child{grid-row:1 / 3}
.scarf-gallery img:nth-child(4),.scarf-gallery img:nth-child(5){object-position:center}
@media(max-width:800px){
 .scarf-feature{margin:58px 0 64px;padding-top:42px}
 .scarf-gallery{grid-template-columns:1fr 1fr;grid-template-rows:260px 220px 220px}
 .scarf-gallery img:first-child{grid-row:auto;grid-column:1 / 3}
 .scarf-gallery img:last-child{grid-column:1 / 3}
}
@media(max-width:520px){
 .scarf-gallery{display:flex;overflow-x:auto;gap:10px;padding-bottom:8px;scroll-snap-type:x mandatory}
 .scarf-gallery img{flex:0 0 82%;height:360px;scroll-snap-align:center}
}

/* V46 — Newsletter */
.newsletter-section{background:#f4eee5;padding:72px 0;border-top:1px solid rgba(112,89,54,.12)}
.newsletter-inner{display:grid;grid-template-columns:1.05fr .95fr;gap:72px;align-items:center}
.newsletter-copy{max-width:650px}.newsletter-copy h2{margin:8px 0 18px}.newsletter-copy h2 span{color:var(--pink);font-weight:inherit}.newsletter-copy p{line-height:1.75;margin:0 0 12px}.newsletter-note{font-size:.95rem;color:#5e574f}
.newsletter-form{background:#fff;padding:30px 32px;border:1px solid rgba(112,89,54,.18)}.newsletter-form>label:first-of-type{display:block;margin-bottom:10px;font-size:.86rem;text-transform:uppercase;letter-spacing:.12em}.newsletter-row{display:flex;gap:10px}.newsletter-row input{flex:1;min-width:0;border:0;border-bottom:1px solid #8c8173;background:transparent;padding:13px 4px;font:inherit;outline:none}.newsletter-row input:focus{border-color:var(--pink)}
.newsletter-submit{white-space:nowrap;transition:transform .25s ease,box-shadow .25s ease,background .25s ease,color .25s ease}.newsletter-submit span{display:inline-block;transition:transform .25s}.newsletter-submit:hover{transform:translateY(-3px);box-shadow:0 10px 24px rgba(28,33,32,.14);background:#1c2120;border-color:#1c2120;color:#fff}.newsletter-submit:hover span{transform:translateX(4px)}
.newsletter-consent{display:flex!important;align-items:flex-start;gap:9px;margin-top:18px!important;font-size:.78rem!important;line-height:1.5;text-transform:none!important;letter-spacing:0!important;color:#6b6258}.newsletter-consent input{width:auto;margin-top:3px;accent-color:var(--pink)}.newsletter-bot{display:none}.newsletter-thanks{text-align:center;min-height:65vh;display:flex;align-items:center}.newsletter-thanks .wrap{max-width:760px}.newsletter-thanks h1 span{color:var(--pink);font-weight:inherit}.newsletter-thanks p{max-width:650px;margin:20px auto 28px;line-height:1.75}
@media(max-width:850px){.newsletter-inner{grid-template-columns:1fr;gap:32px}.newsletter-form{padding:26px 24px}}@media(max-width:560px){.newsletter-section{padding:54px 0}.newsletter-row{flex-direction:column}.newsletter-submit{width:100%}}

/* V47 — Animations au défilement sur ordinateur, tablette et téléphone */
.scroll-reveal{opacity:0;transform:translateY(30px);transition:opacity .72s cubic-bezier(.2,.65,.3,1),transform .72s cubic-bezier(.2,.65,.3,1);will-change:opacity,transform}
.scroll-reveal.reveal-left{transform:translateX(-34px)}
.scroll-reveal.reveal-right{transform:translateX(34px)}
.scroll-reveal.is-revealed{opacity:1;transform:translate3d(0,0,0)}
.scroll-reveal[data-reveal-delay="1"]{transition-delay:.08s}.scroll-reveal[data-reveal-delay="2"]{transition-delay:.16s}.scroll-reveal[data-reveal-delay="3"]{transition-delay:.24s}
@media(max-width:700px){.scroll-reveal,.scroll-reveal.reveal-left,.scroll-reveal.reveal-right{transform:translateY(22px);transition-duration:.62s}}
@media(prefers-reduced-motion:reduce){.scroll-reveal,.scroll-reveal.reveal-left,.scroll-reveal.reveal-right{opacity:1;transform:none;transition:none}}


/* V50 — Devenir partenaire Joy Be Event */
.partner-home{background:#fff;padding-top:78px;padding-bottom:78px;border-top:1px solid rgba(112,89,54,.10)}
.partner-home-inner{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(250px,.55fr);gap:64px;align-items:center}
.partner-home h2{margin-bottom:22px}.partner-home h2 span{color:var(--pink);font-weight:inherit}
.partner-home-copy p{max-width:760px}.partner-home-action{display:flex;flex-direction:column;align-items:center;gap:15px;text-align:center}
.partner-home-cta{min-width:230px;justify-content:center;transition:transform .28s ease,box-shadow .28s ease,background .28s ease,color .28s ease}
.partner-home-cta span{display:inline-block;margin-left:8px;transition:transform .28s ease}.partner-home-cta:hover{transform:translateY(-3px);box-shadow:0 12px 28px rgba(28,33,32,.14)}.partner-home-cta:hover span{transform:translateX(5px)}
.partner-home-action small{max-width:260px;line-height:1.55;color:rgba(28,33,32,.65)}
@media(max-width:800px){.partner-home{padding-top:58px;padding-bottom:58px}.partner-home-inner{grid-template-columns:1fr;gap:30px}.partner-home-action{align-items:flex-start;text-align:left}.partner-home-cta{min-width:0}}


/* V53 — Signature Joy Be avec amour, animation machine à écrire */
.joy-signature{background:#fff;padding:94px 0 88px;text-align:center;border-top:1px solid rgba(112,89,54,.10)}
.joy-signature-inner{max-width:920px}
.joy-signature .eyebrow{margin-bottom:18px}
.joy-typewriter{margin:0 auto 18px;min-height:1.2em;font-size:clamp(42px,6vw,78px);line-height:1.08;letter-spacing:-.025em}
.joy-typewriter .joy-fixed{color:var(--ink);font-weight:inherit}
.joy-typewriter .typed-text{color:var(--pink);font-weight:inherit}
.type-caret{display:inline-block;width:2px;height:.82em;margin-left:5px;background:var(--pink);vertical-align:-.04em;opacity:0}
.joy-typewriter.is-typing .type-caret{opacity:1;animation:jbeCaret .72s steps(1) infinite}
.joy-typewriter.is-complete .type-caret{animation:jbeCaretEnd 1.4s ease forwards}
.joy-signature p{max-width:680px;margin:0 auto;color:#5e574f;font-size:1.02rem;line-height:1.7}
@keyframes jbeCaret{50%{opacity:0}}
@keyframes jbeCaretEnd{0%,55%{opacity:1}100%{opacity:0}}
@media(max-width:700px){.joy-signature{padding:70px 0 66px}.joy-typewriter{font-size:clamp(36px,11vw,54px)}}
@media(prefers-reduced-motion:reduce){.type-caret{display:none}}

/* V55 — Finitions premium : cohérence, interactions et responsive */
html{scroll-behavior:smooth}
body{-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}
a,button,input,select,textarea{-webkit-tap-highlight-color:transparent}
.btn,.navcta,.social-row a{transition:transform .25s ease,box-shadow .25s ease,background-color .25s ease,color .25s ease,border-color .25s ease}
.btn:hover,.navcta:hover{transform:translateY(-2px)}
.btn:active,.navcta:active{transform:translateY(0)}
a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:2px solid var(--pink);outline-offset:4px}
.form input,.form select,.form textarea,.newsletter-row input{transition:border-color .22s ease,box-shadow .22s ease,background-color .22s ease}
.form input:focus,.form select:focus,.form textarea:focus{border-color:var(--pink);box-shadow:0 0 0 3px rgba(232,95,125,.08)}
img{max-width:100%}
.links a{transition:color .22s ease,opacity .22s ease}
.footerlinks a{transition:color .22s ease,opacity .22s ease}
.footerlinks a:hover{opacity:.72}
@media(max-width:900px){
  .nav{min-height:72px}
  .links.open{box-shadow:0 22px 44px rgba(28,33,32,.10)}
  .links a{padding-top:12px;padding-bottom:12px}
}
@media(max-width:640px){
  .section{overflow:hidden}
  .form{gap:14px}
  .btn,.navcta{min-height:44px}
  .joy-signature p{padding:0 10px}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn,.navcta,.social-row a,.links a,.footerlinks a{transition:none!important;transform:none!important}}

/* V58 — accueil mobile : enveloppe lisible et aquarelle entière, sans rognage */
@media (max-width: 700px) and (orientation: portrait) {
  .intro-envelope .entry-envelope.entry-closed img {
    width: 112vw !important;
    max-width: none !important;
    max-height: none !important;
    height: auto !important;
    object-fit: contain !important;
  }
  .intro-envelope .seal-click {
    width: 28vw !important;
    min-width: 105px !important;
    max-width: 160px !important;
  }
  .intro-envelope .watercolor-full {
    background-size: contain !important;
    background-position: center center !important;
    background-color: #f5ecdf !important;
  }
  .intro-envelope.expand .watercolor-full {
    transform: scale(1) !important;
  }
}

/* V59 — confort mobile, navigation et formulaires */
@media(max-width:980px){
 .burger{color:var(--pink)!important;cursor:pointer}
 .links a.active:not(.navcta),.links a[aria-current="page"]:not(.navcta){color:var(--pink)!important;font-weight:700}
}
@media(max-width:640px){
 .newsletter-consent{gap:13px!important;align-items:flex-start}
 .newsletter-consent input[type="checkbox"]{appearance:auto!important;-webkit-appearance:checkbox!important;width:23px!important;height:23px!important;min-width:23px!important;min-height:23px!important;flex:0 0 23px!important;margin:0!important;accent-color:var(--pink)}
}
.form .date-field{position:relative;min-width:0}
.form .date-field label{display:block;font-size:12px;color:#665b50;margin-bottom:5px;letter-spacing:.02em}
.form .date-field input{width:100%;min-width:0}
