 :root{--paper:#ffffff;--paper2:#ffffff;--ink:#07517d;--muted:#526574;--line:#e2e9ed;--gold:#c9a24a;--blue:#07517d;--cyan:#07517d;}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:95px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'DM Sans',sans-serif;line-height:1.6}a{color:inherit;text-decoration:none}#matrix{position:absolute;inset:0;width:100%;height:100%;pointer-events:none;z-index:0;opacity:.95;mask-image:linear-gradient(to right,transparent 0%,rgba(0,0,0,.15) 34%,black 60%,black 100%)}.site-header{position:sticky;top:0;z-index:10}main{position:relative;z-index:2}main>.hero,main>.section{position:relative}footer{position:relative;z-index:2}.site-header{height:82px;display:flex;align-items:center;justify-content:space-between;padding:0 clamp(22px,6vw,96px);border-bottom:1px solid rgba(60,70,60,.1);background:rgba(255,255,255,.88);backdrop-filter:blur(14px);position:sticky;top:0;z-index:10}.brand{display:flex;flex-direction:column;line-height:1}.brand>span{font-family:'Playfair Display',serif;font-size:29px;letter-spacing:.12em;font-weight:600}.dot{color:var(--gold);letter-spacing:0}.brand small{font-size:9px;letter-spacing:.42em;margin-top:7px;color:var(--muted)}.nav-links{display:flex;gap:clamp(18px,3vw,44px);font-size:13px}.nav-links a:hover,.text-link:hover,footer a:hover{color:var(--gold)}.button{display:inline-flex;align-items:center;gap:18px;padding:14px 22px;border:1px solid var(--gold);border-radius:4px;background:var(--gold);color:#fffdf7;font-size:13px;font-weight:600;transition:transform .2s,background .2s}.button:hover{transform:translateY(-2px);background:var(--ink);border-color:var(--ink)}.button-small{padding:11px 16px;font-size:12px}.menu-toggle{display:none;background:none;border:0;font-size:24px;line-height:1;color:var(--ink);cursor:pointer;padding:8px;min-width:40px;min-height:40px;align-items:center;justify-content:center}.menu-toggle:focus-visible{outline:2px solid var(--gold);outline-offset:3px}.hero{position:relative;isolation:isolate;min-height:610px;display:grid;grid-template-columns:1.02fr .98fr;align-items:center;gap:5vw;padding:68px clamp(22px,8vw,132px) 76px;overflow:hidden}.hero-copy{position:relative;z-index:1;max-width:660px}.eyebrow,.section-index{font-size:10px;letter-spacing:.22em;font-weight:700;color:var(--gold)}h1,h2,h3,p{margin-top:0}h1{font-family:'Playfair Display',serif;font-size:clamp(46px,6.1vw,86px);line-height:1.03;letter-spacing:-.04em;font-weight:600;margin:22px 0 24px}h1 em,h2 em{font-style:normal;color:var(--gold)}.lead{font-size:clamp(16px,1.5vw,19px);color:#434b47;max-width:530px;line-height:1.8}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap;margin-top:32px}.text-link{font-size:13px;font-weight:600;border-bottom:1px solid var(--gold);padding-bottom:4px}.proof{display:flex;align-items:center;gap:12px;margin-top:54px;color:#707671;font-size:10px;letter-spacing:.04em;flex-wrap:wrap}.proof i{width:3px;height:3px;border-radius:50%;background:var(--gold)}.hero-art{height:390px;position:relative;z-index:1;display:flex;align-items:center;justify-content:center}.art-panel{position:relative;width:min(100%,440px);height:300px;border:1px solid rgba(7,81,125,.16);background:rgba(255,255,255,.84);box-shadow:0 24px 60px rgba(7,45,75,.07);padding:30px;transform:rotate(2deg)}.code-label{font-family:monospace;font-size:12px;color:var(--cyan)}.code-lines{margin-top:38px;font-family:monospace;font-size:clamp(12px,1.2vw,15px);line-height:2.7;color:#344f63}.code-lines b{color:var(--gold);font-weight:400;margin-right:12px}.art-stamp{position:absolute;right:-22px;bottom:-28px;background:var(--ink);color:#ffffff;padding:20px 25px;font-size:10px;letter-spacing:.18em;line-height:1.8;box-shadow:0 14px 28px #17262220}.art-stamp strong{font-size:24px;color:var(--gold)}.orbit{position:absolute;border:1px solid rgba(0,166,210,.18);border-radius:50%;width:360px;height:360px}.orbit-two{width:430px;height:250px;transform:rotate(-34deg);border-color:rgba(201,162,74,.22)} .art-caption{position:absolute;left:30px;right:110px;bottom:18px;margin:0;font-size:11px;letter-spacing:.08em;color:var(--ink);line-height:1.5}
.art-panel{transform:none;height:320px;padding:28px 30px 52px}
.art-panel .code-lines{margin-top:27px}
.art-stamp{right:-18px;bottom:-18px}
.hero-art{min-width:0}
.section{padding:90px clamp(22px,8vw,132px);border-top:1px solid var(--line)}.intro{display:grid;grid-template-columns:.5fr 1.5fr;gap:5vw;background:#ffffff}.intro-content{max-width:800px}h2{font-family:'Playfair Display',serif;font-size:clamp(32px,4vw,52px);line-height:1.12;font-weight:500;letter-spacing:-.025em;margin:14px 0 22px}.intro-content p,.section-head>p,.contact p{max-width:590px;color:var(--muted);font-size:15px;line-height:1.85}.intro-content .text-link{display:inline-block;margin-top:12px}.section-head{display:flex;justify-content:space-between;align-items:end;gap:32px;margin-bottom:36px}.section-head h2{margin-bottom:0}.section-head>p{max-width:310px;margin-bottom:3px;font-size:13px}.service-grid,.project-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.service,.project{border:1px solid var(--line);background:#ffffff;padding:28px;min-height:205px;transition:transform .2s,border-color .2s}.service:hover,.project:hover{transform:translateY(-4px);border-color:rgba(164,123,53,.55)}.service>span{font-family:monospace;font-size:11px;color:var(--gold);letter-spacing:.08em}h3{font-family:'Playfair Display',serif;font-size:24px;font-weight:500;margin:25px 0 10px}.service p,.project p{font-size:13px;color:var(--muted);line-height:1.8;margin-bottom:0}.project{min-height:240px;display:flex;flex-direction:column;align-items:flex-start}.project h3{margin-top:20px}.project a{margin-top:auto;padding-top:24px;color:var(--gold);font-size:12px;font-weight:600}.muted{margin-top:auto;padding-top:24px;color:var(--muted);font-size:12px}.contact{display:flex;align-items:center;justify-content:space-between;gap:30px;background:#f7fafc}.contact h2{margin-bottom:12px}.contact p{margin-bottom:0}footer{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:30px clamp(22px,8vw,132px);font-size:10px;color:var(--muted);border-top:1px solid var(--line)}footer .brand>span{font-size:22px}footer .brand small{font-size:7px}.studio .hero-art .art-panel{transform:rotate(-3deg);border-radius:18px;background:linear-gradient(145deg,#ffffff,#f1f8fb);box-shadow:18px 18px 0 rgba(7,81,125,.10)}.studio .art-stamp{border-radius:14px;background:#07517d}.studio .service,.studio .project{border-radius:12px}.studio .button{border-radius:999px}.studio #matrix{opacity:.72}.minimal .hero{min-height:540px}.minimal .hero-art{height:300px}.minimal .art-panel{transform:none;box-shadow:none;background:rgba(252,250,245,.65)}.minimal .orbit{display:none}.minimal .service,.minimal .project{background:transparent}.minimal .button{border-radius:2px}@media(max-width:800px){.site-header{padding:0 22px;height:72px}.brand>span{font-size:24px}.nav-links{display:none;position:absolute;top:72px;left:0;right:0;padding:20px 24px;background:var(--paper);border-bottom:1px solid var(--line);flex-direction:column;gap:18px}.nav-links.open{display:flex}.menu-toggle{display:block;margin-left:auto;margin-right:18px}.contact-top{display:none}.hero{grid-template-columns:1fr;padding-top:58px;gap:18px}.hero-art{height:310px;margin:0 12px}.art-panel{height:250px;padding:24px}.code-lines{margin-top:22px}.orbit{width:290px;height:290px}.orbit-two{width:330px;height:200px}.intro{grid-template-columns:1fr;gap:20px}.section{padding-top:64px;padding-bottom:64px}.section-head{display:block}.section-head>p{margin-top:18px}.service-grid,.project-grid{grid-template-columns:1fr}.service,.project{min-height:unset}.contact,footer{align-items:flex-start;flex-direction:column}footer{gap:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}
/* v10: identité maîtrisée et capsules de projets illustrées */
.proof{gap:10px 14px;margin-top:38px;color:var(--ink);font-size:11px;letter-spacing:0}
.proof span{white-space:nowrap}
.proof .proof-label{color:var(--muted);font-weight:600}
.proof .proof-sep{width:4px;height:4px;flex:0 0 4px}
.project{padding:0;overflow:hidden;min-height:0;border-radius:8px}
.project-visual{height:155px;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;background:#f5f8fa;border-bottom:1px solid rgba(7,81,125,.12)}
.project-content{padding:23px 25px 25px;display:flex;flex-direction:column;align-items:flex-start;flex:1;min-height:205px}
.project .eyebrow{font-size:9px;letter-spacing:.16em;color:var(--gold)}
.project h3{margin:14px 0 9px}
.project p{margin-bottom:18px}
.project a,.project .muted{margin-top:auto;padding-top:12px}
.project a{color:var(--ink);border-bottom:1px solid var(--gold);padding-bottom:3px}
.project:hover .project-visual .visual-core{transform:translateY(-3px)}
.project-visual .visual-core{transition:transform .25s ease}
.visual-prompt{background:linear-gradient(135deg,#edf4f8,#ffffff 55%,#e9f0f5)}
.prompt-window{width:72%;max-width:260px;background:#fff;border:1px solid rgba(7,81,125,.2);border-radius:8px;box-shadow:0 14px 35px rgba(7,45,75,.09);padding:13px}
.window-top{display:flex;gap:4px;margin-bottom:11px}
.window-top i{display:block;width:5px;height:5px;border-radius:50%;background:var(--gold)}
.prompt-line{height:5px;border-radius:5px;background:rgba(7,81,125,.16);margin:7px 0;width:82%}
.prompt-line.short{width:52%}
.prompt-tag{display:inline-block;background:#07517d;color:#fff;border-radius:3px;padding:4px 8px;font-size:8px;letter-spacing:.1em;margin-top:6px}
.visual-reserva{background:linear-gradient(140deg,#f8f5ec,#ffffff 55%,#eaf1f5)}
.calendar{width:64%;max-width:220px;background:#fff;border:1px solid rgba(7,81,125,.18);border-radius:7px;padding:12px;box-shadow:0 14px 35px rgba(7,45,75,.08)}
.calendar-head{display:flex;justify-content:space-between;align-items:center;font-size:9px;color:var(--ink);margin-bottom:10px;font-weight:700}
.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:5px}
.calendar-grid i{height:13px;border-radius:3px;background:#eef2f5}
.calendar-grid i:nth-child(7n+3),.calendar-grid i:nth-child(11){background:#c9a24a}
.calendar-grid i:nth-child(17){background:#07517d}
.visual-noorwan{background:#f4f0e7}
.book-stack{position:relative;width:150px;height:112px;transform:rotate(-3deg)}
.book{position:absolute;width:130px;height:75px;left:10px;border:1px solid rgba(7,81,125,.2);box-shadow:0 8px 18px rgba(7,45,75,.12);display:flex;align-items:center;justify-content:center;text-align:center;font-family:'Playfair Display',serif;font-size:13px;line-height:1.2;padding:12px}
.book.one{top:28px;left:22px;background:#07517d;color:#fff;transform:rotate(7deg)}
.book.two{top:14px;left:7px;background:#fff;color:#07517d;transform:rotate(-5deg)}
.book.three{top:0;left:18px;background:#c9a24a;color:#fff;transform:rotate(2deg)}
@media(max-width:760px){.proof{margin-top:28px}.project-visual{height:140px}.project-content{min-height:185px}.art-panel{height:300px;padding:24px 22px 50px}.art-caption{left:22px;right:95px;bottom:15px;font-size:10px}.art-stamp{right:-10px;bottom:-12px}}
@media(prefers-reduced-motion:reduce){.project,.project-visual .visual-core{transition:none}}

/* v11: les visuels des capsules occupent toute la largeur de la carte */
.project{align-items:stretch}
.project-visual{align-self:stretch;width:100%;min-width:0;flex:0 0 155px;box-sizing:border-box}
.project-content{width:100%;min-width:0}
@media(max-width:760px){.project-visual{flex-basis:140px}}

/* v12: expertises présentées comme trois étapes illustrées, cohérentes avec les capsules projets */
.proof{gap:8px 12px;max-width:640px}
.service-grid{align-items:stretch}
.service{padding:0;min-height:0;overflow:hidden;display:flex;flex-direction:column;align-items:stretch;border-radius:8px}
.service-visual{height:165px;flex:0 0 165px;width:100%;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;border-bottom:1px solid rgba(7,81,125,.12)}
.service-visual-clarifier{background:linear-gradient(135deg,#f0f5f8,#fff 58%,#f4efe2)}
.service-visual-construire{background:linear-gradient(135deg,#f7f3e9,#fff 60%,#eaf1f6)}
.service-visual-ia{background:linear-gradient(135deg,#edf3f7,#fff 56%,#f5efdf)}
.service-content{padding:22px 24px 25px;display:flex;flex-direction:column;align-items:flex-start;flex:1}
.service-content>span{font-family:monospace;font-size:11px;letter-spacing:.1em;color:var(--gold)}
.service-content p{font-size:13px;color:var(--muted);line-height:1.8;margin:15px 0 0}
.service:hover .service-visual>div{transform:translateY(-3px)}
.service-visual>div:not(.visual-caption){transition:transform .25s ease}
.visual-caption{position:absolute;left:15px;bottom:12px;color:var(--ink);font:9px 'DM Sans',sans-serif;letter-spacing:.16em}
.clarifier-map{position:relative;width:220px;height:105px}
.clarifier-map:before,.clarifier-map:after{content:"";position:absolute;left:50%;top:50%;height:1px;width:155px;background:var(--blue);opacity:.42;transform:translate(-50%,-50%) rotate(24deg)}
.clarifier-map:after{transform:translate(-50%,-50%) rotate(-24deg);background:var(--gold)}
.clarifier-map i,.ia-network i{position:absolute;width:12px;height:12px;border:2px solid var(--blue);background:#fff;border-radius:50%;z-index:1}
.clarifier-map i:nth-child(1){left:16px;top:16px}.clarifier-map i:nth-child(2){right:24px;top:9px;border-color:var(--gold)}.clarifier-map i:nth-child(3){left:50%;top:45%;transform:translate(-50%,-50%);width:19px;height:19px;background:var(--blue);box-shadow:0 0 0 6px rgba(7,81,125,.08)}.clarifier-map i:nth-child(4){left:28px;bottom:8px;border-color:var(--gold)}.clarifier-map i:nth-child(5){right:15px;bottom:15px}.clarifier-map span,.clarifier-map b{position:absolute;left:50%;top:50%;width:78px;height:78px;border:1px solid rgba(7,81,125,.2);border-radius:50%;transform:translate(-50%,-50%)}.clarifier-map b{width:112px;height:54px;border-color:rgba(201,162,74,.38);transform:translate(-50%,-50%) rotate(35deg)}
.build-screen{width:200px;height:105px;border:1px solid rgba(7,81,125,.25);border-radius:7px;background:rgba(255,255,255,.92);box-shadow:0 12px 24px rgba(7,45,75,.08);padding:10px 12px}
.build-top{display:flex;gap:5px;padding-bottom:8px;border-bottom:1px solid var(--line)}.build-top i{width:5px;height:5px;background:var(--gold);border-radius:50%}
.build-layout{display:grid;grid-template-columns:42px 1fr;gap:9px;margin-top:10px}.build-layout>b{height:48px;background:var(--blue);opacity:.92;border-radius:2px}.build-layout span{display:flex;flex-direction:column;gap:6px;padding-top:2px}.build-layout span i{display:block;height:5px;background:#dce5eb;border-radius:4px}.build-layout span i:nth-child(2){width:75%;background:rgba(201,162,74,.75)}.build-button{position:absolute;width:28px;height:9px;left:calc(50% + 52px);bottom:39px;background:var(--gold);border-radius:2px}
.ia-network{position:relative;width:190px;height:112px}.ia-network:before,.ia-network:after{content:"";position:absolute;left:50%;top:50%;width:155px;height:1px;background:var(--blue);opacity:.4;transform:translate(-50%,-50%) rotate(30deg)}.ia-network:after{transform:translate(-50%,-50%) rotate(-30deg);background:var(--gold)}.ia-network i:nth-child(1){left:10px;top:13px}.ia-network i:nth-child(2){right:15px;top:9px;border-color:var(--gold)}.ia-network i:nth-child(3){left:5px;bottom:13px;border-color:var(--gold)}.ia-network i:nth-child(4){right:8px;bottom:15px}.ia-network i:nth-child(5){left:50%;top:3px;transform:translateX(-50%)}.ia-network i:nth-child(6){left:50%;bottom:2px;transform:translateX(-50%);border-color:var(--gold)}.ia-network span{position:absolute;left:50%;top:50%;width:70px;height:70px;border:1px solid rgba(7,81,125,.25);border-radius:50%;transform:translate(-50%,-50%);background:rgba(255,255,255,.72)}.ia-network b{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);z-index:2;color:var(--blue);font:600 18px 'DM Sans',sans-serif}
@media(max-width:760px){.service-visual{height:145px;flex-basis:145px}.service-content{padding:20px}}
@media(prefers-reduced-motion:reduce){.service-visual>div:not(.visual-caption){transition:none}}

/* v13 : coordonnées complètes, footer multi-sites et capsule Labo Tech */
.contact{display:grid;grid-template-columns:minmax(230px,.85fr) minmax(0,1.15fr);align-items:start;gap:clamp(28px,6vw,80px);background:#fff}
.contact-intro h2{max-width:480px}
.contact-role{display:inline-block;margin-top:24px;padding:7px 12px;border-left:2px solid var(--gold);background:#fff;color:var(--ink);font-size:12px;font-weight:600;letter-spacing:.04em}
.contact-details{display:grid;grid-template-columns:1fr;gap:10px;width:100%}
.contact-item{display:grid;grid-template-columns:42px minmax(0,1fr) 20px;align-items:center;gap:14px;padding:15px 17px;border:1px solid var(--line);border-radius:6px;background:#fff;transition:border-color .2s,transform .2s}
.contact-item:hover{border-color:var(--gold);transform:translateX(3px)}
.contact-icon{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:4px;background:rgba(7,81,125,.06);color:var(--ink)}
.contact-icon svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.6;stroke-linecap:round;stroke-linejoin:round}
.contact-item strong,.contact-item small{display:block}.contact-item strong{font-size:13px;color:var(--ink)}.contact-item small{margin-top:2px;font-size:12px;color:var(--muted);overflow-wrap:anywhere}.contact-arrow{color:var(--gold);font-size:18px;text-align:right}
.site-footer{display:block;padding:34px clamp(22px,8vw,132px) 20px;border-top:1px solid var(--line);background:#fff;color:var(--muted)}
.footer-main{display:grid;grid-template-columns:minmax(150px,.7fr) minmax(0,3fr);gap:30px;align-items:start}
.footer-brand{width:max-content}.footer-nav{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:12px clamp(18px,2vw,30px);font-size:12px}.footer-nav a{transition:color .2s;white-space:nowrap}.footer-nav a:hover{color:var(--gold)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;margin-top:30px;padding-top:17px;border-top:1px solid var(--line);font-size:10px}
.visual-labotech{background:linear-gradient(135deg,#edf3f7,#fff 58%,#f4efe2)}
.lab-screen{width:min(76%,300px);height:112px;border:1px solid rgba(7,81,125,.22);border-radius:7px;background:#fff;box-shadow:0 14px 32px rgba(7,45,75,.09);overflow:hidden}
.lab-screen-top{height:25px;display:flex;align-items:center;justify-content:space-between;padding:0 10px;border-bottom:1px solid var(--line);font-size:8px;letter-spacing:.12em;color:var(--ink);font-weight:700}
.lab-screen-body{display:grid;grid-template-columns:34px 1fr;height:calc(100% - 25px)}.lab-side{display:flex;flex-direction:column;gap:7px;padding:10px 9px;background:#f6f8fa;border-right:1px solid var(--line)}.lab-side i{height:4px;border-radius:3px;background:rgba(7,81,125,.28)}.lab-side i:nth-child(2){width:65%;background:var(--gold)}
.lab-work{position:relative;padding:10px 12px}.lab-work>b{display:block;width:42%;height:7px;border-radius:2px;background:var(--blue);margin-bottom:7px}.lab-work>span{display:block;width:74%;height:4px;border-radius:2px;background:#dce5eb;margin:5px 0}.lab-work>span:last-of-type{width:52%}.lab-nodes{position:absolute;right:10px;bottom:10px;display:flex;align-items:center;gap:5px}.lab-nodes i{width:7px;height:7px;border-radius:50%;background:var(--gold)}.lab-nodes i:nth-child(even){background:var(--blue)}
@media(max-width:800px){.contact{grid-template-columns:1fr;gap:28px}.footer-main{grid-template-columns:1fr;gap:24px}.footer-nav{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 20px}.footer-bottom{flex-direction:column;gap:10px}}

@media(min-width:801px) and (max-width:1100px){.footer-nav{grid-template-columns:repeat(4,minmax(0,1fr));gap:14px 20px}}
/* Language selector */
.language-switch{display:flex;align-items:center;gap:3px;border:1px solid var(--line);border-radius:4px;padding:3px;background:#fff;flex-shrink:0}
.language-switch button{font:600 10px 'DM Sans',sans-serif;color:var(--muted);background:transparent;border:0;border-radius:2px;padding:6px 7px;cursor:pointer;line-height:1.2}
.language-switch button[aria-pressed="true"]{background:var(--ink);color:#fff}
.language-switch button:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
@media(max-width:800px){.language-switch{margin-left:auto;margin-right:8px}.menu-toggle{margin-left:0;margin-right:0}.site-header{gap:8px}.language-switch button{padding:6px 5px}}
html[dir="rtl"] body{font-family:'DM Sans',Arial,sans-serif}
html[dir="rtl"] .site-header{direction:rtl}
html[dir="rtl"] .hero{direction:rtl}
html[dir="rtl"] .hero-copy,html[dir="rtl"] .intro-content,html[dir="rtl"] .section-head,html[dir="rtl"] .service-content,html[dir="rtl"] .project-content,html[dir="rtl"] .contact-intro,html[dir="rtl"] .contact-item{text-align:right}
html[dir="rtl"] .hero-actions,html[dir="rtl"] .proof{direction:rtl}
html[dir="rtl"] .art-panel{direction:rtl;text-align:right}
html[dir="rtl"] .art-stamp{right:auto;left:-22px}
html[dir="rtl"] .art-caption{left:110px;right:30px}
html[dir="rtl"] .code-lines b{margin-right:0;margin-left:12px}
html[dir="rtl"] .contact{direction:rtl}
html[dir="rtl"] .contact-item{flex-direction:row}
html[dir="rtl"] .footer-main,html[dir="rtl"] .footer-nav,html[dir="rtl"] .footer-bottom{direction:rtl}
html[dir="rtl"] .footer-bottom{flex-direction:row}
html[dir="rtl"] .project-content,html[dir="rtl"] .service-content{direction:rtl}
html[dir="rtl"] .section-index{letter-spacing:0}
@media(max-width:800px){html[dir="rtl"] .menu-toggle{margin-right:0;margin-left:0}html[dir="rtl"] .footer-bottom{flex-direction:column}}

/* v18 — projets officiels : visuels pleine largeur et contenu demandé */
.project{padding:0;align-items:stretch;overflow:hidden}
.project-visual{width:100%;height:190px;flex:0 0 190px;padding:0;overflow:hidden;background:#fff}
.project-visual img{display:block;width:100%;height:100%;object-fit:cover;object-position:center}
.project-visual.project-visual-nour{background:#fff}
.project-visual.project-visual-nour img{object-fit:contain;padding:8px}
.project-content{padding:23px 25px 25px;min-height:220px;width:100%;align-items:flex-start}
.project-content h3{margin:14px 0 9px}
.project-content p{margin:0 0 18px}
.project-content a{margin-top:auto;padding-top:12px}
@media(max-width:760px){.project-visual{height:180px;flex-basis:180px}.project-content{min-height:unset}}

/* Header refinement v18: language selector occupies the far-right slot after removing duplicate contact CTA. */
.site-header .language-switch{margin-left:auto}

/* v19 visual identity refinement: blue header, secondary consultant identity, and illustrated about section */
.site-header{background:#07517D;border-bottom:1px solid rgba(255,255,255,.16);color:#fff;gap:clamp(24px,4vw,64px)}
.site-header .brand{flex:0 0 auto}
.site-header .brand>span{color:#fff;font-size:32px;letter-spacing:.1em}
.site-header .brand .dot{color:#C9A24A}
.site-header .brand small{display:none}
.site-header .nav-links{margin-left:auto;gap:clamp(24px,4vw,58px);font-size:14px;color:#fff;white-space:nowrap}
.site-header .nav-links a:hover{color:#C9A24A}
.site-header .language-switch{margin-left:clamp(20px,3vw,48px);flex:0 0 auto}
.site-header .language-switch button{color:#fff;border-color:rgba(255,255,255,.28)}
.site-header .language-switch button[aria-pressed="true"]{background:#C9A24A;border-color:#C9A24A;color:#fff}
.site-header .menu-toggle{color:#fff}
.identity-strip{min-height:72px;display:flex;align-items:center;justify-content:center;gap:18px;padding:14px 24px;background:#fff;border-bottom:1px solid #e2e9ed;color:#07517D;text-align:center}
.identity-name{font-family:'DM Sans',sans-serif;font-size:12px;font-weight:700;letter-spacing:.24em}
.identity-role{display:inline-flex;align-items:center;min-height:28px;padding:3px 12px;border-left:2px solid #C9A24A;color:#07517D;font-size:12px;font-weight:600;letter-spacing:.08em}
.hero .eyebrow:empty{display:none}
.hero .lead{max-width:590px;color:#435a6b}
.intro{grid-template-columns:minmax(110px,.35fr) minmax(280px,1fr) minmax(300px,1.05fr);align-items:center;gap:clamp(24px,4vw,60px)}
.intro-visual{width:100%;max-width:520px;min-width:0}
.intro-visual svg{display:block;width:100%;height:auto;filter:drop-shadow(0 16px 26px rgba(7,81,125,.07))}
.intro-content{max-width:720px}
@media(max-width:800px){.site-header{gap:10px}.site-header .brand>span{font-size:24px}.site-header .nav-links{margin-left:0;top:72px;background:#07517D;color:#fff;border-bottom-color:rgba(255,255,255,.18)}.site-header .language-switch{margin-left:auto;margin-right:4px}.site-header .language-switch button{padding:6px 5px}.identity-strip{min-height:60px;gap:12px}.identity-name{font-size:10px;letter-spacing:.14em}.identity-role{font-size:11px}.intro{grid-template-columns:1fr;gap:22px}.intro .section-index{grid-row:1}.intro-visual{grid-row:2;max-width:560px}.intro-content{grid-row:3}.menu-toggle{margin-left:0;margin-right:0}}
@media(max-width:430px){.site-header{padding:0 14px}.site-header .brand>span{font-size:20px}.site-header .language-switch{gap:0}.site-header .language-switch button{font-size:10px;padding:5px 4px}.identity-strip{flex-direction:column;gap:4px}.identity-role{border-left:0;border-top:2px solid #C9A24A;padding:3px 8px}}

/* v20 refinement: gold header, visible language controls, balanced about layout */
.site-header{background:#C9A24A;color:#07517D;border-bottom:1px solid rgba(7,81,125,.16);gap:clamp(24px,3vw,52px)}
.site-header .brand>span{color:#07517D}
.site-header .brand .dot{color:#FFFFFF}
.site-header .nav-links{color:#07517D;gap:clamp(22px,2.7vw,46px)}
.site-header .nav-links a:hover{color:#FFFFFF}
.site-header .language-switch{display:flex!important;visibility:visible;opacity:1;margin-left:clamp(18px,2.5vw,42px);gap:4px;background:rgba(255,255,255,.94);border:1px solid rgba(7,81,125,.2);padding:4px;border-radius:5px;flex:0 0 auto}
.site-header .language-switch button{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:30px;color:#07517D;background:transparent;border:0;border-radius:3px;padding:6px 8px;font-size:11px;font-weight:700}
.site-header .language-switch button[aria-pressed="true"]{background:#07517D;color:#FFFFFF;border-color:#07517D}
.site-header .menu-toggle{color:#07517D}
.hero .lead{max-width:560px;color:#435a6b}
.intro{grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;gap:clamp(28px,5vw,76px)}
.intro>.section-index{grid-column:1/-1;grid-row:1;align-self:start;margin-bottom:-8px}
.intro-visual{grid-column:1;grid-row:2;align-self:start;width:100%;max-width:none;min-width:0;margin-top:0}
.intro-visual svg{width:100%;height:auto;filter:drop-shadow(0 16px 26px rgba(7,81,125,.07))}
.intro-content{grid-column:2;grid-row:2;align-self:start;max-width:none}
.intro-content h2{margin-top:0;font-size:clamp(34px,4vw,56px)}
.intro-content p{max-width:650px}
@media(max-width:800px){.site-header{gap:8px}.site-header .language-switch{margin-left:auto;margin-right:4px}.site-header .language-switch button{min-width:28px;padding:5px 5px;font-size:10px}.intro{grid-template-columns:1fr;gap:22px}.intro>.section-index{grid-column:1;grid-row:1;margin-bottom:0}.intro-visual{grid-column:1;grid-row:2;max-width:none}.intro-content{grid-column:1;grid-row:3}.intro-content h2{font-size:clamp(32px,8vw,44px)}}


/* v21 refinement: return to white header and tighten About section spacing */
.site-header{background:rgba(255,255,255,.96);color:var(--ink);border-bottom:1px solid var(--line);backdrop-filter:blur(14px)}
.site-header .brand>span{color:#07517D}
.site-header .brand .dot{color:#C9A24A}
.site-header .nav-links{color:#07517D}
.site-header .nav-links a:hover{color:#C9A24A}
.site-header .language-switch{background:#FFFFFF;border-color:rgba(7,81,125,.18)}
.site-header .language-switch button{color:#07517D}
.site-header .language-switch button[aria-pressed="true"]{background:#C9A24A;color:#FFFFFF;border-color:#C9A24A}
.site-header .menu-toggle{color:#07517D}
.intro{row-gap:24px}
.intro>.section-index{margin-bottom:0}
@media(max-width:800px){.site-header .nav-links{background:#FFFFFF;color:#07517D;border-bottom-color:var(--line)}.intro{row-gap:18px}}


/* v22 — barre identité compacte, fixe et actions de partage */
.identity-strip{position:sticky;top:82px;z-index:9;min-height:52px;height:auto;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:8px clamp(22px,6vw,96px);background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);color:#07517D;text-align:left;backdrop-filter:blur(12px)}
.identity-profile{display:flex;align-items:center;gap:13px;min-width:0}
.identity-name{font-size:11px;letter-spacing:.16em;white-space:nowrap}
.identity-role{min-height:22px;padding:2px 0 2px 11px;font-size:11px;white-space:nowrap}
.identity-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex:0 0 auto}
.identity-card,.identity-share{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:34px;padding:7px 13px;border:1px solid #07517D;border-radius:3px;background:#fff;color:#07517D;font:600 11px 'DM Sans',sans-serif;white-space:nowrap;cursor:pointer;transition:background .18s,color .18s,border-color .18s}
.identity-share{background:#C9A24A;border-color:#C9A24A;color:#fff}
.identity-card:hover{background:#07517D;color:#fff}
.identity-share:hover,.identity-share.is-copied{background:#07517D;border-color:#07517D;color:#fff}
.site-footer .footer-brand,.site-footer .footer-brand:hover,.site-footer .footer-brand:focus{color:#07517D}
.site-footer .footer-brand>span{color:#07517D}
.site-footer .footer-brand .dot{color:#C9A24A}
.site-footer .footer-brand small{color:var(--muted)}
.site-footer .footer-brand:hover>span,.site-footer .footer-brand:focus>span{color:#07517D}
.site-footer .footer-brand:hover .dot,.site-footer .footer-brand:focus .dot{color:#C9A24A}
.site-footer .footer-brand:hover small,.site-footer .footer-brand:focus small{color:var(--muted)}
@media(max-width:800px){.identity-strip{top:72px;min-height:54px;padding:7px 16px;gap:8px}.identity-profile{gap:7px;flex-wrap:wrap}.identity-name{font-size:9px;letter-spacing:.1em}.identity-role{font-size:10px;padding-left:7px;min-height:20px}.identity-actions{gap:6px}.identity-card,.identity-share{font-size:10px;min-height:32px;padding:6px 9px;gap:5px}}
@media(max-width:430px){.identity-strip{align-items:center}.identity-profile{display:flex;flex-direction:column;align-items:flex-start;gap:0}.identity-name{font-size:8px;letter-spacing:.07em}.identity-role{border:0;padding:0;min-height:unset;font-size:9px}.identity-card,.identity-share{font-size:9px;padding:6px 7px}.identity-actions{gap:5px}}


/* Correctifs demandés : sélecteur de langue cliquable et sections bleues */
.site-header {
  isolation: isolate;
}
.site-header .language-switch {
  position: relative;
  z-index: 100;
  pointer-events: auto;
}
.site-header .language-switch button {
  position: relative;
  z-index: 101;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  pointer-events: auto;
  touch-action: manipulation;
}

/* 01 / À PROPOS : fond bleu GELAN à la place du blanc */
.intro {
  background: #07517D !important;
  color: #FFFFFF;
  border-top-color: rgba(255,255,255,.18);
}
.intro > .section-index {
  color: #C9A24A;
}
.intro .intro-content h2 {
  color: #FFFFFF;
}
.intro .intro-content h2 em {
  color: #C9A24A;
}
.intro .intro-content p {
  color: rgba(255,255,255,.84);
}
.intro .intro-content .text-link {
  color: #FFFFFF;
  border-bottom-color: #C9A24A;
}
.intro .intro-content .text-link:hover {
  color: #C9A24A;
}

/* 03 / SÉLECTION : fond bleu GELAN ; cartes blanches pour la lisibilité */
.projects {
  background: #07517D !important;
  color: #FFFFFF;
  border-top-color: rgba(255,255,255,.18);
}
.projects .section-index,
.projects .eyebrow {
  color: #C9A24A;
}
.projects .section-head h2 {
  color: #FFFFFF;
}
.projects .section-head > p {
  color: rgba(255,255,255,.84);
}
.projects .project {
  background: #FFFFFF;
  color: #07517D;
  border-color: rgba(255,255,255,.38);
}
.projects .project h3 {
  color: #07517D;
}
.projects .project p {
  color: #526574;
}
.projects .project a {
  color: #07517D;
  border-bottom: 1px solid #C9A24A;
}
.projects .project a:hover {
  color: #C9A24A;
}
