/* V4 — pages de services éditoriales et lisibles. */
.v4-page .page-shell{padding-top:72px}.v4-page .site-header{min-height:72px}.v4-page .site-nav a[aria-current="page"]{color:var(--copper);border-bottom:1px solid var(--copper)}
.v4-page .site-footer{padding:42px var(--gutter);background:var(--blue);color:var(--paper);display:grid;grid-template-columns:1fr auto;gap:32px}.v4-page .site-footer p{margin:10px 0 0;font-size:.82rem}.v4-page .footer-signature{color:var(--paper)}.v4-page .site-footer nav{display:flex;flex-wrap:wrap;max-width:480px;justify-content:flex-end;gap:12px 22px;font-size:.72rem}.v4-page .site-footer nav a:hover{text-decoration:underline;text-underline-offset:5px}
.v4-page main{background:var(--paper) url('assets/paper-grain.svg')}.v4-page .page-hero,.v4-page .contact-page-hero{display:grid;grid-template-columns:1fr 1fr;gap:clamp(34px,6vw,100px);max-width:1440px;margin:auto;padding:clamp(48px,7vw,104px) var(--gutter);align-items:center}.v4-page .page-hero>div{max-width:600px}.v4-page .page-hero h1,.v4-page .contact-page-hero h1,.v4-page .faq-page-hero h1{font-size:clamp(40px,4.5vw,68px);line-height:1.12;margin:16px 0 24px}.v4-page .lead{font-size:1.02rem;line-height:1.8;color:var(--muted);margin:0 0 28px}.v4-page .page-hero img{width:100%;height:clamp(340px,43vw,600px);object-fit:cover;border-radius:28% 3% 17% 4% / 15% 3% 20% 3%;box-shadow:0 18px 44px #0f495111}.v4-page .identity-hero img{object-position:center}.v4-page .editorial-copy{display:grid;grid-template-columns:.9fr 1.1fr;gap:clamp(32px,7vw,100px);padding:clamp(54px,7vw,105px) var(--gutter);background:#edf3ee}.v4-page .editorial-copy>div{max-width:620px}.v4-page .editorial-copy h2,.v4-page .process-section h2,.v4-page .page-cta h2{font-size:clamp(28px,3vw,43px);line-height:1.25;margin:12px 0}.v4-page .editorial-copy p{font-size:.94rem}.v4-page .process-section{padding:clamp(56px,7vw,100px) var(--gutter);max-width:1440px;margin:auto}.v4-page .process-section>h2{max-width:660px}.v4-page .process-section ol{list-style:none;padding:0;margin:35px 0 0;display:grid;grid-template-columns:repeat(4,1fr);gap:20px}.v4-page .process-section li{border-top:2px solid var(--sage);padding:18px 0}.v4-page .process-section strong{font-family:var(--display);font-size:1.45rem;color:var(--blue);display:block}.v4-page .process-section span{font-size:.82rem;line-height:1.6;color:var(--muted);display:block;margin-top:10px}.v4-page .page-links{padding:clamp(56px,7vw,96px) var(--gutter);background:#f0ebe4}.v4-page .page-links>div{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;margin-top:20px}.v4-page .page-links a{padding:28px;background:var(--white);border-radius:8px;transition:transform .2s,box-shadow .2s}.v4-page .page-links a:hover{transform:translateY(-3px);box-shadow:0 12px 28px #0f495112}.v4-page .page-links strong{display:block;font:1.2rem var(--display);color:var(--blue)}.v4-page .page-links span{font-size:.82rem;line-height:1.6;display:block;color:var(--muted);margin-top:10px}.v4-page .page-cta{display:flex;justify-content:space-between;gap:32px;align-items:center;max-width:1200px;margin:clamp(54px,7vw,100px) auto;padding:clamp(35px,5vw,60px);background:var(--taupe);border-radius:12px}.v4-page .page-cta>div{max-width:670px}.v4-page .page-cta p:not(.overline){font-size:.9rem;color:var(--muted)}
.v4-page .offer-grid{padding:clamp(56px,7vw,100px) var(--gutter);display:grid;grid-template-columns:repeat(2,1fr);gap:26px;max-width:1440px;margin:auto}.v4-page .offer-grid article{background:var(--white);box-shadow:0 8px 24px #0f49510a}.v4-page .offer-grid img{width:100%;height:260px;object-fit:cover}.v4-page .offer-grid h2,.v4-page .offer-grid p{margin-inline:25px}.v4-page .offer-grid h2{font-size:1.55rem;margin-top:24px}.v4-page .offer-grid p{font-size:.87rem;color:var(--muted);line-height:1.7;margin-bottom:28px}.v4-page .audience-grid{padding:clamp(55px,7vw,100px) var(--gutter);display:grid;grid-template-columns:repeat(4,1fr);gap:18px}.v4-page .audience-grid article{padding:27px 22px;border-radius:8px;background:#d1eeeb}.v4-page .audience-grid article:nth-child(2){background:#dceedd}.v4-page .audience-grid article:nth-child(3){background:#f4d8d6}.v4-page .audience-grid article:nth-child(4){background:#e8e6e2}.v4-page .audience-grid span{font-size:.69rem;font-weight:800;text-transform:uppercase;letter-spacing:.1em;color:var(--copper)}.v4-page .audience-grid h2{font-size:1.3rem;margin:18px 0 8px}.v4-page .audience-grid p{font-size:.82rem;line-height:1.65;margin:0}.v4-page .image-text{display:grid;grid-template-columns:1fr 1fr;gap:clamp(36px,7vw,100px);align-items:center;padding:clamp(55px,7vw,100px) var(--gutter);background:#edf3ee}.v4-page .image-text.reverse{background:#f0ebe4}.v4-page .image-text img{width:100%;height:450px;object-fit:cover;border-radius:5px 22% 5px 14%}.v4-page .image-text h2{font-size:clamp(27px,3vw,42px);line-height:1.25}.v4-page .image-text p,.v4-page .image-text li{font-size:.9rem;line-height:1.75;color:var(--muted)}.v4-page .text-link{color:var(--copper);font-size:.85rem;font-weight:700;text-decoration:underline;text-underline-offset:6px}.v4-page .stat-row{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin:0 var(--gutter)}.v4-page .stat-row div{padding:25px;background:var(--paper);text-align:center}.v4-page .stat-row strong{font-family:var(--display);font-size:1.5rem;color:var(--blue);display:block}.v4-page .stat-row span{display:block;font-size:.78rem;color:var(--muted);margin-top:8px}.v4-page .contact-page-hero{align-items:start;background:#eee8df;max-width:none}.v4-page .contact-page-hero>div{max-width:560px}.v4-page .contact-page-form{background:var(--white);padding:30px;border-radius:12px}.v4-page .contact-page-form .contact-form{padding:0;background:none;box-shadow:none}.v4-page .contact-page-form .contact-form label{display:block;margin-bottom:17px}.v4-page .contact-page-form .contact-form input,.v4-page .contact-page-form .contact-form textarea,.v4-page .contact-page-form .contact-form select{width:100%;box-sizing:border-box}.v4-page .contact-page-form .contact-form .button{width:100%}.v4-page .small-note{font-size:.8rem;color:var(--muted);margin-top:24px}.v4-page .faq-page-hero{max-width:920px;padding:clamp(54px,8vw,110px) var(--gutter) 36px}.v4-page .faq-page-content{max-width:920px;padding:0 var(--gutter) 30px;margin:auto}.v4-page .faq-page-content .faq-grid{max-width:none}.v4-page .faq-page-content details{border-bottom:1px solid var(--line);padding:18px 0}.v4-page .faq-page-content summary{cursor:pointer;font-weight:800;color:var(--blue);padding-right:42px}.v4-page .faq-page-content details p{font-size:.9rem;line-height:1.75;color:var(--muted)}
@media(max-width:960px){.v4-page .site-footer{grid-template-columns:1fr}.v4-page .site-footer nav{justify-content:flex-start;max-width:none}.v4-page .page-hero,.v4-page .contact-page-hero{gap:35px}.v4-page .process-section ol,.v4-page .audience-grid{grid-template-columns:1fr 1fr}.v4-page .page-links>div{grid-template-columns:1fr}.v4-page .page-cta{margin-inline:var(--gutter)}.v4-page .offer-grid{gap:18px}.v4-page .image-text{gap:36px}}
@media(max-width:640px){.v4-page .page-shell{padding-top:72px}.v4-page .page-hero,.v4-page .contact-page-hero{grid-template-columns:1fr;padding:40px 24px}.v4-page .page-hero h1,.v4-page .contact-page-hero h1,.v4-page .faq-page-hero h1{font-size:38px}.v4-page .page-hero img{height:290px;grid-row:2}.v4-page .editorial-copy{grid-template-columns:1fr;padding:48px 24px;gap:20px}.v4-page .process-section,.v4-page .page-links,.v4-page .offer-grid,.v4-page .audience-grid,.v4-page .image-text{padding:48px 24px}.v4-page .process-section ol,.v4-page .offer-grid,.v4-page .audience-grid,.v4-page .image-text{grid-template-columns:1fr}.v4-page .image-text img{height:260px}.v4-page .stat-row{grid-template-columns:1fr;margin:0 24px}.v4-page .page-cta{display:block;margin:48px 24px;padding:30px}.v4-page .page-cta .button{margin-top:12px}.v4-page .contact-page-form{padding:20px}.v4-page .faq-page-hero,.v4-page .faq-page-content{padding-inline:24px}.v4-page .site-footer{padding:36px 24px}.v4-page .site-footer nav{gap:12px 18px}}


/* V4 — passe UX éditoriale */
.v4-page .breadcrumb{max-width:1440px;margin:0 auto;padding:18px var(--gutter) 0;display:flex;align-items:center;gap:9px;font-size:.78rem;color:var(--muted)}
.v4-page .breadcrumb a{color:inherit;text-decoration:none}.v4-page .breadcrumb a:first-child:hover{color:var(--copper);text-decoration:underline;text-underline-offset:4px}.v4-page .breadcrumb a[aria-current="page"]{color:var(--blue);font-weight:700}
.v4-page .breadcrumb + .page-hero,.v4-page .breadcrumb + .contact-page-hero{padding-top:clamp(30px,4vw,58px)}
.v4-page .content-rail,.v4-page .service-steps,.v4-page .contact-reassurance{padding:clamp(58px,7vw,108px) var(--gutter);display:grid;grid-template-columns:minmax(0,.88fr) minmax(0,1.12fr);gap:clamp(32px,7vw,110px);max-width:1440px;margin:0 auto}
.v4-page .content-rail{border-top:1px solid var(--line)}
.v4-page .content-rail h2,.v4-page .service-steps h2,.v4-page .contact-reassurance h2{font-size:clamp(29px,3vw,44px);line-height:1.22;margin:12px 0 0;max-width:630px}
.v4-page .content-rail p,.v4-page .contact-reassurance p{font-size:1rem;line-height:1.78;color:var(--muted);max-width:680px}
.v4-page .service-steps{background:#f0ebe4;max-width:none;padding-left:max(var(--gutter), calc((100vw - 1440px)/2 + var(--gutter)));padding-right:max(var(--gutter), calc((100vw - 1440px)/2 + var(--gutter)))}
.v4-page .service-step-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;align-self:start}
.v4-page .service-step-grid article{padding:20px 0;border-top:2px solid var(--copper)}
.v4-page .service-step-grid h3{font-family:var(--display);font-size:1.35rem;line-height:1.25;color:var(--blue);margin:0 0 9px}.v4-page .service-step-grid p{font-size:.91rem;line-height:1.65;color:var(--muted);margin:0}
.v4-page .contact-reassurance{background:#edf3ee;max-width:none;padding-left:max(var(--gutter), calc((100vw - 1440px)/2 + var(--gutter)));padding-right:max(var(--gutter), calc((100vw - 1440px)/2 + var(--gutter)))}
@media(max-width:960px){.v4-page .content-rail,.v4-page .service-steps,.v4-page .contact-reassurance{grid-template-columns:1fr;gap:24px}.v4-page .service-step-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:640px){.v4-page .breadcrumb{padding:14px 24px 0;font-size:.73rem}.v4-page .content-rail,.v4-page .service-steps,.v4-page .contact-reassurance{padding:48px 24px}.v4-page .service-step-grid{grid-template-columns:1fr;gap:12px}.v4-page .content-rail p,.v4-page .contact-reassurance p{font-size:1rem}.v4-page .service-step-grid article{padding:16px 0}}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

/* Un seul repère par lien : pas de double soulignement. */
.v4-page .site-nav a[aria-current="page"]{border-bottom:0}.v4-page .site-nav a[aria-current="page"]::after{transform:scaleX(1)}
.v4-page .site-footer-expanded .footer-cta:hover,.v4-page .site-footer-expanded .footer-cta:focus-visible{text-decoration:none}

/* Animation discrète du CTA de pied de page. */
.v4-page .footer-cta{transition:color .2s ease,border-color .2s ease}.v4-page .footer-cta span[aria-hidden="true"]{transition:transform .2s ease}.v4-page .footer-cta:hover,.v4-page .footer-cta:focus-visible{color:#f2bd9a;border-bottom-color:#f2bd9a}.v4-page .footer-cta:hover span[aria-hidden="true"],.v4-page .footer-cta:focus-visible span[aria-hidden="true"]{transform:translateX(5px)}
@media(prefers-reduced-motion:reduce){.v4-page .footer-cta,.v4-page .footer-cta span[aria-hidden="true"]{transition:none}}


/* Footer V4 complet */
.v4-page .site-footer-expanded{display:grid;grid-template-columns:1.45fr .8fr .95fr .62fr;gap:clamp(28px,4vw,70px);padding:clamp(48px,6vw,78px) max(var(--gutter),calc((100vw - 1440px)/2 + var(--gutter))) 24px;background:var(--blue);color:var(--paper)}
.v4-page .site-footer-expanded a{color:var(--paper);text-decoration:none}.v4-page .site-footer-expanded a:hover{text-decoration:underline;text-underline-offset:5px}.v4-page .site-footer-expanded .footer-signature{display:inline-flex}.v4-page .site-footer-expanded .footer-tagline{max-width:370px;margin:18px 0;color:#f7f2eb;line-height:1.72;font-size:.93rem}.v4-page .footer-cta{display:inline-flex;gap:9px;align-items:center;margin-top:4px;color:var(--paper);font-weight:800;font-size:.85rem;border-bottom:1px solid currentColor;padding-bottom:5px}.v4-page .footer-heading{margin:4px 0 16px;color:#d6e5df;font-size:.69rem;font-weight:800;letter-spacing:.13em;text-transform:uppercase}.v4-page .footer-links{display:flex;flex-direction:column;align-items:flex-start;gap:10px;font-size:.84rem}.v4-page .footer-contact{font-style:normal;font-size:.84rem;line-height:1.7}.v4-page .footer-contact p{margin:10px 0}.v4-page .footer-contact .footer-zone{color:#d6e5df;font-size:.78rem;line-height:1.55}.v4-page .instagram-link{display:inline-flex;align-items:center;gap:9px;font-size:.86rem;font-weight:700}.v4-page .instagram-link svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.6}.v4-page .footer-bottom{grid-column:1 / -1;border-top:1px solid #ffffff3b;padding-top:21px;margin-top:8px;display:flex;justify-content:space-between;gap:18px;color:#d6e5df;font-size:.72rem}.v4-page .footer-bottom div{display:flex;gap:18px}.v4-page .footer-bottom a{color:#d6e5df}
@media(max-width:960px){.v4-page .site-footer-expanded{grid-template-columns:1.3fr 1fr;gap:34px}.v4-page .footer-social{grid-column:2}.v4-page .footer-bottom{flex-direction:column}.v4-page .footer-bottom div{flex-wrap:wrap}}
@media(max-width:640px){.v4-page .site-footer-expanded{grid-template-columns:1fr;padding:42px 24px 20px;gap:30px}.v4-page .footer-social{grid-column:auto}.v4-page .footer-bottom{margin-top:0}.v4-page .footer-bottom div{gap:10px 16px}}


/* Mentions légales V4 : même langage visuel, texte inchangé. */
.v4-page.legal-page .legal-main{max-width:1240px;margin:0 auto;padding:clamp(58px,8vw,110px) var(--gutter);background:var(--paper) url('assets/paper-grain.svg')}.v4-page.legal-page .legal-logo-link{display:none}.v4-page.legal-page .legal-hero{max-width:800px;padding:0 0 clamp(38px,5vw,62px);border-bottom:1px solid var(--line)}.v4-page.legal-page .legal-hero h1{font-size:clamp(42px,5vw,68px);line-height:1.1;margin:12px 0 20px}.v4-page.legal-page .legal-hero>p:not(.overline){font-size:1rem;line-height:1.8;color:var(--muted);max-width:760px}.v4-page.legal-page .legal-back-button{margin-top:12px}.v4-page.legal-page .legal-section{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;padding:clamp(28px,4vw,52px) 0 0}.v4-page.legal-page .legal-card{padding:clamp(25px,3vw,38px);background:#edf3ee;border-top:2px solid var(--sage);border-radius:4px;box-shadow:none}.v4-page.legal-page .legal-card-wide{grid-column:1 / -1;background:#f0ebe4;border-top-color:var(--copper)}.v4-page.legal-page .legal-card h2{font-size:clamp(25px,2.5vw,34px);margin:0 0 20px}.v4-page.legal-page .legal-card p{font-size:.94rem;line-height:1.75;color:var(--muted)}.v4-page.legal-page .legal-card a{color:var(--blue);text-decoration:underline;text-underline-offset:4px}@media(max-width:640px){.v4-page.legal-page .legal-main{padding:48px 24px}.v4-page.legal-page .legal-section{grid-template-columns:1fr;gap:16px}.v4-page.legal-page .legal-card-wide{grid-column:auto}.v4-page.legal-page .legal-card{padding:25px 22px}}
.v4-page.legal-page .legal-hero h1{text-align:center}
.v4-page.legal-page .legal-section{align-items:stretch}.v4-page.legal-page .legal-card,.v4-page.legal-page .legal-card + .legal-card{height:100%;box-sizing:border-box;margin-top:0}

/* Portrait du studio : le fichier est détouré, sans cartouche derrière. */
.v4-page .page-hero img[src*="portrait-graphiste-renardeau-mougins"]{background:transparent;border-radius:0;box-shadow:none;object-fit:contain}

/* FAQ : une introduction éditoriale centrée, plus équilibrée avec la liste. */
.v4-page .faq-page-hero{text-align:center;margin-inline:auto}.v4-page .faq-page-hero>p{margin-inline:auto}

/* Système éditorial V4 : chaque gabarit a son propre rythme. */
.v4-page main{background-color:var(--paper);background-image:url('assets/paper-grain.svg');background-size:260px 260px}
.v4-page .breadcrumb{max-width:1320px;padding-top:24px}
.v4-page .page-hero,.v4-page .contact-page-hero{max-width:1320px;grid-template-columns:minmax(0,.9fr) minmax(420px,1.1fr);gap:clamp(42px,7vw,118px);padding-block:clamp(42px,6vw,90px)}
.v4-page .page-hero h1,.v4-page .contact-page-hero h1{font-size:clamp(42px,4.35vw,66px);letter-spacing:-.025em;max-width:12.5ch}
.v4-page .lead{max-width:55ch;font-size:1rem;line-height:1.75}
.v4-page .page-hero img{height:clamp(390px,40vw,590px);border-radius:0 22% 0 16%;box-shadow:none}
.v4-page .editorial-copy{max-width:1320px;margin:auto;padding-inline:0;background:transparent;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.v4-page .editorial-copy>div:first-child{padding-left:var(--gutter)}
.v4-page .editorial-copy>div:last-child{padding-right:var(--gutter)}
.v4-page .editorial-copy h2{font-size:clamp(32px,3.1vw,48px);max-width:15ch}
.v4-page .content-rail{max-width:1320px;border-top:0}
.v4-page .process-section{max-width:1320px}
.v4-page .process-section ol{gap:0;border-top:1px solid var(--line)}
.v4-page .process-section li{min-height:150px;padding:24px 22px;border-top:0;border-left:1px solid var(--line)}
.v4-page .process-section li:first-child{border-left:0;padding-left:0}
.v4-page .page-links{background:transparent;max-width:1320px;margin:auto;padding-inline:var(--gutter)}
.v4-page .page-links>div{gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
.v4-page .page-links a{min-height:170px;padding:28px 24px;background:transparent;border-left:1px solid var(--line);border-radius:0;box-shadow:none}
.v4-page .page-links a:first-child{border-left:0;padding-left:0}
.v4-page .page-links a:hover{transform:none;box-shadow:none;background:#edf3ee}
.v4-page .page-cta{max-width:none;margin:0;padding:clamp(54px,7vw,92px) max(var(--gutter),calc((100vw - 1320px)/2 + var(--gutter)));background:var(--blue);border-radius:0;color:var(--paper)}
.v4-page .page-cta h2{font-size:clamp(34px,3.5vw,52px);color:var(--paper)}
.v4-page .page-cta .overline{color:#d8e6e2}.v4-page .page-cta p:not(.overline){color:#edf3ee}.v4-page .page-cta .button{background:var(--copper);border-color:var(--copper)}

/* Studio : page manifeste, portrait en pièce centrale. */
.v4-page:has(img[src*="portrait-graphiste-renardeau-mougins"]) .page-hero{grid-template-columns:minmax(0,.78fr) minmax(420px,1.22fr);padding-bottom:clamp(54px,8vw,120px)}
.v4-page:has(img[src*="portrait-graphiste-renardeau-mougins"]) .page-hero img{height:clamp(460px,49vw,700px);object-position:center bottom}
.v4-page:has(img[src*="portrait-graphiste-renardeau-mougins"]) .editorial-copy{grid-template-columns:1fr 1fr}
.v4-page:has(img[src*="portrait-graphiste-renardeau-mougins"]) .service-steps{background:var(--taupe)}

/* Identité : un gabarit précis, calme et orienté méthode. */
.v4-page:has(img[src*="galerie-charte-graphique-identite-visuelle"]) .page-hero{background:#edf3ee;padding-inline:clamp(28px,5vw,70px);margin-top:18px}
.v4-page:has(img[src*="galerie-charte-graphique-identite-visuelle"]) .page-hero img{border-radius:0;box-shadow:18px 18px 0 #d7e5df}
.v4-page:has(img[src*="galerie-charte-graphique-identite-visuelle"]) .offer-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:0;padding-block:0}
.v4-page:has(img[src*="galerie-charte-graphique-identite-visuelle"]) .offer-grid article{display:grid;grid-template-columns:190px 1fr;align-items:center;background:transparent;box-shadow:none;border-top:1px solid var(--line);padding:24px 0}
.v4-page:has(img[src*="galerie-charte-graphique-identite-visuelle"]) .offer-grid img{height:125px;border-radius:0;object-fit:cover}
.v4-page:has(img[src*="galerie-charte-graphique-identite-visuelle"]) .offer-grid h2,.v4-page:has(img[src*="galerie-charte-graphique-identite-visuelle"]) .offer-grid p{margin-left:24px;margin-right:0}

/* Ateliers : couleurs dédiées, gestes souples et modules accueillants. */
.v4-page:has(.audience-grid) .page-hero img{border-radius:18% 0 14% 0}
.v4-page:has(.audience-grid) .editorial-copy{background:#f8f0e8;border:0}
.v4-page:has(.audience-grid) .audience-grid{max-width:1320px;margin:auto;padding-top:clamp(34px,4vw,62px);padding-bottom:clamp(72px,8vw,120px);gap:16px}
.v4-page:has(.audience-grid) .audience-grid article{min-height:210px;border-radius:16px 16px 2px 16px;padding:28px 24px;box-shadow:inset 0 0 0 1px #ffffff8a;transition:transform .2s ease}
.v4-page:has(.audience-grid) .audience-grid article:nth-child(even){transform:translateY(22px)}
.v4-page:has(.audience-grid) .audience-grid article:hover{transform:translateY(-3px)}
.v4-page:has(.audience-grid) .content-rail{padding-top:clamp(90px,10vw,145px)}

/* Teambuilding : cadre professionnel, repères immédiats et contraste assumé. */
.v4-page:has(.stat-row) .page-hero{background:#e9e4dc;padding-inline:clamp(28px,5vw,70px);margin-top:18px}
.v4-page:has(.stat-row) .page-hero img{border-radius:0;box-shadow:16px 16px 0 var(--sage)}
.v4-page:has(.stat-row) .stat-row{max-width:1150px;margin:-28px auto 0;position:relative;z-index:1;border:0;box-shadow:0 16px 38px #0f495114}
.v4-page:has(.stat-row) .stat-row div{padding:27px 22px;background:var(--blue);color:var(--paper)}
.v4-page:has(.stat-row) .stat-row strong{color:var(--paper)}.v4-page:has(.stat-row) .stat-row span{color:#dcebe6}
.v4-page:has(.stat-row) .editorial-copy{margin-top:clamp(50px,7vw,96px)}

/* Pages pratiques : une lecture directe, volontairement sans ornement. */
.v4-page .faq-page-hero{max-width:880px;padding-top:clamp(64px,8vw,120px);padding-bottom:clamp(34px,5vw,68px)}
.v4-page .faq-page-hero h1{max-width:17ch;margin-inline:auto;font-size:clamp(40px,4.25vw,62px);letter-spacing:-.025em}
.v4-page .faq-page-content{max-width:880px;padding-bottom:clamp(72px,9vw,130px)}
.v4-page .faq-page-content details{padding:24px 0}.v4-page .faq-page-content summary{font-size:1rem}
.v4-page .contact-page-hero{max-width:none;background:#e9e4dc;padding-inline:max(var(--gutter),calc((100vw - 1320px)/2 + var(--gutter)))}
.v4-page .contact-page-form{border-radius:0;box-shadow:18px 18px 0 #d7e5df;padding:clamp(28px,4vw,46px)}

@media(max-width:960px){.v4-page .page-hero,.v4-page .contact-page-hero{grid-template-columns:1fr;max-width:720px}.v4-page .page-hero h1,.v4-page .contact-page-hero h1{max-width:16ch}.v4-page .editorial-copy{grid-template-columns:1fr;padding-inline:var(--gutter)}.v4-page .editorial-copy>div:first-child,.v4-page .editorial-copy>div:last-child{padding-inline:0}.v4-page .process-section li{border-left:0;border-top:1px solid var(--line);min-height:auto}.v4-page .process-section li:first-child{padding-left:22px}.v4-page .page-links a:first-child{padding-left:24px}.v4-page:has(.audience-grid) .audience-grid article:nth-child(even){transform:none}.v4-page:has(.stat-row) .stat-row{margin:0 var(--gutter)}}
@media(max-width:640px){.v4-page .breadcrumb{padding-top:16px}.v4-page .page-hero,.v4-page .contact-page-hero{padding-block:34px}.v4-page .page-hero img{height:320px}.v4-page:has(img[src*="portrait-graphiste-renardeau-mougins"]) .page-hero img{height:410px}.v4-page .editorial-copy{padding-block:48px}.v4-page .process-section ol,.v4-page .page-links>div{border-bottom:0}.v4-page .page-links a,.v4-page .page-links a:first-child{border-left:0;border-bottom:1px solid var(--line);padding-inline:0;min-height:auto}.v4-page:has(img[src*="galerie-charte-graphique-identite-visuelle"]) .page-hero,.v4-page:has(.stat-row) .page-hero{padding-inline:24px}.v4-page:has(img[src*="galerie-charte-graphique-identite-visuelle"]) .offer-grid article{grid-template-columns:118px 1fr}.v4-page:has(img[src*="galerie-charte-graphique-identite-visuelle"]) .offer-grid img{height:94px}.v4-page .page-cta{padding:52px 24px}.v4-page .contact-page-hero{padding-inline:24px}.v4-page .contact-page-form{box-shadow:10px 10px 0 #d7e5df}}

/* Harmonisation finale — langage unique pour chaque page de la V4. */
.v4-page{--surface:#edf3ee;--surface-warm:#f0ebe4;--frame:#c8d8d2;--photo-radius:2px 22% 2px 15%;--photo-radius-soft:2px 15% 2px 11%;--motion:cubic-bezier(.2,.65,.25,1)}
.v4-page .site-header{border-bottom:1px solid #0f495114;background:#fbf8f4f2;box-shadow:none}
.v4-page .site-nav a{transition:color .22s var(--motion)}.v4-page .site-nav a:hover,.v4-page .site-nav a:focus-visible{color:var(--copper)}
.v4-page main{background-color:var(--paper);background-image:url('assets/paper-grain.svg');background-size:240px 240px}
.v4-page .breadcrumb{max-width:1320px;color:var(--muted)}

/* Hero identique : titre éditorial, image matière, CTAs nets. */
body.v4-page:has(.page-hero) .page-hero,body.v4-page:has(.contact-page-hero) .contact-page-hero{max-width:1320px;grid-template-columns:minmax(0,.92fr) minmax(400px,1.08fr);gap:clamp(38px,6vw,96px);padding:clamp(38px,5vw,70px) var(--gutter) clamp(64px,8vw,112px);margin-inline:auto;background:transparent}
body.v4-page:has(.page-hero) .page-hero h1,body.v4-page:has(.contact-page-hero) .contact-page-hero h1{max-width:13ch;font-size:clamp(42px,4.25vw,64px);line-height:1.1;letter-spacing:-.025em}
body.v4-page:has(.page-hero) .page-hero img{width:100%;height:clamp(390px,39vw,570px);object-fit:cover;object-position:center;border-radius:var(--photo-radius);box-shadow:0 0 0 1px var(--frame);transition:transform .6s var(--motion),filter .6s var(--motion)}
body.v4-page:has(.page-hero) .page-hero:hover img{transform:scale(1.012);filter:saturate(1.03)}
body.v4-page:has(.contact-page-hero) .contact-page-hero{background:var(--surface-warm)}
body.v4-page:has(.contact-page-hero) .contact-page-form{border-radius:var(--photo-radius-soft);box-shadow:0 0 0 1px var(--frame);background:var(--paper)}

/* Même rythme de contenu : papier, règles fines, espaces généreux. */
body.v4-page:has(.editorial-copy) .editorial-copy{max-width:none;margin:0;padding:clamp(58px,7vw,108px) max(var(--gutter),calc((100vw - 1320px)/2 + var(--gutter)));background:var(--surface);border:0;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(34px,7vw,104px)}
body.v4-page:has(.editorial-copy) .editorial-copy>div:first-child,body.v4-page:has(.editorial-copy) .editorial-copy>div:last-child{padding:0}
body.v4-page:has(.editorial-copy) .editorial-copy h2{max-width:15ch;font-size:clamp(31px,3vw,46px)}
body.v4-page:has(.content-rail) .content-rail{max-width:1320px;padding:clamp(68px,8vw,122px) var(--gutter);border:0}
body.v4-page:has(.service-steps) .service-steps{max-width:none;padding:clamp(58px,7vw,108px) max(var(--gutter),calc((100vw - 1320px)/2 + var(--gutter)));background:transparent;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
body.v4-page:has(.service-steps) .service-step-grid{gap:0;border-top:1px solid var(--line)}
body.v4-page:has(.service-steps) .service-step-grid article{min-height:154px;padding:25px 22px;border-top:0;border-left:1px solid var(--line)}
body.v4-page:has(.service-steps) .service-step-grid article:first-child{border-left:0;padding-left:0}
body.v4-page:has(.image-text) .image-text{max-width:1320px;margin:auto;padding:clamp(64px,8vw,120px) var(--gutter);background:transparent;grid-template-columns:1.05fr .95fr}
body.v4-page:has(.image-text) .image-text.reverse{background:var(--surface-warm)}
body.v4-page:has(.image-text) .image-text img{height:clamp(330px,34vw,500px);border-radius:var(--photo-radius-soft);box-shadow:0 0 0 1px var(--frame);transition:transform .6s var(--motion)}
body.v4-page:has(.image-text) .image-text:hover img{transform:scale(1.012)}

/* Liens d’offres et conversion : sobres, lisibles, sans cartes SaaS. */
body.v4-page:has(.page-links) .page-links{max-width:1320px;margin:auto;padding:clamp(64px,8vw,110px) var(--gutter);background:transparent}
body.v4-page:has(.page-links) .page-links>div{gap:0;border-top:1px solid var(--line);border-bottom:1px solid var(--line)}
body.v4-page:has(.page-links) .page-links a{min-height:176px;padding:28px 24px;background:transparent;border-radius:0;box-shadow:none;border-left:1px solid var(--line);transition:background .25s var(--motion),color .25s var(--motion)}
body.v4-page:has(.page-links) .page-links a:first-child{padding-left:0;border-left:0}
body.v4-page:has(.page-links) .page-links a:hover,body.v4-page:has(.page-links) .page-links a:focus-visible{transform:none;box-shadow:none;background:#e1ece7}
body.v4-page:has(.page-cta) .page-cta{max-width:none;margin:0;padding:clamp(58px,7vw,100px) max(var(--gutter),calc((100vw - 1320px)/2 + var(--gutter)));border-radius:0;background:var(--blue);color:var(--paper)}
body.v4-page:has(.page-cta) .page-cta h2{color:var(--paper)}body.v4-page:has(.page-cta) .page-cta .overline{color:#d3e4dd}body.v4-page:has(.page-cta) .page-cta p:not(.overline){color:#e5efeb}body.v4-page:has(.page-cta) .page-cta .button{background:var(--copper);border-color:var(--copper);transition:background .2s var(--motion),transform .2s var(--motion)}body.v4-page:has(.page-cta) .page-cta .button:hover{background:#8d563e;transform:translateY(-2px)}

/* Offres, formats et photos : même cadre visuel sur la home et les pages. */
.v4-page .feature-cards article,.v4-page .offer-grid article{background:var(--paper);box-shadow:none;border:1px solid var(--frame);border-radius:var(--photo-radius-soft);overflow:hidden;transition:transform .35s var(--motion),box-shadow .35s var(--motion)}
.v4-page .feature-cards article:hover,.v4-page .offer-grid article:hover{transform:translateY(-5px);box-shadow:0 16px 32px #0f495112}
.v4-page .feature-cards img,.v4-page .offer-grid img,.v4-page .project-gallery img,.v4-page .masonry-gallery img,.v4-page .split-section>img,.v4-page .team-scene{border-radius:var(--photo-radius-soft);box-shadow:0 0 0 1px var(--frame);transition:transform .55s var(--motion),filter .55s var(--motion)}
.v4-page .feature-cards article:hover img,.v4-page .offer-grid article:hover img,.v4-page .project-gallery article:hover img,.v4-page .masonry-gallery article:hover img{transform:scale(1.018);filter:saturate(1.04)}
body.v4-page:has(.audience-grid) .audience-grid{max-width:1320px;padding:clamp(60px,7vw,100px) var(--gutter);gap:16px}
body.v4-page:has(.audience-grid) .audience-grid article{min-height:205px;border-radius:16px 16px 2px 16px;box-shadow:inset 0 0 0 1px #ffffff99;transition:transform .25s var(--motion),box-shadow .25s var(--motion)}
body.v4-page:has(.audience-grid) .audience-grid article:nth-child(even){transform:none}body.v4-page:has(.audience-grid) .audience-grid article:hover{transform:translateY(-4px);box-shadow:0 12px 26px #0f49510d}
body.v4-page:has(.stat-row) .stat-row{max-width:1120px;margin:0 auto;border-top:1px solid var(--line);border-bottom:1px solid var(--line);background:transparent;box-shadow:none}
body.v4-page:has(.stat-row) .stat-row div{background:transparent;color:var(--blue);padding:28px 22px}body.v4-page:has(.stat-row) .stat-row strong{color:var(--blue)}body.v4-page:has(.stat-row) .stat-row span{color:var(--muted)}

/* Home : les mêmes matières, sans surcharger les sections existantes. */
.v4-page.home-page .hero-photo{border-radius:var(--photo-radius);box-shadow:0 0 0 1px var(--frame)}
.v4-page.home-page .quote-band,.v4-page.home-page .newsletter-style,.v4-page.home-page .testimonial,.v4-page.home-page .contact-section{background-color:var(--surface-warm);background-image:url('assets/paper-grain.svg');background-size:240px 240px}
.v4-page.home-page .soft-section{background:var(--surface)}
.v4-page.home-page .section-title h2,.v4-page.home-page .editorial-heading{letter-spacing:-.02em}

/* Pages utilitaires : la fonctionnalité prévaut sur le décor. */
body.v4-page:has(.faq-page-hero) .faq-page-hero{max-width:880px;padding:clamp(70px,9vw,128px) var(--gutter) clamp(38px,5vw,68px);text-align:center;background:transparent}
body.v4-page:has(.faq-page-hero) .faq-page-hero h1{max-width:17ch;font-size:clamp(40px,4.2vw,62px)}
body.v4-page:has(.faq-page-content) .faq-page-content{max-width:880px;padding-bottom:clamp(76px,9vw,132px)}
body.v4-page:has(.faq-page-content) .faq-page-content details{padding:23px 0}body.v4-page:has(.faq-page-content) .faq-page-content details[open]{border-left:2px solid var(--copper);padding-left:20px}body.v4-page:has(.faq-page-content) .faq-page-content summary{font-size:1rem}

@media(max-width:960px){body.v4-page:has(.page-hero) .page-hero,body.v4-page:has(.contact-page-hero) .contact-page-hero{grid-template-columns:1fr;max-width:720px}body.v4-page:has(.editorial-copy) .editorial-copy{grid-template-columns:1fr}body.v4-page:has(.service-steps) .service-step-grid{grid-template-columns:repeat(3,1fr)}body.v4-page:has(.image-text) .image-text{grid-template-columns:1fr}.v4-page .feature-cards img{height:300px}}
@media(max-width:640px){.v4-page .site-header{background:#fbf8f4}.v4-page .breadcrumb{padding-inline:24px}.v4-page .page-hero,.v4-page .contact-page-hero{padding:32px 24px 54px}.v4-page .page-hero h1,.v4-page .contact-page-hero h1{font-size:clamp(38px,11vw,48px)}.v4-page .page-hero img{height:300px}body.v4-page:has(.editorial-copy) .editorial-copy,body.v4-page:has(.content-rail) .content-rail,body.v4-page:has(.service-steps) .service-steps,body.v4-page:has(.image-text) .image-text,body.v4-page:has(.page-links) .page-links{padding:48px 24px}body.v4-page:has(.service-steps) .service-step-grid{grid-template-columns:1fr}body.v4-page:has(.service-steps) .service-step-grid article,body.v4-page:has(.service-steps) .service-step-grid article:first-child{min-height:auto;padding:18px 0;border-left:0;border-top:1px solid var(--line)}body.v4-page:has(.page-links) .page-links a,body.v4-page:has(.page-links) .page-links a:first-child{min-height:auto;padding:24px 0;border-left:0;border-bottom:1px solid var(--line)}body.v4-page:has(.audience-grid) .audience-grid{padding:48px 24px}.v4-page .feature-cards article:hover,.v4-page .offer-grid article:hover,body.v4-page:has(.audience-grid) .audience-grid article:hover{transform:none}}

/* Les prestations gardent le même traitement photo + contenu sur chaque gabarit. */
body.v4-page:has(.offer-grid) .offer-grid{max-width:1320px;padding:clamp(56px,7vw,96px) var(--gutter);gap:20px}
body.v4-page:has(.offer-grid) .offer-grid article{display:block;padding:0;background:var(--paper);border:1px solid var(--frame);border-radius:var(--photo-radius-soft);overflow:hidden;box-shadow:none}
body.v4-page:has(.offer-grid) .offer-grid img{display:block;width:100%;height:245px;border:0;border-radius:0;object-fit:cover}
body.v4-page:has(.offer-grid) .offer-grid h2,body.v4-page:has(.offer-grid) .offer-grid p{margin-left:24px;margin-right:24px}
body.v4-page:has(.offer-grid) .offer-grid h2{margin-top:24px}body.v4-page:has(.offer-grid) .offer-grid p{margin-bottom:28px}
@media(max-width:640px){body.v4-page:has(.offer-grid) .offer-grid{padding:48px 24px}body.v4-page:has(.offer-grid) .offer-grid img{height:210px}}

/* Contact : surface pleine largeur et coordonnées sans grille d’icônes héritée. */
body.v4-page:has(.contact-page-hero) .contact-page-hero{max-width:none;padding-left:max(var(--gutter),calc((100vw - 1320px)/2 + var(--gutter)));padding-right:max(var(--gutter),calc((100vw - 1320px)/2 + var(--gutter)));background:var(--surface-warm)}
body.v4-page:has(.contact-page-hero) .contact-page-hero .contact-list{display:grid;gap:10px;margin:26px 0 0;max-width:36rem}
body.v4-page:has(.contact-page-hero) .contact-page-hero .contact-item{display:block;margin:0;font-size:.95rem;line-height:1.6;font-weight:500;overflow-wrap:anywhere}
body.v4-page:has(.contact-page-hero) .contact-page-hero .contact-item span{display:inline;overflow-wrap:anywhere}
body.v4-page:has(.contact-page-hero) .contact-page-hero a.contact-item{color:var(--blue);text-decoration:underline;text-decoration-color:#a86f5270;text-underline-offset:4px;transition:color .2s var(--motion),text-decoration-color .2s var(--motion),transform .2s var(--motion)}
body.v4-page:has(.contact-page-hero) .contact-page-hero a.contact-item:hover,body.v4-page:has(.contact-page-hero) .contact-page-hero a.contact-item:focus-visible{color:var(--copper);text-decoration-color:currentColor;transform:none}
body.v4-page:has(.contact-page-hero) .contact-page-hero .small-note{max-width:42rem;margin-top:28px}
@media(max-width:960px){body.v4-page:has(.contact-page-hero) .contact-page-hero{max-width:none}}
@media(max-width:640px){body.v4-page:has(.contact-page-hero) .contact-page-hero{padding-inline:24px}body.v4-page:has(.contact-page-hero) .contact-page-hero .contact-item{font-size:.93rem}}

/* Portrait du Studio : composition détourée complète, sans cadre ni recadrage. */
body.v4-page:has(img[src*="portrait-graphiste-renardeau-mougins"]) .page-hero img[src*="portrait-graphiste-renardeau-mougins"]{height:auto;max-height:none;object-fit:contain;border:0;border-radius:0;box-shadow:none;outline:0;transform:none;filter:none}
body.v4-page:has(img[src*="portrait-graphiste-renardeau-mougins"]) .page-hero:hover img[src*="portrait-graphiste-renardeau-mougins"]{transform:none;filter:none}
