/* Shared desktop and mobile refinements. */
.page-jumps{background:var(--cream);padding:20px 0;border-bottom:1px solid var(--line)}
.page-jumps>.wrap{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;padding-block:0}
.page-jumps a{justify-content:center;min-height:56px;padding:12px 16px;border:1px solid #e4dace;background:#fff;border-radius:8px;font-size:.92rem;line-height:1.6;text-align:center;transition:background .2s,border-color .2s,color .2s}
.page-jumps .icon{display:none}.page-jumps a:hover,.page-jumps a[aria-current=location]{color:#fff;background:var(--navy);border-color:var(--navy)}
.method-panel{display:block;padding:36px;background:var(--navy);border-radius:12px}
.method-panel>div:first-child{max-width:760px;margin:0 auto 28px;text-align:center}
.method-panel h2{font-size:1.65rem}.method-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;counter-reset:method}
.method-list>div,.method-list>div:first-child,.method-list>div:last-child{position:relative;display:block;padding:25px 22px;border:1px solid #ffffff2e;background:#ffffff0b;border-radius:8px}
.method-list>div>span{display:grid;place-items:center;width:44px;height:44px;background:#d4a36f;color:#14293b;border-radius:50%;font-size:1rem;font-weight:700;margin-bottom:18px}
.method-list h3{font-size:1.1rem;margin-bottom:10px}.method-list p{font-size:.94rem;line-height:1.9;color:#e0e7ee}
.four-steps>div{border-radius:9px;border-top:3px solid var(--copper);box-shadow:0 5px 18px #11273b05}.step-number{font-variant-numeric:tabular-nums}
.floating-whatsapp{position:fixed;inset-inline-end:24px;bottom:24px;z-index:40;display:flex;align-items:center;gap:10px;text-decoration:none}
.floating-whatsapp .wa-label{background:#fff;color:#16442f;padding:9px 14px;border:1px solid #dce7de;border-radius:8px;box-shadow:0 4px 20px #0b33221a;font-size:.88rem;font-weight:650}
.floating-whatsapp .wa-circle{display:grid;place-items:center;width:58px;height:58px;border-radius:50%;background:#157a4c;color:#fff;border:3px solid #fff;box-shadow:0 5px 22px #153d3330;transition:transform .2s,background .2s}
.floating-whatsapp .icon{width:29px;height:29px}.floating-whatsapp:hover .wa-circle{background:#11633e;transform:translateY(-3px)}
.floating-whatsapp:focus-visible{outline:3px solid var(--gold);outline-offset:5px;border-radius:30px}
.site-footer{padding-bottom:65px}.section-heading h2{line-height:1.65}.faq-list details{border-radius:4px}.faq-list summary{min-height:58px}.faq-list details[open]{background:#faf8f5}.faq-list details>p{padding-inline:16px}.faq-list summary{padding-inline:16px}
.hero .hero-buttons .button{min-height:48px}.button,.menu-toggle{touch-action:manipulation}.mobile-contact a:last-child{background:var(--copper)}
main>section[id]{scroll-margin-top:calc(var(--header-height,100px) + 20px)}
@media(max-width:900px){.page-jumps a{font-size:.83rem;padding:12px 10px}.method-panel{padding:28px}.method-list{gap:12px}.method-list>div,.method-list>div:first-child,.method-list>div:last-child{padding:22px 18px}}
@media(max-width:640px){
 .wrap{width:calc(100% - 32px)}.section{padding-block:30px}.section-heading h2{font-size:1.3rem;gap:8px}.section-heading h2:before,.section-heading h2:after{width:15px}
 .page-jumps{padding:16px 0}.page-jumps>.wrap{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:0}.page-jumps a{min-height:48px;justify-content:center;font-size:.8rem;padding:10px 8px;border-radius:7px}
 .method-panel{padding:25px 18px;border-radius:10px}.method-panel>div:first-child{text-align:start;margin-bottom:23px}.method-panel h2{font-size:1.35rem}.method-panel>div:first-child>p{font-size:.94rem}
 .method-list{grid-template-columns:1fr;gap:12px}.method-list>div,.method-list>div:first-child,.method-list>div:last-child{display:grid;grid-template-columns:38px minmax(0,1fr);align-items:start;gap:14px;padding:21px 16px}.method-list>div>span{width:38px;height:38px;font-size:.86rem;margin:0}.method-list h3{font-size:1.05rem;margin:2px 0 7px}.method-list p{font-size:.91rem;line-height:1.85}
 .floating-whatsapp{bottom:calc(76px + env(safe-area-inset-bottom));inset-inline-end:15px;gap:7px}.floating-whatsapp .wa-circle{width:53px;height:53px}.floating-whatsapp .wa-label{display:none}.floating-whatsapp .icon{width:27px;height:27px}
 .mobile-contact{padding:7px 12px calc(7px + env(safe-area-inset-bottom));gap:9px;background:#fff;box-shadow:0 -4px 20px #11273b12}.mobile-contact a{border:1px solid var(--line);border-radius:6px;min-height:46px;font-size:.84rem}.mobile-contact a:last-child{color:#fff;border-color:var(--copper)}.site-footer{padding-bottom:145px}
 .hero-image{height:220px;object-position:20% 22%}.hero-copy{padding-top:22px}.hero h1{font-size:1.8rem}.hero h1 .hero-identity{font-size:1.5rem}[lang=fr] .hero h1 .hero-identity{font-size:1.45rem}.hero .hero-domains{font-size:.9rem}.hero p{font-size:.94rem}.hero-buttons{flex-direction:column}.hero-buttons .button{width:100%;font-size:.93rem!important;min-height:47px}.hero-trust{margin-top:18px;padding-top:15px}
 .office-copy p,.situation-grid p,.audience-grid p{font-size:.96rem;line-height:1.9}.four-steps p{font-size:.93rem}.four-steps>div{padding:20px 17px}.faq-heading .section-heading h2:before{display:none}.faq-list summary{font-size:.96rem;padding-block:15px}.faq-list summary h3{line-height:1.85}.faq-list details>p{font-size:.94rem;line-height:1.95}.footer-top{column-gap:20px}
}
@media(prefers-reduced-motion:reduce){.floating-whatsapp:hover .wa-circle{transform:none}}
@media print{.floating-whatsapp,.page-jumps{display:none}}

/* V5: integrated mobile cover, clear contact actions and authentic photographs. */
.header-row nav{gap:15px}.contact-buttons{flex-wrap:wrap}.call-button{background:var(--navy);border-color:var(--navy)}
.footer-bottom a{text-decoration:underline;text-underline-offset:4px}.footer-practices{display:flex;flex-wrap:wrap;gap:6px}.gallery-link{margin-top:12px!important}.inline-reference{text-decoration:underline;text-underline-offset:3px}
.situations>.wrap{padding:34px;background:var(--navy);color:#fff;border-radius:12px}.situations .section-heading p{color:#dfe7ee}.situations .situation-grid{gap:18px}.situation-grid article{padding:24px;border:1px solid #ffffff2e;border-radius:8px;background:#ffffff0b;display:flex;flex-direction:column}.situation-grid .eyebrow{width:44px;height:44px;display:grid;place-items:center;background:var(--gold);color:var(--navy);border-radius:50%;font-weight:700}.situation-grid p{color:#e1e7ed}.situation-grid .pieces{background:#ffffff0b;border-inline-start:2px solid var(--gold);border-radius:3px;color:#f1e1ca}.situation-grid .text-link{color:#edbc88;margin-top:auto}.situation-grid .text-link:hover{color:#fff}
.office-grid>img:first-child{object-position:center 29%}.photo-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:28px}.photo-gallery figure{margin:0;background:var(--cream);border:1px solid var(--line);border-radius:8px;overflow:hidden}.photo-gallery img{width:100%;height:420px;object-fit:contain;background:#ece8e1}.photo-gallery figcaption{padding:18px;font-size:.95rem}.photo-gallery a:focus-visible{display:block;outline-offset:-4px}
@media(max-width:640px){
 .floating-whatsapp{display:none}.mobile-contact a:last-child{background:#146c49;border-color:#146c49}.site-footer{padding-bottom:90px}
 .hero{min-height:0}.hero-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:29% top;opacity:.6;z-index:-2}.hero:after{display:block;background:linear-gradient(180deg,#11273b18 0%,#11273b70 20%,#11273be6 52%,#11273b 94%);z-index:-1}.hero-inner{min-height:600px;align-items:flex-end}.hero-copy,[lang=fr] .hero-copy{width:100%;padding:155px 0 25px}.hero h1,[lang=fr] .hero h1{font-size:1.7rem}.hero h1 .hero-identity,[lang=fr] .hero h1 .hero-identity{font-size:1.4rem}.hero .hero-domains{margin-top:10px}.hero p{font-size:.9rem}.hero-trust{display:none}.hero-buttons{margin-top:18px;gap:9px}.hero-copy>.eyebrow{margin-bottom:6px}
 .situations>.wrap{padding:25px 18px}.situations .section-heading h2:before,.situations .section-heading h2:after{display:none}.situation-grid article{padding:22px 18px}.situation-grid p{font-size:.94rem}.office-grid>img:last-child{display:block;height:230px}.office-grid>img:first-child{height:360px;object-position:center 30%}.photo-gallery{grid-template-columns:1fr;gap:20px}.photo-gallery img{height:380px}.contact-buttons .button{width:100%}
}
@media(max-width:640px){.hero-image{height:440px;object-position:left top;opacity:.8}.hero:after{background:linear-gradient(180deg,#11273b08 0%,#11273b65 22%,#11273bed 55%,#11273b 76%)}}

/* V6: navigation cues, responsive carousel and contact layout. */
.page-jumps .icon{display:block;width:23px;height:23px;color:var(--copper)}.page-jumps a[aria-current=location] .icon,.page-jumps a:hover .icon{color:var(--gold)}[lang=fr] .page-jumps .icon{transform:none}
.contact-buttons{display:flex;flex-wrap:nowrap;gap:8px}.contact-buttons .button{flex:1;min-width:0;white-space:nowrap;padding-inline:10px;font-size:.82rem}.contact-buttons .icon{width:18px;height:18px;transform:none!important}
.office-grid>img:first-child{object-fit:contain;object-position:center;background:var(--cream);height:330px}.office-grid>img:last-child{height:330px}
.office-facts{background:var(--navy);color:#fff;padding:30px 0}.office-facts>.wrap{display:grid;grid-template-columns:repeat(3,1fr)}.office-facts .wrap>div{display:flex;flex-direction:column;align-items:center;text-align:center;padding:12px 20px;border-inline-end:1px solid #ffffff25}.office-facts .wrap>div:last-child{border:0}.office-facts .icon{color:var(--gold);width:34px;height:34px;margin-bottom:12px}.office-facts strong{color:var(--gold);font-size:1.4rem;line-height:1.6}.office-facts span{font-size:.87rem;color:#e1e7ed;margin-top:6px}
.office-map{width:100%;margin-top:18px}.office-map iframe{width:100%;height:220px;border:1px solid var(--line);border-radius:8px;background:#eee}.office-map small{display:block;font-size:.75rem;line-height:1.6;margin-top:7px;font-style:normal}
.photo-gallery{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scrollbar-width:thin;scrollbar-color:var(--copper) var(--cream);gap:20px;padding:3px 3px 14px;overscroll-behavior-x:contain}.photo-gallery figure{flex:0 0 100%;min-width:0;scroll-snap-align:center;scroll-snap-stop:always}.photo-gallery img{height:510px;max-height:65vh;object-fit:contain}.photo-gallery figcaption{text-align:center}.gallery-controls{display:flex;align-items:center;justify-content:center;gap:22px;margin-top:18px}.gallery-controls button{width:48px;height:48px;border:1px solid var(--line);border-radius:50%;background:var(--navy);color:white;font-size:1.3rem}.gallery-controls button:disabled{opacity:.4;cursor:default}.gallery-status{min-width:60px;text-align:center;direction:ltr;color:var(--copper);font-weight:700}
@media(max-width:900px){.contact-buttons{flex-wrap:wrap}.contact-buttons .button{flex:1 1 140px}}
@media(max-width:640px){.page-jumps a{gap:8px}.page-jumps .icon{width:20px;height:20px}.contact-buttons{display:grid;grid-template-columns:1fr;gap:10px}.contact-buttons .button{font-size:.95rem}.office-grid>img:first-child{height:360px;object-fit:contain;object-position:center}.office-facts{padding:15px 0}.office-facts .wrap>div{padding:12px 7px}.office-facts strong{font-size:.91rem}.office-facts span{font-size:.73rem}.office-facts .icon{width:27px;height:27px}.photo-gallery img{height:420px}.photo-gallery figcaption{font-size:.86rem;padding:14px}.office-map iframe{height:230px}}
.office-facts strong{font-size:2.6rem;font-weight:650;font-variant-numeric:tabular-nums;line-height:1.3}.office-facts .demo-stat-note{color:#c8d3de;text-align:center;font-size:.74rem;max-width:850px;margin:20px auto 0;padding-inline:20px;line-height:1.8}@media(max-width:640px){.office-facts strong{font-size:1.9rem}.office-facts .demo-stat-note{font-size:.7rem;margin-top:14px}}

/* V8: verified office figures, reordered introduction and in-page image viewer. */
.office-facts{padding-block:42px}.office-facts strong{font-size:3rem;font-weight:500}.office-facts .icon{width:40px;height:40px}.office-facts span{color:#c4d2e0}
.office-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.35fr) minmax(0,1fr);grid-template-areas:'portrait copy room' 'portrait actions room';align-items:center;column-gap:28px;row-gap:12px}.office-grid>.office-portrait{grid-area:portrait;justify-self:center;width:min(100%,260px);height:400px;object-fit:cover;object-position:center 34%;border-radius:8px}.office-copy{grid-area:copy;align-self:end;order:initial}.office-grid>.office-room{grid-area:room;height:400px;object-fit:cover;border-radius:8px}.office-actions{grid-area:actions;align-self:start;display:flex;flex-wrap:wrap;justify-content:center;gap:10px}.office-actions .button{font-size:.83rem;padding:10px 14px}.button.secondary{background:white;color:var(--navy);border-color:#c8c0b5}.button.secondary:hover{background:var(--cream)}
.services-intro{text-align:center}.services-intro h2{margin-bottom:18px}.services-intro a{color:var(--copper);text-decoration:underline;text-underline-offset:4px}.about-details{background:var(--cream)}.about-details h3{margin-top:25px}.footer-brand p{font-size:.83rem;line-height:1.9;color:#c5d1dd;margin-top:18px;max-width:310px}.social-links{display:flex;gap:20px;flex-wrap:wrap}.social-links a{display:flex;gap:8px;align-items:center;text-decoration:none}.social-links .icon{width:20px;height:20px}.social-links a>span{font-family:Arial;font-size:24px;font-weight:bold}
.reviews-section{background:#fff}.review-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.review-grid figure{margin:0;border:1px solid var(--line);border-radius:10px;background:var(--cream);padding:24px}.review-author{display:flex;align-items:center;gap:10px}.review-avatar{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--navy);color:white}.review-author strong{font-size:.9rem}.review-source{margin-inline-start:auto;color:var(--muted);font-size:.75rem}.review-stars{color:#a96113;letter-spacing:2px;margin-top:17px}.review-grid blockquote{margin:14px 0;line-height:1.95;font-size:.93rem;color:var(--ink)}.review-grid figcaption{font-size:.73rem;color:var(--muted)}
.image-viewer{width:min(1100px,96vw);max-width:96vw;height:90vh;max-height:94vh;padding:15px;border:1px solid #ffffff35;border-radius:12px;background:var(--navy-deep);color:white;overflow:hidden}.image-viewer::backdrop{background:#05111ee8}.viewer-head{display:flex;justify-content:space-between;align-items:center;gap:10px}.image-viewer button{background:#ffffff12;border:1px solid #ffffff45;border-radius:6px;color:white;min-width:44px;min-height:44px;font:inherit;cursor:pointer}.viewer-body{display:flex;align-items:center;justify-content:center;height:calc(100% - 135px)}.viewer-body img{width:100%;height:100%;object-fit:contain}.viewer-caption{text-align:center;font-size:.87rem;margin-top:8px;color:#e2e8ef}.viewer-controls{display:flex;justify-content:center;align-items:center;gap:20px;margin-top:8px}.viewer-count{direction:ltr}.image-viewer button:disabled{opacity:.35}body:has(.image-viewer[open]){overflow:hidden}
@media(max-width:900px){.office-grid{column-gap:16px}.office-actions .button{font-size:.77rem}.review-grid{gap:12px}.review-grid figure{padding:18px}}
@media(max-width:640px){.office-facts{padding-block:28px}.office-facts strong{font-size:2.1rem}.office-facts .icon{width:30px;height:30px}.office-grid{display:grid;grid-template-columns:1fr;grid-template-areas:'portrait' 'copy' 'room' 'actions';gap:24px}.office-grid>.office-portrait{width:min(100%,310px);height:470px;object-fit:cover;object-position:center 34%}.office-grid>.office-room{display:block;height:240px;width:100%}.office-copy{order:initial}.office-actions{flex-direction:column;width:100%;gap:12px}.office-actions .button{font-size:.95rem;min-height:49px}.footer-brand{grid-column:1/-1}.review-grid{grid-template-columns:1fr}.image-viewer{height:88vh;padding:12px}.viewer-body{height:calc(100% - 155px)}.viewer-caption{font-size:.8rem}.office-facts span{font-size:.69rem}}
.office-grid>img.office-portrait{width:min(100%,260px);height:400px;object-fit:cover;object-position:center 34%}@media(max-width:640px){.office-grid>img.office-portrait{width:min(100%,310px);height:470px;object-fit:cover;object-position:center 34%}}

/* V9: heading before the portrait on mobile. */
.office-grid{grid-template-areas:'portrait title room' 'portrait copy room' 'portrait actions room';row-gap:10px}.office-title{grid-area:title;align-self:end}.office-title .section-heading{margin:0}.office-title h2{font-size:1.4rem}.office-title h2:before,.office-title h2:after{display:none}.office-copy{align-self:center}.office-copy p{margin-bottom:8px}
@media(max-width:640px){.office-grid{grid-template-areas:'title' 'portrait' 'copy' 'room' 'actions';gap:22px}.office-title h2{font-size:1.38rem}.office-title{width:100%}.office-copy p{margin:0}}

.article-toc{background:var(--cream);border:1px solid var(--line);padding:20px;border-radius:8px;margin:24px 0}.article-toc a{text-decoration:underline;text-underline-offset:3px}.prose blockquote{border-inline-start:3px solid var(--copper);background:var(--cream);margin:24px 0;padding:18px 24px;color:var(--navy)}.article-card time{display:block;color:var(--muted);font-size:.8rem;margin:12px 0}.prose section{scroll-margin-top:130px}

.hero-home-link{color:inherit;text-decoration:none}.hero-home-link:hover{text-decoration:underline;text-underline-offset:.15em}.article-related{margin-top:2rem;padding:1.5rem;border:1px solid var(--line,#e5d9ca);border-radius:6px;background:#f8f6f2}
