:root,body.bx-site{--paper:#edf1f7;--ink:#eef3fa;--muted:#b3bfce;--bg:#0e1118;--panel:#171c27;--line:#343d4e;--accent:#70d6ef;--accent-secondary:#bda4f7;--serif:Georgia,'Times New Roman',serif;--sans:-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;--gutter:clamp(22px,5.5vw,90px)}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--sans);font-size:16px;line-height:1.65}img{max-width:100%;height:auto;display:block}a{color:inherit;text-decoration:none}a:hover{color:var(--accent)}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:5px}button,input,textarea{font:inherit}h1,h2,h3,p,figure{margin:0}h1,h2,h3{font-weight:400}h1,h2{font-family:var(--serif);line-height:1.08;letter-spacing:-.045em}h1{font-size:clamp(46px,5.6vw,88px)}h2{font-size:clamp(38px,4.3vw,64px)}h3{font-family:var(--serif);font-size:29px;line-height:1.2}em{font-weight:400;color:var(--accent)}p{color:var(--muted)}p+p{margin-top:22px}.skip-link{position:fixed;top:-100px;left:15px;z-index:999999;background:var(--paper);color:#111;padding:12px 20px}.skip-link:focus{top:12px}.bx-header{position:relative;z-index:100;display:flex;align-items:center;justify-content:space-between;gap:25px;padding:26px var(--gutter);border-bottom:1px solid var(--line)}.bx-brand{display:inline-flex;flex-direction:column;width:max-content;color:var(--ink);line-height:1}.bx-brand>span{font-size:33px;letter-spacing:.13em;font-weight:700}.brand-dot{color:var(--accent)}.bx-brand small{font-size:9px;letter-spacing:.4em;margin-top:10px}.bx-header nav{display:flex;align-items:center;gap:32px;font-size:13px}.nav-contact{border:1px solid #6a7890;padding:10px 17px}.nav-contact span{margin-left:16px}.bx-toggle{display:none;color:var(--ink);border:1px solid var(--line);padding:10px;background:transparent}.eyebrow{font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--accent);margin-bottom:26px;font-weight:600}.bx-hero{max-width:1600px;margin:auto;display:grid;grid-template-columns:1.12fr 1fr;padding:60px var(--gutter) 65px;gap:70px;align-items:center}.hero-copy h1{margin-bottom:32px}.hero-tagline{font-family:var(--serif);font-size:28px;line-height:1.25;color:var(--ink)}.hero-intro{font-size:15px;max-width:400px;line-height:1.8;margin-top:25px}.hero-actions{display:flex;align-items:flex-start;gap:23px;flex-direction:column;margin-top:32px}.bx-button{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;padding:16px 23px;background:var(--accent);color:#0d1722!important;border:1px solid var(--accent);font-size:13px;font-weight:600;line-height:1.4;transition:background .2s}.bx-button:hover{background:var(--paper);border-color:var(--paper)}.text-link{font-size:13px;border-bottom:1px solid #6a7890;padding-bottom:7px;display:inline-block;line-height:1.6}.hero-location{font-size:10px;letter-spacing:.16em;margin-top:46px!important;color:var(--ink)}.hero-location span{font-size:12px;letter-spacing:0;color:var(--muted)}.hero-image{margin:0;position:relative}.hero-image>img{width:100%;height:clamp(480px,48vw,680px);object-fit:cover;object-position:center}.hero-image figcaption{font-size:10px;display:flex;justify-content:space-between;gap:16px;letter-spacing:.07em;padding-top:15px;color:var(--muted)}.bx-section{max-width:1600px;margin:auto;padding:90px var(--gutter);scroll-margin-top:25px}.section-heading{display:flex;justify-content:space-between;gap:45px;align-items:flex-end;margin-bottom:45px}.section-heading>p{font-size:14px;line-height:1.8;padding-bottom:7px}.portfolio-section{border-top:1px solid var(--line)}.project-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 28px;margin-bottom:38px}.project-card:first-child{grid-row:span 2}.project-image{position:relative;overflow:hidden;background:var(--panel);aspect-ratio:16/10}.project-card:first-child .project-image{aspect-ratio:3/4.2}.project-image img{width:100%;height:100%;object-fit:cover;transition:transform .6s}.project-card:hover img{transform:scale(1.025)}.project-meta{padding:17px 0}.project-meta>span{font-size:9px;letter-spacing:.15em;text-transform:uppercase;color:var(--muted)}.project-meta h3,.project-meta h2{margin-top:6px;font-size:27px;letter-spacing:-.02em}.image-arrow{position:absolute;right:15px;bottom:15px;width:35px;height:35px;display:grid;place-items:center;background:rgba(14,17,24,.85);border:1px solid #6a7890;border-radius:50%;font-size:19px}.about-section{background:var(--paper);color:#202838;max-width:none}.about-section>*,.about-layout{max-width:1300px;margin-left:auto;margin-right:auto}.about-section .eyebrow,.about-section em{color:#61439c}.about-layout{display:grid;grid-template-columns:1fr 1fr;gap:95px}.about-layout p{color:#4f5b6d;font-size:15px}.about-layout .large-copy{font-family:var(--serif);color:#202838;font-size:25px;line-height:1.5}.about-layout .text-link{margin-top:25px}.about-section a:hover{color:#51328d}.about-values{display:flex;gap:35px;justify-content:space-between;border-top:1px solid #c9d2df;padding-top:25px;margin-top:60px;letter-spacing:.17em;font-size:10px;color:#61439c}.collab-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:40px;border-top:1px solid var(--line);padding-top:35px}.step-number{color:var(--accent);font-size:13px}.collab-grid h3{margin:24px 0 15px;font-size:26px}.collab-grid p{font-size:14px;line-height:1.9}.collab-note{border-top:1px solid var(--line);margin-top:45px;padding-top:35px;display:flex;gap:30px;justify-content:space-between;align-items:center}.collab-note p{max-width:460px;font-family:var(--serif);font-size:24px;line-height:1.4}.contact-section{background:var(--panel);display:grid;grid-template-columns:1fr 1fr;gap:85px;max-width:none}.contact-intro>p:not(.eyebrow){max-width:410px;margin:26px 0}.contact-intro a{display:block;width:fit-content}.contact-email{font-size:clamp(16px,2vw,25px);margin-bottom:12px;border-bottom:1px solid var(--line)}.small-copy{font-size:12px}.privacy-note{font-size:11px;line-height:1.7;margin-top:24px}.privacy-note a{text-decoration:underline;text-underline-offset:3px}.bx-contact-form{min-width:0}.bx-contact-form .wpbc_booking_form_structure{margin:0!important}.bx-contact-form .wpbc_container_booking_form{max-width:100%!important}.bx-contact-form input[type=text],.bx-contact-form input[type=email],.bx-contact-form input[type=tel],.bx-contact-form textarea,.bx-contact-form select{width:100%!important;box-sizing:border-box;background:#0e1118!important;border:1px solid #6a7890!important;color:var(--ink)!important;border-radius:0!important;box-shadow:none!important;padding:12px!important;min-height:46px;font-size:15px}.bx-contact-form textarea{min-height:135px}.bx-contact-form label,.bx-contact-form .wpbc_bfb__label,.bx-contact-form .wpbc_bfb__help{color:var(--ink)!important;font-size:13px}.bx-contact-form .wpbc_bfb__help{font-size:11px;color:var(--muted)!important}.bx-contact-form input[type=button],.bx-contact-form button[type=submit],.bx-contact-form .wpbc_button_light{background:var(--accent)!important;border:0!important;color:#0d1722!important;border-radius:0!important;padding:15px 23px!important;text-shadow:none!important;box-shadow:none!important;font-size:13px!important}.bx-contact-form .wpbc_bfb__field{margin-bottom:18px!important}.bx-contact-form .wpbc_bfb__row{max-width:100%}.bx-contact-form .wpbc-captcha img{width:auto}.bx-footer{padding:65px var(--gutter) 30px;border-top:1px solid var(--line);background:#090c12}.footer-top{display:grid;grid-template-columns:1.6fr 1fr 1fr;gap:70px;max-width:1400px;margin:auto}.footer-top>div,.footer-top>nav{display:flex;flex-direction:column;align-items:flex-start;gap:9px}.footer-top strong{color:var(--accent);font-size:10px;letter-spacing:.16em;margin-bottom:14px;font-weight:500}.footer-top .bx-brand{margin-bottom:20px}.footer-top p,.footer-top a:not(.bx-brand){font-size:13px;color:var(--muted)}.footer-top p+p{margin-top:8px}.footer-bottom{display:flex;gap:25px;justify-content:space-between;border-top:1px solid var(--line);padding-top:24px;margin:45px auto 0;max-width:1400px;font-size:10px;color:#a5b1c3}.inner-page{padding-top:65px}.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;font-size:11px;color:var(--muted);margin-bottom:45px}.series-heading{max-width:900px;margin-bottom:55px}.series-heading h1{font-size:clamp(42px,5.8vw,78px)}.series-intro{max-width:760px;font-size:17px;margin-top:28px;line-height:1.9}.series-gallery{margin:0 auto;max-width:1150px;overflow:hidden}.series-gallery>div{margin-left:auto!important;margin-right:auto!important}.legacy-gallery{columns:3;column-gap:16px}.legacy-gallery img{width:100%;height:auto;margin-bottom:16px}.series-story{max-width:760px;margin:65px auto}.series-story h2{font-size:38px;margin-bottom:24px}.series-story p{line-height:1.9}.series-story a{margin-top:25px}.series-cta{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:55px 0;margin:50px 0;text-align:center}.series-cta h2{font-size:clamp(32px,4vw,48px)}.series-cta p{margin:20px auto;max-width:680px}.series-cta .eyebrow{margin-bottom:20px}.related-projects h2{font-size:32px}.related-links{display:grid;grid-template-columns:1fr 1fr;gap:0 45px;margin-top:25px}.related-links a{display:flex;justify-content:space-between;padding:19px 0;border-bottom:1px solid var(--line);font-size:15px}.section{max-width:1100px;margin:auto;padding:80px var(--gutter);opacity:1;transform:none}.section .section-head{margin-bottom:40px}.section .section-head h1{font-size:clamp(40px,5vw,65px)}.wp-content{max-width:850px!important;line-height:1.8}.legal-content h2{font-size:30px;margin:38px 0 15px}.legal-content h3{font-size:23px;margin:25px 0 15px}.legal-content p,.wp-content p{margin-bottom:18px}.legal-content a,.wp-content a{text-decoration:underline}.legal-content ul{padding-left:20px;color:var(--muted)}.series-gallery [class*=bwg_title_spun] {color:var(--ink)!important}.series-gallery .bwg-container{max-width:100%!important}body.admin-bar .bx-header{margin-top:0}
@media(min-width:1700px){.about-section,.contact-section{padding-left:max(var(--gutter),calc((100vw - 1300px)/2));padding-right:max(var(--gutter),calc((100vw - 1300px)/2))}}
@media(max-width:1000px){.bx-hero{gap:35px;padding-top:40px}.bx-header nav{gap:19px}.bx-header{padding-top:22px;padding-bottom:22px}.hero-image>img{height:590px}.about-layout{gap:45px}.contact-section{gap:40px}.hero-location{margin-top:30px!important}.footer-top{gap:35px}}
@media(max-width:760px){html{scroll-padding-top:20px}.bx-header{padding:20px 22px}.bx-brand>span{font-size:26px}.bx-brand small{font-size:8px}.bx-toggle{display:flex;gap:14px;align-items:center}.bx-header nav{display:none;position:absolute;top:100%;left:0;right:0;background:#171c27;border-bottom:1px solid var(--line);padding:24px;flex-direction:column;align-items:stretch;gap:0;box-shadow:0 20px 30px #0008}.bx-header nav.is-open{display:flex}.bx-header nav a{padding:13px 0}.bx-header nav .nav-contact{padding:13px;margin-top:12px}.bx-hero{grid-template-columns:1fr;padding:40px 22px 50px;gap:35px}.hero-copy h1{font-size:clamp(43px,10.5vw,70px);margin-bottom:24px}.hero-copy .eyebrow{font-size:9px;margin-bottom:20px}.hero-tagline{font-size:25px}.hero-intro{max-width:100%;font-size:14px}.hero-actions{gap:23px}.hero-location{font-size:9px;margin-top:29px!important}.hero-image>img{height:auto;max-height:650px;aspect-ratio:4/5;object-fit:cover}.bx-section{padding:58px 22px}.section-heading{display:block;margin-bottom:32px}.section-heading>p{margin-top:24px;font-size:14px}.eyebrow{margin-bottom:20px}.project-grid{gap:25px 15px}.project-card:first-child{grid-row:auto;grid-column:1/-1}.project-card:first-child .project-image{aspect-ratio:4/3}.project-image{aspect-ratio:4/5}.project-meta h2,.project-meta h3{font-size:21px}.project-meta>span{font-size:8px;letter-spacing:.05em}.image-arrow{right:10px;bottom:10px;width:30px;height:30px}.about-layout{grid-template-columns:1fr;gap:27px}.about-layout .large-copy{font-size:23px}.about-values{gap:10px;font-size:8px;letter-spacing:.06em;margin-top:34px}.collab-grid{grid-template-columns:1fr;gap:28px}.collab-grid article{border-bottom:1px solid var(--line);padding-bottom:25px}.collab-grid h3{margin-top:15px}.collab-note{border-top:0;flex-direction:column;align-items:flex-start;padding-top:0;margin-top:20px}.collab-note p{font-size:23px}.contact-section{grid-template-columns:1fr;gap:35px}.contact-email{font-size:22px}.footer-top{grid-template-columns:1fr 1fr;gap:40px 20px}.footer-top>div:first-child{grid-column:1/-1}.bx-footer{padding:45px 22px 25px}.footer-bottom{flex-direction:column;gap:10px;margin-top:35px;font-size:10px}.inner-page{padding-top:35px}.series-heading{margin-bottom:35px}.series-intro{font-size:15px}.series-heading h1{font-size:42px}.breadcrumbs{margin-bottom:32px;font-size:10px}.series-story{margin:40px auto}.series-story h2{font-size:31px}.series-story p{font-size:14px}.series-cta{padding:40px 0;margin:40px 0}.related-links{grid-template-columns:1fr}.related-projects h2{font-size:29px}.legacy-gallery{columns:2}.section{padding:55px 22px!important}.legal-content h2{font-size:26px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important;animation:none!important}}

/* Booking Calendar contact form: readable dark presentation. */
.bx-contact-form .wpbc_bfb_form{background:transparent!important;border:0!important;box-shadow:none!important;padding:0!important;--wpbc_form-label-error-color:#ffaaa1!important;--wpbc_form-field-text-color:#eef3fa!important;--wpbc_form-label-color:#eef3fa!important;--wpbc_form-label-sublabel-color:#b3bfce!important}
.bx-contact-form .wpbc_field_description{color:#b3bfce!important;font-size:11px!important;line-height:1.6!important}
.bx-contact-form input::placeholder,.bx-contact-form textarea::placeholder{color:#a5b1c3!important;opacity:1!important}
.bx-contact-form textarea[name=textarea1]{min-height:135px!important}
.bx-contact-form .wpbc__field{min-width:0}.bx-contact-form .bfb_element{margin-bottom:14px}
.bx-contact-form .wpbc_text_captcha_container{display:flex;flex-wrap:wrap;gap:14px;align-items:center}.bx-contact-form input.captachinput{max-width:155px}.bx-contact-form .captcha_img{width:auto!important;max-width:160px;height:auto!important;background:white}
@media(max-width:480px){.bx-contact-form .wpbc__row{flex-wrap:wrap!important}.bx-contact-form .wpbc__field{flex-basis:100%!important}}

/* Preserve the original framing of every cover and photograph. */
.hero-image>img{height:auto!important;max-height:none!important;aspect-ratio:auto!important;object-fit:contain!important}.project-grid{display:block;columns:2;column-gap:28px}.project-card{break-inside:avoid;margin-bottom:38px}.project-image,.project-card:first-child .project-image{aspect-ratio:auto!important}.project-image img{height:auto!important;object-fit:contain!important;transform:none!important}.project-card:hover img{transform:none}.gallery-hint{font-size:12px;margin:0 0 25px}.bx-gallery{columns:3;column-gap:18px}.bx-gallery-item{display:block;break-inside:avoid;margin:0 0 18px;cursor:zoom-in}.bx-gallery-item img{display:block;width:100%;height:auto;object-fit:contain}.bx-lightbox{position:fixed;inset:0;width:100vw;height:100vh;max-width:none;max-height:none;background:#090c12;color:#eef3fa;border:0;padding:65px 75px 35px;margin:0}.bx-lightbox::backdrop{background:#000e}.bx-lightbox[open]{display:flex;align-items:center;justify-content:center}.bx-lightbox figure{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:16px}.bx-lightbox figure img{max-width:100%;max-height:calc(100vh - 160px);width:auto;height:auto;object-fit:contain}.bx-lightbox figcaption{font-size:12px;text-align:center;color:#d3dce9;max-width:800px}.bx-lightbox button{position:absolute;background:#202838;color:#eef3fa;border:1px solid #6a7890;padding:10px 16px;cursor:pointer;z-index:2}.lightbox-close{right:22px;top:17px}.lightbox-prev{left:14px;top:48%}.lightbox-next{right:14px;top:48%}.bx-lightbox button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
@media(max-width:900px){.bx-gallery{columns:2}}
@media(max-width:760px){.project-grid{column-gap:18px}.project-card{margin-bottom:25px}.bx-lightbox{padding:60px 40px 35px}.bx-lightbox button{padding:8px 10px}.lightbox-prev{left:3px}.lightbox-next{right:3px}.bx-lightbox figure img{max-height:calc(100vh - 185px)}}
@media(max-width:500px){.project-grid,.bx-gallery{columns:1}.project-image img{width:100%}.bx-gallery-item{margin-bottom:20px}}

/* Logo personnel : proportions conservées sur tous les écrans. */
.bx-brand-with-logo{align-items:center;flex-shrink:0}
.bx-brand-with-logo .bx-brand-logo{width:100px;height:100px;object-fit:contain;max-width:none}
.bx-brand-with-logo small{font-size:8px;letter-spacing:.22em;margin-top:8px}
.bx-header:has(.bx-brand-with-logo){padding-top:16px;padding-bottom:16px}
.bx-footer .bx-brand-with-logo .bx-brand-logo{width:120px;height:120px}
@media(max-width:760px){.bx-header .bx-brand-with-logo .bx-brand-logo{width:80px;height:80px}.bx-header:has(.bx-brand-with-logo){padding-top:12px;padding-bottom:12px}.bx-brand-with-logo small{font-size:7px;letter-spacing:.15em}}

/* Accents cyan et violet inspirés du logo, sur des fonds sobres. */
.step-number,.footer-top strong{color:var(--accent-secondary)}
.bx-header nav a:hover,.related-links a:hover{color:var(--accent-secondary)}
.bx-button:hover{background:var(--accent-secondary);border-color:var(--accent-secondary)}
.text-link:hover{border-color:var(--accent-secondary)}
.bx-contact-form input[type=button]:hover,.bx-contact-form button[type=submit]:hover,.bx-contact-form .wpbc_button_light:hover{background:var(--accent-secondary)!important}
.about-section a:focus-visible{outline-color:#61439c}
