/* B1 — Les espaces sont dans les titres HTML ; garder le retour naturel visible. */
@media (max-width:600px){
  .presence-v2 .presence-head h2{font-size:clamp(2.65rem,11vw,3.5rem)!important;overflow-wrap:normal}
}

/* B2 — Dégager les titres des scènes sous la barre fixe. */
@media (min-width:601px) and (max-width:900px){
  html{scroll-padding-top:110px}
  .mission-proof-stage{padding-top:114px}
  .mission-gallery .gallery-intro{padding-top:114px!important}
  .immersive-footer .footer-content{padding-top:114px!important}
  .mobile-motion .vision-scene,.mobile-motion .principle-content{padding-top:114px}
  .mobile-motion .control-intro{top:114px}
}
@media (max-width:600px){
  html{scroll-padding-top:92px}
  .mission-proof-stage{padding-top:96px}
  .mission-gallery .gallery-intro{padding-top:96px!important}
  .immersive-footer .footer-content{padding-top:96px!important}
  .mobile-motion .vision-scene,.mobile-motion .principle-content{padding-top:96px}
  .mobile-motion .control-intro{top:96px}
}

/* B3 — La démonstration Gmail occupe la largeur du téléphone. */
@media (max-width:600px){
  .manifesto{height:360svh!important}
  .mac-device{left:2%;width:96%;height:51%}
  .gmail-sidebar{display:none}
  .gmail-body{grid-template-columns:minmax(0,1fr)}
  .mail-subject h3{font-size:13px!important;line-height:1.25!important}
}

/* B4 — Les liens du pied de page suivent la même grille à gauche. */
@media (max-width:600px){
  .immersive-footer .footer-legal{width:100%;font-size:12px;letter-spacing:0;gap:1rem}
  .immersive-footer .footer-legal nav{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem 1rem;width:100%}
  .footer-legal .language-switch{margin-left:0;justify-self:start}
  .footer-legal>span{font-size:12px;line-height:1.5}
}

/* B5 — Texte sombre sur le fond clair du dialogue. */
.editorial-detail #follow-mission{color:#243328}
.contact-dialog-v1 .privacy-check{color:#405344!important}

/* A1 — Petits textes utiles et gris pâles. */
#contact-detail :is(textarea,input)::placeholder{color:#586b5b}
#contact-detail #contact-feedback{color:#506554}
.contact-more summary span{color:#526354}
@media (max-width:600px){
  .section-label,.eyebrow,.footer-navigation a,.footer-legal a,.footer-legal .language-switch,
  .mission-intent .section-label,.contact-more summary span,.contact-dialog-v1 .privacy-check span,
  .contact-dialog-v1 #contact-feedback{font-size:12px!important}
  .contact-dialog-v1 label,.contact-more summary{font-size:12px!important}
  .closing-action small,.presence-bottom small,.footer-baseline,.tool-tabs button small{font-size:11px}
  .method-foot,.control-caption,.tool-list li,.action-list li,.field>span,.source-link{font-size:12px}
}

/* A6 — Le film et son poster couvrent le Hero sous le voile. */
@media (max-width:600px) and (prefers-reduced-motion:no-preference){
  #film,.stage>.poster{inset:0;width:100%;height:100%;aspect-ratio:auto;object-fit:cover;object-position:62% center}
  .veil{background:linear-gradient(90deg,#070b0ce0 0%,#080c0da6 46%,#080c0d45 100%),linear-gradient(0deg,#090c0cdd,transparent 31%,transparent 82%,#080a0b88)}
}

/* T2 — La barre libère les titres au défilement et reste lisible au retour. */
@media (max-width:900px){
  .masthead{transition:transform .3s ease,background .25s}
  .masthead.is-hidden{transform:translateY(-100%)}
  .masthead.is-solid{background:#0d1111f2}
}
@media (max-width:900px) and (prefers-reduced-motion:reduce){
  .masthead{transition:none}
}

/* T3 — L'en-tête Telegram garde sa largeur disponible sur tablette. */
@media (min-width:601px) and (max-width:900px){
  .telegram-window .tg-conversation>header{min-width:0}
  .telegram-window .tg-conversation>header>div{min-width:0;flex:1}
  .telegram-window .tg-conversation>header :is(strong,p){display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .telegram-window .tg-conversation>header nav{flex:none;white-space:nowrap}
}

/* T4 — Contraste des textes utiles sur leurs fonds. */
#mission-contact span{color:#fff}
.closing-action,.method-primary{background:#c4452a}
.closing-action>small{color:#fff}
.mission-stories .story-heading>.section-label,
.mission-stories .story-heading>div>p,
.mission-stories .archive-number,
.mission-stories #story-number{color:#4e574f}
.mission-stories .archive-index button[aria-pressed=true]{color:#92301e}
.mission-gallery .case-opportunity .case-kicker,
.mission-gallery .case-people .case-kicker,
.mission-gallery .case-opportunity .case-flow span,
.mission-gallery .case-people .case-flow span,
.mission-gallery .case-opportunity .case-link span,
.mission-gallery .case-people .case-link span{color:#ff947d}
.mission-gallery .case-documents .case-kicker,
.mission-gallery .case-content .case-kicker,
.mission-gallery .case-documents .case-flow span,
.mission-gallery .case-content .case-flow span,
.mission-gallery .case-documents .case-link span,
.mission-gallery .case-content .case-link span{color:#962c22}
.mission-gallery .candidate b{color:#962c22}
.mission-gallery .case-head,.mission-gallery .case-flow small{opacity:1}
.tool-tabs button small,.tool-tabs button>span:first-child,.ai-model>small,
.explorer-heading span{color:#62605a}
.tool-tabs button[aria-selected=true] small{color:#c5c1b9}
.tool-tabs button[aria-selected=true]>span:first-child{color:#ff947d}
.territory-register small,.territory-mode,.territory-register p,
.presence-v2 .presence-head>p:last-child,.presence-bottom p{color:#535e55!important}

/* T5 — Corps de texte et libellés utiles lisibles sur téléphone. */
@media (max-width:600px){
  .ai-model p{font-size:11px;white-space:normal;line-height:1.2}
  .ai-model>small,.tool-tabs button>span:first-child{font-size:9px}
  .explorer-heading p,.explorer-heading span,.panel-intro>span,.connected-tools>span,
  .tool-explorer>small{font-size:11px;line-height:1.25}
  .tool-tabs button small{font-size:11px}
  .ai-grid .ai-model:nth-child(n){grid-template-columns:31px minmax(0,1fr) 9px;min-height:86px;height:auto}
  .case-kicker,.case-head span,.case-head span:last-child,.case-flow small{font-size:11px;line-height:1.3}
  .case-head{gap:8px}
  .case-head span{min-width:0;overflow-wrap:anywhere}
  .mission-stories .story-prompt,.story-deliverables li,
  .mission-intent .section-label,.diagnostic-entry small{font-size:11px;line-height:1.3}
  .story-deliverables li{white-space:normal}
  .method-steps article small,.territory-register small,
  .closing-action>span,.presence-bottom p{font-size:12px}
  .stage-bottom .scroll-cue,.masthead #menu-toggle>span{font-size:11px}
}

/* T11 — La ligne centrale ne traverse pas le titre sur tablette et téléphone. */
@media (max-width:900px){
  .gallery-question .agent-core i:nth-child(2){display:none}
}

/* T11 — Les codes des territoires restent lisibles sur téléphone. */
@media (max-width:600px){
  .territory-code{font-size:11px}
}
