@font-face{font-family:"Studio Bodoni";src:url("../fonts/BodoniModa.ttf") format("truetype");font-weight:400 900;font-display:swap}
:root{--ink:#191917;--paper:#fdfcf9;--accent:#927055;--muted:#706c65;--line:#dedbd4;--sans:-apple-system,BlinkMacSystemFont,"Helvetica Neue",Arial,sans-serif;--serif:Didot,"Studio Bodoni","Bodoni MT","Times New Roman",serif}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:auto}
body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);font-size:15px;line-height:1.7;-webkit-font-smoothing:antialiased}
a{color:inherit;text-decoration:none}
a:hover{color:var(--accent)}
button,input,textarea{font:inherit}
button,a,input,textarea{ -webkit-tap-highlight-color:transparent}
:focus-visible{outline:2px solid var(--accent);outline-offset:5px}
img{max-width:100%;height:auto;display:block}
[hidden]{display:none!important}
button{cursor:pointer}
h1,h2,h3{font-family:var(--serif);font-weight:400;letter-spacing:-.035em;line-height:1.08}
h1{font-size:clamp(44px,4.5vw,70px)}
h2{font-size:clamp(32px,3.1vw,48px)}
h3{font-size:28px}
p{margin:0 0 1.1em}
.studio-container,.corp-container{width:min(1280px,calc(100% - 112px));margin-inline:auto}
.skip-link{position:fixed;top:12px;left:12px;transform:translateY(-200%);z-index:100;background:var(--paper);padding:12px}
.skip-link:focus{transform:none}
.studio-header{background:var(--paper);border-bottom:1px solid var(--line)}
.studio-header__inner{min-height:132px;display:flex;align-items:center;justify-content:space-between;gap:36px}
.studio-brand{display:inline-flex;flex-direction:column;align-items:center;flex:none;color:var(--ink)}
.studio-brand:hover{color:var(--ink)}
.studio-brand__name{font-family:var(--serif);font-size:42px;line-height:1;letter-spacing:-.065em}
.studio-brand__studio{font-size:11px;line-height:1.2;letter-spacing:.52em;color:var(--accent);padding-left:.52em;margin-top:9px}
#studio-nav{display:flex;gap:36px;align-items:center;margin-left:auto}
#studio-nav a{font-size:13px;padding:10px 0}
#studio-nav a[aria-current]{text-decoration:underline;text-underline-offset:7px;text-decoration-color:var(--accent)}
.studio-header__descriptor{font-size:9px;letter-spacing:.16em;line-height:1.9;border-left:1px solid var(--line);padding-left:28px}
.studio-menu-toggle{display:none}
.corp-home,.corp-page{background:transparent;color:var(--ink)}
.corp-home h1,.corp-home h2,.corp-home h3,.corp-page h1,.corp-page h2,.corp-page h3{color:var(--ink);font-family:var(--serif);font-weight:400;line-height:1.1;letter-spacing:-.035em}
.corp-home h1,.corp-page h1{font-size:clamp(44px,4.5vw,70px);max-width:none}
.corp-home h2,.corp-page h2{font-size:clamp(32px,3.1vw,48px)}
.corp-home h3,.corp-page h3{font-size:28px}
.corp-home p,.corp-home li,.corp-page p,.corp-page li{font-size:14px;line-height:1.85}
.studio-kicker,.corp-home .studio-kicker,.corp-section-label,.corp-page .corp-section-label{display:block;font-family:var(--sans);font-size:10px;letter-spacing:.18em;font-weight:500;color:var(--accent);line-height:1.5;text-transform:uppercase;margin:0 0 24px}
.corp-hero{position:relative;overflow:visible;min-height:0;display:grid;grid-template-columns:1fr 1.06fr;gap:5%;align-items:center;width:min(1280px,calc(100% - 112px));margin:48px auto 40px}
.corp-hero::after{display:none}
.corp-hero-slider{position:relative;inset:auto;grid-column:2;grid-row:1;height:570px;min-width:0;background:#edeae3}
.corp-hero-slider img{position:absolute;inset:0;height:100%;width:100%;object-fit:cover;object-position:48% center;transition:none}
.corp-hero-content{position:relative;grid-column:1;grid-row:1;width:100%;padding:30px 0;color:var(--ink);z-index:1}
.corp-home .corp-hero-content h1{font-size:clamp(42px,4.2vw,66px);line-height:1.03;letter-spacing:-.045em;margin:0 0 28px}
.corp-actions{gap:24px;align-items:center;margin-top:30px}
.corp-btn{border-radius:0;padding:14px 22px;font-size:12px;font-weight:500;transition:background .15s,color .15s;min-height:48px}
.corp-btn:hover{transform:none}
.corp-btn-primary{background:var(--ink);color:var(--paper)!important;border:1px solid var(--ink)}
.corp-btn-primary:hover{background:var(--accent);border-color:var(--accent)}
.corp-btn-secondary{background:transparent;border:0;border-bottom:1px solid var(--ink);padding:10px 0;color:var(--ink)}
.corp-btn-secondary:hover{color:var(--accent);border-color:var(--accent)}
.image-controls{position:absolute;bottom:0;left:0;right:0;display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--paper);padding:14px 0 0;font-size:10px;letter-spacing:.035em}
.image-controls>div{display:flex;align-items:center;gap:16px}
.image-controls button{border:0;background:transparent;padding:3px 8px;font-size:19px;line-height:1}
.image-caption{color:var(--muted)}
.slide-count{font-size:10px;white-space:nowrap;font-variant-numeric:tabular-nums}
.corp-proofbar{padding:24px 0;background:transparent;border-block:1px solid var(--line)}
.corp-proofbar .corp-grid-3{gap:20px}
.corp-proof{border:0;border-radius:0;padding:0;background:transparent;text-align:center;font-size:11px;font-weight:400;letter-spacing:.04em}
.corp-proof+.corp-proof{border-left:1px solid var(--line)}
.corp-section{padding:85px 0}
.corp-section-light{background:#f2f0eb}
.corp-section h2{max-width:790px;margin-bottom:34px}
.corp-grid-2{grid-template-columns:1fr 1fr;gap:70px}
.corp-grid-3{gap:36px}
.corp-grid-4{gap:26px}
.corp-card,.corp-text-panel,.corp-feature-block,.corp-proof,.corp-mosaic-item{border:0;border-radius:0;background:transparent;box-shadow:none;transition:none}
.corp-card:hover,.corp-case:hover img,.corp-mosaic-item:hover,.corp-mosaic-item:hover img{transform:none;box-shadow:none;filter:none}
.corp-card-body{padding:24px 0 0}
.corp-case{overflow:visible}
.corp-case img{width:100%;height:280px;object-fit:cover;border:0;transition:none}
.corp-case:nth-child(1) img{object-position:50% 30%}
.corp-case:nth-child(even){padding-top:44px}
.corp-case h3{margin-bottom:12px}
.corp-case p{color:var(--muted);font-size:13px}
.corp-home>.corp-section>.corp-container>.corp-grid-3>.corp-offer{border-top:1px solid #bfb7ac}
.corp-price{color:var(--accent);font-weight:400;font-size:16px!important}
.corp-home .corp-offer-use,.corp-small,.corp-offer-use{color:var(--muted);font-size:12px!important}
.corp-text-panel .corp-card-body,.corp-feature-block .corp-card-body{padding:0}
.corp-text-panel h2,.corp-feature-block h2{font-size:clamp(30px,2.8vw,43px);margin-bottom:22px}
.corp-list,.corp-steps{padding-left:20px}
.corp-feature-note{font-weight:500;margin-top:22px}
.corp-review{padding:25px 0 0;border-top:1px solid #c5bcae}
.corp-review p{font-family:var(--serif);font-size:22px;line-height:1.5}
.corp-review span{font-size:11px;color:var(--muted)}
.corp-cta{background:#eae6de}
.corp-cta h2{max-width:800px;text-align:center;margin-inline:auto}
.corp-cta p{max-width:570px}
.corp-home>a{display:block;width:min(1280px,calc(100% - 112px));margin:0 auto 40px;text-decoration:underline;text-underline-offset:5px;font-size:12px;color:var(--accent)}
.page-heading{padding:65px 0 25px}
.page-heading h1{margin:0;font-size:clamp(58px,6vw,90px)}
.page-heading .studio-kicker{margin-bottom:18px}
.page-portfolio .corp-section:first-child{padding-top:40px}
.page-portfolio .corp-grid-3{border-top:1px solid var(--line)}
.page-portfolio .corp-mosaic{column-count:3;column-gap:24px}
.corp-mosaic-item{margin:0 0 24px;overflow:hidden}
.corp-mosaic-item img{min-height:0;height:auto;transition:none}
.page-offres .content-wrap>.corp-page>p{width:min(1280px,calc(100% - 112px));max-width:760px;margin:10px 0 50px  max(56px,calc((100% - 1280px)/2))}
.page-offres .corp-grid-3>.corp-card{border-top:1px solid #bfb7ac}
.page-offres .corp-grid-3 h2{font-size:37px;min-height:82px}
.page-contact .corp-section:first-child{padding-bottom:0}
.corp-narrow{max-width:850px}
.page-contact .corp-card{border-left:2px solid var(--accent);padding-left:25px}
.page-contact .corp-card-body{padding-top:0}
.page-contact .corp-card h2{font-size:28px;margin-bottom:16px}
.preview-note{font-size:12px!important;padding:14px 18px;border:1px solid var(--line);color:var(--muted)}
.form-fields{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:32px 0}
.form-fields label{display:flex;flex-direction:column;gap:8px;font-size:12px}
.form-fields input,.form-fields textarea{width:100%;background:transparent;color:var(--ink);border:1px solid #bbb5aa;padding:13px;border-radius:0}
.form-fields textarea{resize:vertical}
.form-message{grid-column:1/-1}
.form-feedback{margin-top:20px;font-size:13px!important}
.page-mentions-legales .content-wrap,.page-politique-de-confidentialite .content-wrap,.page-politique-de-cookies .content-wrap,.page-photographe-corporate-a-versailles .content-wrap{width:min(850px,calc(100% - 112px));margin:25px auto 90px}
.content-wrap>h2{margin-top:45px}
.content-wrap .img-center{max-width:100%}
.content-wrap .cta-btn{display:inline-flex;background:var(--ink);color:white;padding:14px 22px}
.studio-footer{padding:56px 0 24px;background:var(--ink);color:var(--paper)}
.studio-footer .studio-brand,.studio-footer .studio-brand:hover{color:var(--paper)}
.studio-footer__top{display:flex;align-items:center;justify-content:space-between;gap:40px;margin-bottom:48px}
.studio-footer__top p{margin:0;color:#b8b3aa;font-size:12px}
.footer-contact{font-family:var(--serif);font-size:31px;letter-spacing:-.03em}
.footer-contact span{font-family:var(--sans);font-size:22px;margin-left:18px}
.studio-footer__nav{display:flex;flex-wrap:wrap;gap:24px;font-size:12px;padding-bottom:30px}
.studio-footer__bottom{border-top:1px solid #46443f;padding-top:22px;display:flex;justify-content:space-between;gap:20px;font-size:10px;color:#b8b3aa}
.studio-footer__bottom nav{display:flex;gap:20px}
@media(min-width:1550px){.corp-hero{gap:80px}.corp-hero-content h1{max-width:540px}}
@media(max-width:1100px){.studio-container,.corp-container,.corp-hero{width:calc(100% - 64px)}.studio-header__descriptor{display:none}.corp-hero{gap:32px}.corp-hero-slider{height:520px}.corp-home .corp-hero-content h1{font-size:49px}.corp-actions{gap:14px}.corp-grid-4{grid-template-columns:repeat(2,1fr)}.corp-grid-2{gap:40px}.corp-case img{height:330px}.corp-case:nth-child(even){padding-top:0}.corp-home>a{width:calc(100% - 64px)}.page-offres .content-wrap>.corp-page>p{width:calc(100% - 64px);margin-left:32px}.studio-footer__top{gap:24px}.footer-contact{font-size:26px}}
@media(max-width:900px) and (min-width:761px){.corp-grid-3{grid-template-columns:repeat(3,1fr);gap:22px}.corp-grid-2{grid-template-columns:1fr 1fr}.corp-proof{font-size:10px}.corp-home .corp-hero-content h1{font-size:44px}.corp-hero-slider{height:490px}.corp-actions{align-items:flex-start;flex-direction:column}.page-offres .corp-grid-3 h2{font-size:29px}.corp-offer h3{font-size:25px}}
@media(max-width:760px){
  .studio-container,.corp-container,.corp-hero{width:calc(100% - 40px)}
  .studio-header{position:relative;z-index:10}.studio-header__inner{min-height:98px;gap:20px}.studio-brand__name{font-size:34px}.studio-brand__studio{font-size:9px;margin-top:6px}
  .studio-menu-toggle{display:flex;align-items:center;gap:15px;border:0;background:transparent;padding:12px 0;font-size:12px}.studio-menu-toggle span{font-size:20px}.studio-menu-toggle[aria-expanded=true] span{transform:rotate(45deg)}
  #studio-nav{display:none;position:absolute;top:100%;left:0;right:0;padding:20px;background:var(--paper);border-bottom:1px solid var(--line);gap:22px;box-shadow:none}#studio-nav.is-open{display:flex}#studio-nav a{font-size:15px;padding:12px 0}
  .corp-hero{grid-template-columns:1fr;gap:28px;margin:28px auto 28px}.corp-hero-content{grid-column:1;grid-row:1;padding:0}.corp-hero-slider{grid-column:1;grid-row:2;height:390px}.corp-home .corp-hero-content h1{font-size:clamp(42px,8.5vw,60px);max-width:590px;margin-bottom:22px}.studio-kicker,.corp-home .studio-kicker{font-size:9px;margin-bottom:20px}.corp-actions{margin-top:22px;gap:24px}.corp-btn{padding:12px 17px;font-size:11px}.corp-btn-secondary{padding:10px 0}
  .corp-proofbar{padding:16px 0}.corp-proofbar .corp-grid-3{grid-template-columns:1fr;gap:10px}.corp-proof{font-size:10px;padding:4px 0}.corp-proof+.corp-proof{border:0}
  .corp-section{padding:55px 0}.corp-section h2{margin-bottom:26px}.corp-grid-2,.corp-grid-3{grid-template-columns:1fr;gap:34px}.corp-grid-4{grid-template-columns:1fr 1fr;gap:30px 18px}.corp-home h3{font-size:25px}.corp-case img{height:240px}.corp-case p{font-size:12px}.corp-card-body{padding-top:18px}.corp-home>a{width:calc(100% - 40px);margin-bottom:30px}.corp-text-panel h2,.corp-feature-block h2{font-size:34px}.corp-section-label{margin-bottom:18px}
  .page-heading{padding:42px 0 20px}.page-heading h1{font-size:60px}.page-portfolio .corp-mosaic{column-count:2;column-gap:16px}.corp-mosaic-item{margin-bottom:16px}.page-portfolio .corp-grid-3{gap:16px}.page-offres .content-wrap>.corp-page>p{width:calc(100% - 40px);margin:10px 20px 35px}.page-offres .corp-grid-3 h2{font-size:36px;min-height:0}.corp-narrow{max-width:none}.form-fields{grid-template-columns:1fr}.form-message{grid-column:1}.page-mentions-legales .content-wrap,.page-politique-de-confidentialite .content-wrap,.page-politique-de-cookies .content-wrap,.page-photographe-corporate-a-versailles .content-wrap{width:calc(100% - 40px)}
  .studio-footer{padding:42px 0 24px}.studio-footer__top{align-items:flex-start;flex-direction:column;gap:24px;margin-bottom:30px}.studio-footer__nav{gap:16px;font-size:11px}.studio-footer__bottom{flex-direction:column;gap:14px}.studio-footer__bottom nav{flex-wrap:wrap}.footer-contact{font-size:30px}
}
@media(max-width:420px){.corp-grid-4{grid-template-columns:1fr}.corp-case img{height:340px}.corp-hero-slider{height:300px}.image-controls{font-size:9px}.image-controls>div{gap:6px}.image-caption{max-width:55%}.corp-actions{gap:18px}.corp-home .corp-hero-content h1{font-size:43px}.corp-btn{font-size:10px;padding:12px 14px}.corp-btn-secondary{padding:10px 0}.page-portfolio .corp-mosaic{column-count:1}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{transition:none!important;scroll-behavior:auto!important}}

/* WordPress menus and the live Contact Form 7 form. */
#studio-nav>.menu{display:flex;align-items:center;gap:36px;padding:0;margin:0;list-style:none}
#studio-nav .current-menu-item>a{text-decoration:underline;text-underline-offset:7px;text-decoration-color:var(--accent)}
.studio-footer__nav>.menu,.studio-footer__menu{display:flex;flex-wrap:wrap;gap:24px;list-style:none;padding:0;margin:0}
.wpcf7 form{display:grid;grid-template-columns:1fr 1fr;gap:24px;margin:32px 0}
.wpcf7 form>p{margin:0}
.wpcf7 label{display:block;font-size:12px}
.wpcf7 input:not([type=submit]),.wpcf7 textarea,.wpcf7 select{display:block;width:100%;max-width:100%;margin-top:8px;border:1px solid #bbb5aa;border-radius:0;padding:13px;background:transparent;color:var(--ink);font:inherit}
.wpcf7 textarea{resize:vertical}
.wpcf7 form>p:has(textarea),.wpcf7 form>p:has(input[type=submit]),.wpcf7-response-output{grid-column:1/-1}
.wpcf7 input[type=submit]{border:1px solid var(--ink);background:var(--ink);color:var(--paper);border-radius:0;padding:14px 24px;font:inherit;cursor:pointer}
.wpcf7-not-valid-tip{font-size:12px;margin-top:6px}
body.admin-bar .studio-header{top:32px}
.studio-header .sub-menu{list-style:none;padding-left:16px}
.image-controls{visibility:hidden}
.js-studio-slider .image-controls{visibility:visible}
@media(max-width:760px){#studio-nav>.menu{align-items:flex-start;flex-direction:column;gap:10px}.studio-footer__nav>.menu{gap:16px}.wpcf7 form{grid-template-columns:1fr}}

.studio-footer__location{display:inline-block;margin-top:8px;max-width:290px;font-size:10px;line-height:1.6}
