/*
Theme Name: Rémi Bohème
Author: Rémi Kwieciak Studio
Description: Thème photographique pour les séances grossesse, naissance, famille et les photos d’identité à Harnes.
Version: 1.1.6
Requires at least: 6.4
Requires PHP: 7.4
Text Domain: remi-boheme
License: GPL-2.0-or-later
*/
:root{--paper:#f7f4ed;--white:#fffdf9;--ink:#302c25;--muted:#696258;--line:#d8d0c2;--accent:#765b3d;--sand:#e7decf;--dark:#373c32;--serif:Georgia,'Times New Roman',serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font:16px/1.65 Arial,Helvetica,sans-serif}a{color:inherit;text-decoration:none}button,input,select{font:inherit}button,a{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,select:focus-visible{outline:3px solid #926e42;outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{font-family:var(--serif);font-weight:400;line-height:1.08}h1{font-size:clamp(3rem,5.7vw,5.7rem);letter-spacing:-.055em;margin-bottom:25px}h2{font-size:clamp(2.3rem,4vw,4rem);letter-spacing:-.045em;margin-bottom:24px}h3{font-size:2rem;letter-spacing:-.035em}em{font-weight:400;color:var(--accent)}p{max-width:61ch}.wrap{width:min(1300px,90%);margin:auto}.eyebrow{font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;font-weight:600;margin-bottom:20px}.topline{text-align:center;background:var(--dark);color:#fffdf9;font-size:.8125rem;padding:8px 18px;letter-spacing:.02em}.site-header{background:var(--paper);border-bottom:1px solid var(--line);position:relative;z-index:10}.header-inner{min-height:108px;display:flex;align-items:center;justify-content:space-between;gap:35px}.brand{display:flex;align-items:center;gap:12px;flex-shrink:0}.brand img{width:46px;height:44px;object-fit:contain}.brand strong{display:block;font-family:var(--serif);font-size:1.4rem;font-weight:400;line-height:1.3}.brand small{font-size:.625rem;letter-spacing:.24em;text-transform:uppercase}.nav{display:flex;align-items:center;gap:30px;font-size:.875rem}.nav a:hover,.footer a:hover{text-decoration:underline;text-underline-offset:6px}.nav .btn{padding:12px 21px}.menu-toggle{display:none}.btn{display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:16px 25px;background:var(--accent);color:#fff;border:1px solid var(--accent);font-size:.875rem;line-height:1.4;cursor:pointer;transition:background .2s}.btn:hover{background:#5c452e}.btn.light{background:transparent;color:var(--ink);border-color:var(--line)}.btn.light:hover{background:var(--sand)}.text-link{border-bottom:1px solid var(--ink);padding-bottom:5px;font-size:.875rem;display:inline-block}.hero{display:grid;grid-template-columns:.95fr 1.05fr;min-height:675px;padding:44px 0 52px;gap:7%;align-items:center}.hero-copy{padding:16px 0}.hero-copy>p:not(.eyebrow){max-width:420px;color:var(--muted);font-size:1.0625rem;line-height:1.8}.hero .actions{display:flex;align-items:center;gap:26px;flex-wrap:wrap;margin:30px 0 26px}.hero-note{font-size:.8125rem;color:var(--muted)}.hero-image{position:relative;margin:0;padding:0 0 22px 0}.hero-image>img{width:100%;height:565px;object-fit:cover;object-position:center 37%;border-radius:240px 240px 2px 2px}.image-label{position:absolute;bottom:0;left:-25px;background:var(--white);padding:17px 24px;font-family:var(--serif);font-style:italic;font-size:1.1875rem;box-shadow:0 3px 20px #302c2508}.hero-mark{position:absolute;right:-14px;bottom:0;font-size:.6875rem;letter-spacing:.16em;writing-mode:vertical-rl;text-transform:uppercase}.trustline{border-top:1px solid var(--line);border-bottom:1px solid var(--line);display:grid;grid-template-columns:repeat(3,1fr);padding:22px 0;text-align:center;font-size:.875rem}.trustline span+span{border-left:1px solid var(--line)}.section{padding:90px 0}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:25px;margin-bottom:36px}.section-head h2{margin-bottom:0}.section-head>p{max-width:340px;font-size:.9375rem;color:var(--muted);margin:0}.services{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.service-card{display:block}.service-card .photo{overflow:hidden;margin-bottom:22px;position:relative}.service-card img{width:100%;height:385px;object-fit:cover;transition:transform .5s}.service-card:hover img{transform:scale(1.025)}.service-card .number{position:absolute;top:15px;left:17px;color:white;font-size:.8125rem}.service-title{display:flex;align-items:center;justify-content:space-between}.service-title h3{margin-bottom:10px}.service-card p{font-size:.9375rem;color:var(--muted);margin-bottom:18px}.service-bottom{display:flex;justify-content:space-between;border-top:1px solid var(--line);padding-top:16px;font-size:.875rem}.service-bottom span:last-child{font-size:1.25rem}.identity{background:var(--sand);display:grid;grid-template-columns:1.15fr .6fr 1fr;gap:35px;padding:42px;align-items:center;margin-bottom:15px}.identity h2{font-size:2.65rem;margin-bottom:12px}.identity .eyebrow{margin-bottom:12px}.identity p{margin-bottom:0;font-size:.9375rem}.identity-price{font-family:var(--serif);font-size:5rem;text-align:center;border-left:1px solid #b8ae9b;border-right:1px solid #b8ae9b;line-height:1}.identity-action{text-align:center}.identity-action>p{margin-bottom:15px;font-size:.8125rem}.intro-grid{display:grid;grid-template-columns:.85fr 1.15fr;gap:11%;align-items:center}.portrait{height:515px;width:100%;object-fit:cover;object-position:center 30%;border-radius:2px 2px 180px 2px}.intro-copy p{color:var(--muted)}.intro-copy .signature{font-family:var(--serif);font-style:italic;font-size:2rem;color:var(--accent);margin:22px 0 0}.pricing-section{background:#ede7dc}.center{text-align:center}.center p{margin-left:auto;margin-right:auto}.prices{display:grid;grid-template-columns:repeat(3,1fr);gap:22px;margin:40px 0 22px}.price-card{background:var(--white);border:1px solid var(--line);padding:32px;position:relative}.price-card.featured{border-color:var(--accent)}.price-tag{position:absolute;right:18px;top:-14px;background:var(--accent);color:#fff;padding:5px 12px;font-size:.6875rem;letter-spacing:.07em;text-transform:uppercase}.price-card h3{font-size:1.8rem;margin-bottom:6px}.price-card .price{font-family:var(--serif);font-size:3.6rem;line-height:1.4}.price-card ul{list-style:none;padding:20px 0 0;margin:15px 0 25px;border-top:1px solid var(--line);font-size:.875rem;min-height:150px}.price-card li{margin-bottom:10px;padding-left:18px;position:relative}.price-card li:before{content:'✓';position:absolute;left:0;color:var(--accent)}.price-card .btn{width:100%}.small{font-size:.8125rem;color:var(--muted)}.price-extra{background:var(--sand);padding:22px 28px;display:flex;justify-content:space-between;align-items:center;gap:25px;margin-top:25px}.price-extra p{margin:0}.process{display:grid;grid-template-columns:repeat(3,1fr);gap:50px;margin-top:45px}.step{border-top:1px solid var(--line);padding-top:25px}.step .step-no{font-family:var(--serif);font-style:italic;font-size:2.2rem;color:var(--accent);display:block;margin-bottom:18px}.step h3{font-size:1.6rem}.step p{color:var(--muted);font-size:.9375rem}.cta{background:var(--dark);color:var(--paper);padding:68px 0}.cta-inner{display:flex;justify-content:space-between;align-items:center;gap:40px}.cta h2{max-width:720px;margin-bottom:12px}.cta p{margin:0;color:#d6d6c9}.cta .btn{background:var(--paper);border-color:var(--paper);color:var(--ink);white-space:nowrap}.footer{padding:60px 0 22px}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:55px}.footer h3{font-family:Arial,sans-serif;font-size:.75rem;letter-spacing:.13em;text-transform:uppercase;margin:8px 0 22px}.footer p,.footer li{font-size:.875rem;color:var(--muted)}.footer ul{list-style:none;margin:0;padding:0}.footer li{margin-bottom:9px}.footer-bottom{border-top:1px solid var(--line);padding-top:20px;margin-top:40px;display:flex;justify-content:space-between;font-size:.75rem;color:var(--muted);gap:20px;flex-wrap:wrap}.footer-bottom div{display:flex;gap:24px}.breadcrumb{font-size:.8125rem;color:var(--muted);padding:22px 0 0}.detail-hero{min-height:580px;padding-top:28px}.detail-hero h1{font-size:clamp(3.4rem,6vw,5.6rem)}.detail-hero .hero-image>img{height:525px;border-radius:200px 200px 2px 2px}.facts{display:flex;gap:13px;flex-wrap:wrap;margin:22px 0}.facts span{font-size:.8125rem;padding:7px 12px;border:1px solid var(--line)}.gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.gallery img{height:420px;width:100%;object-fit:cover}.gallery img:nth-child(2){margin-top:45px}.faq{max-width:850px;margin:40px auto 0}.faq details{border-bottom:1px solid var(--line);padding:22px 0}.faq summary{font-size:1.0625rem;cursor:pointer;list-style:none;display:flex;justify-content:space-between;gap:20px}.faq summary:after{content:'+';font-size:1.4rem;line-height:1}.faq details[open] summary:after{content:'−'}.faq details p{margin:20px 0 0;color:var(--muted)}.page-title{padding:62px 0 25px;max-width:850px}.page-title h1{font-size:clamp(3rem,5vw,4.8rem)}.booking-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin:20px 0 35px}.booking-card{background:var(--white);border:1px solid var(--line)}.booking-card img{height:255px;width:100%;object-fit:cover}.booking-card>div{padding:25px}.booking-card h2{font-size:2rem}.booking-card .btn{width:100%;gap:12px;padding:15px}.booking-card p{font-size:.9375rem}.callout{border-left:3px solid var(--accent);padding:15px 24px;background:#eee7dc;margin:30px 0}.identity-page{display:grid;grid-template-columns:1fr .8fr;gap:8%;padding:50px 0 75px;align-items:center}.identity-board{background:var(--dark);color:var(--paper);padding:50px}.identity-board .price{font-family:var(--serif);font-size:7rem;line-height:1.2}.identity-board hr{border:0;border-top:1px solid #777f70;margin:25px 0}.identity-board p{margin-bottom:10px}.identity-page h1{font-size:clamp(3.5rem,5.5vw,5.5rem)}.identity-page .btn{margin:10px 8px 0 0}.mobile-bar{display:none}.skip{position:fixed;top:-100px;left:10px;background:white;z-index:100;padding:12px}.skip:focus{top:10px}.page-content{min-height:40vh;padding:60px 0}.wp-block-image img{height:auto}.screen-reader-text{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px)}
@media(min-width:1500px){.hero-image>img{height:620px}.hero{min-height:740px}}
@media(max-width:1050px){.nav{gap:18px}.header-inner{gap:20px}.brand strong{font-size:1.2rem}.brand img{width:36px}.hero{gap:5%;min-height:580px}.hero-image>img{height:505px}.service-card img{height:320px}.identity{padding:30px;gap:25px}.identity h2{font-size:2.2rem}.price-card{padding:25px}.price-card ul{min-height:180px}.booking-grid{gap:15px}.booking-card>div{padding:18px}.booking-card .btn{font-size:.8125rem}.gallery img{height:340px}}
@media(max-width:800px){.topline{font-size:.75rem}.header-inner{min-height:82px}.brand strong{font-size:1.25rem}.menu-toggle{display:block;background:none;border:1px solid var(--line);padding:8px 12px;font-size:.875rem;color:var(--ink)}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:22px 5%;border-bottom:1px solid var(--line);align-items:stretch}.nav.open{display:flex;flex-direction:column}.nav a{padding:8px 0}.hero{grid-template-columns:1fr;gap:28px;padding-top:34px;padding-bottom:40px;min-height:0}.hero h1{font-size:3.6rem;max-width:620px}.hero-copy{padding:0}.hero-copy>p:not(.eyebrow){max-width:580px}.hero .actions{margin:24px 0 18px}.hero-image{width:100%;max-width:580px;margin:auto}.hero-image>img{height:510px;border-radius:220px 220px 2px 2px}.image-label{left:-8px;font-size:1rem}.hero-mark{right:-8px}.trustline{font-size:.75rem;gap:12px}.trustline span{padding:0 10px}.section{padding:60px 0}.section-head{display:block}.section-head>p{margin-top:20px;max-width:550px}.services{gap:16px}.service-card img{height:270px}.service-title h3{font-size:1.5rem}.service-card p{font-size:.875rem}.service-bottom{font-size:.75rem}.identity{grid-template-columns:1fr auto;gap:25px}.identity-price{padding-left:30px;border-right:0;font-size:4rem}.identity-action{grid-column:1/-1;text-align:left}.identity-action>p{display:inline-block;margin-right:20px}.intro-grid{gap:40px;grid-template-columns:.8fr 1.2fr}.portrait{height:440px}.prices{gap:12px}.price-card{padding:22px 16px}.price-card h3{font-size:1.5rem}.price-card .price{font-size:3rem}.price-card .btn{padding:12px 8px;font-size:.8125rem}.price-extra{display:block}.price-extra a{margin-top:12px}.process{gap:25px}.cta-inner{display:block}.cta .btn{margin-top:25px}.footer-grid{gap:25px}.booking-grid{grid-template-columns:1fr}.booking-card{display:grid;grid-template-columns:180px 1fr}.booking-card img{height:100%;min-height:240px}.booking-card>div{padding:25px}.booking-card .btn{width:auto}.identity-page{grid-template-columns:1fr;gap:35px}.identity-board{padding:35px}.gallery{gap:14px}.gallery img{height:300px}}
@media(max-width:560px){body{padding-bottom:67px}.wrap{width:89%}h1,.hero h1{font-size:3.1rem}h2{font-size:2.65rem}.eyebrow{font-size:.6875rem;letter-spacing:.13em}.hero .actions{gap:20px}.hero .btn{padding:15px 18px}.hero-image>img{height:430px}.hero-note{font-size:.75rem}.trustline{grid-template-columns:1fr;gap:10px;padding:20px}.trustline span+span{border:0}.services{grid-template-columns:1fr;gap:35px}.service-card img{height:420px}.service-title h3{font-size:2.2rem}.service-card p{font-size:1rem}.service-bottom{font-size:.875rem}.identity{padding:28px 22px;gap:22px}.identity h2{font-size:2rem}.identity .eyebrow{font-size:.625rem}.identity-price{font-size:3.6rem;padding-left:17px}.identity-action>p{margin-bottom:14px}.intro-grid{grid-template-columns:1fr;gap:35px}.portrait{height:410px;width:85%}.intro-copy{order:-1}.prices{grid-template-columns:1fr;gap:25px;margin-top:30px}.price-card{padding:30px}.price-card h3{font-size:1.9rem}.price-card ul{min-height:0}.price-card .btn{padding:15px;font-size:.875rem}.process{grid-template-columns:1fr;gap:15px}.step{display:grid;grid-template-columns:40px 1fr;column-gap:20px}.step p{grid-column:2}.step h3{margin:9px 0 15px}.step .step-no{margin:0}.footer-grid{grid-template-columns:1fr 1fr;gap:35px 20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{font-size:.6875rem}.footer-bottom div{gap:17px}.mobile-bar{position:fixed;bottom:0;left:0;right:0;z-index:20;display:grid;grid-template-columns:1fr 1.3fr;background:var(--paper);border-top:1px solid var(--line);padding:9px 5%;gap:12px;box-shadow:0 -5px 25px #302c2508}.mobile-bar a{text-align:center;padding:10px 0;font-size:.8125rem}.mobile-bar a:last-child{background:var(--accent);color:white}.detail-hero .hero-image>img{height:450px}.gallery{grid-template-columns:1fr 1fr;gap:12px}.gallery img{height:260px}.gallery img:nth-child(2){margin-top:25px}.gallery img:last-child{display:none}.booking-card{grid-template-columns:1fr}.booking-card img{height:290px}.booking-card>div{padding:26px}.booking-card .btn{width:100%}.page-title{padding-top:40px}.identity-page h1{font-size:3.1rem}.identity-board .price{font-size:6rem}.identity-page{padding-top:35px}.cta{padding:45px 0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

/* Lifestyle : un parcours à part entière. */
.lifestyle-feature{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:center;padding-top:10px}.lifestyle-picture{position:relative}.lifestyle-picture img{width:100%;height:460px;object-fit:cover}.lifestyle-label{position:absolute;left:20px;top:20px;background:var(--paper);padding:9px 16px;font-size:.75rem;letter-spacing:.06em}.lifestyle-copy h2{font-size:4rem}.lifestyle-price{font-family:var(--serif);font-size:2.4rem;margin-bottom:22px}.lifestyle-price span{font-family:Arial,sans-serif;font-size:.8125rem;display:block;color:var(--muted)}.lifestyle-copy>p:not(.eyebrow):not(.lifestyle-price){color:var(--muted)}.lifestyle-gallery{display:grid;grid-template-columns:1fr 1fr;gap:30px}.lifestyle-gallery img{width:100%;height:400px;object-fit:cover}.lifestyle-offer{display:grid;grid-template-columns:1.2fr .8fr;gap:10%;align-items:center}.lifestyle-offer .price-card ul{min-height:0}.booking-lifestyle{display:grid;grid-template-columns:.8fr 1.2fr;gap:40px;background:var(--sand);margin:35px 0;padding:28px;align-items:center}.booking-lifestyle img{width:100%;height:300px;object-fit:cover}.booking-lifestyle h2{font-size:2.5rem}.booking-lifestyle p{font-size:.9375rem}.lifestyle-hero .hero-image>img{object-position:42% center}.nav{gap:22px}
@media(max-width:1100px) and (min-width:801px){.nav{gap:13px;font-size:.8125rem}.nav .btn{padding:12px}.brand strong{font-size:1.1rem}.brand img{width:32px}.header-inner{gap:15px}}
@media(max-width:800px){.lifestyle-feature{gap:30px;grid-template-columns:1fr 1fr}.lifestyle-picture img{height:440px}.lifestyle-copy h2{font-size:3.1rem}.lifestyle-offer{gap:35px}.booking-lifestyle{gap:25px;padding:23px}.booking-lifestyle h2{font-size:2rem}.booking-lifestyle img{height:340px}.lifestyle-gallery img{height:300px}.lifestyle-label{left:12px;right:12px;text-align:center;font-size:.6875rem}}
@media(max-width:560px){.lifestyle-feature{grid-template-columns:1fr;gap:30px}.lifestyle-picture img{height:340px}.lifestyle-copy h2{font-size:3rem}.lifestyle-gallery{grid-template-columns:1fr;gap:20px}.lifestyle-gallery img{height:290px}.lifestyle-offer{grid-template-columns:1fr;gap:25px}.booking-lifestyle{grid-template-columns:1fr;padding:20px;gap:25px}.booking-lifestyle img{height:230px}.booking-lifestyle h2{font-size:2.2rem}.booking-lifestyle .btn{width:100%;font-size:.8125rem}.booking-lifestyle .text-link{margin-left:0!important}}

/* Navigation douce : mouvements courts et respect des préférences. */
.nav>a:not(.btn){position:relative;padding-block:8px}
.nav>a:not(.btn)::after{content:'';position:absolute;left:0;right:0;bottom:1px;height:1px;background:var(--accent);transform:scaleX(0);transform-origin:left;transition:transform .32s cubic-bezier(.22,.61,.36,1)}
.nav>a:not(.btn):hover,.nav>a:not(.btn):focus-visible{text-decoration:none}
.nav>a:not(.btn):hover::after,.nav>a:not(.btn):focus-visible::after,.nav>a[aria-current="page"]:not(.btn)::after{transform:scaleX(1)}
.btn{transition:background .25s ease,transform .3s cubic-bezier(.22,.61,.36,1),box-shadow .3s ease}
.btn:hover{transform:translateY(-2px);box-shadow:0 5px 16px #302c2510}
.btn:active{transform:translateY(0);box-shadow:none}
.text-link{transition:color .25s ease,border-color .25s ease}
.text-link:hover{color:var(--accent);border-color:var(--accent)}
.menu-toggle{transition:background .25s ease,border-color .25s ease}
.menu-toggle:hover,.menu-toggle[aria-expanded="true"]{background:var(--sand);border-color:var(--accent)}
@keyframes rk-soft-enter{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@media(prefers-reduced-motion:no-preference){.hero-copy,.page-title,.identity-page>div:first-child{animation:rk-soft-enter .55s cubic-bezier(.22,.61,.36,1) both}@view-transition{navigation:auto}::view-transition-old(root){animation-duration:.18s}::view-transition-new(root){animation-duration:.25s}}
@media(max-width:800px) and (prefers-reduced-motion:no-preference){.nav.open{animation:rk-soft-enter .26s ease both}.nav.open>a{animation:rk-soft-enter .3s ease both}.nav.open>a:nth-child(2){animation-delay:.025s}.nav.open>a:nth-child(3){animation-delay:.05s}.nav.open>a:nth-child(4){animation-delay:.075s}.nav.open>a:nth-child(5){animation-delay:.1s}.nav.open>a:nth-child(6){animation-delay:.125s}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}.btn:hover{transform:none}}

/* Identité locale : visible immédiatement sous le menu d’accueil. */
.identity-local{background:var(--sand);border-bottom:1px solid #c8bca8}
.identity-local-inner{display:grid;grid-template-columns:1.1fr .65fr 1.2fr auto;align-items:center;gap:28px;padding-block:25px}
.identity-local p{margin:0}
.identity-local-tag{font-size:.875rem;font-weight:600;color:#58452e;margin-bottom:6px!important}
.identity-local-title{font:1.65rem/1.15 var(--serif);letter-spacing:-.035em}
.identity-local-audience{font-size:.875rem;margin-top:7px!important;color:var(--muted)}
.identity-local-price{border-inline:1px solid #c1b39e;text-align:center;padding-inline:20px}
.identity-local-price strong{display:block;font:3.1rem/1.08 var(--serif);font-weight:400}
.identity-local-price span{display:block;font-size:.875rem;margin-top:6px;white-space:nowrap}
.identity-local-practical{font-size:.875rem;line-height:1.65}
.identity-local-practical p+p{margin-top:7px;color:var(--muted)}
.identity-local-actions{display:flex;flex-direction:column;align-items:center;gap:11px}
.identity-local-actions .btn{padding:12px 20px;white-space:nowrap}
.identity-local-actions .text-link{font-size:.875rem;padding-bottom:2px}
@media(max-width:1100px){.identity-local-inner{gap:18px;grid-template-columns:1fr .65fr 1fr auto}.identity-local-title{font-size:1.4rem}.identity-local-price{padding-inline:14px}.identity-local-actions .btn{padding:12px 15px}}
@media(max-width:800px){.identity-local-inner{grid-template-columns:1fr auto;gap:20px 25px;padding-block:24px}.identity-local-price{border-right:0;min-width:140px}.identity-local-practical{grid-column:1}.identity-local-actions{grid-column:2}.identity-local-title{font-size:1.65rem}}
@media(max-width:560px){.identity-local-inner{gap:17px 14px;padding-block:20px}.identity-local-title{font-size:1.5rem}.identity-local-tag{font-size:.875rem}.identity-local-audience{font-size:.875rem;max-width:185px}.identity-local-price{padding-left:14px;padding-right:0;min-width:0}.identity-local-price strong{font-size:2.7rem}.identity-local-price span{white-space:normal;max-width:95px;font-size:.875rem}.identity-local-practical{grid-column:1/-1;border-top:1px solid #c8bca8;padding-top:13px}.identity-local-practical p+p{margin-top:3px}.identity-local-actions{grid-column:1/-1;flex-direction:row;justify-content:space-between;gap:14px}.identity-local-actions .btn{padding:12px 14px;gap:12px;font-size:.875rem}.identity-local-actions .text-link{font-size:.875rem;line-height:1.4;text-align:center}}

/* Logo ANTS fourni par le studio, conservé dans ses couleurs d’origine. */
.identity-ants{display:flex;align-items:center;gap:12px;margin-top:12px}
.identity-ants img{width:64px;height:auto;flex:0 0 64px;object-fit:contain;background:white}
.identity-ants span{font-size:.875rem;font-weight:600;line-height:1.4;color:#58452e}
.identity-page .identity-ants{margin:24px 0 12px}
.identity-page .identity-ants img{width:80px;flex-basis:80px}
@media(max-width:560px){.identity-local-inner{align-items:start}.identity-local-price{padding-top:8px}.identity-local .identity-ants{gap:8px}.identity-local .identity-ants img{width:56px;flex-basis:56px}.identity-local .identity-ants span{font-size:.875rem;max-width:125px}}

/* Noël 2026 — couleurs sapin et or, photographies du studio. */
.noel-feature{display:grid;grid-template-columns:1.15fr 1fr;align-items:center;gap:6%;background:#213c30;color:#fbf6e9;margin-top:5px;padding:34px}.noel-feature-photo{position:relative}.noel-feature-photo img{width:100%;height:480px;object-fit:cover}.noel-feature-photo span{position:absolute;left:16px;top:16px;padding:8px 14px;background:#f7f4ed;color:#213c30;font-size:.8125rem}.noel-feature-copy h2{font-size:3.8rem}.noel-feature-copy h2 em{color:#d8bd8a}.noel-feature-copy>p:not(.eyebrow){color:#e3ddd0}.noel-feature-price{font:2.5rem/1.2 var(--serif);margin:22px 0}.noel-feature-price span{display:block;font: .875rem/1.5 Arial,sans-serif;margin-top:5px}.noel-feature-actions{display:flex;gap:22px;align-items:center;flex-wrap:wrap}.noel-feature .btn,.noel-page .btn{background:#cbb080;border-color:#cbb080;color:#213c30}.noel-feature .btn:hover,.noel-page .btn:hover{background:#d8bf94}.noel-feature .text-link{color:#f7f4ed;border-color:#f7f4ed}.noel-page .eyebrow{color:#765b3d}.noel-page .hero-image>img{object-position:center 20%}.noel-page .hero-copy em,.noel-page h2 em{color:#53684f}.noel-gallery{display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.noel-gallery img{width:100%;height:360px;object-fit:cover}.noel-gallery img:nth-child(2){object-position:center 20%}.noel-pricing{background:#e9e2d3}.noel-page .price-card.featured{border-color:#53684f}.noel-page .price-tag{background:#53684f}.noel-page .price-card ul{min-height:155px}.noel-page .price-card .btn{width:100%}.noel-page .price-card .btn.light{background:transparent;color:#213c30;border-color:#53684f}.noel-page .price-card .btn.light:hover{background:#e9e2d3}.noel-page .cta .btn{background:#f7f4ed;border-color:#f7f4ed}
@media(max-width:1100px){.noel-feature{gap:4%;padding:26px}.noel-feature-photo img{height:430px}.noel-feature-copy h2{font-size:3rem}.noel-gallery img{height:300px}.nav{gap:15px}.nav .btn{padding:11px 13px}}
@media(max-width:800px){.noel-feature{grid-template-columns:1fr 1fr}.noel-feature-photo img{height:425px}.noel-feature-copy h2{font-size:2.6rem}.noel-gallery{grid-template-columns:repeat(2,1fr)}.noel-gallery img{height:330px}}
@media(max-width:560px){.noel-feature{grid-template-columns:1fr;padding:20px;gap:25px}.noel-feature-photo img{height:300px}.noel-feature-copy h2{font-size:2.8rem}.noel-feature-price{font-size:2.1rem}.noel-feature-actions{gap:20px}.noel-gallery{gap:11px}.noel-gallery img{height:220px}.noel-page .price-card ul{min-height:0}}

@media(min-width:801px) and (max-width:1100px){.menu-toggle{display:block;background:none;border:1px solid var(--line);padding:8px 12px;color:var(--ink)}.nav{display:none;position:absolute;left:0;right:0;top:100%;background:var(--paper);padding:22px 5%;border-bottom:1px solid var(--line)}.nav.open{display:flex;flex-direction:column;align-items:stretch}.nav a{padding:8px 0}}

/* Bons cadeaux : une présence visible, dans le même esprit calme que le studio. */
.gift-feature{display:grid;grid-template-columns:1.15fr .85fr;align-items:center;gap:7%;padding:52px 6%;background:#ebe6db;border:1px solid var(--line);position:relative;overflow:hidden}
.gift-feature:before{content:'';position:absolute;inset:16px;border:1px solid #cfc6b6;pointer-events:none}
.gift-feature-copy,.gift-feature-art{position:relative;z-index:1}
.gift-feature .eyebrow{color:#75664e;margin-bottom:13px}
.gift-feature h2{font-size:clamp(2.4rem,3.8vw,3.85rem);margin-bottom:19px}
.gift-feature h2 em{color:#6c765f}
.gift-feature-copy>p:not(.eyebrow){color:#5f5b50;font-size:1rem;max-width:52ch;margin-bottom:25px}
.gift-feature-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}
.gift-feature .btn{background:#56634e;border-color:#56634e}
.gift-feature .btn:hover{background:#44503e}
.gift-feature-art{display:flex;justify-content:center;padding:25px 0}
.gift-feature-card{width:min(100%,390px);min-height:250px;padding:28px 31px;display:flex;flex-direction:column;justify-content:space-between;background:#f9f6ef;border:1px solid #c7bba7;box-shadow:8px 10px 0 #d5cdbf;transform:rotate(-2deg);position:relative}
.gift-feature-card:after{content:'';position:absolute;inset:9px;border:1px solid #ded5c7;pointer-events:none}
.gift-feature-card-label,.gift-feature-card-footer{font-size:.63rem;letter-spacing:.15em;color:#736d60}
.gift-feature-card-title{font:2.25rem/1.12 var(--serif);letter-spacing:-.04em}
.gift-feature-card-title i{font-weight:400;color:#6c765f}
.gift-feature-card-footer{align-self:flex-end}
@media(max-width:800px){.gift-feature{gap:4%;padding:42px 5%}.gift-feature h2{font-size:2.8rem}.gift-feature-card{min-height:220px;padding:25px}.gift-feature-card-title{font-size:1.9rem}}
@media(max-width:650px){.gift-feature{grid-template-columns:1fr;gap:12px;padding:37px 24px}.gift-feature:before{inset:9px}.gift-feature h2{font-size:2.55rem}.gift-feature-actions{gap:20px}.gift-feature-art{padding:6px 0 5px}.gift-feature-card{min-height:180px;max-width:310px}.gift-feature-card-title{font-size:1.75rem}}

/* Numéro et accès direct au formulaire dans la barre haute. */
.topline-inner{display:flex;align-items:center;justify-content:space-between;gap:20px}
.topline-message{text-align:left}
.topline-actions{display:flex;align-items:center;gap:19px;flex-shrink:0}
.topline-phone{display:inline-flex;align-items:center;gap:9px;font-weight:700;font-size:.875rem;letter-spacing:.035em;white-space:nowrap}
.topline-phone span{font-size:1.05rem;color:#d9c39c;display:inline-block}
.topline-phone:hover{text-decoration:underline;text-underline-offset:4px}
.topline-contact{display:inline-flex;align-items:center;gap:12px;border:1px solid #b9b7a9;padding:3px 11px;font-size:.75rem;white-space:nowrap;transition:background .25s,border-color .25s}
.topline-contact:hover{background:#50574c;border-color:#f7f4ed}
@keyframes rk-phone-wink{0%,6%,100%{transform:rotate(0)}3%{transform:rotate(-13deg)}}
@media(prefers-reduced-motion:no-preference){.topline-phone span{animation:rk-phone-wink 6s ease-in-out infinite}}
@media(max-width:800px){.topline-message{font-size:.69rem}.topline-actions{gap:11px}.topline-phone{font-size:.8rem}}
@media(max-width:620px){.topline-message{display:none}.topline-inner{justify-content:space-between}.topline{padding:7px 5%}.topline-phone{font-size:.84rem}}

/* Formulaire de contact : quelques champs seulement, sans extension externe. */
.contact-page{padding-bottom:80px}
.contact-layout{display:grid;grid-template-columns:.9fr 1.1fr;gap:8%;align-items:start;padding-top:60px}
.contact-intro h1{font-size:clamp(3rem,5vw,5.2rem)}
.contact-intro>p:not(.eyebrow){color:var(--muted);font-size:1.05rem}
.contact-intro img{width:100%;height:380px;object-fit:cover;object-position:center 30%;margin:35px 0 22px;border-radius:170px 170px 2px 2px}
.contact-intro .contact-phone{font-size:.9rem!important}
.contact-panel{background:#ebe6db;border:1px solid var(--line);padding:42px}
.contact-panel h2{font-size:2.7rem;margin-bottom:28px}
.contact-form{display:grid;gap:18px}
.contact-form fieldset{display:grid;gap:18px;border:0;margin:0;padding:0;min-width:0}
.contact-form.is-preview fieldset{opacity:.55}
.contact-form button:disabled{cursor:not-allowed;transform:none;box-shadow:none}
.contact-fallback{margin-top:18px}
.contact-form-row{display:grid;grid-template-columns:1fr 1fr;gap:17px}
.contact-form label{display:block;font-size:.84rem;font-weight:600;margin-bottom:7px}
.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid #bcb3a4;border-radius:0;background:#fffdf9;color:var(--ink);padding:13px 14px;min-height:48px}
.contact-form textarea{min-height:150px;resize:vertical;line-height:1.55;font:inherit}
.contact-form input:focus-visible,.contact-form select:focus-visible,.contact-form textarea:focus-visible{outline:2px solid var(--accent);outline-offset:1px}
.contact-form .btn{justify-self:start;margin-top:2px}
.contact-form .small{margin:-7px 0 0}
.contact-privacy{font-size:.8rem;color:var(--muted);margin:1px 0}
.contact-privacy a{text-decoration:underline;text-underline-offset:3px}
.contact-notice{padding:13px 16px;margin:0 0 21px;border-left:3px solid #56634e;background:#f9f6ef;font-size:.9rem}
.contact-notice.error{border-color:#9b5e4c}
.contact-honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}
@media(max-width:850px){.contact-layout{grid-template-columns:1fr;gap:35px;padding-top:40px}.contact-intro img{display:none}.contact-panel{max-width:660px}}
@media(max-width:560px){.contact-page{padding-bottom:60px}.contact-intro h1{font-size:3.15rem}.contact-panel{padding:27px 22px}.contact-panel h2{font-size:2.3rem}.contact-form-row{grid-template-columns:1fr;gap:18px}.contact-form .btn{width:100%}}
/* Un dressing à parcourir avant la séance grossesse. */
.dressing-section{position:relative;margin:0 0 88px;padding:58px clamp(20px,4vw,58px) 62px;background:#e9e0d2;border:1px solid #d3c5b2;overflow:hidden}
.dressing-section::before{content:"";position:absolute;inset:0;background:repeating-linear-gradient(90deg,transparent 0,transparent 106px,#fff8 107px,transparent 108px);opacity:.22;pointer-events:none}
.dressing-section>*{position:relative}
.dressing-heading{display:grid;grid-template-columns:75px minmax(0,1.25fr) minmax(250px,.85fr);gap:20px 25px;align-items:center;margin-bottom:31px}
.dressing-heading .eyebrow{margin-bottom:10px}
.dressing-heading h2{font-size:clamp(2.4rem,3.5vw,3.8rem);margin:0}
.dressing-heading>p{margin:0;color:var(--muted);font-size:.95rem}
.dressing-icon{width:70px;height:70px;border:1px solid #baa88d;border-radius:50%;display:grid;place-items:center;color:var(--accent)}
.dressing-icon svg{width:35px;height:35px}
.dressing-note{display:flex;align-items:baseline;gap:15px;background:#fffaf1;border-left:3px solid var(--accent);padding:16px 20px;margin-bottom:28px;font-size:.92rem}
.dressing-note strong{flex:none;color:#58452e}
.dressing-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:15px}
.dressing-card{display:block;background:var(--white);padding:8px;border:1px solid #d2c6b5;box-shadow:0 2px 7px #302c2509;transition:transform .25s ease,box-shadow .25s ease}
.dressing-card:hover,.dressing-card:focus-visible{transform:translateY(-3px);box-shadow:0 9px 20px #302c251a}
.dressing-card img{width:100%;height:auto;aspect-ratio:862/1375;object-fit:contain;background:#70695d}
.dressing-card-caption{display:flex;justify-content:space-between;align-items:center;gap:8px;padding:9px 4px 2px;font-size:.82rem}
.dressing-card-caption strong{font-weight:600}
.dressing-card-caption>span{color:var(--accent);white-space:nowrap}
.dressing-after{margin:26px 0 16px;color:var(--muted);font-size:.94rem}
.dressing-dialog{position:fixed;max-width:min(680px,94vw);max-height:94vh;border:1px solid #d2c6b5;background:var(--paper);padding:16px 16px 12px;box-shadow:0 20px 65px #0006;color:var(--ink)}
.dressing-dialog::backdrop{background:#201b17d9}
.dressing-dialog img{display:block;max-width:100%;width:auto;max-height:calc(94vh - 75px);height:auto;margin:auto;object-fit:contain}
.dressing-dialog-close{position:absolute;right:21px;top:20px;z-index:1;width:38px;height:38px;border:0;border-radius:50%;background:var(--paper);color:var(--ink);font-size:1.8rem;line-height:1;cursor:pointer;box-shadow:0 2px 10px #0003}
.dressing-dialog-caption{text-align:center;font-size:.9rem;margin:10px 0 0;max-width:none}
@media(max-width:1000px){.dressing-heading{grid-template-columns:70px 1fr}.dressing-heading>p{grid-column:2}.dressing-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:650px){.dressing-section{margin-bottom:58px;padding:30px 15px 35px}.dressing-heading{grid-template-columns:52px 1fr;gap:10px 13px;margin-bottom:22px}.dressing-icon{width:48px;height:48px}.dressing-icon svg{width:28px;height:28px}.dressing-heading h2{font-size:2.25rem}.dressing-heading>p{grid-column:1/-1}.dressing-note{display:block;padding:14px 16px;margin-bottom:16px}.dressing-note strong{display:block;margin-bottom:5px}.dressing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.dressing-card{padding:4px}.dressing-card-caption{display:block;padding:7px 3px 3px;font-size:.76rem}.dressing-card-caption>span{display:block}.dressing-after{font-size:.88rem}.dressing-section>.btn{width:100%}.dressing-dialog{padding:10px;max-width:96vw;max-height:92vh}.dressing-dialog img{max-height:calc(92vh - 58px)}}

/* Labo photo : cartes façon tirages et illustrations techniques au trait. */
.lab-section{background:#eee7dc;padding:82px 0 76px;border-top:1px solid #d6cbbb}
.lab-heading{display:flex;justify-content:space-between;align-items:end;gap:40px;margin-bottom:34px}
.lab-heading .eyebrow{color:#806e57;margin-bottom:12px}
.lab-heading h2{margin:0;font-size:clamp(2.65rem,4.1vw,4.1rem)}
.lab-heading h2 em{color:#6e765e}
.lab-heading>p{max-width:435px;margin:0;color:#665f55;font-size:.96rem}
.lab-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}
.lab-card{min-width:0;min-height:363px;padding:27px 29px 30px;background:#fbf9f4;border:1px solid #d6cbbb;box-shadow:0 5px 25px #5a4a3410;display:flex;flex-direction:column;transition:transform .35s ease,box-shadow .35s ease}
.lab-card:hover{transform:translateY(-3px);box-shadow:0 10px 28px #5a4a3418}
.lab-card-top{display:flex;align-items:start;justify-content:space-between;gap:8px;min-height:134px;border-bottom:1px solid #ded6ca;margin-bottom:23px}
.lab-card-top span{font-size:.68rem;letter-spacing:.13em;text-transform:uppercase;color:#806e57;padding-top:5px}
.lab-card-top img{width:145px;height:112px;object-fit:contain;mix-blend-mode:multiply}
.lab-card h3{font-size:1.75rem;margin:0 0 12px}
.lab-card p{font-size:.92rem;line-height:1.65;margin:0;color:#615b52}
.lab-card .lab-detail{color:#806e57;font-size:.83rem;margin-top:auto;padding-top:15px}
.lab-contact{display:flex;justify-content:space-between;align-items:center;gap:30px;margin-top:28px;padding-top:24px;border-top:1px solid #d1c5b5}
.lab-contact p{margin:0;font-family:var(--serif);font-size:1.32rem;line-height:1.3}
.lab-contact p strong{font-weight:400;font-style:italic;color:var(--accent)}
.lab-contact>div{display:flex;align-items:center;gap:25px;flex-wrap:wrap}
.lab-contact .btn{white-space:nowrap}
@media(max-width:900px){.lab-heading{align-items:start}.lab-grid{gap:12px}.lab-card{padding:22px;min-height:370px}.lab-card-top img{width:115px;height:100px}.lab-card-top{min-height:116px}}
@media(max-width:700px){.lab-section{padding:54px 0 48px}.lab-heading{display:block;margin-bottom:25px}.lab-heading h2{font-size:2.8rem;margin-bottom:15px}.lab-heading>p{font-size:.92rem}.lab-grid{grid-template-columns:1fr}.lab-card{min-height:0;padding:21px 24px 24px}.lab-card-top{min-height:102px;margin-bottom:16px}.lab-card-top img{width:135px;height:98px}.lab-card h3{font-size:1.65rem}.lab-card .lab-detail{margin-top:0;padding-top:10px}.lab-contact{display:block}.lab-contact p{margin-bottom:18px}.lab-contact>div{gap:17px}.lab-contact .btn{padding:13px 17px}}

/* Pages juridiques : typographie éditoriale et lecture claire. */
.legal-page{padding-bottom:100px}
.legal-hero{padding:65px 0 58px;border-bottom:1px solid var(--line)}
.legal-hero .eyebrow{color:#766349;margin-bottom:17px}
.legal-hero h1{font-size:clamp(3.2rem,5.4vw,5.8rem);margin-bottom:22px}
.legal-hero>p:not(.eyebrow){color:var(--muted);font-size:1.05rem;max-width:650px;margin-bottom:0}
.legal-quicklinks{display:flex;gap:10px;flex-wrap:wrap;margin-top:32px}
.legal-quicklinks a{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;background:#e9e1d4;border:1px solid #d5c9b7;padding:10px 15px;font-size:.82rem;transition:background .2s}
.legal-quicklinks a:hover{background:#ddd2c1}
.legal-quicklinks span{color:var(--accent)}
.legal-layout{display:grid;grid-template-columns:245px minmax(0,790px);justify-content:space-between;gap:7%;padding-top:58px}
.legal-aside{align-self:start;position:sticky;top:24px;display:grid;gap:13px;padding:22px 0;border-top:1px solid #b9ab98}
.legal-aside .eyebrow{margin:0 0 8px;color:#806e57}
.legal-aside a{font-size:.84rem;line-height:1.4;color:#5b564d}
.legal-aside a:hover{color:var(--accent);text-decoration:underline;text-underline-offset:4px}
.legal-content{min-width:0}
.legal-section{scroll-margin-top:35px;padding:0 0 34px;margin-bottom:43px;border-bottom:1px solid var(--line)}
.legal-number{display:block;color:#7a6851;font-size:.72rem;font-weight:700;letter-spacing:.15em;text-transform:uppercase;margin-bottom:13px}
.legal-section h2{font-size:clamp(2rem,3vw,3.1rem);margin-bottom:23px}
.legal-section h3{font-size:1.5rem;margin:28px 0 10px}
.legal-section p{max-width:75ch;color:#514c43;font-size:.97rem;line-height:1.82;margin:0 0 16px}
.legal-section a{text-decoration:underline;text-underline-offset:3px;text-decoration-color:#a39379}
.legal-section a:hover{color:var(--accent)}
.legal-gift-section{background:#eee7db;border:1px solid #d6cbb8;padding:35px 39px;margin-left:-39px;margin-right:-39px}
.legal-gift-intro{display:flex;gap:17px;align-items:start;padding:14px 0 22px;border-bottom:1px solid #d0c3b0}
.legal-gift-intro span{font-family:var(--serif);font-size:2rem;line-height:1;color:#68745d}
.legal-gift-intro p{margin:0;font-family:var(--serif);font-size:1.25rem;line-height:1.4;color:#493e31}
.legal-end{background:var(--dark);color:var(--paper);padding:29px 34px;display:flex;align-items:center;justify-content:space-between;gap:25px}
.legal-end p{margin:0;font-size:.81rem;line-height:1.7;color:#e5e3d7}
.legal-end a:not(.btn){text-decoration:underline;text-underline-offset:3px}
.legal-end .btn{background:var(--paper);border-color:var(--paper);color:var(--ink);white-space:nowrap}
.legal-notices-page .legal-hero{padding-bottom:50px}
@media(max-width:800px){.legal-layout{grid-template-columns:1fr;gap:30px;padding-top:35px}.legal-aside{position:static;display:flex;flex-wrap:wrap;gap:9px 18px;padding:16px 0}.legal-aside .eyebrow{flex-basis:100%}.legal-gift-section{margin-left:0;margin-right:0}.legal-end{display:block}.legal-end p{margin-bottom:18px}}
@media(max-width:560px){.legal-page{padding-bottom:70px}.legal-hero{padding:43px 0 38px}.legal-hero h1{font-size:3.15rem}.legal-hero>p:not(.eyebrow){font-size:.96rem}.legal-quicklinks{display:grid}.legal-aside{display:none}.legal-layout{padding-top:35px}.legal-section{padding-bottom:23px;margin-bottom:33px}.legal-section h2{font-size:2.15rem}.legal-section h3{font-size:1.35rem}.legal-section p{font-size:.91rem;line-height:1.75}.legal-gift-section{padding:26px 22px}.legal-gift-intro p{font-size:1.12rem}.legal-end{padding:25px}.legal-end .btn{white-space:normal;width:100%}.footer-bottom div{flex-wrap:wrap}}
