/* Adjustments requested in the desktop and mobile review, 28 September 2026. */
.site-nav a{font-size:clamp(.91rem,1vw,1rem)}
.site-nav .nav-contact{display:none}
.page-accueil .mockup-home-continuum{background:none}
.page-accueil .mockup-home-continuum>.hero,
.page-expertises .hero.compact,.page-equipe .hero.compact,
.page-references .hero.compact,.page-contact .hero.compact{
  position:relative;isolation:isolate;overflow:hidden;
  background-image:linear-gradient(90deg,#fffffff5 0%,#ffffffdc 40%,#ffffff83 69%,#ffffff33 100%),url('assets/hero-approved.png');
  background-size:cover;background-position:center 52%;background-repeat:no-repeat;
}

.page-accueil .mockup-home-continuum>.hero:after,
.page-expertises .hero.compact:after,.page-equipe .hero.compact:after,
.page-references .hero.compact:after,.page-contact .hero.compact:after{display:none}
.page-accueil .mockup-home-continuum>.hero{min-height:345px}
.page-accueil .mockup-home-continuum>.hero .shell{width:min(100% - 3rem,1160px)}
.page-accueil .mockup-home-continuum>.home-expertises,
.page-accueil .mockup-home-continuum>.about-band{background:#fbfaf7}
.page-accueil .mockup-home-continuum>.about-band{background:#f1f3f5}
.page-accueil .home-expertises .shell,.page-accueil .about-band .shell,
.page-accueil .home-references .shell,.page-accueil .trust .shell{width:min(100% - 3rem,1160px)}
.page-accueil .home-expertises .section-heading{margin-left:0}
.page-accueil .home-expertises .eyebrow,.page-accueil .about-band .eyebrow,
.page-accueil .home-references .eyebrow{font-size:1rem}
.page-accueil .home-expertises .section-heading h2,
.page-accueil .about-band h2,.page-accueil .home-references .section-heading h2{font-size:clamp(1.7rem,2.5vw,2.6rem)}
.page-expertises .hero-copy,.page-references .hero-copy,.page-contact .hero-copy,.page-equipe .hero-copy{max-width:690px}
.page-expertises .hero p,.page-references .hero p,.page-contact .hero p,.page-equipe .hero p{max-width:610px}
.page-equipe .about-layout{grid-template-columns:minmax(0,370px) minmax(0,1fr);align-items:start}
.page-equipe .section{padding-block:2.3rem}
.page-equipe .mockup-julien-portrait{width:100%;height:auto;aspect-ratio:450/729;background-size:227.556% 210.700%}
.page-equipe .founder .years{margin:.7rem 0}
.page-equipe .experience-list article{padding:.6rem 0}
.page-equipe .soft{padding:1.5rem 0;border-top:0}
.page-equipe .manifesto{padding:1.2rem 0}
.page-equipe .manifesto:after{content:'';display:block;width:54px;height:3px;margin:1.4rem auto 0;background:var(--orange)}
.form-note:empty{display:none}

/* Reference sheets: the approved left number and photo, with real copy. */
.validated-reference-list{display:grid;gap:1.15rem}
.reference-entry{display:grid;grid-template-columns:85px minmax(180px,28%) minmax(0,1fr);gap:1.4rem;align-items:stretch;background:#fff;border:1px solid #dce3eb;border-radius:7px;padding:1.2rem;box-shadow:0 3px 14px #08295a0a;min-width:0}
.reference-number{font:800 3.2rem/1 Manrope,sans-serif;color:#cfd4e2;display:flex;flex-direction:column;gap:.7rem}
.reference-number span{width:38px;height:4px;background:var(--orange)}
.reference-number small{font:800 .86rem/1.35 'DM Sans',sans-serif;text-transform:uppercase;color:#143b85}
.reference-photo{width:100%;height:100%;min-height:240px;max-height:385px;object-fit:cover;border-radius:5px}
.reference-detail{min-width:0}
.reference-detail summary{list-style:none;cursor:default}
.reference-detail summary::-webkit-details-marker{display:none}
.reference-detail h2{font-size:clamp(1.35rem,2vw,2rem);color:#173a84;margin:0 0 .35rem}
.reference-client{font-size:.82rem;font-weight:700;letter-spacing:.13em;text-transform:uppercase;color:#31529b;margin:0 0 .8rem}
.reference-tags{display:none}
.reference-expand{display:none}
.reference-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.4rem;border-top:1px solid #dce3eb;padding-top:.9rem}
.reference-body section+section{border-left:1px solid #dce3eb;padding-left:1.4rem}
.reference-body h3{font:800 1.05rem/1.25 'DM Sans',sans-serif;color:#173a84;margin-bottom:.55rem}
.reference-body h3:before{content:'';display:inline-block;width:31px;height:4px;background:var(--orange);vertical-align:middle;margin-right:.6rem}
.reference-body p,.reference-body li{font-size:.94rem;line-height:1.48;color:#173a84}
.reference-body ul{padding-left:1.1rem;margin:0}
.reference-body li{padding-left:.15rem;margin-bottom:.35rem}
.reference-body li::marker{color:var(--orange)}

@media(max-width:1000px){
  .site-nav{gap:.85rem}.site-nav a{font-size:.84rem}
  .reference-entry{grid-template-columns:65px minmax(160px,30%) minmax(0,1fr);gap:1rem}
  .reference-body{grid-template-columns:1fr;gap:.7rem}
  .reference-body section+section{border-left:0;border-top:1px solid #dce3eb;padding:1rem 0 0}
}
@media(max-width:700px){
  .site-nav .nav-contact{display:block}
  .page-accueil .mockup-home-continuum>.hero,
  .page-expertises .hero.compact,.page-equipe .hero.compact,
  .page-references .hero.compact,.page-contact .hero.compact{
    min-height:0;height:auto;background-image:none;background:#f7f8fa;
  }
  .page-accueil .mockup-home-continuum>.hero{padding-bottom:135px}
  .page-accueil .mockup-home-continuum>.hero:before{content:'';position:absolute;inset:auto 0 0;height:135px;background:url('assets/hero-approved.png') right 55%/cover no-repeat;z-index:0}
  .page-expertises .hero.compact:after,.page-equipe .hero.compact:after,
  .page-references .hero.compact:after,.page-contact .hero.compact:after{display:none}
  .hero.compact .shell{padding:1.5rem 0 1.7rem}
  .hero.compact .hero-copy{max-width:none}
  .hero.compact h1{font-size:clamp(1.8rem,7vw,2.5rem);line-height:1.06;margin-bottom:.7rem}
  .hero.compact p{font-size:1rem;line-height:1.4;max-width:none}
  .page-accueil .mockup-home-continuum>.hero .shell{padding:1.4rem 0 0;width:min(100% - 2rem,560px)}
  .page-accueil .mockup-home-continuum>.hero h1{font-size:clamp(2rem,8vw,3rem)}
  .page-accueil .mockup-home-continuum>.hero p{max-width:none;font-size:1rem;line-height:1.4}
  .page-accueil .home-expertises .shell,.page-accueil .about-band .shell,
  .page-accueil .home-references .shell,.page-accueil .trust .shell{width:min(100% - 2rem,560px)}
  .page-accueil .home-expertises .section-heading{margin-left:0}
  .page-accueil .home-expertises .section-heading h2,.page-accueil .about-band h2,
  .page-accueil .home-references .section-heading h2{font-size:1.5rem}
  .page-expertises .intro-strip{grid-template-columns:repeat(2,1fr);gap:.35rem;padding:.8rem 0}
  .page-expertises .intro-strip a{border:0;background:#fff;border-radius:5px;padding:.55rem .65rem;font-size:.86rem}
  .page-expertises .service-row{display:flex;flex-direction:column;align-items:stretch;gap:.8rem;padding:1.5rem 0}
  .page-expertises .service-title{gap:.75rem;align-items:flex-start}
  .page-expertises .service-title .num{font-size:2.5rem;flex:none}
  .page-expertises .service-title h2{font-size:1.55rem}
  .page-expertises .service-title p{font-size:1rem;line-height:1.42}
  .page-expertises .service-visual{min-height:220px;margin:0;width:100%;order:1}
  .page-expertises .service-details{order:2}
  .page-expertises .service-details li{font-size:.95rem}
  .page-equipe .section{padding:1.5rem 0}
  .page-equipe .about-layout{width:min(100% - 2rem,560px);grid-template-columns:38% minmax(0,1fr);gap:.8rem;align-items:start}
  .page-equipe .mockup-julien-portrait{width:100%;height:auto;aspect-ratio:450/729;background-size:227.556% 210.700%}
  .page-equipe .founder h2{white-space:normal;font-size:1.3rem}
  .page-equipe .founder .lead{font-size:.87rem}
  .page-equipe .years{font-size:2rem}
  .page-equipe .experience-list article{gap:.4rem;padding:.45rem 0}
  .page-equipe .mockup-experience-icon{width:38px;height:40px}
  .page-equipe .experience-list p{font-size:.77rem}
  .page-equipe .manifesto{font-size:1.18rem;padding:.6rem 0}
  .references-section .filter-row{justify-content:flex-start}
  .reference-entry{display:grid;grid-template-columns:1fr;gap:0;padding:0;overflow:hidden}
  .reference-number{display:none}
  .reference-photo{height:190px;min-height:0;max-height:none;border-radius:0;object-fit:cover}
  .reference-detail summary{padding:1rem;display:flex;justify-content:space-between;align-items:center;gap:1rem;cursor:pointer}
  .reference-detail h2{font-size:1.25rem;line-height:1.2}
  .reference-client{font-size:.73rem;margin:0}
  .reference-tags{display:block;margin-top:.4rem;color:#526486;font-size:.76rem;font-weight:700}
  .reference-expand{display:grid;place-items:center;flex:none;width:34px;height:34px;border:1px solid #183c83;border-radius:50%;font-size:1.55rem;line-height:1;transition:transform .2s}
  .reference-detail[open] .reference-expand{transform:rotate(180deg)}
  .reference-detail summary:focus-visible{outline:3px solid var(--orange);outline-offset:-3px}
  .reference-body{display:block;padding:0 1rem 1rem;border:0}
  .reference-body section+section{margin-top:1rem}
  .reference-body p,.reference-body li{font-size:.95rem}
  .home-references .home-carousel{display:block}
  .home-references .carousel-arrow{display:none}
  .home-references .home-carousel-items{display:flex;gap:.75rem;overflow-x:auto;overflow-y:hidden;scroll-snap-type:x mandatory;overscroll-behavior-inline:contain;-webkit-overflow-scrolling:touch;padding:.25rem 1px .75rem;scrollbar-width:thin}
  .home-references .home-ref-card,.home-references .home-ref-card:nth-child(n){display:flex;flex:0 0 84%;scroll-snap-align:start}
  .home-references .home-carousel-footer{margin:.3rem 0 0}
  .home-references .home-ref-all{font-size:.82rem}
}

/* Team page: consistent portraits and a stacked reading order on phones. */
.page-equipe .team-section{padding-block:2.5rem 1rem}
.page-equipe .team-profile{width:min(100% - 3rem,1120px);grid-template-columns:minmax(0,370px) minmax(0,1fr);gap:clamp(2rem,4vw,3rem);align-items:start}
.page-equipe .team-profile+.team-profile{margin-top:3rem;padding-top:3rem;border-top:1px solid #dce3eb}
.page-equipe .team-portrait{display:block;width:100%;height:auto;aspect-ratio:1086/1448;object-fit:cover;object-position:center top;border-radius:9px;box-shadow:0 6px 24px #08295a14}
.page-equipe .team-profile .founder{min-width:0}
.page-equipe .team-profile .founder h2{margin-bottom:1rem}
.page-equipe .team-profile .experience-list article{align-items:center}
.page-equipe .team-icon{display:grid;place-items:center;flex:0 0 54px;width:54px;height:54px;border-radius:50%;background:#f1f4f8;color:#143b85}
.page-equipe .team-icon svg{width:36px;height:36px}
.page-equipe .team-summary{margin:1.1rem 0 0;max-width:620px;font-size:.97rem;line-height:1.5}
@media(max-width:700px){
  .page-equipe .team-section{padding-block:1.5rem .6rem}
  .page-equipe .team-profile{width:min(100% - 2rem,560px);display:flex;flex-direction:column;gap:1.2rem;align-items:stretch}
  .page-equipe .team-profile+.team-profile{margin-top:2.5rem;padding-top:2.5rem}
  .page-equipe .team-profile .mockup-julien-portrait{width:min(78%,280px);max-width:none;margin-inline:auto;height:auto;aspect-ratio:450/729}
  .page-equipe .team-profile .team-portrait{width:min(78%,280px);margin-inline:auto;height:auto;aspect-ratio:1086/1448}
  .page-equipe .team-profile .founder>.eyebrow{font-size:.84rem}
  .page-equipe .team-profile .founder h2{font-size:clamp(1.65rem,6vw,2.1rem);margin-bottom:.8rem}
  .page-equipe .team-profile .founder .lead{font-size:1rem;line-height:1.45}
  .page-equipe .team-profile .years{font-size:2.8rem;margin:1rem 0}
  .page-equipe .team-profile .years span{font-size:.85rem}
  .page-equipe .team-profile .experience-list article{gap:.85rem;padding:.85rem 0}
  .page-equipe .team-profile .experience-list h3{font-size:.9rem}
  .page-equipe .team-profile .experience-list p{font-size:.9rem;line-height:1.4}
  .page-equipe .team-profile .mockup-experience-icon,
  .page-equipe .team-profile .team-icon{flex:0 0 54px;width:54px;height:54px}
  .page-equipe .team-summary{font-size:.95rem}
}

/* Two successive profiles. On desktop, copy and photograph share one height. */
.page-equipe .team-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:0}
.page-equipe .team-grid .team-profile{
  display:grid;grid-template-columns:minmax(0,320px) minmax(0,1fr);
  gap:clamp(1.5rem,4vw,3rem);align-items:stretch;
  width:100%;min-height:500px;margin:0;padding:0;border:0;
}
.page-equipe .team-grid .team-profile+.team-profile{margin-top:3rem;padding-top:3rem;border-top:1px solid #dce3eb}
.page-equipe .team-grid .mockup-julien-portrait,
.page-equipe .team-grid .team-photo-frame{width:100%;height:500px;min-height:0;aspect-ratio:auto;border-radius:9px;overflow:hidden}
.page-equipe .team-grid .mockup-julien-portrait{
  background-size:227.556% auto;background-position:8.362% 55%;background-repeat:no-repeat;
}
.page-equipe .team-grid .team-portrait{display:block;width:100%;height:100%;max-width:none;aspect-ratio:auto;object-fit:cover;object-position:center top;transform:scale(1.18);transform-origin:center top;border-radius:0}
.page-equipe .team-grid .founder{height:500px;min-width:0;display:flex;flex-direction:column;justify-content:space-between}
.page-equipe .team-grid .founder>.eyebrow{margin-bottom:0}
.page-equipe .team-grid .founder h2{font-size:clamp(1.8rem,2.6vw,2.5rem);margin:0;white-space:normal}
.page-equipe .team-grid .founder .lead{font-size:1.05rem;line-height:1.35;margin:0}
.page-equipe .team-grid .years{font-size:3rem;margin:0}
.page-equipe .team-grid .years span{font-size:.85rem;line-height:1.25}
.page-equipe .team-grid .experience-list{gap:0}
.page-equipe .team-grid .experience-list article{gap:.9rem;padding:.55rem 0;align-items:center}
.page-equipe .team-grid .experience-list h3{font-size:.86rem;line-height:1.2;margin:0}
.page-equipe .team-grid .experience-list h3:after{width:28px;height:2px;margin:.35rem 0}
.page-equipe .team-grid .experience-list p{font-size:.84rem;line-height:1.3;margin:0}
.page-equipe .team-grid .team-icon{flex:0 0 52px;width:52px;height:52px;border-radius:50%;background:#f1f4f8;color:#143b85}
.page-equipe .team-grid .team-icon svg{width:34px;height:34px}
@media(max-width:700px){
  .page-equipe .team-grid{width:min(100% - 2rem,560px)}
  .page-equipe .team-grid .team-profile{display:flex;flex-direction:column;gap:1rem;min-height:0}
  .page-equipe .team-grid .team-profile+.team-profile{margin-top:2.5rem;padding-top:2.5rem}
  .page-equipe .team-grid .mockup-julien-portrait,
  .page-equipe .team-grid .team-photo-frame{width:min(100%,300px);height:355px;flex:none;margin-inline:auto}
  .page-equipe .team-grid .mockup-julien-portrait{background-position:8.362% 46%}
  .page-equipe .team-grid .founder{height:auto;display:block}
  .page-equipe .team-grid .founder>.eyebrow{margin-bottom:.45rem}
  .page-equipe .team-grid .founder h2{font-size:1.85rem;margin-bottom:.7rem}
  .page-equipe .team-grid .founder .lead{font-size:1rem;margin-bottom:.7rem}
  .page-equipe .team-grid .years{font-size:2.7rem;margin:.7rem 0}
  .page-equipe .team-grid .years span{font-size:.8rem}
  .page-equipe .team-grid .experience-list article{gap:.75rem;padding:.65rem 0}
  .page-equipe .team-grid .experience-list h3{font-size:.82rem}
  .page-equipe .team-grid .experience-list p{font-size:.84rem}
}
