:root{--cream:#f8f2e9;--paper:#fffcf7;--ink:#483a33;--terracotta:#bc7157;--blue:#7dbdc1;--sage:#b6c5a0;--gold:#eec67d;--radius:24px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.55}a{color:inherit;text-decoration:none}button{font:inherit}a:focus-visible,button:focus-visible{outline:3px solid #187f91;outline-offset:4px}.skip{position:absolute;top:-100px;left:8px;z-index:20;background:white;padding:12px}.skip:focus{top:10px}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Georgia,serif;font-weight:500;line-height:1.12;letter-spacing:-.045em}h1{font-size:clamp(2.9rem,5vw,5.8rem)}h2{font-size:clamp(2.3rem,4.5vw,4.7rem)}h3{font-size:1.38rem;line-height:1.2}em{font-weight:400;color:var(--terracotta)}.section-pad{padding:clamp(64px,8vw,122px) max(24px,calc((100vw - 1240px)/2))}.site-header{height:90px;padding:0 clamp(24px,5vw,78px);display:flex;align-items:center;justify-content:space-between;gap:32px;background:var(--cream);position:relative;z-index:10}.brand{display:grid;line-height:1}.brand-name{font-family:Georgia,serif;font-weight:700;font-size:2rem;letter-spacing:-.08em}.brand-name>span:first-child{color:var(--terracotta)}.brand-dot{font-size:1.2rem;color:var(--blue);position:relative;top:-13px;margin-left:4px}.brand small{font-size:.64rem;letter-spacing:.12em;text-transform:uppercase;padding-top:8px}.nav{display:flex;align-items:center;gap:clamp(12px,2vw,27px);font-size:.88rem;font-weight:600}.nav a:not(.nav-contact):hover{color:var(--terracotta)}.nav-contact{padding:11px 19px;background:var(--terracotta);color:white;border-radius:22px}.nav-toggle{display:none}.hero{background:var(--cream);min-height:660px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:6%;padding-top:60px;padding-bottom:85px;overflow:hidden}.hero-copy{position:relative;z-index:2}.eyebrow{text-transform:uppercase;font-size:.74rem;letter-spacing:.15em;font-weight:800;color:#a45f48;display:block;margin-bottom:22px}.asterisk{font-size:1.4rem;vertical-align:-2px;margin-right:7px}.hero p{max-width:480px;font-size:1.12rem}.actions{display:flex;align-items:center;gap:23px;flex-wrap:wrap;margin-top:28px}.btn{display:inline-flex;gap:18px;align-items:center;justify-content:center;border-radius:999px;padding:15px 26px;font-size:.92rem;font-weight:700;transition:transform .22s,background .22s}.btn:hover{transform:translateY(-4px)}.btn-primary{background:var(--terracotta);color:white}.btn-primary:hover{background:#a35c45}.text-link{font-weight:800;border-bottom:1px solid currentColor;padding-bottom:5px;font-size:.9rem}.text-link:hover{color:var(--terracotta)}.hero-note{margin-top:65px;font-size:.8rem;color:#76645b}.note-mark{font-size:1.6rem;color:var(--terracotta);vertical-align:-3px;margin-right:8px}.hero-visual{position:relative;min-width:0}.photo-placeholder{display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;border-radius:var(--radius);background:linear-gradient(145deg,#dca996,#f3ddbd 43%,#a2c6ba);color:#54463e;text-align:center;font-size:.75rem;letter-spacing:.12em;line-height:1.8;font-weight:700}.photo-placeholder strong{font-size:1rem;letter-spacing:0}.hero-photo{aspect-ratio:4/4.7;border-radius:48% 48% 36% 40%/30% 31% 34% 34%;transform:rotate(2deg)}.hero-photo:before,.card-photo:before{content:"";position:absolute;width:55%;aspect-ratio:1;border-radius:50%;background:#fff5;filter:blur(40px);top:3%;left:0}.hero-photo>span,.card-photo>span{z-index:1}.hero-bubble{position:absolute;bottom:6%;left:-10%;height:150px;width:150px;border-radius:50%;background:var(--blue);transform:rotate(-14deg);display:grid;place-content:center;text-align:center;font:italic 1.7rem/.9 Georgia,serif;color:#25434a;box-shadow:0 16px 35px #3d302b22}.hero-bubble span{font-size:1.4rem;margin-top:8px}.flower{position:absolute;color:var(--terracotta);font-size:5rem;animation:float 6s ease-in-out infinite}.flower-one{top:4%;right:-5%}.flower-two{bottom:-3%;right:3%;font-size:3rem;color:#77aba4;animation-delay:-2s}@keyframes float{50%{transform:translateY(-12px) rotate(10deg)}}.ticker{background:var(--blue);overflow:hidden;white-space:nowrap;padding:13px 0;font-weight:800;letter-spacing:.13em;color:#27494d;font-size:.8rem}.ticker>div{width:max-content;animation:marquee 38s linear infinite}.ticker span{color:#f6e8d7;margin:0 28px}@keyframes marquee{to{transform:translateX(-40%)}}.section-head{text-align:center;max-width:750px;margin:0 auto 56px}.section-head p{font-size:1.03rem}.ateliers-section{background:var(--paper)}.atelier-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.atelier-card{min-width:0}.card-photo{aspect-ratio:4/4.3;border-radius:44% 44% 20px 20px/35% 35% 20px 20px;transition:transform .4s}.atelier-card:hover .card-photo{transform:translateY(-7px)}.photo-peach{background:linear-gradient(140deg,#d78f78,#f7d6bc)}.photo-blue{background:linear-gradient(145deg,#8abec2,#dce7d7)}.photo-gold{background:linear-gradient(145deg,#e1ab6c,#efdcc0)}.photo-sage{background:linear-gradient(145deg,#a9bea0,#dedfc6)}.corner-symbol{position:absolute;right:15px;bottom:8px;font-size:3rem;color:#fff9}.card-body{padding:21px 4px}.card-body p{font-size:.88rem;color:#73645e;min-height:88px}.kicker{font-size:.7rem;text-transform:uppercase;color:#ae6a53;letter-spacing:.08em}.section-foot{text-align:center;margin-top:34px;color:#76655f;font-size:.88rem}.concept{position:relative;overflow:hidden;background:var(--blue);text-align:center}.concept-content{position:relative;z-index:2;max-width:780px;margin:auto}.concept h2{font-size:clamp(4rem,8vw,8rem);margin-bottom:20px}.concept h2 em{color:#fff9eb}.period{color:var(--terracotta)}.concept p{font-size:1.13rem;max-width:620px;margin:0 auto 16px}.concept .btn{margin-top:20px}.btn-outline{border:1px solid #2f575a}.concept-flower{position:absolute;top:-190px;right:-90px;font-size:26rem;line-height:1;color:#fff3;transform:rotate(18deg)}.concept-doodle{position:absolute;bottom:-80px;left:0;font-size:18rem;color:#fff2}.portrait{display:grid;grid-template-columns:1fr 1fr;gap:10%;align-items:center}.portrait-media{position:relative}.portrait-photo{aspect-ratio:4/4.8;background:linear-gradient(135deg,#e5b29a,#f7dfb9,#b8c9b6);border-radius:39% 42% 20px 20px/24% 24% 20px 20px}.portrait-sticker{position:absolute;right:-25px;bottom:20px;display:grid;place-content:center;text-align:center;line-height:1.15;background:#f3c978;width:135px;height:135px;border-radius:50%;transform:rotate(12deg);font:italic 1.4rem Georgia,serif}.portrait-copy p{max-width:480px}.creations{background:#f5ede2}.mosaic{display:grid;grid-template-columns:1.15fr 1fr 1fr;grid-template-rows:200px 200px;gap:14px}.mosaic .photo-placeholder{border-radius:15px;background:linear-gradient(125deg,#c4a29a,#e6c99f,#9bb6b0)}.mosaic .photo-placeholder:nth-child(2){background:linear-gradient(130deg,#bd7971,#e5c7b4)}.mosaic .photo-placeholder:nth-child(3){background:linear-gradient(130deg,#a6b7a5,#e8d6aa)}.mosaic-tall{grid-row:span 2}.mosaic-wide{grid-column:span 2}.gallery-note,.review-note{text-align:center;font-size:.78rem;margin:30px 0 0;color:#74645d}.gift{background:#f5d8ca;display:grid;grid-template-columns:1.35fr .65fr;align-items:center;gap:10%;overflow:hidden}.gift-copy{max-width:700px}.gift-art{display:grid;place-items:center}.gift-circle{width:240px;height:240px;border-radius:50%;background:#eaa98b;color:#fff8e9;display:grid;place-items:center;font-size:12rem;transform:rotate(-14deg);animation:float 7s ease-in-out infinite}.reviews{background:var(--paper)}.review-wrap{display:grid;grid-template-columns:220px 1fr;gap:60px;align-items:center;max-width:850px;margin:auto}.review-score{display:grid;text-align:center}.review-score strong{font:3.6rem Georgia,serif}.review-score span{color:#bb7c20;font-size:1.4rem;letter-spacing:.12em}.review-score small{font-size:.78rem}.review-wrap blockquote{font:italic clamp(1.5rem,2.5vw,2.5rem)/1.4 Georgia,serif;margin:0}.review-wrap cite{display:block;margin-top:22px;font:normal .83rem system-ui,sans-serif}.contact{background:#c7d8cc;display:grid;grid-template-columns:1.5fr .5fr;gap:5%;align-items:center;overflow:hidden}.contact-copy{max-width:680px}.contact-decor{font-size:13rem;line-height:1;color:#e6f0e7;transform:rotate(-20deg)}.contact-decor span{color:#e6aa93;font-size:7rem}.placeholder-alert{font-size:.75rem;margin-top:14px;color:#536455}footer{background:#483a33;color:#fff6ed;padding:48px clamp(24px,5vw,78px);display:grid;grid-template-columns:1fr 1fr;gap:30px}.footer-brand{display:grid}.footer-brand strong{font:2rem Georgia,serif}.footer-brand span,footer p{font-size:.75rem;color:#e5d6cc}.social{display:flex;justify-content:flex-end;gap:22px;font-size:.85rem}footer p{grid-column:1/-1;margin:0}.reveal{opacity:0;transform:translateY(30px);transition:opacity .8s ease,transform .8s ease}.reveal.visible{opacity:1;transform:translateY(0)}@media(max-width:1050px){.nav{gap:12px;font-size:.79rem}.atelier-grid{grid-template-columns:repeat(2,1fr)}.card-body p{min-height:0}.hero{min-height:0}}@media(max-width:760px){.site-header{height:76px;padding:0 20px}.brand-name{font-size:1.75rem}.nav-toggle{display:flex;align-items:center;gap:12px;border:0;background:none;cursor:pointer;font-weight:700}.hamburger,.hamburger:before,.hamburger:after{display:block;background:var(--ink);width:23px;height:2px;content:"";position:relative}.hamburger:before{position:absolute;top:-7px}.hamburger:after{position:absolute;top:7px}.nav{display:none;position:absolute;top:76px;left:0;right:0;background:var(--cream);padding:22px;box-shadow:0 12px 20px #0001;align-items:stretch;flex-direction:column;gap:0}.nav.open{display:flex}.nav a{padding:12px 8px}.nav-contact{text-align:center;margin-top:10px}.section-pad{padding:64px 22px}.hero{grid-template-columns:1fr;gap:36px;padding-top:40px}.hero h1{font-size:clamp(3rem,10vw,4.5rem)}.hero-note{margin-top:28px}.hero-visual{margin:0 20px 15px}.hero-photo{max-height:550px}.hero-bubble{width:105px;height:105px;font-size:1.2rem;left:-11%;bottom:0}.flower-one{font-size:3rem}.portrait,.gift{grid-template-columns:1fr;gap:42px}.portrait-media{margin:0 20px}.portrait-sticker{width:100px;height:100px;font-size:1.1rem}.concept-flower{font-size:17rem;right:-100px;top:-90px}.mosaic{grid-template-rows:150px 150px;gap:8px}.gift-circle{width:160px;height:160px;font-size:8rem}.review-wrap{grid-template-columns:1fr;gap:30px}.review-wrap blockquote{text-align:center}.contact{grid-template-columns:1fr}.contact-decor{display:none}footer{grid-template-columns:1fr}.social{justify-content:flex-start}}@media(max-width:460px){.atelier-grid{gap:15px}.card-photo{aspect-ratio:4/4.4}.card-body h3{font-size:1.13rem}.card-body p{font-size:.82rem}.mosaic{grid-template-rows:120px 120px}.actions{gap:15px}.btn{padding:13px 19px}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}.reveal{opacity:1;transform:none}}

/* V2 : images temporaires remplaçables facilement */
.photo-placeholder:before,.card-photo:before{display:none!important}
.photo-placeholder img{width:100%;height:100%;display:block;object-fit:cover;transition:transform .75s cubic-bezier(.2,.8,.2,1)}
.atelier-card:hover .card-photo img,.mosaic .photo-placeholder:hover img{transform:scale(1.045)}
.hero-photo img{object-position:center center}
.portrait-photo img{object-position:center 30%}
.contact-image img{width:100%;border-radius:44% 44% 22px 22px / 30% 30% 22px 22px;max-height:490px;object-fit:cover;box-shadow:0 25px 70px #3a322027}
.site-header{position:sticky;top:0;box-shadow:0 3px 20px #4935230c}
.hero-photo{box-shadow:0 28px 60px #a569492c}
@media(max-width:760px){.contact-image{max-width:410px}}

/* V3 : pages internes */
.nav a[aria-current=page]{color:var(--terracotta);text-decoration:underline;text-underline-offset:8px}.interior-hero{background:var(--cream);text-align:center;min-height:350px;display:flex;flex-direction:column;align-items:center;justify-content:center}.interior-hero h1{max-width:950px}.interior-hero p{max-width:740px;margin:0 auto}.interior-section{background:var(--paper)}.tile-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:22px}.tile{min-width:0}.tile-photo{aspect-ratio:4/4.3;overflow:hidden;border-radius:45% 45% 12px 12px / 30% 30% 12px 12px;background:#eac7b9}.tile-photo img,.split-image img,.home-gallery img,.gallery-image img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .65s}.tile:hover img,.gallery-image:hover img{transform:scale(1.04)}.tile-body{padding:18px 4px}.tile-body p{font-size:.9rem}.tile-grid.two{grid-template-columns:repeat(2,minmax(0,1fr));max-width:1050px;margin:auto}.offer-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.offer{padding:32px;border:1px solid #cfbdb1;border-radius:24px;background:#fffaf4}.offer h3{font-size:1.6rem}.offer strong{display:block;color:#a45f48;margin:12px 0}.offer p{min-height:110px}.offer .btn{font-size:.8rem}.note-block{background:#f4e1d4;padding:30px;border-radius:24px;margin:28px auto;max-width:1000px}.pale{background:#f5ede2}.split{display:grid;grid-template-columns:1fr 1fr;gap:8%;align-items:center}.split-image{aspect-ratio:4/3;border-radius:40px;overflow:hidden}.pill-row{display:flex;justify-content:center;flex-wrap:wrap;gap:14px}.pill-row span{border:1px solid #a86a53;border-radius:50px;padding:12px 20px}.cta-band{text-align:center;background:#bad4cb}.cta-band p{margin:12px auto 28px}.home-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:13px;height:320px}.home-gallery img{border-radius:25px;min-width:0}.home-gallery img:nth-child(2){object-fit:cover}.center{text-align:center;margin-top:30px}.gallery-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.gallery-image{margin:0;overflow:hidden;border-radius:20px;background:#f3ece4}.gallery-image img{aspect-ratio:4/3}.gallery-image figcaption{padding:12px;font-size:.82rem}.contact-layout{display:grid;grid-template-columns:1.6fr 1fr;gap:9%}.request-form{display:grid;gap:12px;max-width:630px}.request-form label{font-weight:700}.request-form input,.request-form select,.request-form textarea{padding:14px;border:1px solid #a8a19a;border-radius:12px;background:#fffcf8;font:inherit;min-width:0}.request-form .btn{border:0;cursor:pointer;justify-self:start}.info-panel{background:#e7ede5;padding:32px;border-radius:24px;align-self:start}.small{font-size:.82rem}@media(max-width:1050px){.tile-grid{grid-template-columns:repeat(2,1fr)}.offer-grid{grid-template-columns:1fr 1fr}.offer p{min-height:0}.site-header .nav{font-size:.73rem;gap:9px}}@media(max-width:760px){.tile-grid,.tile-grid.two,.offer-grid,.split,.contact-layout{grid-template-columns:1fr}.tile-photo{max-height:350px}.home-gallery{height:160px}.nav{gap:0}.interior-hero{min-height:260px}.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:450px){.gallery-grid{grid-template-columns:1fr}.home-gallery{grid-template-columns:1fr 1fr;height:160px}.home-gallery img:last-child{display:none}}
