@charset "UTF-8";
:root{--ink:#0c0b10;--paper:#f5f0fa;--muted:#c4bbd0;--lilac:#c39aff;--lilac-light:#e2cdff;--acid:#d8ff3e;--line:#3a333f;--display:Impact,"Arial Narrow","Liberation Sans Narrow",sans-serif;--body:Arial,Helvetica,sans-serif;color-scheme:dark}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:30px}body{margin:0;background:var(--ink);color:var(--paper);font-family:var(--body);font-size:16px;line-height:1.6}a{color:inherit;text-decoration:none}button,summary,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid var(--acid);outline-offset:6px}::selection{background:var(--acid);color:var(--ink)}button{font:inherit}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:900;line-height:.98}button[hidden]{display:none}.skip-link{position:absolute;top:-80px;left:20px;background:var(--acid);color:var(--ink);padding:12px 20px;z-index:20}.skip-link:focus{top:10px}.header{max-width:1600px;margin:auto;padding:25px 5vw;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);gap:24px}.wordmark{font-size:24px;font-weight:900;letter-spacing:-1.1px;white-space:nowrap}.wordmark>span:first-child{font-size:12px;letter-spacing:.06em;margin-left:7px}.brand-star{color:var(--acid);font-size:24px;margin-left:18px}.header nav{display:flex;gap:36px;font-size:12px;font-weight:700}.header nav a{padding:10px 0}.header nav a:hover,.header nav a.is-active{color:var(--acid)}.header nav a:last-child span{margin-left:8px;color:var(--acid)}.menu-toggle{display:none}.hero{padding:33px 5vw 24px;max-width:1600px;margin:auto;overflow:hidden}.hero-kicker{display:flex;justify-content:space-between;text-transform:uppercase;font-size:10px;font-weight:700;letter-spacing:.15em;color:var(--muted)}h1{font-family:var(--display);font-size:clamp(100px,21.6vw,330px);letter-spacing:.025em;text-transform:uppercase;line-height:.82;padding:42px 0 30px;background:linear-gradient(108deg,#edddff 0%,#c399ff 52%,#9a64d9 100%);-webkit-background-clip:text;background-clip:text;color:transparent;position:relative;max-width:100%;overflow-wrap:anywhere}.hero-mua{display:block;letter-spacing:.025em}.hero-asterisk{display:inline-block;color:var(--acid);font-family:var(--body);font-size:.58em;line-height:.5;vertical-align:middle;position:relative;top:-.1em;left:.12em}.hero-bottom{display:grid;grid-template-columns:1fr 1.1fr;gap:9vw;align-items:center;padding:14px 0 40px}.hero-statement{font-size:clamp(28px,3vw,44px);font-weight:800;letter-spacing:-1.7px;line-height:1.12}.hero-statement span{color:var(--lilac)}.hero-description{font-size:14px;color:var(--muted);line-height:1.8;margin:20px 0 27px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;font-size:12px;font-weight:800;padding:17px 21px}.button-lime{background:var(--acid);color:var(--ink)}.button-lime:hover{background:#e7ff8e}.button>span{font-size:20px;line-height:1}.hero-art{height:265px;background:#21132f;position:relative;isolation:isolate;overflow:hidden;display:flex;align-items:center;background:radial-gradient(ellipse at 70% 15%,#8c4ed159,transparent 65%),#22132e}.art-orbit{position:absolute;width:300px;height:300px;border:1px solid #b991dc;transform:rotate(-25deg);border-radius:50%;right:-70px;top:-130px;opacity:.45}.eye-art{width:94%;height:90%;margin:auto;transform:rotate(-12deg)}.hero-art figcaption{position:absolute;bottom:12px;left:17px;right:17px;font-size:8px;letter-spacing:.12em;text-transform:uppercase;display:flex;justify-content:space-between;color:#e0c7ff}.scroll-note{display:flex;gap:12px;font-size:10px;text-transform:uppercase;letter-spacing:.12em;color:var(--muted);align-items:center}.scroll-note>span{color:var(--acid);font-size:23px}.ribbon{background:var(--acid);color:var(--ink);display:flex;justify-content:space-around;gap:30px;white-space:nowrap;overflow:hidden;font-size:12px;font-weight:900;letter-spacing:.08em;text-transform:uppercase;padding:16px 20px;margin:20px 0 0}.ribbon>span:nth-child(even){font-size:20px;line-height:1}.services{max-width:1600px;margin:auto;padding:80px 5vw 0}.section-heading{display:grid;grid-template-columns:1fr 1fr;align-items:end;gap:23px;margin-bottom:65px}.eyebrow{font-size:10px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;line-height:1.6}.section-heading>.eyebrow{grid-column:1/-1;color:var(--lilac)}.section-heading h2{font-family:var(--display);font-size:clamp(45px,5.3vw,78px);text-transform:uppercase;letter-spacing:.025em}.section-heading h2>span{color:var(--lilac)}.section-heading>p:last-child{color:var(--muted);font-size:14px;justify-self:end;padding-bottom:4px}.service{display:grid;grid-template-columns:1fr 1fr;border-top:1px solid var(--line);padding:55px 0;gap:7vw;align-items:center}.service-art{min-width:0;height:450px;position:relative;overflow:hidden;isolation:isolate}.art-index,.art-caption{position:absolute;left:23px;font-size:9px;letter-spacing:.14em;text-transform:uppercase;z-index:2;font-weight:700}.art-index{top:20px}.art-caption{bottom:20px}.beauty-art{background:linear-gradient(145deg,#e5d1ff 0%,#b98de8 54%,#8152b5 100%);color:var(--ink)}.beauty-disc{position:absolute;width:360px;height:360px;border-radius:50%;background:radial-gradient(circle at 30% 25%,#f9f1ff 0%,#c8a1f7 45%,#542275 100%);right:-130px;top:35px;box-shadow:-25px 40px 60px #592c7b70}.art-letter{font-family:var(--display);font-size:310px;line-height:1;position:absolute;left:24px;bottom:20px;letter-spacing:-.08em;transform:skew(-7deg);z-index:1}.beauty-line{position:absolute;background:var(--acid);height:8px;width:120%;transform:rotate(-23deg);left:-10%;z-index:0}.line-one{top:36%}.line-two{top:39%;height:2px}.service-copy>p:not(.eyebrow){font-size:14px;color:var(--muted);max-width:410px;margin-top:20px}.service-copy h3{font-family:var(--display);font-size:clamp(43px,4.6vw,72px);letter-spacing:.025em;text-transform:uppercase;line-height:1.03;margin:22px 0}.service-copy h3>span{color:var(--lilac)}.tiny-square{display:inline-block;width:6px;height:6px;background:var(--acid);margin:0 7px 1px 0}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:25px}.tags>span{font-size:9px;letter-spacing:.04em;padding:5px 10px;border:1px solid #665673;color:#e1d3f0}.service-copy details{max-width:440px;border-top:1px solid var(--line);margin-top:32px;font-size:12px}.service-copy summary{cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:12px;align-items:center;padding:17px 0;color:var(--paper);font-weight:700}.service-copy summary::-webkit-details-marker{display:none}.service-copy summary>span{font-size:20px;color:var(--acid);transition:transform .2s}.service-copy details[open] summary>span{transform:rotate(45deg)}.service-copy details>p{font-size:13px;line-height:1.8;color:var(--muted);padding:0 0 15px}.transformation-art{background:var(--acid);color:var(--ink);display:flex;align-items:center}.transform-type{font-family:var(--display);font-size:clamp(80px,10vw,145px);line-height:.82;letter-spacing:-.02em;margin:0 25px;z-index:1;transform:rotate(-8deg)}.transform-type>span{-webkit-text-stroke:2px var(--ink);color:transparent}.expression-ring{position:absolute;right:-50px;top:-20px;width:300px;height:490px;background:#9d70dc;border-radius:50%;transform:rotate(-30deg);mix-blend-mode:multiply}.transform-star{position:absolute;right:10px;bottom:23px;color:#522478;font-size:110px;line-height:1;transform:rotate(-20deg)}.workshops{background:linear-gradient(110deg,#e7d6ff 0%,#caa3fb 55%,#ae7fe3 100%);color:var(--ink);padding:36px 40px 45px;margin-top:20px;position:relative}.workshop-top{display:flex;align-items:center;justify-content:space-between;gap:30px}.workshop-star{font-size:60px;line-height:1;color:#4c226f}.workshop-body{display:grid;grid-template-columns:1.15fr 1fr;gap:6vw;align-items:start;margin-top:24px}.workshop-body h3{font-family:var(--display);font-size:clamp(43px,5vw,73px);text-transform:uppercase;letter-spacing:.025em;line-height:1.05}.workshop-body h3>span{color:#552579}.workshop-copy>p{font-size:15px;line-height:1.7;max-width:390px}.workshop-steps{list-style:none;margin:25px 0 0;padding:0}.workshop-steps li{border-top:1px solid #693c8d66;padding:12px 0;font-size:12px;font-weight:700;display:flex;align-items:center;gap:17px}.workshop-steps li>span{font-size:10px;color:#542676;font-weight:400}.closing{max-width:1600px;margin:auto;padding:100px 5vw 70px}.closing>p{font-family:var(--display);text-transform:uppercase;font-size:clamp(47px,8vw,115px);line-height:.98;letter-spacing:-.03em;position:relative}.closing>p>span:first-child{color:var(--lilac)}.closing-star{color:var(--acid);display:inline-block;font-family:var(--body);font-size:1em;vertical-align:middle;margin-left:25px}.text-link{font-size:11px;font-weight:700;display:inline-flex;gap:22px;align-items:center}.text-link>span{font-size:18px;color:var(--acid)}.closing>.text-link{margin-top:30px}.footer{max-width:1600px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:30px 5vw;border-top:1px solid var(--line)}.footer>p{font-size:10px;color:var(--muted)}
@media(min-width:1600px){.hero-bottom{gap:140px}.service{gap:110px}}
@media(max-width:900px){.header nav{gap:18px;font-size:10px}.hero-bottom{gap:35px}.hero-art{height:235px}.service{gap:35px}.service-art{height:390px}.art-letter{font-size:265px}.transform-type{font-size:90px}.service-copy h3{font-size:45px}.workshops{padding:28px}.workshop-body{gap:30px}.workshop-body h3{font-size:47px}.footer>p{display:none}}
@media(max-width:600px){.header{padding:18px 6vw;position:relative;flex-wrap:wrap;gap:10px}.wordmark{font-size:23px}.brand-star{margin-left:10px}.menu-toggle:not([hidden]){display:flex;gap:16px;align-items:center;background:transparent;border:0;color:var(--paper);padding:8px 0;font-size:12px}.menu-toggle>span{color:var(--acid);font-size:20px}.header nav{width:100%;justify-content:space-between;gap:12px;flex-wrap:wrap;padding-top:13px;border-top:1px solid var(--line);font-size:11px}.js .header nav:not(.is-open){display:none}.hero{padding:24px 6vw}.hero-kicker{font-size:8px;gap:10px;letter-spacing:.08em}.kicker-right{max-width:120px;text-align:right}h1{font-size:24.5vw;padding-top:35px;line-height:.86;letter-spacing:.025em}.hero-mua{font-size:.9em}.hero-bottom{grid-template-columns:1fr;gap:28px;padding-top:0;padding-bottom:25px}.hero-statement{font-size:32px;letter-spacing:-1px}.hero-description{font-size:13px;margin:17px 0 22px}.button{width:100%;font-size:12px}.hero-art{height:220px}.hero-art figcaption{font-size:7px;letter-spacing:.07em}.scroll-note{font-size:8px;letter-spacing:.08em}.ribbon{margin-top:0;padding:13px 17px;justify-content:flex-start;font-size:10px;gap:25px}.services{padding:52px 6vw 0}.section-heading{grid-template-columns:1fr;gap:18px;margin-bottom:35px}.section-heading h2{font-size:46px}.section-heading>p:last-child{justify-self:start;font-size:13px}.service{grid-template-columns:1fr;padding:30px 0 40px;gap:28px}.service-art{height:340px}.beauty-art{order:1}.beauty .service-copy{order:0}.art-letter{font-size:260px}.service-copy h3{font-size:45px;margin:16px 0}.service-copy>p:not(.eyebrow){font-size:14px;margin-top:15px}.eyebrow{font-size:9px;letter-spacing:.09em}.service-copy details{margin-top:24px}.transformation-art{height:330px}.transform-type{font-size:110px}.expression-ring{width:240px;height:390px;right:-20px}.workshops{margin-top:0;padding:23px 22px 26px}.workshop-star{font-size:42px}.workshop-body{grid-template-columns:1fr;gap:22px;margin-top:12px}.workshop-body h3{font-size:43px}.workshop-copy>p{font-size:14px}.workshop-steps{margin-top:20px}.closing{padding:55px 6vw 40px}.closing>p{font-size:12.4vw}.closing-star{margin-left:12px;font-size:.8em}.closing>.text-link{margin-top:25px}.footer{padding:23px 6vw;gap:15px}.footer .wordmark{font-size:21px}.footer .text-link{font-size:9px;gap:8px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Un emplacement photo par prestation. */
.photo-slot{margin:0}
.photo-slot>img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block;z-index:3}
.photo-marker{position:absolute;right:16px;top:16px;z-index:4;background:var(--ink);color:var(--paper);border:1px solid #c39aff70;font-size:9px;letter-spacing:.08em;text-transform:uppercase;padding:7px 10px;display:flex;gap:14px;align-items:center}
.photo-marker>span{color:var(--acid);font-size:15px;line-height:1}
.workshops{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:40px;align-items:center;padding:36px}
.workshop-content{min-width:0}
.workshop-body{display:block;margin-top:24px}
.workshop-body h3{font-size:clamp(35px,3.7vw,58px)}
.workshop-copy{margin-top:25px}
.workshop-star{font-size:43px}
.workshop-art{height:450px;background:var(--ink);color:var(--lilac-light);display:flex;align-items:center;justify-content:center}
.workshop-halo{position:absolute;inset:12% -20%;border:35px solid #a86ae2;border-radius:50%;transform:rotate(-33deg);background:radial-gradient(ellipse at 40% 35%,#cfb1f0aa,transparent 65%)}
.mug-type{position:relative;z-index:1;font-family:var(--display);font-size:clamp(75px,8.8vw,135px);line-height:1;letter-spacing:.025em;transform:rotate(-8deg);color:var(--paper)}
.mug-type>span{color:var(--acid)}
@media(max-width:900px){.workshops{grid-template-columns:1fr;padding:28px;gap:26px}.workshop-art{height:390px}.workshop-body{display:grid;grid-template-columns:1fr 1fr;gap:28px}.workshop-copy{margin-top:0}.workshop-body h3{font-size:clamp(32px,4.8vw,43px)}.mug-type{font-size:125px}}
@media(max-width:600px){.photo-marker{right:12px;top:14px;font-size:8px;padding:6px 8px;gap:8px}.workshops{padding:22px;gap:24px}.workshop-art{height:330px}.workshop-top{gap:12px}.workshop-top .eyebrow{max-width:220px}.workshop-body{display:block;margin-top:16px}.workshop-body h3{font-size:clamp(31px,8vw,43px)}.workshop-copy{margin-top:20px}.mug-type{font-size:100px}}

/* Peinture, bords irréguliers et grain d’affiche. */
body::before{content:"";position:fixed;inset:0;z-index:8;pointer-events:none;background:url("assets/grain.svg");opacity:.055}
.paint-mark,.paint-splash{display:inline-block;background:currentColor;-webkit-mask:url("assets/paint-splatter.svg") center/contain no-repeat;mask:url("assets/paint-splatter.svg") center/contain no-repeat}
.paint-mark{width:1em;height:1.12em;flex-shrink:0;vertical-align:middle}
.paint-swipe{position:absolute;background:currentColor;-webkit-mask:url("assets/brush-swipe.svg") center/100% 100% no-repeat;mask:url("assets/brush-swipe.svg") center/100% 100% no-repeat;pointer-events:none}
.paint-splash{position:absolute;pointer-events:none}
.brand-star{width:35px;height:38px;transform:rotate(17deg);margin-left:8px}
.hero-asterisk{width:1.13em;height:1.13em;top:-.06em;left:.08em;transform:rotate(-17deg)}
.hero-art{background:#1c1025;clip-path:polygon(0 3%,14% 1%,28% 3%,42% 0,59% 2%,76% 0,90% 2%,100% 0,99% 19%,100% 38%,98% 58%,100% 79%,98% 98%,80% 100%,65% 98%,49% 100%,31% 98%,17% 100%,1% 97%,2% 76%,0 54%,1% 32%)}
.hero-swipe{color:#8f4cbb;width:115%;height:90%;left:-10%;top:0;transform:rotate(-18deg);opacity:.7}
.hero-art::after,.photo-slot::after{content:"";position:absolute;inset:0;z-index:2;pointer-events:none;background:url("assets/grain.svg");opacity:.18;mix-blend-mode:soft-light}
.eye-art{position:relative;z-index:1}
.hero-art figcaption{z-index:3}
.ribbon{transform:rotate(-.6deg);padding-top:20px;padding-bottom:20px;clip-path:polygon(0 7%,6% 2%,15% 6%,23% 0,36% 4%,47% 1%,59% 5%,72% 0,85% 3%,94% 0,100% 5%,100% 94%,88% 99%,76% 95%,61% 100%,49% 96%,35% 100%,22% 96%,10% 100%,0 95%)}
.ribbon>.paint-mark{width:26px;height:28px;transform:rotate(29deg)}
.beauty-splash{width:430px;height:490px;color:#764196;right:-140px;top:-50px;transform:rotate(31deg)}
.beauty-swipe{width:130%;height:180px;left:-18%;top:30%;color:var(--acid);transform:rotate(-24deg)}
.art-letter{transform:rotate(-9deg) skew(-7deg)}
.transformation-swipe{width:150%;height:280px;left:-20%;top:4%;color:#9966c6;transform:rotate(-56deg)}
.transform-star{width:1.2em;height:1.35em;right:-10px;bottom:30px;transform:rotate(-24deg)}
.workshop-splash{width:430px;height:460px;left:-100px;top:-45px;color:#8c49c7;transform:rotate(-21deg)}
.workshop-swipe{width:130%;height:190px;right:-20%;top:40%;color:#c59aef;transform:rotate(31deg);opacity:.65}
.workshop-star{width:1.2em;height:1.3em;transform:rotate(14deg)}
.closing-star{width:1.2em;height:1.2em;transform:rotate(-24deg)}
.button-lime{position:relative;isolation:isolate;background:transparent;padding:21px 28px}
.button-lime::before{content:"";position:absolute;inset:-8px -12px;z-index:-1;background:var(--acid);clip-path:polygon(0 42%,7% 31%,3% 13%,18% 20%,22% 0,34% 15%,46% 2%,54% 16%,69% 3%,74% 21%,92% 12%,89% 32%,100% 39%,93% 52%,99% 70%,84% 72%,87% 93%,72% 83%,62% 100%,53% 84%,39% 98%,32% 82%,16% 94%,18% 75%,2% 82%,8% 62%,0 56%,6% 49%);transition:background .15s;pointer-events:none}
.button-lime:hover{background:transparent}
.button-lime:hover::before{background:#e7ff8e}
.tags>span:nth-child(2){transform:rotate(-2deg)}
.tags>span:nth-child(3){transform:rotate(1.5deg)}
@media(max-width:600px){.hero-asterisk{left:.06em}.beauty-splash{width:340px;height:390px;right:-130px}.beauty-swipe{height:140px}.transformation-swipe{height:230px}.workshop-splash{width:350px;height:390px}.ribbon{padding-top:18px;padding-bottom:18px}.brand-star{width:29px;height:32px}}

.contact-section{max-width:1600px;margin:auto;padding:40px 5vw 65px;border-top:1px solid var(--line)}
.contact-section h2{font-family:var(--display);font-size:clamp(30px,4vw,48px);text-transform:uppercase;letter-spacing:.025em;color:var(--lilac);margin:0 0 22px}
.contact-address{font-size:clamp(20px,3.3vw,49px);font-weight:800;line-height:1.45;letter-spacing:.01em;overflow-wrap:anywhere;text-decoration:underline;text-decoration-color:var(--acid);text-decoration-thickness:2px;text-underline-offset:10px}
.contact-address>span{display:inline-block;margin-left:18px;color:var(--acid)}
.contact-address:hover{color:var(--lilac-light)}
@media(max-width:600px){.contact-section{padding:30px 6vw 45px}.contact-section h2{margin-bottom:18px}.contact-address{font-size:clamp(19px,5.1vw,26px);text-underline-offset:6px}.contact-address>span{margin-left:10px}}

/* Visuel de présentation conservé dans son format intégral. */
.hero-art.hero-photo{height:auto;aspect-ratio:16/9;display:block;clip-path:none;background:transparent}
.hero-art.hero-photo::after{display:none}
.hero-photo img{display:block;width:100%;height:auto;object-fit:contain}

/* Portrait beauté conservé dans son cadrage, sans décor superposé. */
.beauty-art.service-photo{width:75%;max-width:330px;height:auto;aspect-ratio:1365/2048;justify-self:center;background:transparent}
.service-photo>img{position:static;width:100%;height:auto;object-fit:contain}
.service-photo::after{display:none}

/* Diptyques transformation et atelier drag présentés en entier, crédits compris. */
.transformation-art.service-photo,.workshop-art.service-photo{display:block;width:100%;height:auto;aspect-ratio:16/9;background:transparent}

/* Crédits photographiques sous les images. */
.service-photo.has-credit{aspect-ratio:auto;overflow:visible}
.photo-credit{margin-top:10px;font-size:12px;line-height:1.5;color:var(--muted);overflow-wrap:anywhere}
.photo-credit a{color:inherit;text-decoration:underline;text-decoration-color:var(--lilac);text-underline-offset:3px}
.photo-credit a:hover{color:var(--lilac-light)}
.workshop-art .photo-credit{color:var(--ink)}
.workshop-art .photo-credit a{text-decoration-color:#552579}
.workshop-art .photo-credit a:hover{color:#552579}
