:root {
  --navy: #071728;
  --navy-2: #0c2238;
  --ink: #102234;
  --muted: #5d6a75;
  --paper: #f5f7f8;
  --white: #ffffff;
  --coral: #f06d4f;
  --coral-dark: #d8563b;
  --interaction-red: #f00018;
  --accent-deep: #174b63;
  --accent-deep-hover: #20647f;
  --line: rgba(16, 34, 52, .14);
  --max: 1240px;
}

* { box-sizing: border-box; }
html { scroll-behavior: smooth; }
body { margin: 0; background: var(--paper); color: var(--ink); font-family: Inter, ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif; font-size: 16px; line-height: 1.65; }
a { color: inherit; text-decoration: none; }
button, input, textarea { font: inherit; }
.site-header { position: sticky; z-index: 50; top: 0; min-height: 82px; padding: 0 max(24px, calc((100vw - var(--max))/2)); display: flex; align-items: center; justify-content: space-between; gap: 28px; background: rgba(245,247,248,.94); border-bottom: 1px solid var(--line); backdrop-filter: blur(16px); }
.brand { display:flex; align-items:center; min-width:220px; }
.brand-logo { display:block; width:220px; max-height:62px; object-fit:contain; }
.brand small { display:block; margin-top:7px; color:var(--muted); font-size:.68rem; line-height:1.2; letter-spacing:.08em; text-transform:uppercase; }
.main-nav { display: flex; align-items: center; justify-content: flex-end; gap: 21px; font-size: .86rem; font-weight: 650; }
.main-nav a { position: relative; padding: 29px 0 25px; white-space: nowrap; }
.main-nav a::after { content:""; position:absolute; left:0; right:100%; bottom:20px; height:2px; background:var(--coral); transition:right .2s ease; }
.main-nav a:hover::after, .main-nav a.active::after { right:0; }
.main-nav .nav-contact { padding: 10px 15px; border: 1px solid var(--ink); }
.main-nav .nav-contact::after { display:none; }
.main-nav .nav-contact:hover { background: var(--ink); color:var(--white); }
.main-nav .nav-legal { display:none; }
.header-controls { display:flex; align-items:center; gap:10px; order:3; }
.search-toggle { min-height:38px; padding:8px 11px; display:inline-flex; align-items:center; gap:6px; cursor:pointer; color:var(--navy); border:1px solid rgba(7,23,40,.32); background:rgba(255,255,255,.7); font:inherit; font-size:.8rem; font-weight:800; }
.search-toggle span { color:var(--interaction-red); font-size:1.25rem; line-height:.7; }
.search-toggle:hover,.search-toggle:focus-visible { color:var(--white); border-color:var(--navy); background:var(--navy); outline:none; }
.site-search { width:min(760px,calc(100% - 32px)); max-height:min(720px,calc(100vh - 32px)); padding:0; border:0; color:var(--ink); background:var(--paper); box-shadow:0 30px 80px rgba(0,0,0,.35); }
.site-search::backdrop { background:rgba(2,14,26,.72); backdrop-filter:blur(5px); }
.site-search-inner { position:relative; padding:clamp(26px,5vw,48px); }
.site-search-close { position:absolute; top:14px; right:16px; width:40px; height:40px; cursor:pointer; color:var(--navy); border:1px solid var(--line); background:var(--white); font-size:1.6rem; line-height:1; }
.site-search h2 { margin:6px 45px 24px 0; color:var(--navy); font-family:Georgia,serif; font-size:clamp(1.55rem,3vw,2.15rem); line-height:1.15; }
.search-field { display:block; }
.search-field input { width:100%; min-height:56px; padding:13px 16px; color:var(--ink); border:2px solid var(--navy); background:var(--white); font:inherit; font-size:1.05rem; }
.search-field input:focus { border-color:var(--interaction-red); outline:2px solid rgba(240,0,24,.15); outline-offset:2px; }
.search-status { margin:12px 0 16px; color:#52616d; font-size:.9rem; font-weight:700; }
.search-results { display:grid; gap:9px; }
.search-results a { position:relative; padding:15px 92px 15px 17px; display:block; border:1px solid #d7e0e5; border-left:3px solid var(--coral); background:var(--white); }
.search-legal-link { margin-top:20px; display:inline-block; color:var(--muted); font-size:.82rem; font-weight:750; text-decoration:underline; text-underline-offset:3px; }
.search-legal-link:hover,.search-legal-link:focus-visible { color:var(--accent-deep); outline:none; }
.search-results a:hover,.search-results a:focus-visible { border-left-color:var(--interaction-red); background:#eef2f4; outline:none; }
.search-results span { color:var(--accent-deep); font-size:.72rem; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
.search-results strong { margin-top:3px; display:block; color:var(--navy); font-family:Georgia,serif; font-size:1.08rem; line-height:1.2; }
.search-results p { margin:5px 0 0; color:#45535e; font-size:.88rem; line-height:1.4; }
.search-results i { position:absolute; top:50%; right:17px; color:var(--interaction-red); font-size:.78rem; font-weight:850; transform:translateY(-50%); }
.visually-hidden { position:absolute!important; width:1px!important; height:1px!important; padding:0!important; margin:-1px!important; overflow:hidden!important; clip:rect(0,0,0,0)!important; white-space:nowrap!important; border:0!important; }
.menu-toggle { display:none; border:0; background:transparent; font-weight:700; }
.hero { position:relative; min-height: calc(100vh - 82px); padding: clamp(70px, 9vw, 130px) max(24px, calc((100vw - var(--max))/2)); display:grid; grid-template-columns:minmax(0,1.25fr) minmax(340px,.75fr); align-items:center; gap:clamp(50px,8vw,110px); overflow:hidden; color:var(--white); background:var(--navy); }
.hero-grid { position:absolute; inset:0; opacity:.18; background-image:linear-gradient(rgba(255,255,255,.13) 1px,transparent 1px),linear-gradient(90deg,rgba(255,255,255,.13) 1px,transparent 1px); background-size:64px 64px; mask-image:linear-gradient(90deg,transparent,black 45%,black); }
.hero-content,.system-card { position:relative; z-index:1; }
.hero-content > h1 { line-height:1.38; }
.hero-eato-logo { width:min(330px,72vw); max-height:90px; margin-bottom:28px; padding:8px 12px; display:block; object-fit:contain; object-position:left center; background:var(--white); }
.eyebrow,.section-index { margin:0 0 25px; color:var(--coral); font-size:.78rem; font-weight:800; letter-spacing:.17em; text-transform:uppercase; }
h1,h2 { margin:0; font-family: Georgia, "Times New Roman", serif; font-weight:400; line-height:1.2; letter-spacing:-.035em; }
h1 { max-width:880px; font-size:calc(clamp(2rem,3vw,3rem) - 15px); }
h1 em,h2 em { color:var(--coral); font-weight:400; }
.lead { max-width:780px; margin:34px 0 0; color:#cbd4dc; font-size:clamp(1.08rem,1.5vw,1.3rem); line-height:1.65; }
.hero-actions { display:flex; flex-wrap:wrap; gap:14px; margin-top:42px; }
.button { display:inline-flex; min-height:50px; align-items:center; justify-content:center; gap:28px; padding:12px 20px; border:1px solid transparent; font-size:.9rem; font-weight:800; letter-spacing:.015em; transition:.2s ease; }
.button-primary { background:var(--accent-deep); color:var(--white); }
.button-primary:hover { background:var(--accent-deep-hover); transform:translateY(-2px); }
.button-secondary { color:var(--white); border-color:rgba(255,255,255,.5); }
.button-secondary:hover { border-color:var(--white); background:rgba(255,255,255,.08); }
.system-card { padding:42px 38px; border:1px solid rgba(255,255,255,.22); background:rgba(255,255,255,.045); box-shadow:0 30px 80px rgba(0,0,0,.18); }
.system-card > p { margin:0 0 32px; color:#9baab7; font-size:.76rem; letter-spacing:.15em; text-transform:uppercase; }
.system-line { display:grid; gap:7px; }
.system-line span,.system-line .system-dimension { width:100%; padding:12px 14px; border:0; border-left:3px solid var(--coral); color:var(--white); background:rgba(255,255,255,.07); font-family:Georgia,serif; font-size:1.3rem; text-align:left; }
.system-line .system-dimension { display:flex; align-items:center; justify-content:space-between; cursor:pointer; transition:background .18s ease,transform .18s ease; }
.system-line .system-dimension:hover,.system-line .system-dimension:focus-visible { background:rgba(240,109,79,.2); transform:translateX(4px); outline:1px solid rgba(240,109,79,.6); }
.system-line .system-dimension i { color:var(--coral); font-family:Inter,sans-serif; font-size:.9rem; font-style:normal; font-weight:800; }
.system-line b { color:var(--coral); line-height:1; text-align:center; }
.system-card small { display:block; margin-top:28px; color:#cbd4dc; font-size:.9rem; }
.section-shell { max-width:var(--max); margin:0 auto; padding:clamp(75px,10vw,145px) 24px; }
.section-shell h2 { max-width:980px; font-size:calc(clamp(1.75rem,2.35vw,2.3rem) - 15px); }
.reveal > p:not(.section-index) { max-width:800px; margin:36px 0 0; color:var(--muted); font-size:1.16rem; }
.priorities { margin-top:55px; padding:25px 0; display:flex; flex-wrap:wrap; align-items:center; justify-content:space-between; gap:18px; border-top:1px solid var(--ink); border-bottom:1px solid var(--ink); color:var(--navy); font-family:Georgia,serif; font-size:clamp(1.25rem,2vw,1.7rem); }
.priorities i { color:var(--coral); }
.blind-spot-callout { max-width:850px; margin:28px auto 0; padding:16px 20px; display:grid; grid-template-columns:1.1fr .9fr; gap:20px; border-left:4px solid var(--coral); color:var(--white); background:var(--navy); text-decoration:none; box-shadow:0 12px 30px rgba(7,23,40,.12); }
.blind-spot-callout strong { font-family:Georgia,serif; font-size:1.05rem; line-height:1.35; }
.blind-spot-callout span { color:#cad6df; font-size:.9rem; line-height:1.45; }
.blind-spot-callout i { display:block; margin-top:5px; color:var(--coral); font-style:normal; font-weight:850; }
.audiences { display:grid; grid-template-columns:.8fr 1.2fr; gap:clamp(40px,8vw,100px); border-top:1px solid var(--line); }
.audiences h2 { font-size:calc(clamp(1.75rem,2.35vw,2.3rem) - 15px); }
.audience-grid { display:grid; }
.audience-grid a { position:relative; padding:27px 48px 27px 0; display:grid; gap:5px; border-top:1px solid var(--line); }
.audience-grid a:last-child { border-bottom:1px solid var(--line); }
.audience-grid a b { font-size:1.12rem; }
.audience-grid a span { color:var(--muted); }
.audience-grid a i { position:absolute; right:4px; top:50%; color:var(--coral); font-size:1.5rem; transform:translateY(-50%); transition:.2s ease; }
.audience-grid a:hover i { right:0; }
.cta { max-width:none; padding-left:max(24px,calc((100vw - var(--max))/2)); padding-right:max(24px,calc((100vw - var(--max))/2)); display:flex; align-items:flex-end; justify-content:space-between; gap:50px; color:var(--white); background:var(--accent-deep); }
.cta .section-index { color:#ffb6a5; }
.cta h2 { max-width:900px; }
.cta p:not(.section-index) { margin:25px 0 0; font-size:1.1rem; }
.button-light { flex:0 0 auto; min-width:180px; color:var(--navy); background:var(--white); }
.button-light:hover { transform:translateY(-2px); }
.site-footer { min-height:170px; padding:45px max(24px,calc((100vw - var(--max))/2)); display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:50px; color:#aebac4; background:#04101c; font-size:.86rem; }
.site-footer div { display:grid; }
.site-footer b { color:var(--white); font-size:1.1rem; letter-spacing:.15em; }
.site-footer a { color:var(--white); border-bottom:1px solid var(--coral); }
.footer-links { display:grid; justify-items:end; gap:5px; }
.language-switch { position:relative; z-index:49; top:auto; right:auto; width:100%; min-height:36px; padding:5px max(18px,calc((100vw - var(--max))/2)); display:flex; align-items:center; justify-content:center; gap:9px; color:rgba(255,255,255,.78); border:0; border-bottom:1px solid rgba(255,255,255,.18); background:#24323f; font-size:.78rem; font-weight:850; letter-spacing:.06em; }
.language-switch a:hover,.language-switch a:focus-visible,.language-switch a.active { color:#fff; text-decoration:underline; text-decoration-color:var(--interaction-red); text-underline-offset:4px; outline:none; }
.language-switch .language-pending { opacity:.48; cursor:default; }
.result-panel [hidden] { display:none!important; }
@media (max-width: 1280px) {
  .menu-toggle { display:block; cursor:pointer; }
  .main-nav { position:absolute; top:82px; left:0; right:0; padding:20px 24px 30px; display:none; align-items:flex-start; flex-direction:column; gap:0; background:var(--paper); border-bottom:1px solid var(--line); box-shadow:0 18px 30px rgba(0,0,0,.08); }
  .main-nav.open { display:flex; }
  .main-nav a { width:100%; padding:11px 0; }
  .main-nav a::after { display:none; }
  .main-nav .nav-contact { width:auto; margin-top:10px; padding:9px 14px; }
  .main-nav .nav-legal { width:auto; margin-top:12px; padding:8px 0 2px; display:block; color:var(--muted); border-top:1px solid var(--line); font-size:.78rem; }
}
@media (max-width: 820px) {
  .hero { min-height:auto; grid-template-columns:1fr; }
  .system-card { max-width:560px; }
  .audiences { grid-template-columns:1fr; }
  .cta { align-items:flex-start; flex-direction:column; }
  .site-footer { grid-template-columns:1fr; gap:20px; }
}
@media (max-width: 560px) {
  .site-header { min-height:72px; }
  .brand small { display:none; }
  .main-nav { top:72px; }
  .hero { padding-top:80px; padding-bottom:80px; }
  h1 { font-size:calc(2.25rem - 15px); }
  .hero-actions,.button { width:100%; }
  .priorities { justify-content:flex-start; }
  .system-card { padding:30px 24px; }
  .language-switch { top:auto; right:auto; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior:auto; } *,*::before,*::after { transition:none !important; } }

/* Inner pages */
.page-hero { padding:clamp(72px,9vw,125px) max(24px,calc((100vw - var(--max))/2)); color:var(--white); background:var(--navy); }
.page-hero .eyebrow { margin-bottom:18px; }
.page-hero h1 { max-width:1100px; font-size:calc(clamp(1.95rem,2.8vw,2.75rem) - 15px); }
.page-hero p:last-child { max-width:820px; margin:28px 0 0; color:#cbd4dc; font-size:1.18rem; }
.content-section { max-width:var(--max); margin:0 auto; padding:clamp(65px,8vw,115px) 24px; }
.content-section + .content-section { border-top:1px solid var(--line); }
.content-section h2 { max-width:1000px; font-size:calc(clamp(1.7rem,2.3vw,2.25rem) - 15px); }
.content-section .intro { max-width:820px; margin:28px 0 0; color:var(--muted); font-size:1.12rem; }
.card-grid { margin-top:45px; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.card { min-height:220px; padding:28px; border:1px solid var(--line); background:var(--white); }
.card .number { color:var(--coral); font-size:.75rem; font-weight:800; letter-spacing:.13em; }
.card h3 { margin:28px 0 10px; font-family:Georgia,serif; font-size:1.45rem; font-weight:400; line-height:1.2; }
.card p { margin:0; color:var(--muted); }
.feature-list { margin:45px 0 0; padding:0; list-style:none; display:grid; grid-template-columns:1fr 1fr; gap:0 55px; }
.feature-list li { padding:18px 0; border-top:1px solid var(--line); font-size:1.04rem; }
.feature-list li::before { content:'→'; margin-right:14px; color:var(--coral); font-weight:800; }
.quote-band { padding:70px max(24px,calc((100vw - var(--max))/2)); color:var(--white); background:linear-gradient(100deg,#12394f,var(--accent-deep)); }
.quote-band blockquote { max-width:1050px; margin:0; font-family:Georgia,serif; font-size:calc(clamp(1.8rem,2.8vw,2.8rem) - 15px); line-height:1.25; }
.audience-detail { scroll-margin-top:100px; }
.audience-detail header { display:grid; grid-template-columns:.45fr 1.55fr; gap:40px; }
.audience-detail h2 { font-size:calc(clamp(1.7rem,2.3vw,2.25rem) - 15px); }
.audience-detail .role { color:var(--coral); font-weight:800; letter-spacing:.12em; text-transform:uppercase; }
.document-grid { margin-top:42px; display:grid; grid-template-columns:repeat(3,1fr); gap:18px; }
.document-slot { min-height:190px; padding:28px; display:flex; flex-direction:column; justify-content:space-between; border:1px dashed rgba(16,34,52,.3); background:rgba(255,255,255,.55); }
.document-slot span { color:var(--muted); }
.document-slot b { font-family:Georgia,serif; font-size:1.35rem; font-weight:400; }

/* Organisations */
.organisations-hero { padding-bottom:clamp(58px,7vw,92px); }
.organisations-section { padding-top:clamp(52px,6.5vw,84px); }
.organisations-disclaimer { max-width:920px; margin:0; padding:0 0 clamp(45px,6vw,74px); color:var(--muted); font-size:1rem; line-height:1.65; }
.organisations-intro { padding-top:clamp(38px,5vw,62px); border-top:1px solid var(--line); }
.organisations-intro .section-index { margin-bottom:18px; }
.organisations-intro h2 { max-width:790px; }
.logo-groups { margin-top:clamp(45px,6vw,72px); }
.logo-group { padding:32px 0; display:grid; grid-template-columns:minmax(150px,.23fr) minmax(0,1fr); gap:34px; border-top:1px solid var(--line); }
.logo-group:last-child { border-bottom:1px solid var(--line); }
.logo-group > h3 { margin:10px 0 0; color:var(--navy); font-family:Georgia,serif; font-size:1.24rem; font-weight:400; line-height:1.2; }
.logo-row { display:grid; grid-template-columns:repeat(auto-fit,minmax(112px,1fr)); align-items:center; gap:18px 24px; }
.org-logo { min-width:0; min-height:78px; margin:0; padding:8px 4px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:4px; background:transparent; text-align:center; transition:transform .18s ease,opacity .18s ease; }
.org-logo:hover { opacity:.72; transform:translateY(-2px); }
.org-logo img { display:block; width:auto; height:auto; max-width:106px; max-height:52px; object-fit:contain; }
.org-logo-wide img { max-width:158px; max-height:52px; }
.org-logo figcaption { color:var(--muted); font-size:.62rem; font-weight:700; line-height:1.15; }
.wordmark { color:var(--navy); font-size:1rem; font-weight:850; letter-spacing:.1em; line-height:1; }
.wordmark-case { text-transform:none; letter-spacing:.04em; }
.logo-disclaimer { max-width:860px; margin:30px 0 0; color:var(--muted); font-size:.82rem; }

/* Interactive EATO experience */
.experience { min-height:calc(100vh - 82px); display:grid; grid-template-columns:285px 1fr; color:var(--white); background:var(--navy); }
.experience-nav { position:sticky; top:82px; height:calc(100vh - 82px); padding:25px 27px; display:flex; flex-direction:column; border-right:1px solid rgba(255,255,255,.13); background:#051321; }
.experience-nav .brand { color:var(--white); }
.experience-nav .brand-experience { padding:10px; display:grid; background:var(--white); }
.experience-nav .brand-logo { width:100%; max-height:none; }
.experience-nav .brand small { color:var(--navy); text-align:center; }
.experience-nav nav { margin:auto 0; display:grid; }
.experience-nav nav a { position:relative; padding:9px 12px 9px 18px; color:#9baab7; border-left:2px solid rgba(255,255,255,.12); font-size:.9rem; transition:color .2s ease,background .2s ease,padding .2s ease; }
.experience-nav nav a:hover { color:var(--white); border-color:rgba(240,109,79,.55); }
.experience-nav nav a.active { padding-right:18px; color:var(--white); border-left-color:var(--coral); background:linear-gradient(90deg,rgba(240,109,79,.05),rgba(240,109,79,.17)); font-weight:800; text-align:right; }
.experience-nav > a:last-child { color:#cbd4dc; font-size:.85rem; }
.experience-main section { min-height:calc(100vh - 82px); padding:clamp(70px,10vw,140px) clamp(28px,8vw,120px); display:flex; flex-direction:column; justify-content:center; border-bottom:1px solid rgba(255,255,255,.1); scroll-margin-top:82px; }
.experience-main h1,.experience-main h2 { max-width:1000px; }
.experience-main h1 { font-size:calc(clamp(2rem,3vw,3rem) - 15px); line-height:1.22; }
.experience-main h2 { font-size:calc(clamp(1.8rem,2.55vw,2.5rem) - 15px); line-height:1.27; }
.experience-main .copy { max-width:800px; color:#bdc8d1; font-size:1.12rem; }
.dimension-grid,.change-grid,.not-grid { margin-top:48px; display:grid; grid-template-columns:repeat(2,1fr); gap:14px; }
.dimension,.change,.not-item { padding:26px; border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.04); }
.dimension b { display:block; color:var(--coral); font-family:Georgia,serif; font-size:2.2rem; }
.dimension span,.change span,.not-item span { color:#bdc8d1; }
.flow { margin-top:48px; display:flex; flex-wrap:wrap; gap:12px; align-items:center; }
.flow span { padding:10px 14px; color:var(--white); border:1px solid rgba(255,255,255,.2); }
.flow i { color:var(--coral); font-style:normal; }
.experience-cta { display:flex; flex-wrap:wrap; gap:15px; margin-top:40px; }

/* Diagnostic */
.diagnostic-shell { min-height:calc(100vh - 82px); padding:clamp(55px,7vw,95px) max(24px,calc((100vw - 980px))/2); }
.diagnostic-shell h1 { color:var(--navy); font-size:calc(clamp(1.9rem,2.5vw,2.4rem) - 15px); line-height:1.28; }
.diagnostic-shell .lead { color:var(--muted); }
.profile-picker { margin-top:42px; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.profile-picker button { min-height:100px; padding:18px; cursor:pointer; color:var(--ink); border:1px solid var(--line); background:var(--white); font-weight:750; text-align:left; }
.profile-picker button[aria-pressed="true"] { color:var(--white); border-color:var(--navy); background:var(--navy); box-shadow:inset 0 -4px var(--coral); }
.scale-legend { margin:35px 0 18px; display:flex; justify-content:space-between; gap:18px; color:var(--muted); font-size:.86rem; }
.scale-legend span { color:var(--navy); font-size:1.08rem; font-weight:850; }
.question { margin-top:12px; padding:24px; border:1px solid var(--line); background:var(--white); }
.question p { margin:0 0 18px; font-weight:700; }
.rating { display:grid; grid-template-columns:repeat(6,1fr); gap:8px; }
.rating label { cursor:pointer; }
.rating input { position:absolute; opacity:0; pointer-events:none; }
.rating span { min-height:46px; display:flex; align-items:center; justify-content:center; border:1px solid var(--line); font-weight:800; }
.rating label:first-child span { font-size:.78rem; }
.rating input:checked + span { color:var(--white); border-color:var(--coral-dark); background:var(--coral-dark); }
.diagnostic-actions { margin-top:24px; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.result-panel { --result-tone:#ff7676; margin-top:34px; padding:clamp(24px,3vw,42px); color:var(--white); background:linear-gradient(135deg,#0d3548,#174b63); }
.result-panel[hidden] { display:none; }
.result-heading { margin-bottom:28px; }
.result-panel .result-heading .eyebrow { color:var(--coral); }
.result-panel h2 { margin:4px 0 0; color:var(--white); font-family:Georgia,serif; font-size:clamp(1.75rem,2.7vw,2.65rem); }
.result-layout { display:grid; grid-template-columns:minmax(0,1fr) 250px; gap:28px; align-items:stretch; }
.result-card { padding:28px; border:1px solid rgba(255,255,255,.28); border-left:8px solid var(--result-tone); background:rgba(5,30,43,.32); }
.result-card h3 { margin:0 0 25px; color:var(--result-tone); font:italic 700 clamp(1.45rem,2.3vw,2.15rem)/1.2 Georgia,serif; }
.result-content { display:grid; grid-template-columns:155px minmax(0,1fr); gap:28px; align-items:center; }
.result-score { min-height:126px; display:flex; flex-direction:column; align-items:center; justify-content:center; border:1px solid rgba(255,255,255,.3); }
.result-score strong { color:var(--result-tone); font-size:clamp(2.35rem,4vw,3.65rem); line-height:1; }
.result-score strong small { color:var(--result-tone); font-size:.65em; }
.result-score > span { margin-top:10px; color:#d8e2e7; font-size:.78rem; font-weight:750; text-transform:uppercase; letter-spacing:.06em; }
.result-analysis > p { margin:0; color:var(--white); font-size:1.12rem; font-weight:650; line-height:1.55; }
.result-priorities { margin-top:20px; padding:12px 15px; border-left:3px solid var(--result-tone); background:rgba(255,255,255,.09); }
.result-priorities b { display:block; margin-bottom:3px; color:var(--white); font-size:.82rem; text-transform:uppercase; letter-spacing:.05em; }
.result-priorities p { margin:0; color:var(--white); font-size:1rem; font-weight:750; line-height:1.45; }
.result-next { display:flex; flex-direction:column; justify-content:center; align-items:center; padding:22px; text-align:center; border-left:1px solid rgba(255,255,255,.25); }
.result-next strong { font-size:1.5rem; line-height:1.25; }
.result-next > span { margin:18px 0; color:#69d4ae; font-size:4rem; line-height:1; }
.result-next .button { width:100%; }
.result-actions { margin-top:25px; padding-top:24px; display:flex; gap:14px; align-items:center; border-top:1px solid rgba(255,255,255,.24); }
.result-actions .button-ghost { color:var(--white); border-color:rgba(255,255,255,.42); background:transparent; }
.result-panel[data-level="building"] { --result-tone:#ffc75a; }
.result-panel[data-level="solid"] { --result-tone:#7ce0bd; }

.journey-map { display:grid; grid-template-columns:minmax(280px,.9fr) minmax(0,1.1fr); align-items:center; gap:clamp(40px,7vw,90px); }
.journey-map figure { margin:0; padding:22px; border:1px solid var(--line); background:var(--white); }
.journey-map img { display:block; width:100%; height:auto; }
.journey-map figcaption { margin-top:12px; color:var(--muted); font-size:.82rem; }
.journey-map .intro { margin-top:18px; }
.result-panel p { color:#cbd4dc; }

/* About — compact desktop composition */
.about-page { min-height:calc(100vh - 82px); color:var(--white); background:var(--navy); }
.about-shell { max-width:var(--max); min-height:calc(100vh - 82px); margin:0 auto; padding:clamp(32px,4.5vw,58px) 24px; display:flex; flex-direction:column; justify-content:center; }
.about-introduction { padding:clamp(20px,2.4vw,30px); border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.045); }
.about-introduction .eyebrow { margin-bottom:12px; }
.about-introduction h1 { max-width:1120px; margin:0; font-size:clamp(1.1rem,1.45vw,1.32rem); line-height:1.58; letter-spacing:-.01em; }
.about-grid { margin-top:clamp(24px,3.2vw,40px); display:grid; grid-template-columns:minmax(0,2fr) minmax(0,3fr); align-items:stretch; gap:18px; }
.about-profile,.about-journey { border:1px solid rgba(255,255,255,.16); background:rgba(255,255,255,.045); }
.about-profile { padding:clamp(24px,2.5vw,34px); }
.about-profile .section-index,.about-journey .section-index { margin-bottom:12px; }
.about-profile h2 { color:var(--white); font-size:calc(clamp(1.55rem,2vw,2rem) - 8px); }
.about-copy { margin:18px 0 0; color:#cbd4dc; font-size:.92rem; line-height:1.5; }
.about-positioning-card { position:relative; min-height:112px; margin-top:16px; padding:15px 18px; display:flex; flex-direction:column; justify-content:center; overflow:hidden; cursor:help; border:1px solid rgba(255,255,255,.2); background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.035)); }
.about-positioning-card > span { color:#ffb6a5; font-size:.72rem; font-weight:900; letter-spacing:.09em; }
.about-positioning-card h3 { margin:7px 0 0; color:var(--white); font-size:1.02rem; line-height:1.25; }
.about-positioning-card > small { position:absolute; right:16px; bottom:11px; color:var(--interaction-red); font-size:.72rem; font-style:italic; text-transform:uppercase; }
.about-positioning-detail { position:absolute; inset:0; padding:15px 18px; display:flex; align-items:center; pointer-events:none; opacity:0; background:linear-gradient(145deg,#123a59,#071728); box-shadow:inset 4px 0 0 rgba(240,109,79,.75); transform:translateY(5px); transition:opacity .2s ease,transform .2s ease; }
.about-positioning-detail p { margin:0; color:var(--white); font-size:.86rem; line-height:1.42; }
.about-positioning-card:hover .about-positioning-detail,.about-positioning-card:focus .about-positioning-detail,.about-positioning-card:focus-within .about-positioning-detail { opacity:1; transform:translateY(0); }
.about-conviction { margin:10px 0 0; padding:14px 16px; color:var(--white); border:1px solid rgba(255,255,255,.16); border-left:3px solid var(--coral); background:rgba(255,255,255,.06); font-size:1.02rem; line-height:1.42; }
.about-conviction strong { color:#ffb6a5; }
.about-expertise { margin:22px 0 0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:0 20px; list-style:none; }
.about-expertise li { position:relative; padding:8px 0 8px 15px; color:#dbe2e8; border-top:1px solid rgba(255,255,255,.12); font-size:.79rem; line-height:1.35; }
.about-expertise li::before { content:'•'; position:absolute; left:0; color:var(--coral); }
.about-results-card { position:relative; min-height:152px; margin-top:13px; padding:18px 18px 42px; display:flex; flex-direction:column; justify-content:center; overflow:hidden; cursor:help; border:1px solid rgba(255,255,255,.2); background:linear-gradient(135deg,rgba(255,255,255,.08),rgba(255,255,255,.035)); }
.about-results-card > span { color:#ffb6a5; font-size:.72rem; font-weight:900; letter-spacing:.09em; }
.about-results-card h3 { margin:8px 0 0; color:var(--white); font-size:1.06rem; line-height:1.25; }
.about-results-card > small { position:absolute; z-index:3; right:16px; bottom:11px; color:var(--interaction-red); font-size:.72rem; font-style:italic; font-weight:800; text-align:right; text-transform:uppercase; }
.about-results-detail { position:absolute; z-index:1; top:0; right:0; bottom:43px; left:0; padding:12px 18px; display:flex; align-items:center; pointer-events:none; opacity:0; background:linear-gradient(145deg,#123a59,#071728); box-shadow:inset 4px 0 0 rgba(240,109,79,.75); transform:translateY(5px); transition:opacity .2s ease,transform .2s ease; }
.profile-download-card { position:relative; min-height:72px; margin-top:13px; padding:17px 18px 28px; display:flex; align-items:center; color:var(--white); border:1px solid rgba(255,255,255,.2); background:linear-gradient(135deg,rgba(240,109,79,.13),rgba(255,255,255,.035)); text-decoration:none; transition:border-color .2s ease,background .2s ease,transform .2s ease; }
.profile-download-card strong { font-size:1.02rem; line-height:1.25; }
.profile-download-card small { position:absolute; right:16px; bottom:9px; color:var(--interaction-red); font-size:.72rem; font-style:italic; font-weight:800; text-transform:uppercase; }
.profile-download-card:hover,.profile-download-card:focus-visible { border-color:rgba(240,109,79,.8); background:linear-gradient(135deg,rgba(240,109,79,.2),rgba(255,255,255,.06)); transform:translateY(-1px); }
.about-results-card:hover .about-results-detail,.about-results-card:focus .about-results-detail,.about-results-card:focus-within .about-results-detail { opacity:1; transform:translate(0,0); }
.about-results-detail ul { width:100%; margin:0; padding:0; display:grid; grid-template-columns:1fr 1fr; gap:4px 18px; list-style:none; }
.about-results-detail li { position:relative; padding:4px 0 4px 14px; color:var(--white); font-size:.82rem; font-weight:750; line-height:1.24; }
.about-results-detail li::before { content:'•'; position:absolute; left:0; color:var(--coral); }
.profile-download-link { position:absolute; z-index:3; left:18px; bottom:11px; margin:0; padding:0; display:inline-flex; align-items:center; gap:8px; color:var(--white); font-size:.9rem; font-weight:800; line-height:1.25; text-decoration:none; transition:color .2s ease,transform .2s ease; }
.profile-download-link:hover,.profile-download-link:focus-visible { color:#ffb6a5; transform:translateX(2px); }
.profile-download-link span { color:var(--coral); font-size:1.05rem; }
.about-journey { overflow:hidden; display:flex; flex-direction:column; }
.about-journey figure { width:100%; margin:auto 0 0; padding:0 22px 22px; background:#071728; }
.about-journey img { width:100%; height:auto; display:block; object-fit:contain; object-position:center; }
.about-journey-copy { padding:clamp(22px,2.4vw,32px); }
.about-journey-copy h2 { color:var(--white); font-size:calc(clamp(1.45rem,1.8vw,1.75rem) - 8px); }
.about-journey-copy > p:last-child { margin:16px 0 0; color:#cbd4dc; font-size:.86rem; line-height:1.5; }
.about-page + .site-footer { display:none; }

/* Contact */
.contact-layout { display:grid; grid-template-columns:.7fr 1.3fr; gap:clamp(45px,8vw,100px); }
.contact-note { padding-top:18px; color:var(--muted); }
.contact-form { display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.contact-form label { display:grid; gap:7px; color:var(--muted); font-size:.88rem; font-weight:700; }
.contact-form label.full { grid-column:1/-1; }
.contact-form input,.contact-form textarea { width:100%; padding:13px 14px; color:var(--ink); border:1px solid var(--line); border-radius:0; background:var(--white); }
.contact-form textarea { min-height:145px; resize:vertical; }
.contact-form .form-footer { grid-column:1/-1; display:flex; align-items:center; justify-content:space-between; gap:20px; }
.contact-form small { color:var(--muted); }
.privacy-note { color:var(--muted); font-size:.78rem; line-height:1.4; }
.privacy-note a { color:var(--accent-deep); font-weight:750; text-decoration:underline; text-underline-offset:2px; }
.diagnostic-privacy { max-width:620px; margin:0; }
@media (max-width:900px) {
  .perspectives-hub { min-height:auto; padding-top:55px; padding-bottom:60px; }
  .resource-launchers { grid-template-columns:1fr; }
  .resource-launchers button { min-height:175px; }
  .resource-launchers strong { margin-top:20px; }
  .resource-dialog-inner { padding:48px 20px 22px; }
  .blind-spots-page .blind-spot-grid article { position:relative; z-index:1; cursor:pointer; }
  .blind-spots-page .blind-spot-grid article:focus { z-index:10; outline:2px solid var(--accent-deep); }
  .blind-spots-page .blind-spot-grid article p { position:absolute; top:calc(100% - 5px); left:8px; right:8px; margin:0; padding:13px; pointer-events:none; opacity:0; color:var(--white); background:var(--navy); box-shadow:0 15px 35px rgba(0,0,0,.28); transform:translateY(-4px); transition:opacity .16s ease,transform .16s ease; }
  .blind-spots-page .blind-spot-grid article:hover p,.blind-spots-page .blind-spot-grid article:focus p { opacity:1; transform:translateY(0); }
  .card-grid,.document-grid { grid-template-columns:1fr; }
  .experience { grid-template-columns:1fr; }
  .experience-nav { position:sticky; z-index:40; top:82px; height:auto; padding:15px 20px; flex-direction:row; align-items:center; justify-content:space-between; }
  .experience-nav nav { display:none; }
  .experience-nav .brand { min-width:0; width:180px; }
  .experience-nav .brand small { display:none; }
  .experience-main section { min-height:auto; }
  .contact-layout { grid-template-columns:1fr; }
  .logo-group { grid-template-columns:1fr; gap:16px; }
  .logo-group > h3 { margin-top:0; }
  .about-page { min-height:auto; }
  .about-shell { min-height:auto; padding-top:55px; padding-bottom:65px; }
  .about-introduction,.about-grid { grid-template-columns:1fr; }
  .about-introduction { align-items:start; }
  .about-journey { grid-template-columns:1fr; }
  .about-journey figure { padding:0 18px 18px; }
  .about-journey img { min-height:0; height:auto; }
  .about-page + .site-footer { display:grid; }
}

/* Consentement à la mesure d’audience */
.cookie-manage { padding:0; border:0; color:inherit; background:none; font:inherit; font-weight:700; text-decoration:underline; text-underline-offset:3px; cursor:pointer; }
.analytics-consent { position:fixed; z-index:10000; right:18px; bottom:18px; left:18px; margin:auto; max-width:1120px; padding:18px 20px; display:flex; align-items:center; justify-content:space-between; gap:24px; color:#fff; background:#071728; border:1px solid rgba(255,255,255,.28); border-top:4px solid var(--coral); box-shadow:0 18px 50px rgba(0,0,0,.32); }
.analytics-consent strong { display:block; margin-bottom:4px; font-size:1.05rem; }
.analytics-consent p { max-width:780px; margin:0; color:#e5ebef; font-size:.94rem; line-height:1.48; }
.analytics-consent a { display:inline-block; margin-top:5px; color:#fff; font-size:.88rem; font-weight:750; text-decoration:underline; text-underline-offset:3px; }
.analytics-actions { display:flex; flex:0 0 auto; gap:10px; }
.analytics-actions button { min-width:128px; padding:11px 14px; border:1px solid #fff; color:#fff; background:transparent; font:inherit; font-weight:800; cursor:pointer; }
.analytics-actions button[data-consent="accepted"] { color:#071728; background:#fff; }
.analytics-actions button:hover,.analytics-actions button:focus-visible { outline:3px solid var(--coral); outline-offset:2px; }
@media (max-width:720px) {
  .analytics-consent { right:10px; bottom:10px; left:10px; padding:16px; align-items:stretch; flex-direction:column; gap:14px; }
  .analytics-actions { display:grid; grid-template-columns:1fr 1fr; }
  .analytics-actions button { min-width:0; }
}
@media (max-width:680px) {
  .card-grid,.dimension-grid,.change-grid,.not-grid,.profile-picker,.feature-list { grid-template-columns:1fr; }
  .audience-detail header { grid-template-columns:1fr; }
  .contact-form { grid-template-columns:1fr; }
  .contact-form label.full,.contact-form .form-footer { grid-column:auto; }
  .contact-form .form-footer { align-items:flex-start; flex-direction:column; }
  .journey-map { grid-template-columns:1fr; }
  .logo-row { grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
  .org-logo { min-height:68px; }
  .about-expertise { grid-template-columns:1fr; }
}

/* Sélecteur de langue : toujours entièrement visible sur mobile */
@media (max-width:640px) {
  .language-switch {
    position:relative;
    z-index:60;
    top:auto;
    right:auto;
    left:auto;
    width:100%;
    max-width:none;
    min-width:0;
    margin:0;
    padding:5px 4px;
    display:grid;
    grid-template-columns:repeat(5,minmax(0,1fr));
    justify-content:stretch;
    gap:0;
    overflow:visible;
    white-space:nowrap;
    transform:none;
    scrollbar-width:none;
    -webkit-overflow-scrolling:touch;
    border-right:0;
    border-left:0;
  }
  .language-switch::-webkit-scrollbar { display:none; }
  .language-switch > span { display:none; }
  .language-switch a {
    min-height:34px;
    padding:0 1px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    font-size:clamp(.68rem,3vw,.78rem);
  }
}

/* Universal positioning statement and Arabic executive overview */
.universality-note {
  width:min(var(--max),calc(100% - 48px));
  margin:20px auto 0;
  padding:12px 18px;
  color:#334b5d;
  border-left:3px solid var(--coral);
  background:rgba(255,255,255,.72);
  font-size:.92rem;
  font-style:italic;
  line-height:1.55;
}
.arabic-page { direction:rtl; text-align:right; font-family:Tahoma,Arial,"Segoe UI",sans-serif; }
.arabic-page .language-switch { direction:ltr; }
.arabic-page .universality-note { border-left:0; border-right:3px solid var(--coral); }
.arabic-header { min-height:82px; padding:10px max(24px,calc((100vw - var(--max))/2)); display:flex; align-items:center; justify-content:space-between; background:rgba(245,247,248,.96); border-bottom:1px solid var(--line); }
.arabic-header img { width:220px; max-height:62px; object-fit:contain; }
.arabic-hero { padding:clamp(64px,8vw,110px) max(24px,calc((100vw - var(--max))/2)); color:#fff; background:linear-gradient(135deg,#071728 0%,#123a50 100%); }
.arabic-hero .eyebrow,.arabic-section .eyebrow { color:#ff826b; font-weight:850; letter-spacing:.08em; }
.arabic-hero h1 { max-width:900px; margin:12px 0 22px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2.4rem,5vw,4.8rem); line-height:1.25; }
.arabic-hero p { max-width:900px; font-size:clamp(1.08rem,1.7vw,1.35rem); line-height:1.9; }
.arabic-cta { display:inline-flex; margin-top:26px; padding:13px 22px; color:#fff; border:1px solid #fff; font-weight:800; }
.arabic-cta:hover { color:var(--navy); background:#fff; }
.arabic-section { width:min(var(--max),calc(100% - 48px)); margin:auto; padding:clamp(50px,7vw,90px) 0; }
.arabic-section h2 { margin:8px 0 28px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2rem,4vw,3.4rem); line-height:1.35; }
.arabic-grid { display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.arabic-grid.three { grid-template-columns:repeat(3,1fr); }
.arabic-card { min-height:190px; padding:24px; border:1px solid rgba(16,34,52,.15); background:#fff; box-shadow:0 14px 32px rgba(7,23,40,.06); }
.arabic-card b { display:block; margin-bottom:10px; color:var(--coral-dark); font-size:1.25rem; }
.arabic-card h3 { margin:0 0 10px; font-size:1.22rem; }
.arabic-card p { margin:0; color:#50606d; line-height:1.8; }
.arabic-change { padding:clamp(44px,6vw,76px) max(24px,calc((100vw - var(--max))/2)); color:#fff; background:#102f43; }
.arabic-change h2 { max-width:920px; margin:0 0 14px; font-family:Georgia,"Times New Roman",serif; font-size:clamp(2rem,4vw,3.4rem); line-height:1.4; }
.arabic-change p { max-width:920px; font-size:1.12rem; line-height:1.9; }
.arabic-note { margin-top:34px; color:#697783; font-size:.9rem; }
@media (max-width:900px) { .arabic-grid,.arabic-grid.three { grid-template-columns:1fr 1fr; } }
@media (max-width:620px) { .universality-note { width:calc(100% - 28px); } .arabic-grid,.arabic-grid.three { grid-template-columns:1fr; } .arabic-header img { width:180px; } }
@media (min-width:1281px) {
  .site-header { gap:16px; }
  .brand { min-width:190px; }
  .brand-logo { width:190px; }
  .main-nav { gap:12px; font-size:.78rem; }
  .search-toggle { font-size:.76rem; }
}


@media (max-width:560px) {
  .perspectives-hub-head h1 { font-size:20px; }
  .blind-spots-page .insight-hero h1 { font-size:20px; line-height:1.3; }
  .experience-nav { top:72px; }
}

/* Compact single-screen layouts — About and Organisations */
.about-shell { justify-content:flex-start; padding:16px 24px 18px; }
.about-introduction { padding:13px 18px; }
.about-introduction .eyebrow { margin-bottom:6px; }
.about-grid { margin-top:13px; }
.about-profile { padding:19px 20px; }
.about-profile .section-index,.about-journey .section-index { margin-bottom:7px; }
.about-profile h2,.about-journey-copy h2 { font-size:1.05rem; line-height:1.25; }
.about-profile h2 { white-space:nowrap; }
.about-copy { margin-top:11px; font-size:.89rem; line-height:1.42; }
.about-expertise { margin-top:13px; grid-template-columns:1fr; }
.about-expertise li { padding:6px 0 6px 15px; font-size:.9rem; line-height:1.28; }
.about-journey-copy { padding:18px 20px 12px; }
.about-journey-copy > p:last-child { margin-top:9px; font-size:.84rem; line-height:1.4; }
.about-journey figure { padding:0 16px 14px; }
.about-map .map-enlarge { width:100%; padding:0; border:0; color:var(--white); background:transparent; cursor:zoom-in; }
.about-map .map-enlarge img { width:100%; }
.about-map .map-enlarge span { display:block; margin-top:6px; color:var(--interaction-red); font-size:.86rem; font-style:italic; font-weight:850; letter-spacing:.015em; text-align:right; text-decoration:underline; text-decoration-color:var(--interaction-red); text-underline-offset:4px; }
.map-dialog { width:96vw; max-width:none; height:96vh; max-height:none; margin:auto; padding:42px 24px 20px; border:1px solid rgba(255,255,255,.25); background:#071728; }
.map-dialog::backdrop { background:rgba(0,10,22,.9); }
.map-dialog[open] { display:flex; align-items:center; justify-content:center; }
.map-dialog img { display:block; width:100%; height:100%; object-fit:contain; }
.map-dialog-close { position:absolute; top:10px; right:14px; padding:6px 10px; border:1px solid rgba(255,255,255,.5); color:var(--white); background:#071728; font:700 .85rem Inter,sans-serif; cursor:pointer; }
.dimension-dialog { width:min(1120px,94vw); max-width:none; max-height:92vh; margin:auto; padding:0; overflow:visible; border:0; background:transparent; }
.dimension-dialog::backdrop { background:rgba(0,10,22,.88); backdrop-filter:blur(5px); }
.dimension-dialog[open] { display:block; }
.dimension-dialog-inner { position:relative; padding:50px 18px 18px; overflow:auto; max-height:92vh; border:1px solid rgba(255,255,255,.28); background:#f7f8fa; box-shadow:0 30px 90px rgba(0,0,0,.42); }
.dimension-dialog img { display:block; width:100%; height:auto; max-height:calc(92vh - 70px); object-fit:contain; }
.dimension-dialog-close { position:absolute; z-index:2; top:10px; right:12px; padding:7px 11px; border:1px solid var(--navy); color:var(--white); background:var(--navy); font-size:.82rem; font-weight:800; cursor:pointer; }
.dimension-dialog-execution { width:min(1120px,94vw); }
.strategy-dialog-inner { padding:clamp(34px,5vw,64px); color:var(--white); background:radial-gradient(circle at 88% 8%,rgba(240,109,79,.2),transparent 32%),linear-gradient(135deg,#071728 0%,#0d2d49 100%); }
.strategy-dialog-inner .dimension-dialog-close { border-color:rgba(255,255,255,.45); background:rgba(7,23,40,.72); }
.strategy-dialog-head { max-width:830px; }
.strategy-kicker { margin:0 0 10px; color:var(--coral); font-size:.78rem; font-weight:900; letter-spacing:.16em; }
.strategy-dialog h2 { margin:0; color:var(--white); font-size:34px; line-height:1.08; }
.strategy-dialog h2 em { color:var(--coral); font-weight:400; }
.strategy-intro { max-width:790px; margin:18px 0 0; color:#d9e2e9; font-size:1rem; line-height:1.55; }
.strategy-steps { margin-top:32px; display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:10px; }
.strategy-steps article { min-height:160px; padding:18px 16px; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.06); }
.strategy-steps span { color:var(--coral); font-size:.78rem; font-weight:900; }
.strategy-steps h3 { margin:22px 0 8px; color:var(--white); font-size:1rem; line-height:1.2; }
.strategy-steps p { margin:0; color:#cbd7df; font-size:.8rem; line-height:1.42; }
.strategy-outcome { margin:18px 0 0; padding:14px 18px; border-left:4px solid var(--coral); color:var(--white); background:rgba(255,255,255,.08); font-size:1rem; }
.concept-dialog-inner { padding:clamp(34px,5vw,64px); color:var(--white); background:radial-gradient(circle at 88% 8%,rgba(240,109,79,.18),transparent 32%),linear-gradient(135deg,#071728 0%,#0d2d49 100%); }
.concept-dialog-inner .dimension-dialog-close { border-color:rgba(255,255,255,.45); background:rgba(7,23,40,.72); }
.concept-dialog-head { max-width:900px; }
.concept-kicker { margin:0 0 10px; color:var(--coral); font-size:.78rem; font-weight:900; letter-spacing:.16em; }
.concept-dialog h2 { margin:0; color:var(--white); font-size:34px; line-height:1.08; }
.concept-dialog h2 em { color:var(--coral); font-weight:400; }
.concept-dialog-head > p:last-child { max-width:830px; margin:18px 0 0; color:#d9e2e9; font-size:1rem; line-height:1.55; }
.concept-outcome { margin:18px 0 0; padding:14px 18px; border-left:4px solid var(--coral); color:var(--white); background:rgba(255,255,255,.08); font-size:1rem; }
.governance-levels { margin-top:30px; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.governance-levels article { position:relative; min-height:205px; padding:22px 20px; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.06); }
.governance-levels article + article::before { content:'→'; position:absolute; top:50%; left:-19px; z-index:1; color:var(--coral); font-size:1.25rem; font-weight:900; transform:translateY(-50%); }
.governance-levels span,.execution-flow article > span,.architecture-system article > span { color:var(--coral); font-size:.75rem; font-weight:900; letter-spacing:.08em; }
.governance-levels h3 { margin:24px 0 8px; color:var(--white); font-size:1.25rem; }
.governance-levels p { margin:0 0 18px; color:#aebfcb; font-size:.85rem; }
.governance-levels strong { display:block; color:#edf3f7; font-size:.9rem; line-height:1.45; }
.architecture-system { margin-top:28px; display:grid; grid-template-columns:repeat(7,minmax(0,1fr)); align-items:stretch; gap:9px; }
.architecture-system article { min-width:0; padding:18px 12px; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.055); text-align:center; }
.architecture-system h3 { margin:15px 0 7px; color:var(--white); font-size:1rem; }
.architecture-system article p { margin:0; color:#bfcdd7; font-size:.76rem; line-height:1.35; }
.architecture-core { padding:18px 10px; display:flex; flex-direction:column; align-items:center; justify-content:center; border:2px solid var(--coral); background:rgba(240,109,79,.14); text-align:center; }
.architecture-core b { color:var(--white); font-family:Georgia,serif; font-size:1.65rem; }
.architecture-core small { margin-top:7px; color:#e5edf2; font-size:.7rem; line-height:1.3; }
.execution-flow { margin-top:30px; display:grid; grid-template-columns:1fr auto 1fr auto 1fr auto 1fr; align-items:stretch; gap:8px; }
.execution-flow article { min-width:0; padding:20px 17px; border:1px solid rgba(255,255,255,.18); background:rgba(255,255,255,.06); }
.execution-flow > i { align-self:center; color:var(--coral); font-size:1.3rem; font-style:normal; font-weight:900; }
.execution-flow h3 { margin:18px 0 8px; color:var(--white); font-size:1.08rem; }
.execution-flow p { margin:0; color:#c3d0d9; font-size:.8rem; line-height:1.45; }

.organisations-page { width:min(1500px,100%); min-height:calc(100vh - 82px); margin:0 auto; padding:14px 24px 10px; display:flex; flex-direction:column; }
.organisations-page .organisations-hero { padding:14px 20px; display:block; }
.organisations-page .organisations-hero .eyebrow { margin:0 0 5px; color:var(--coral); font-size:.78rem; font-weight:900; letter-spacing:.14em; }
.organisations-page .organisations-hero h1 { max-width:none; font-family:Inter,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif; font-size:1rem; font-weight:400; line-height:1.42; letter-spacing:0; }
.organisations-page .organisations-hero h1 strong { font:inherit; font-weight:750; }
.organisations-page .organisations-hero h1 em { color:var(--coral); font:inherit; font-style:italic; font-weight:750; }
.organisations-page .organisations-hero h1 span { font:inherit; }
.organisations-page .organisations-section { width:100%; max-width:none; padding:7px 0 0; }
.organisations-page .organisations-disclaimer { max-width:none; padding:0 0 7px; font-size:.78rem; line-height:1.35; }
.organisations-page .organisations-intro { padding-top:6px; display:flex; align-items:baseline; gap:20px; }
.organisations-page .organisations-intro .section-index { flex:0 0 auto; margin:0; }
.organisations-page .organisations-intro .section-index { font-size:.92rem; font-weight:900; }
.organisations-page .organisations-intro h2 { max-width:none; font-size:1.28rem; font-weight:650; line-height:1.2; }
.organisations-page .logo-groups { margin-top:6px; display:grid; grid-template-columns:190px repeat(3,minmax(0,1fr)); grid-auto-flow:dense; align-items:start; gap:5px 8px; }
.organisations-page .logo-group { min-width:0; padding:4px 5px 5px; display:block; border:1px solid var(--line); background:rgba(255,255,255,.5); }
.organisations-page .logo-group:first-child { width:190px; justify-self:start; }
.organisations-page .logo-group:last-child { border-bottom:1px solid var(--line); }
.organisations-page .logo-group > h3 { margin:0 0 5px; display:inline-block; font-size:1rem; font-weight:800; line-height:1.15; text-decoration:underline 2px var(--coral); text-underline-offset:4px; }
.organisations-page .logo-row { grid-template-columns:repeat(auto-fit,minmax(72px,1fr)); gap:1px 3px; }
.organisations-page .logo-group:nth-child(2) { grid-column:span 3; }
.organisations-page .logo-group:nth-child(3),.organisations-page .logo-group:nth-child(4) { grid-column:span 2; }
.organisations-page .logo-group:nth-child(2) .logo-row { grid-template-columns:repeat(8,minmax(0,1fr)); }
.organisations-page .logo-group:nth-child(3) .logo-row { grid-template-columns:repeat(5,minmax(0,1fr)); }
.organisations-page .logo-group:nth-child(4) .logo-row { grid-template-columns:repeat(7,minmax(0,1fr)); }
.organisations-page .logo-group:nth-child(4) .org-logo-xlarge { grid-column:span 2; }
.organisations-page .org-logo { min-height:52px; padding:0; gap:0; }
.organisations-page .org-logo img { max-width:118px; max-height:50px; mix-blend-mode:multiply; }
.organisations-page .org-logo-wide img { max-width:172px; max-height:54px; }
.organisations-page .logo-group:first-child .org-logo img { max-width:118px; max-height:50px; }
.organisations-page .org-logo-small img { max-width:74px; max-height:34px; }
.organisations-page .org-logo-large img { max-width:148px; max-height:58px; }
.organisations-page .org-logo-xlarge img { width:185px; height:64px; max-width:none; max-height:none; object-fit:contain; }
.organisations-page .org-logo-complete img { width:100%; max-width:132px; max-height:48px; }
.organisations-page .wordmark { font-size:.82rem; }
.organisations-page .org-logo figcaption { font-size:.5rem; }
.organisations-page .logo-disclaimer { margin:7px 0 0; font-size:.66rem; line-height:1.25; }
.organisations-page + .site-footer { display:none; }
.organisations-page .reference-grid { margin-top:10px; display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; }
.organisations-page .reference-card { position:relative; min-width:0; min-height:178px; padding:18px; display:flex; align-items:center; justify-content:center; overflow:visible; color:var(--white); border:1px solid rgba(255,255,255,.16); background:linear-gradient(145deg,#071728,#174665); box-shadow:0 9px 24px rgba(7,23,40,.12); transition:box-shadow .2s ease,filter .2s ease; }
.organisations-page .reference-card:nth-child(2) { background:linear-gradient(140deg,#082b46,#0b7184); }
.organisations-page .reference-card:nth-child(3) { background:linear-gradient(140deg,#112a46,#315f80); }
.organisations-page .reference-card:nth-child(4) { background:linear-gradient(140deg,#10263e,#374f75); }
.organisations-page .reference-card:nth-child(5) { background:linear-gradient(140deg,#34271c,#9b563d); }
.organisations-page .reference-card:nth-child(6) { background:linear-gradient(140deg,#172d3b,#247184); }
.organisations-page .reference-card:nth-child(7) { background:linear-gradient(140deg,#26323c,#637482); }
.organisations-page .reference-card:nth-child(8) { background:linear-gradient(140deg,#29213e,#67517e); }
.organisations-page .reference-card::after { content:"Survolez pour afficher les logos"; position:absolute; right:17px; bottom:17px; color:var(--interaction-red); font-size:.65rem; font-style:italic; font-weight:800; letter-spacing:.06em; text-align:right; text-transform:uppercase; }
.organisations-page .reference-card > h3 { margin:0; color:var(--white); font-family:Georgia,serif; font-size:1.38rem; font-weight:400; text-align:center; text-decoration:underline 2px var(--coral); text-underline-offset:7px; }
.organisations-page .reference-card:hover,.organisations-page .reference-card:focus-visible,.organisations-page .reference-card:focus-within { z-index:90; box-shadow:0 17px 34px rgba(7,23,40,.2); outline:none; }
.organisations-page .reference-card .logo-row { position:fixed; top:50%; left:50%; z-index:90; width:min(620px,88vw); min-height:190px; max-height:65vh; padding:20px 24px; display:grid; grid-template-columns:repeat(auto-fit,minmax(132px,1fr)); align-content:center; justify-content:center; gap:10px 14px; overflow:auto; pointer-events:none; visibility:hidden; opacity:0; background:#fff; border-top:5px solid var(--coral); box-shadow:0 0 0 100vmax rgba(1,12,23,.8),0 28px 80px rgba(0,0,0,.45); transform:translate(-50%,-50%) scale(.97); transition:opacity .2s ease,transform .2s ease,visibility .2s; }
.organisations-page .reference-card:nth-child(2) .logo-row { width:min(1180px,90vw); min-height:270px; }
.organisations-page .reference-card:nth-child(3) .logo-row { width:min(900px,88vw); min-height:235px; }
.organisations-page .reference-card:nth-child(4) .logo-row { width:min(920px,88vw); min-height:210px; }
.organisations-page .reference-card:nth-child(1) .logo-row,.organisations-page .reference-card:nth-child(5) .logo-row,.organisations-page .reference-card:nth-child(6) .logo-row,.organisations-page .reference-card:nth-child(7) .logo-row { width:min(500px,82vw); min-height:195px; }
.organisations-page .reference-card:nth-child(8) .logo-row { width:min(740px,86vw); min-height:215px; grid-template-columns:repeat(3,minmax(170px,1fr)); }
.organisations-page .reference-card:hover .logo-row,.organisations-page .reference-card:focus .logo-row,.organisations-page .reference-card:focus-within .logo-row { visibility:visible; opacity:1; transform:translate(-50%,-50%) scale(1); }
.organisations-page .reference-card .org-logo { width:140px; height:82px; min-height:82px; margin:auto; padding:6px; }
.organisations-page .reference-card .org-logo img,.organisations-page .reference-card .org-logo-wide img,.organisations-page .reference-card .org-logo-small img,.organisations-page .reference-card .org-logo-large img,.organisations-page .reference-card .org-logo-xlarge img,.organisations-page .reference-card .org-logo-complete img { width:124px; height:66px; max-width:124px; max-height:66px; object-fit:contain; }
.organisations-page .reference-card .logo-optical-mutuelle { width:195px; }
.organisations-page .reference-card .logo-optical-mutuelle img { width:185px; height:72px; max-width:185px; max-height:72px; transform:scale(1.1); }
.organisations-page .reference-card .logo-optical-luxembourg { width:235px; }
.organisations-page .reference-card .logo-optical-luxembourg img { width:225px; height:78px; max-width:225px; max-height:78px; transform:scale(1.08); }
.organisations-page .reference-card .logo-optical-hsbc img { transform:scale(1.34); }
.organisations-page .reference-card .logo-optical-axa img { transform:scale(1.04); }
.organisations-page .reference-card .wordmark { width:124px; min-height:66px; display:flex; align-items:center; justify-content:center; font-size:.76rem; }

/* Perspectives — editorial library */
.perspective-columns { margin-top:9px; display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
.perspective-column { min-width:0; overflow:hidden; border:1px solid rgba(16,34,52,.12); background:rgba(255,255,255,.94); box-shadow:0 10px 28px rgba(7,23,40,.08); }
.perspective-column > header { padding:10px 12px; display:flex; align-items:center; gap:10px; color:var(--white); background:linear-gradient(110deg,#071728,#123a59); }
.perspective-column > header span { display:grid; width:25px; height:25px; flex:0 0 auto; place-items:center; color:var(--white); background:var(--coral-dark); border-radius:50%; font-size:.75rem; font-weight:900; }
.perspective-column > header h3 { margin:0; color:var(--white); font-size:1rem; }
.perspective-column article { position:relative; min-height:91px; padding:10px 12px 9px 16px; border-top:1px solid var(--line); }
.perspective-column article::before { content:''; position:absolute; top:13px; bottom:13px; left:0; width:3px; background:var(--coral); }
.perspective-column article b { display:block; color:var(--navy); font-family:Georgia,serif; font-size:.95rem; line-height:1.2; }
.perspective-column article p { margin:5px 0 0; color:var(--muted); font-size:.875rem; line-height:1.32; }
.perspective-column article small { display:block; margin-top:5px; color:var(--coral-dark); font-size:.75rem; font-weight:900; letter-spacing:.08em; }
.perspective-resource { position:relative; min-height:91px; padding:10px 12px 9px 16px; display:block; border-top:1px solid var(--line); color:inherit; text-decoration:none; transition:background .18s ease; }
.perspective-resource::before { content:''; position:absolute; top:13px; bottom:13px; left:0; width:3px; background:var(--coral); }
.perspective-resource:hover,.perspective-resource:focus-visible { background:#f2f5f7; outline:2px solid rgba(240,109,79,.35); outline-offset:-2px; }
.perspective-resource b { display:block; color:var(--navy); font-family:Georgia,serif; font-size:.95rem; line-height:1.2; }
.perspective-resource p { margin:5px 0 0; color:var(--muted); font-size:.875rem; line-height:1.32; }
.perspective-resource small { display:block; margin-top:5px; color:var(--interaction-red); font-size:.75rem; font-style:italic; font-weight:900; letter-spacing:.08em; text-align:right; }
.resource-browser { margin-top:14px; display:grid; grid-template-columns:minmax(250px,.82fr) minmax(0,2.18fr); gap:14px; align-items:stretch; }
.resource-tabs { display:grid; align-content:start; gap:9px; }
.resource-tabs button { width:100%; min-height:82px; padding:15px 18px; display:grid; grid-template-columns:38px 1fr; align-items:center; gap:12px; cursor:pointer; color:var(--navy); border:1px solid var(--line); background:rgba(255,255,255,.8); text-align:left; transition:background .18s ease,color .18s ease,transform .18s ease; }
.resource-tabs button:hover,.resource-tabs button:focus-visible { transform:translateX(3px); outline:2px solid rgba(23,75,99,.25); outline-offset:1px; }
.resource-tabs button.active { color:var(--white); border-color:var(--accent-deep); background:var(--accent-deep); box-shadow:inset 4px 0 var(--coral); }
.resource-tabs span { color:var(--coral-dark); font-size:.86rem; font-weight:900; }
.resource-tabs button.active span { color:#ffaf9b; }
.resource-tabs b { font-size:1rem; line-height:1.25; }
.resource-panels { min-width:0; }
.resource-panel { height:100%; }
.resource-panel[hidden] { display:none; }
.resource-panel article,.resource-panel .perspective-resource { min-height:88px; }
.resource-panel article b,.resource-panel .perspective-resource b { font-size:1.08rem; }
.resource-panel article p,.resource-panel .perspective-resource p { font-size:.95rem; line-height:1.42; }

/* Perspectives hub */
.perspectives-hub { min-height:calc(100vh - 82px); padding:clamp(38px,5vw,68px) max(24px,calc((100vw - var(--max))/2)); display:flex; flex-direction:column; justify-content:center; color:var(--white); background:radial-gradient(circle at 82% 12%,rgba(240,109,79,.16),transparent 28%),linear-gradient(135deg,#071728,#10324c); }
.perspectives-hub-head { max-width:980px; }
.perspectives-hub-head .eyebrow { margin-bottom:12px; }
.perspectives-hub-head h1 { max-width:none; font-size:34px; line-height:1.25; }
.perspectives-hub-head > p:last-child { max-width:850px; margin:16px 0 0; color:#cbd7df; font-size:1.05rem; }
.resource-launchers { margin-top:clamp(28px,5vw,58px); display:grid; grid-template-columns:repeat(3,1fr); gap:16px; }
.resource-launchers button { min-height:285px; padding:28px; display:flex; flex-direction:column; align-items:flex-start; cursor:pointer; color:var(--white); border:1px solid rgba(255,255,255,.2); background:rgba(255,255,255,.055); text-align:left; box-shadow:0 18px 42px rgba(0,0,0,.15); transition:transform .2s ease,background .2s ease,border-color .2s ease; }
.resource-launchers button:hover,.resource-launchers button:focus-visible { transform:translateY(-5px); border-color:var(--coral); background:rgba(255,255,255,.1); outline:none; }
.resource-launchers span { color:var(--coral); font-size:.88rem; font-weight:900; letter-spacing:.12em; }
.resource-launchers strong { margin-top:42px; font-family:Georgia,serif; font-size:clamp(1.55rem,2.1vw,2.125rem); font-weight:400; line-height:1.12; }
.resource-launchers i { margin-top:auto; align-self:flex-end; color:var(--interaction-red); font-size:.86rem; font-style:italic; font-weight:850; text-align:right; }
.perspectives-hub + .resource-dialog ~ .site-footer { display:none; }
.resource-dialog { width:min(940px,92vw); max-width:none; margin:auto; padding:0; border:0; background:transparent; }
.resource-dialog::backdrop { background:rgba(0,10,22,.88); backdrop-filter:blur(5px); }
.resource-dialog-inner { position:relative; padding:42px; color:var(--ink); background:#f5f7f8; border-top:5px solid var(--accent-deep); box-shadow:0 28px 90px rgba(0,0,0,.4); }
.resource-dialog-close { position:absolute; top:12px; right:14px; padding:7px 11px; cursor:pointer; color:var(--white); border:0; background:var(--accent-deep); font-weight:800; }
.resource-dialog h2 { color:var(--navy); font-size:1.8rem; }
.resource-dialog-list { margin-top:22px; display:grid; gap:9px; }
.resource-dialog-list > * { padding:15px 18px; border-left:4px solid var(--coral); background:var(--white); }
.resource-dialog-list b { color:var(--navy); font-family:Arial,Helvetica,sans-serif; font-size:1.25rem; font-weight:800; line-height:1.2; }
.resource-dialog-list p { margin:8px 0 0; color:var(--muted); font-size:1rem; line-height:1.45; }
.resource-dialog-list small { display:block; margin-top:7px; color:var(--accent-deep); font-weight:900; }
.resource-dialog-list a small { color:var(--interaction-red); font-style:italic; text-align:right; }
.interaction-hint { color:var(--interaction-red); font-style:italic; font-weight:900; }
.hover-window-title { display:block; margin:0 0 9px; color:var(--white); font-size:1.08rem; font-weight:900; line-height:1.25; }

/* Long-form insights and guides */
.insight-page { color:var(--ink); background:linear-gradient(135deg,#f8fafb,#edf2f5); }
.insight-hero { padding:clamp(50px,7vw,90px) 24px; color:var(--white); background:radial-gradient(circle at 85% 15%,rgba(240,109,79,.19),transparent 28%),linear-gradient(118deg,#071728,#0d2d49); }
.insight-hero > div { width:min(1100px,100%); margin:0 auto; }
.insight-hero h1 { max-width:900px; margin:0; color:var(--white); font-size:clamp(2.3rem,5vw,4.8rem); line-height:1.02; }
.insight-hero h1 em { color:var(--coral); font-weight:400; }
.insight-hero > div > p:last-child { max-width:780px; margin:20px 0 0; color:#d6e0e7; font-size:1.08rem; line-height:1.55; }
.insight-body { width:min(1100px,calc(100% - 48px)); margin:0 auto; padding:clamp(40px,6vw,75px) 0; }
.insight-lead { max-width:900px; margin:0; color:var(--navy); font-family:Georgia,serif; font-size:1.35rem; line-height:1.55; }
.insight-body > blockquote { margin:36px 0 52px; padding:20px 24px; border-left:5px solid var(--coral); color:var(--white); background:var(--navy); font-family:Georgia,serif; font-size:1.35rem; line-height:1.4; }
.case-page .insight-hero > div { max-width:1080px; }
.case-page .insight-body { width:min(1240px,calc(100% - 48px)); padding:34px 0 48px; }
.case-summary-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:14px; }
.case-summary-grid article { position:relative; min-height:280px; padding:26px; overflow:hidden; border:1px solid var(--line); background:linear-gradient(145deg,#fff,#edf2f5); box-shadow:0 12px 30px rgba(7,23,40,.09); }
.case-summary-grid article:hover,.case-summary-grid article:focus-visible,.case-summary-grid article:focus-within { z-index:3; border-color:var(--accent-deep); outline:2px solid rgba(23,75,99,.22); }
.case-summary-grid article::after { content:""; position:absolute; left:0; bottom:0; width:100%; height:5px; background:linear-gradient(90deg,var(--coral),transparent); }
.case-summary-grid span { color:var(--coral-dark); font-size:.78rem; font-weight:900; letter-spacing:.09em; }
.case-summary-grid h2 { margin:28px 0 13px; color:var(--navy); font-size:1.55rem; line-height:1.18; }
.case-summary-grid p { margin:0; color:var(--muted); font-size:1rem; line-height:1.55; }
.case-learning { margin-top:18px; padding:25px 28px; display:grid; grid-template-columns:1fr auto; align-items:center; gap:32px; color:var(--white); background:linear-gradient(120deg,#071728,#123a59); }
.case-learning h2 { color:var(--white); font-size:1.6rem; }
.case-learning p:not(.section-index) { max-width:850px; margin:8px 0 0; color:#cbd7df; line-height:1.5; }
.intervention-trigger { color:var(--navy); font-size:1.05rem; font-weight:700; line-height:1.42; }
.resource-article-page .insight-hero h1 { max-width:1080px; }
.resource-article-page .insight-body { width:min(1180px,calc(100% - 48px)); }
.editorial-grid { margin-top:34px; display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.editorial-grid article { position:relative; min-height:128px; padding:24px; display:flex; align-items:center; gap:14px; overflow:hidden; cursor:help; border:1px solid var(--line); background:linear-gradient(145deg,#fff,#f1f5f7); box-shadow:0 8px 22px rgba(7,23,40,.06); }
.editorial-grid article:hover,.editorial-grid article:focus-visible,.editorial-grid article:focus-within { z-index:3; border-color:var(--accent-deep); outline:2px solid rgba(23,75,99,.22); }
.editorial-grid article > span { position:relative; z-index:2; flex:0 0 auto; color:var(--coral-dark); font-size:1rem; font-weight:900; letter-spacing:.1em; }
.editorial-grid h2 { position:relative; z-index:2; margin:0; color:var(--navy); font-size:1.55rem; line-height:1.16; }
.editorial-grid p { position:absolute; z-index:1; inset:0; margin:0; padding:58px 24px 18px; display:flex; align-items:center; overflow:auto; pointer-events:none; opacity:0; color:var(--white); background:linear-gradient(145deg,#071728,#123a59); font-size:1.05rem; line-height:1.45; transform:translateY(7px); transition:opacity .18s ease,transform .18s ease; }
.editorial-grid article:hover p,.editorial-grid article:focus p,.editorial-grid article:focus-within p { opacity:1; transform:none; }
.editorial-grid article:hover,.editorial-grid article:focus,.editorial-grid article:focus-within { align-items:flex-start; }
.editorial-grid article:hover > span,.editorial-grid article:focus > span,.editorial-grid article:focus-within > span { color:var(--coral); }
.editorial-grid article:hover h2,.editorial-grid article:focus h2,.editorial-grid article:focus-within h2 { color:var(--white); }
.editorial-grid-five { grid-template-columns:repeat(5,1fr); }
.editorial-grid-five article { padding:20px; }
.editorial-grid-five h2 { font-size:1.2rem; }
.editorial-grid-six { grid-template-columns:repeat(3,1fr); }
.editorial-band { margin-top:26px; padding:25px 28px; color:var(--white); background:linear-gradient(120deg,#071728,#123a59); }
.editorial-band h2 { color:var(--white); font-size:1.6rem; }
.editorial-band p:not(.section-index) { max-width:940px; margin:9px 0 0; color:#cbd7df; line-height:1.5; }
.editorial-sequence { margin-top:20px; display:flex; align-items:center; gap:8px; }
.editorial-sequence span { flex:1; padding:8px; border:1px solid rgba(255,255,255,.2); color:var(--white); text-align:center; font-size:.8rem; font-weight:800; }
.editorial-sequence i { color:var(--coral); font-style:normal; font-weight:900; }
.method-steps { margin-top:28px; }
.method-steps > div { margin-top:10px; display:grid; grid-template-columns:repeat(5,1fr); gap:8px; }
.method-steps article { position:relative; min-height:105px; padding:16px; display:flex; align-items:center; justify-content:center; overflow:hidden; cursor:help; border-top:4px solid var(--coral); background:var(--white); box-shadow:0 7px 20px rgba(7,23,40,.06); }
.method-steps article:hover,.method-steps article:focus-visible,.method-steps article:focus-within { z-index:3; outline:2px solid rgba(23,75,99,.24); }
.method-steps b { position:relative; z-index:2; color:var(--navy); font-size:1.1rem; text-align:center; }
.method-steps p { position:absolute; z-index:1; inset:0; margin:0; padding:48px 15px 12px; display:flex; align-items:center; overflow:auto; pointer-events:none; opacity:0; color:var(--white); background:linear-gradient(145deg,#071728,#123a59); font-size:.95rem; line-height:1.45; transform:translateY(7px); transition:opacity .18s ease,transform .18s ease; }
.method-steps article:hover p,.method-steps article:focus p,.method-steps article:focus-within p { opacity:1; transform:none; }
.method-steps article:hover,.method-steps article:focus,.method-steps article:focus-within { align-items:flex-start; }
.method-steps article:hover b,.method-steps article:focus b,.method-steps article:focus-within b { color:var(--white); text-align:left; }
.method-steps .three-steps { grid-template-columns:repeat(3,1fr); }

.blind-spot-grid { margin-top:20px; display:grid; grid-template-columns:repeat(2,1fr); gap:12px; }
.blind-spot-grid article { padding:24px; border:1px solid var(--line); background:var(--white); box-shadow:0 8px 22px rgba(7,23,40,.06); }
.blind-spot-grid span,.diagnostic-guide > article > span { color:var(--coral-dark); font-size:.82rem; font-weight:900; }
.blind-spot-grid h2 { margin:14px 0 9px; color:var(--navy); font-size:1.3rem; }
.blind-spot-grid p { margin:0; color:var(--muted); font-size:1rem; line-height:1.55; }
.why-forgotten { margin-top:55px; padding:32px; display:grid; grid-template-columns:1fr 1fr; gap:35px; color:var(--white); background:var(--navy); }
.change-thread { margin-top:55px; padding:30px; border:1px solid var(--line); background:var(--white); box-shadow:0 10px 28px rgba(7,23,40,.07); }
.change-thread-card { position:relative; min-height:155px; padding:18px; display:flex; flex-direction:column; justify-content:center; overflow:hidden; cursor:help; border-top:2px solid rgba(240,109,79,.58); background:linear-gradient(145deg,#fff,#f3f6f8); }
.change-thread-card > .section-index,.change-thread-card > h2 { position:relative; z-index:2; }
.change-thread-card > p:last-child { position:absolute; z-index:1; inset:0; margin:0; padding:86px 20px 18px; display:flex; align-items:center; overflow:auto; pointer-events:none; opacity:0; color:var(--white); background:linear-gradient(145deg,#071728,#123a59); font-size:1rem; line-height:1.5; transform:translateY(7px); transition:opacity .18s ease,transform .18s ease; }
.change-thread-card:hover,.change-thread-card:focus-visible,.change-thread-card:focus-within { justify-content:flex-start; outline:2px solid rgba(23,75,99,.24); }
.change-thread-card:hover > p:last-child,.change-thread-card:focus > p:last-child,.change-thread-card:focus-within > p:last-child { opacity:1; transform:none; }
.change-thread-card:hover > h2,.change-thread-card:focus > h2,.change-thread-card:focus-within > h2 { color:var(--white); }
.change-thread-card:hover > h2 em,.change-thread-card:focus > h2 em,.change-thread-card:focus-within > h2 em { color:var(--coral); }
.change-thread h2 { max-width:880px; margin:0; color:var(--navy); font-size:1.8rem; }
.change-thread h2 em { color:var(--coral-dark); font-weight:400; }
.change-thread > div:first-child > p:last-child { max-width:900px; margin:14px 0 0; color:var(--muted); font-size:1rem; line-height:1.55; }
.change-sequence { margin-top:24px; display:flex; align-items:center; gap:8px; }
.change-sequence span { flex:1; padding:9px 7px; color:var(--white); background:var(--navy); font-size:.78rem; font-weight:800; text-align:center; }
.change-sequence i { color:var(--coral-dark); font-style:normal; font-weight:900; }
.why-forgotten h2 { color:var(--white); font-size:1.7rem; }
.why-forgotten ul { margin:0; padding-left:20px; color:#d3dee5; font-size:1rem; line-height:1.55; }
.why-forgotten li + li { margin-top:9px; }
.field-lessons { margin-top:55px; }
.field-lessons > h2 { color:var(--navy); font-size:1.8rem; }
.field-lessons > div { margin-top:20px; display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
.field-lessons article { padding:22px; border-top:4px solid var(--coral); background:var(--white); box-shadow:0 8px 22px rgba(7,23,40,.06); }
.field-lessons b { color:var(--navy); font-size:1rem; }
.field-lessons p { margin:10px 0 0; color:var(--muted); font-size:.95rem; line-height:1.5; }
.insight-conclusion { margin-top:55px; padding:26px 30px; display:flex; align-items:center; justify-content:space-between; gap:30px; border:1px solid var(--line); background:var(--white); }
.insight-conclusion p { max-width:700px; margin:0; color:var(--navy); font-size:1.1rem; line-height:1.5; }
.insight-conclusion a { flex:0 0 auto; padding:12px 16px; color:var(--white); background:var(--coral-dark); font-size:.9rem; font-weight:850; text-decoration:none; }
.page-back { display:inline-flex; min-height:34px; margin-bottom:10px; padding:6px 12px; align-items:center; color:var(--navy); border:1px solid rgba(255,255,255,.75); background:var(--white); font-size:.88rem; font-weight:850; box-shadow:0 6px 18px rgba(0,0,0,.16); }
.page-back:hover,.page-back:focus-visible { color:var(--white); background:var(--accent-deep); outline:2px solid rgba(255,255,255,.65); }
.fullscreen-toggle { position:fixed; z-index:90; right:18px; bottom:18px; min-height:38px; padding:8px 13px; cursor:pointer; color:var(--white); border:1px solid rgba(255,255,255,.38); background:rgba(7,23,40,.9); box-shadow:0 8px 24px rgba(0,0,0,.22); font-size:.78rem; font-weight:850; backdrop-filter:blur(8px); }
.fullscreen-toggle:hover,.fullscreen-toggle:focus-visible { border-color:var(--coral); background:var(--accent-deep); outline:none; }
@media (max-width:640px) {
  .fullscreen-toggle { right:10px; bottom:10px; }
  .diagnostic-actions { align-items:flex-start; flex-direction:column; }
}

@media (min-width:901px) {
  .about-grid { margin-top:auto; margin-bottom:auto; }
  .organisations-page { justify-content:center; }
  .eato-overview-page .content-section { margin-top:auto; margin-bottom:auto; }

  .resource-article-page { height:calc(100vh - 82px); min-height:640px; display:flex; flex-direction:column; overflow:hidden; }
  .resource-article-page .insight-hero { flex:0 0 auto; padding:10px 24px 12px; }
  .resource-article-page .insight-hero > div { width:min(1240px,100%); }
  .resource-article-page .page-back { min-height:28px; margin-bottom:5px; padding:3px 9px; font-size:.76rem; }
  .resource-article-page .insight-hero .eyebrow { margin-bottom:3px; }
  .resource-article-page .insight-hero h1 { max-width:none; font-size:34px; line-height:1.18; }
  .resource-article-page .insight-hero > div > p:last-child { max-width:1120px; margin-top:4px; font-size:.82rem; line-height:1.3; }
  .resource-article-page .insight-body { width:min(1240px,calc(100% - 48px)); min-height:0; margin:auto; padding:8px 0; display:flex; flex:1; flex-direction:column; justify-content:center; }
  .resource-article-page .insight-lead { max-width:1120px; font-size:1rem; line-height:1.3; }
  .resource-article-page .editorial-grid { margin-top:9px; gap:7px; }
  .resource-article-page .editorial-grid article { min-height:118px; padding:14px 16px; }
  .resource-article-page .editorial-grid article > span { font-size:.82rem; }
  .resource-article-page .editorial-grid h2 { margin:0; font-size:1.22rem; line-height:1.16; }
  .resource-article-page .editorial-grid p { padding:52px 16px 12px; font-size:.95rem; line-height:1.35; }
  .resource-article-page .editorial-grid-five article { padding:12px 13px; }
  .resource-article-page .editorial-grid-five h2 { font-size:1.08rem; }
  .resource-article-page .editorial-band { margin-top:8px; padding:9px 13px; }
  .resource-article-page .editorial-band .section-index { margin-bottom:2px; font-size:.68rem; }
  .resource-article-page .editorial-band h2 { font-size:1.08rem; line-height:1.18; }
  .resource-article-page .editorial-band p:not(.section-index) { margin-top:3px; font-size:.82rem; line-height:1.32; }
  .resource-article-page .editorial-sequence { margin-top:7px; gap:5px; }
  .resource-article-page .editorial-sequence span { padding:4px 6px; font-size:.67rem; }
  .resource-article-page .method-steps { margin-top:8px; }
  .resource-article-page .method-steps > .section-index { margin-bottom:2px; font-size:.68rem; }
  .resource-article-page .method-steps > div { margin-top:4px; gap:6px; }
  .resource-article-page .method-steps article { min-height:105px; padding:11px 12px; border-top-width:3px; }
  .resource-article-page .method-steps b { font-size:.9rem; }
  .resource-article-page .method-steps p { padding:43px 12px 10px; font-size:.86rem; line-height:1.35; }
  .resource-article-page .insight-conclusion { margin-top:8px; padding:7px 11px; }
  .resource-article-page .insight-conclusion p { font-size:.82rem; line-height:1.3; }
  .resource-article-page .insight-conclusion a { padding:7px 10px; font-size:.7rem; }
  .resource-article-page + .site-footer { display:none; }

  .case-page { height:calc(100vh - 82px); min-height:640px; display:flex; flex-direction:column; overflow:hidden; }
  .case-page .insight-hero { padding:14px 24px 16px; }
  .case-page .insight-hero > div { width:min(1240px,100%); max-width:1240px; }
  .case-page .page-back { min-height:30px; margin-bottom:7px; padding:4px 10px; }
  .case-page .insight-hero .eyebrow { margin-bottom:4px; }
  .case-page .insight-hero h1 { max-width:none; font-size:34px; line-height:1.2; }
  .case-page .insight-hero > div > p:last-child { max-width:1050px; margin-top:6px; font-size:.92rem; line-height:1.35; }
  .case-page .insight-body { width:min(1240px,calc(100% - 48px)); min-height:0; margin:auto; padding:12px 0 10px; display:flex; flex:1; flex-direction:column; justify-content:center; }
  .case-summary-grid { gap:10px; }
  .case-summary-grid article { min-height:205px; padding:18px 20px; }
  .case-summary-grid article { display:grid; grid-template-columns:auto 1fr; align-content:center; align-items:start; gap:0 11px; cursor:help; }
  .case-summary-grid span,.case-summary-grid h2 { position:relative; z-index:2; grid-row:1; }
  .case-summary-grid h2 { margin:0; font-size:1.3rem; line-height:1.2; }
  .case-summary-grid p { position:absolute; z-index:1; inset:0; margin:0; padding:72px 20px 16px; display:flex; align-items:center; overflow:auto; pointer-events:none; opacity:0; color:var(--white); background:linear-gradient(145deg,#071728,#123a59); font-size:.98rem; line-height:1.48; transform:translateY(7px); transition:opacity .18s ease,transform .18s ease; }
  .case-summary-grid article:hover,.case-summary-grid article:focus,.case-summary-grid article:focus-within { align-content:start; }
  .case-summary-grid article:hover p,.case-summary-grid article:focus p,.case-summary-grid article:focus-within p { opacity:1; transform:none; }
  .case-summary-grid article:hover span,.case-summary-grid article:focus span,.case-summary-grid article:focus-within span { color:var(--coral); }
  .case-summary-grid article:hover h2,.case-summary-grid article:focus h2,.case-summary-grid article:focus-within h2 { color:var(--white); }
  .case-learning { margin-top:10px; padding:14px 18px; gap:24px; }
  .case-learning h2 { font-size:1.3rem; line-height:1.22; }
  .case-learning p:not(.section-index) { margin-top:5px; font-size:.88rem; line-height:1.38; }
  .case-learning .button { padding:10px 14px; font-size:.82rem; }
  .case-reading-page .case-summary-grid p { font-size:1rem; line-height:1.55; }
  .case-reading-page .case-learning p:not(.section-index) { font-size:1rem; line-height:1.52; }
  .case-page + .site-footer { display:none; }

  .experience-main #modele,.experience-main #pas { padding-top:55px; padding-bottom:55px; }
  #modele .dimension-grid,#pas .not-grid { margin-top:26px; }
  #modele .dimension,#pas .not-item { padding:22px 24px; }

  .blind-spots-page { height:calc(100vh - 82px); min-height:640px; display:flex; flex-direction:column; overflow:hidden; }
  .blind-spots-page .insight-hero { padding:15px 24px 16px; }
  .blind-spots-page .insight-hero > div { width:min(1240px,100%); }
  .blind-spots-page .insight-hero .eyebrow { margin-bottom:3px; }
  .blind-spots-page .insight-hero h1 { max-width:none; font-size:34px; line-height:1.22; }
  .blind-spots-page .insight-hero > div > p:last-child { max-width:1000px; margin-top:5px; font-size:.92rem; line-height:1.35; }
  .blind-spots-page .insight-body { width:min(1240px,calc(100% - 48px)); min-height:0; margin:auto; padding:14px 0 12px; display:flex; flex:1; flex-direction:column; justify-content:center; }
  .blind-spots-page .section-index { margin-bottom:7px; }
  .blind-spots-page .blind-spot-grid { margin-top:0; grid-template-columns:repeat(3,1fr); gap:8px; }
  .blind-spots-page .blind-spot-grid article { position:relative; min-height:84px; padding:12px 15px; z-index:1; cursor:help; }
  .blind-spots-page .blind-spot-grid article:hover,.blind-spots-page .blind-spot-grid article:focus { z-index:10; border-color:var(--accent-deep); outline:2px solid rgba(23,75,99,.2); }
  .blind-spots-page .blind-spot-grid h2 { margin:7px 0 0; font-size:1.05rem; line-height:1.22; }
  .blind-spots-page .blind-spot-grid p { position:absolute; top:calc(100% - 5px); left:8px; right:8px; margin:0; padding:16px; pointer-events:none; opacity:0; color:var(--white); background:var(--navy); box-shadow:0 15px 35px rgba(0,0,0,.28); font-size:1rem; line-height:1.5; transform:translateY(-4px); transition:opacity .16s ease,transform .16s ease; }
  .blind-spots-page .blind-spot-grid article:nth-child(n+4) p { top:auto; bottom:calc(100% - 5px); }
  .blind-spots-page .blind-spot-grid article:hover p,.blind-spots-page .blind-spot-grid article:focus p { opacity:1; transform:translateY(0); }
  .blind-spots-page .change-thread { margin-top:13px; padding:16px 18px; }
  .blind-spots-page .change-thread-card { min-height:108px; padding:12px 14px; }
  .blind-spots-page .change-thread-card > p:last-child { padding:62px 15px 10px; }
  .blind-spots-page .change-thread h2 { font-size:1.35rem; line-height:1.25; }
  .blind-spots-page .change-thread-card > p:last-child { margin:0; font-size:1rem; line-height:1.5; }
  .blind-spots-page .change-sequence { margin-top:12px; gap:5px; }
  .blind-spots-page .change-sequence span { padding:7px 5px; font-size:.72rem; }
  .blind-spots-page + .site-footer { display:none; }

  .guide-page { height:calc(100vh - 82px); min-height:640px; display:flex; flex-direction:column; overflow:hidden; }
  .guide-page .insight-hero { padding:15px 24px 16px; }
  .guide-page .insight-hero > div { width:min(1240px,100%); }
  .guide-page .insight-hero .eyebrow { margin-bottom:3px; }
  .guide-page .insight-hero h1 { max-width:none; font-size:34px; line-height:1.22; }
  .guide-page .insight-hero > div > p:last-child { max-width:1000px; margin-top:5px; font-size:.92rem; line-height:1.35; }
  .guide-page .insight-body { width:min(1240px,calc(100% - 48px)); min-height:0; margin:auto; padding:12px 0 10px; display:flex; flex:1; flex-direction:column; justify-content:center; }
  .guide-page .diagnostic-guide { margin-top:0; }
  .guide-page .section-index { margin-bottom:6px; }
  .guide-question-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:8px; }
.guide-question-grid > article { position:relative; min-height:78px; padding:12px 15px; z-index:1; cursor:help; border:1px solid #d9e2e7; background:linear-gradient(145deg,#fffaf8,#f2f7f9); }
  .guide-question-grid > article:hover,.guide-question-grid > article:focus { z-index:10; border-color:var(--accent-deep); outline:2px solid rgba(23,75,99,.2); }
  .guide-question-grid > article > span { color:var(--coral-dark); font-size:.82rem; font-weight:900; }
  .guide-question-grid h2 { margin:7px 0 0; color:var(--navy); font-size:1.05rem; line-height:1.22; }
  .guide-detail { position:absolute; top:calc(100% - 5px); left:8px; right:8px; padding:16px; pointer-events:none; opacity:0; color:var(--white); background:var(--navy); box-shadow:0 15px 35px rgba(0,0,0,.3); transform:translateY(-4px); transition:opacity .16s ease,transform .16s ease; }
  .guide-question-grid > article:nth-child(n+4) .guide-detail { top:auto; bottom:calc(100% - 5px); }
  .guide-question-grid > article:hover .guide-detail,.guide-question-grid > article:focus .guide-detail { opacity:1; transform:translateY(0); }
  .guide-page .guide-detail b { display:block; margin-top:9px; color:#ffb6a5; font-size:.8rem; letter-spacing:.06em; text-transform:uppercase; }
  .guide-page .guide-detail b:first-child { margin-top:0; }
  .guide-page .guide-detail p { margin:3px 0 0; color:var(--white); font-size:.95rem; line-height:1.42; }
  .guide-page .guide-use { margin-top:12px; }
  .guide-page .guide-use > div { margin-top:5px; gap:7px; }
  .guide-page .guide-use article { padding:9px 12px; }
  .guide-page .guide-use p { margin-top:3px; font-size:.78rem; line-height:1.3; }
  .guide-page .insight-conclusion { margin-top:10px; padding:10px 14px; }
  .guide-page .insight-conclusion p { font-size:.88rem; line-height:1.35; }
  .guide-page .insight-conclusion a { padding:8px 11px; font-size:.78rem; }
  .guide-page + .site-footer { display:none; }
}
.diagnostic-guide { margin-top:42px; }
.diagnostic-guide > article { margin-top:10px; padding:20px; display:grid; grid-template-columns:42px 1.3fr 1fr 1fr; gap:18px; align-items:start; border:1px solid var(--line); background:var(--white); }
.diagnostic-guide h2 { margin:5px 0 8px; color:var(--navy); font-size:1.2rem; }
.diagnostic-guide p { margin:5px 0 0; color:var(--muted); font-size:.9rem; line-height:1.45; }
.diagnostic-guide .guide-question { color:var(--ink); font-size:.95rem; }
.diagnostic-guide b { color:var(--navy); font-size:.78rem; text-transform:uppercase; letter-spacing:.06em; }
.guide-use { margin-top:48px; }
.guide-use > div { margin-top:16px; display:grid; grid-template-columns:repeat(4,1fr); gap:10px; }
.guide-use article { padding:20px; color:var(--white); background:var(--navy); }
.guide-use b { color:var(--coral); }
.guide-use p { margin:8px 0 0; color:#d3dee5; font-size:.9rem; line-height:1.45; }

/* Compact desktop layouts for the four overview pages */
@media (min-width:901px) {
  .diagnostic-shell { min-height:calc(100vh - 82px); padding:15px max(24px,calc((100vw - 1320px))/2) 12px; }
  .diagnostic-shell { display:flex; flex-direction:column; justify-content:center; }
  .diagnostic-shell .eyebrow { margin-bottom:5px; }
  .diagnostic-shell h1 { font-size:1.72rem; }
  .diagnostic-shell .lead { margin-top:5px; font-size:.94rem; line-height:1.35; }
  .profile-picker { margin-top:10px; gap:8px; }
  .profile-picker button { min-height:52px; padding:10px 14px; }
  .scale-legend { margin:10px 0 8px; font-size:.85rem; }
  .scale-legend span { font-size:1.05rem; }
  #questions { display:grid; grid-template-columns:1fr; gap:7px; }
  .question { min-width:0; margin:0; padding:9px 12px; display:grid; grid-template-columns:minmax(0,1fr) 350px; align-items:center; gap:18px; }
  .question p { margin:0; font-size:1.02rem; line-height:1.32; }
  .rating { gap:5px; }
  .rating span { min-height:39px; font-size:1rem; }
  .diagnostic-actions { margin-top:9px; }
  .diagnostic-actions .button { min-height:42px; padding:8px 17px; }
  .diagnostic-shell + .site-footer { display:none; }

  .single-screen-page { position:relative; min-height:calc(100vh - 82px); display:flex; flex-direction:column; overflow:hidden; background:linear-gradient(135deg,#f8fafb 0%,#edf2f5 100%); }
  .single-screen-page::before { content:""; position:absolute; inset:0; pointer-events:none; opacity:.32; background-image:linear-gradient(rgba(7,23,40,.035) 1px,transparent 1px),linear-gradient(90deg,rgba(7,23,40,.035) 1px,transparent 1px); background-size:42px 42px; }
  .single-screen-page .page-hero { position:relative; padding:18px max(24px,calc((100vw - var(--max))/2)) 17px; overflow:hidden; background:linear-gradient(118deg,#071728 0%,#0c2a45 72%,#143a58 100%); }
  .single-screen-page .page-hero::after { content:""; position:absolute; top:-90px; right:7%; width:260px; height:260px; border:55px solid rgba(240,109,79,.13); transform:rotate(28deg); }
  .single-screen-page .page-hero .eyebrow { margin-bottom:5px; }
  .single-screen-page .page-hero h1 { font-size:clamp(1.8rem,2.2vw,2.15rem); }
  .single-screen-page .page-hero p:last-child { max-width:1050px; margin-top:7px; font-size:1rem; line-height:1.38; }
  .single-screen-page .content-section { position:relative; width:100%; padding:13px 24px; }
  .single-screen-page .section-index { margin-bottom:4px; font-size:.84rem; }
  .single-screen-page .content-section h2 { font-size:1.5rem; }
  .single-screen-page .content-section .intro { max-width:1100px; margin-top:6px; font-size:.96rem; line-height:1.4; }
  .single-screen-page .card-grid { margin-top:10px; gap:8px; }
  .single-screen-page .card { position:relative; min-height:0; padding:12px 14px; overflow:hidden; border:1px solid rgba(16,34,52,.12); background:rgba(255,255,255,.92); box-shadow:0 8px 24px rgba(7,23,40,.07); transition:transform .18s ease,box-shadow .18s ease; }
  .single-screen-page .card::after { content:""; position:absolute; left:0; right:0; bottom:0; height:3px; background:linear-gradient(90deg,var(--coral),transparent); }
  .single-screen-page .card:hover { transform:translateY(-2px); box-shadow:0 12px 28px rgba(7,23,40,.11); }
  .single-screen-page .card .number { font-size:.8rem; }
  .single-screen-page .card h3 { margin:7px 0 4px; font-size:1.16rem; }
  .single-screen-page .card p { font-size:.88rem; line-height:1.34; }
  .single-screen-page .quote-band { position:relative; padding:12px max(24px,calc((100vw - var(--max))/2)); background:linear-gradient(90deg,#12394f,var(--accent-deep)); box-shadow:0 8px 25px rgba(7,23,40,.18); }
  .single-screen-page .quote-band blockquote { max-width:none; font-size:1.25rem; line-height:1.3; }
  .single-screen-page + .site-footer { display:none; }
  .eato-overview-page .content-section:first-of-type { background:rgba(255,255,255,.34); }
  .eato-overview-page .card .number { display:inline-flex; padding:3px 7px; color:var(--white); background:var(--navy); border-radius:2px; }
  .eato-overview-page .eato-principles { padding-top:10px; padding-bottom:10px; }
  .eato-hover-grid { margin-top:10px; display:grid; grid-template-columns:repeat(4,1fr); gap:12px; }
  .eato-hover-card { position:relative; min-height:130px; padding:20px; display:flex; flex-direction:column; justify-content:center; overflow:hidden; border:1px solid rgba(16,34,52,.14); background:rgba(255,255,255,.96); box-shadow:0 9px 24px rgba(7,23,40,.09); transition:transform .2s ease,box-shadow .2s ease; }
  .eato-hover-card:hover,.eato-hover-card:focus-visible,.eato-hover-card:focus-within { z-index:2; transform:translateY(-3px); box-shadow:0 17px 34px rgba(7,23,40,.18); outline:none; }
  .eato-hover-card .number { width:100%; min-height:29px; margin-bottom:10px; padding:5px 9px; display:flex; align-items:center; box-sizing:border-box; color:var(--white); background:var(--navy); font-size:.78rem; font-weight:850; }
  .eato-hover-card h3 { color:var(--navy); font-size:1.32rem; line-height:1.18; }
  .eato-hover-detail { position:absolute; inset:0; padding:20px 22px; display:flex; align-items:center; pointer-events:none; opacity:0; color:var(--white); background:linear-gradient(145deg,#071728,#123a59); transform:translateY(8px); transition:opacity .2s ease,transform .2s ease; }
  .eato-hover-card:hover .eato-hover-detail,.eato-hover-card:focus .eato-hover-detail,.eato-hover-card:focus-within .eato-hover-detail { opacity:1; transform:none; }
  .eato-hover-detail p { margin:0; color:var(--white); font-size:1rem; line-height:1.43; }
  .eato-overview-page .flow { margin-top:8px; flex-wrap:nowrap; gap:7px; }
  .eato-overview-page .flow span { flex:1; padding:6px 9px; color:var(--navy); border:1px solid rgba(7,23,40,.18); background:var(--white); font-size:.78rem; font-weight:750; text-align:center; box-shadow:0 4px 12px rgba(7,23,40,.05); }
  .accompagnements-overview-page .card .number { display:grid; width:27px; height:27px; place-items:center; color:var(--white); background:var(--coral-dark); border-radius:50%; }
  .intervention-stage { position:relative; z-index:1; width:min(1380px,calc(100% - 48px)); margin:auto; padding:16px 0 22px; display:flex; flex:1; flex-direction:column; justify-content:center; }
  .intervention-stage > header { margin-bottom:12px; }
  .intervention-stage h2 { color:var(--navy); font-size:1.65rem; }
  .intervention-trigger { max-width:1180px; margin:7px 0 0; color:var(--navy); font-size:1.08rem; font-weight:700; line-height:1.4; }
  .intervention-hover-grid { display:grid; grid-template-columns:repeat(3,1fr); gap:12px; }
  .intervention-hover-card { position:relative; min-height:150px; padding:23px; display:flex; flex-direction:column; justify-content:center; overflow:hidden; border:1px solid rgba(16,34,52,.14); background:rgba(255,255,255,.96); box-shadow:0 10px 28px rgba(7,23,40,.09); transition:transform .2s ease,box-shadow .2s ease; }
  .intervention-hover-card:hover,.intervention-hover-card:focus-visible,.intervention-hover-card:focus-within { z-index:2; transform:translateY(-3px); box-shadow:0 18px 36px rgba(7,23,40,.18); outline:none; }
  .intervention-hover-card .number { display:grid; width:30px; height:30px; margin-bottom:13px; place-items:center; color:var(--white); background:var(--coral-dark); border-radius:50%; font-size:.82rem; font-weight:900; }
  .intervention-hover-card h3 { max-width:20em; color:var(--navy); font-size:1.25rem; line-height:1.2; }
  .intervention-hover-detail { position:absolute; inset:0; padding:19px 22px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; pointer-events:none; opacity:0; color:var(--white); background:linear-gradient(145deg,#071728,#123a59); transform:translateY(8px); transition:opacity .2s ease,transform .2s ease; }
  .intervention-hover-card:hover .intervention-hover-detail,.intervention-hover-card:focus .intervention-hover-detail,.intervention-hover-card:focus-within .intervention-hover-detail { opacity:1; transform:none; }
  .intervention-hover-detail p { margin:0; color:var(--white); font-size:1rem; line-height:1.45; }
  .intervention-hover-detail strong { margin-top:10px; color:#ffb6a5; font-size:.85rem; line-height:1.35; }
  .audiences-overview-page .page-hero { padding-top:25px; padding-bottom:24px; }
  .audiences-overview-page .page-hero h1 { font-size:2.35rem; }
  .audiences-overview-page .page-hero p:last-child { font-size:1.08rem; }
  .audiences-overview-page .audience-hover-grid { position:relative; z-index:1; width:min(1380px,calc(100% - 48px)); margin:auto; padding:22px 0 34px; display:grid; grid-template-columns:repeat(3,1fr); align-items:center; gap:18px; flex:1; }
  .audience-hover-card { position:relative; min-width:0; min-height:310px; padding:34px; display:flex; flex-direction:column; justify-content:center; overflow:hidden; cursor:default; border:1px solid rgba(16,34,52,.14); background:rgba(255,255,255,.96); box-shadow:0 16px 38px rgba(7,23,40,.11); transition:transform .22s ease,box-shadow .22s ease; }
  .audience-hover-card::after { content:"Survolez pour découvrir les leviers"; position:absolute; right:34px; bottom:25px; color:var(--interaction-red); font-size:.78rem; font-style:italic; font-weight:850; letter-spacing:.04em; text-align:right; text-transform:uppercase; }
  .audience-hover-card:hover,.audience-hover-card:focus-visible,.audience-hover-card:focus-within { z-index:2; transform:translateY(-5px); box-shadow:0 24px 52px rgba(7,23,40,.2); outline:none; }
  .audience-hover-card .role { width:max-content; margin:0 0 22px; padding:7px 12px; color:var(--white); background:var(--accent-deep); font-size:1rem; font-weight:850; letter-spacing:.08em; text-transform:uppercase; }
  .audience-hover-card h2 { max-width:12em; color:var(--navy); font-size:clamp(1.65rem,2vw,2.05rem); line-height:1.16; }
  .audience-hover-detail { position:absolute; inset:0; padding:30px 32px; display:flex; flex-direction:column; justify-content:center; pointer-events:none; opacity:0; color:var(--white); background:linear-gradient(145deg,#071728,#123a59); transform:translateY(12px); transition:opacity .22s ease,transform .22s ease; }
  .audience-hover-card:hover .audience-hover-detail,.audience-hover-card:focus .audience-hover-detail,.audience-hover-card:focus-within .audience-hover-detail { opacity:1; transform:none; }
  .audience-hover-detail p { margin:0 0 18px; color:#f1f5f7; font-size:1.05rem; line-height:1.48; }
  .audience-hover-detail ul { margin:0; padding:0; list-style:none; }
  .audience-hover-detail li { padding:9px 0 9px 18px; border-top:1px solid rgba(255,255,255,.15); font-size:1rem; line-height:1.3; }
  .audience-hover-detail li::before { content:"→"; margin-left:-18px; margin-right:7px; color:var(--coral); }
  .perspectives-overview-page .content-section { flex:1; }
  .perspectives-overview-page .document-grid { margin-top:12px; gap:10px; }
  .perspectives-overview-page .document-slot { position:relative; min-height:150px; padding:18px; overflow:hidden; border:0; background:linear-gradient(145deg,#fff,#edf2f5); box-shadow:0 12px 30px rgba(7,23,40,.1); }
  .perspectives-overview-page .document-slot::before { content:"↗"; position:absolute; top:12px; right:15px; color:var(--coral); font-size:1.4rem; font-weight:800; }
  .perspectives-overview-page .document-slot::after { content:""; position:absolute; left:0; bottom:0; width:100%; height:5px; background:linear-gradient(90deg,var(--coral),#f3b09f); }
  .perspectives-overview-page .document-slot span { width:max-content; padding:3px 8px; color:var(--white); background:var(--navy); font-size:.74rem; font-weight:800; text-transform:uppercase; letter-spacing:.08em; }
  .perspectives-overview-page .document-slot b { max-width:80%; color:var(--navy); font-size:1.28rem; }
  .perspectives-overview-page .perspectives-library { flex:1; padding-top:11px; padding-bottom:11px; }
  .perspectives-overview-page .perspectives-library h2 { font-size:1.35rem; }
  .perspective-columns { margin-top:9px; display:grid; grid-template-columns:repeat(3,1fr); gap:10px; }
  .perspective-column { min-width:0; overflow:hidden; border:1px solid rgba(16,34,52,.12); background:rgba(255,255,255,.94); box-shadow:0 10px 28px rgba(7,23,40,.08); }
  .perspective-column > header { padding:10px 12px; display:flex; align-items:center; gap:10px; color:var(--white); background:linear-gradient(110deg,#071728,#123a59); }
  .perspective-column > header span { display:grid; width:25px; height:25px; flex:0 0 auto; place-items:center; color:var(--white); background:var(--coral-dark); border-radius:50%; font-size:.75rem; font-weight:900; }
  .perspective-column > header h3 { margin:0; color:var(--white); font-size:.98rem; }
  .perspective-column article { position:relative; min-height:91px; padding:10px 12px 9px 16px; border-top:1px solid var(--line); }
  .perspective-column article::before { content:''; position:absolute; top:13px; bottom:13px; left:0; width:3px; background:var(--coral); }
  .perspective-column article b { display:block; color:var(--navy); font-family:Georgia,serif; font-size:.95rem; line-height:1.2; }
  .perspective-column article p { margin:5px 0 0; color:var(--muted); font-size:.875rem; line-height:1.32; }
  .perspective-column article small { display:block; margin-top:5px; color:var(--coral-dark); font-size:.75rem; font-weight:900; letter-spacing:.08em; }

  .contact-page { min-height:calc(100vh - 82px); display:flex; flex-direction:column; overflow:hidden; }
  .contact-page .page-hero { padding-top:22px; padding-bottom:22px; }
  .contact-page .page-hero .eyebrow { margin-bottom:6px; }
  .contact-page .page-hero h1 { font-size:2.15rem; }
  .contact-page .page-hero p:last-child { margin-top:7px; font-size:1rem; line-height:1.38; }
  .contact-page .contact-layout { width:100%; flex:1; padding-top:22px; padding-bottom:18px; gap:45px; }
  .contact-page .contact-layout { align-content:center; align-items:center; }
  .contact-page .section-index { margin-bottom:8px; }
  .contact-page .contact-layout h2 { font-size:1.7rem; }
  .contact-page .contact-note { margin-top:14px; }
  .contact-page .contact-form { gap:10px 14px; }
  .contact-page .contact-form label { gap:4px; }
  .contact-page .contact-form input,.contact-page .contact-form textarea { padding:9px 11px; }
  .contact-page .contact-form textarea { min-height:90px; }
  .contact-page .contact-form .form-footer { margin-top:2px; }
  .contact-page + .site-footer { display:none; }
}

@media (max-width:900px) {
  .eyebrow,.section-index { font-weight:400; }
  .about-shell { padding-top:24px; padding-bottom:35px; }
  .about-profile h2 { white-space:normal; }
  .about-positioning-card { min-height:170px; }
  .about-results-card { min-height:292px; padding-bottom:52px; }
  .about-results-detail ul { grid-template-columns:1fr; gap:3px; }
  .about-results-detail { bottom:47px; padding:14px 18px; }
  .about-results-detail li { font-size:.92rem; }
  .organisations-page { min-height:auto; padding:20px 18px 45px; }
  .organisations-page .organisations-hero { padding:22px; }
  .organisations-page .organisations-intro { align-items:flex-start; flex-direction:column; gap:5px; }
  .organisations-page .logo-groups { grid-template-columns:1fr; gap:10px; }
  .organisations-page .logo-group:nth-child(2),.organisations-page .logo-group:nth-child(3),.organisations-page .logo-group:nth-child(4) { grid-column:auto; }
  .organisations-page .logo-group:first-child { width:100%; }
  .organisations-page .logo-group:nth-child(2) .logo-row,.organisations-page .logo-group:nth-child(3) .logo-row,.organisations-page .logo-group:nth-child(4) .logo-row { grid-template-columns:repeat(3,minmax(0,1fr)); }
  .organisations-page .logo-group:nth-child(4) .org-logo-xlarge { grid-column:span 1; }
  .organisations-page .org-logo { min-height:60px; }
  .organisations-page .reference-grid { grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px; }
  .organisations-page .reference-card { min-height:155px; padding:14px; }
  .organisations-page .reference-card > h3 { font-size:1.08rem; }
  .organisations-page .reference-card::after { bottom:12px; font-size:.56rem; }
  .organisations-page .reference-card .logo-row,.organisations-page .reference-card:nth-child(n) .logo-row { width:min(92vw,680px); min-height:0; max-height:68vh; padding:18px 14px; grid-template-columns:repeat(2,minmax(120px,1fr)); gap:8px; }
  .organisations-page .reference-card .org-logo { width:126px; height:74px; min-height:74px; }
  .organisations-page .reference-card .org-logo img,.organisations-page .reference-card .org-logo-wide img,.organisations-page .reference-card .org-logo-small img,.organisations-page .reference-card .org-logo-large img,.organisations-page .reference-card .org-logo-xlarge img,.organisations-page .reference-card .org-logo-complete img { width:112px; height:58px; max-width:112px; max-height:58px; }
  .organisations-page .reference-card .logo-optical-mutuelle { width:150px; }
  .organisations-page .reference-card .logo-optical-mutuelle img { width:144px; height:62px; max-width:144px; max-height:62px; }
  .organisations-page .reference-card .logo-optical-luxembourg { width:170px; }
  .organisations-page .reference-card .logo-optical-luxembourg img { width:164px; height:64px; max-width:164px; max-height:64px; }
  .eato-hover-grid { margin-top:12px; display:grid; grid-template-columns:1fr; gap:10px; }
  .eato-hover-card { position:relative; min-height:145px; padding:20px; overflow:hidden; border:1px solid rgba(16,34,52,.14); background:var(--white); box-shadow:0 8px 22px rgba(7,23,40,.09); }
  .eato-hover-card .number { width:100%; min-height:29px; margin-bottom:10px; padding:5px 9px; display:flex; align-items:center; box-sizing:border-box; color:var(--white); background:var(--navy); font-size:.78rem; font-weight:850; }
  .eato-hover-card h3 { color:var(--navy); font-size:1.28rem; }
  .eato-hover-detail { position:absolute; inset:0; padding:20px; display:flex; align-items:center; overflow:auto; pointer-events:none; opacity:0; color:var(--white); background:linear-gradient(145deg,#071728,#123a59); transition:opacity .2s ease; }
  .eato-hover-card:hover .eato-hover-detail,.eato-hover-card:focus .eato-hover-detail,.eato-hover-card:focus-within .eato-hover-detail { opacity:1; }
  .eato-hover-card:focus { outline:2px solid var(--accent-deep); outline-offset:2px; }
  .eato-hover-detail p { margin:0; color:var(--white); line-height:1.42; }
  .case-summary-grid { grid-template-columns:1fr; }
  .case-summary-grid article { min-height:210px; padding:20px; display:grid; grid-template-columns:auto 1fr; align-content:center; align-items:start; gap:0 10px; cursor:pointer; }
  .case-summary-grid span,.case-summary-grid h2 { position:relative; z-index:2; grid-row:1; }
  .case-summary-grid h2 { margin:0; font-size:1.25rem; }
  .case-summary-grid p { position:absolute; z-index:1; inset:0; margin:0; padding:72px 20px 16px; display:flex; align-items:center; overflow:auto; pointer-events:none; opacity:0; color:var(--white); background:linear-gradient(145deg,#071728,#123a59); font-size:1rem; line-height:1.5; transition:opacity .18s ease; }
  .case-summary-grid article:hover,.case-summary-grid article:focus,.case-summary-grid article:focus-within { align-content:start; }
  .case-summary-grid article:hover p,.case-summary-grid article:focus p,.case-summary-grid article:focus-within p { opacity:1; }
  .case-summary-grid article:hover span,.case-summary-grid article:focus span,.case-summary-grid article:focus-within span { color:var(--coral); }
  .case-summary-grid article:hover h2,.case-summary-grid article:focus h2,.case-summary-grid article:focus-within h2 { color:var(--white); }
  .case-learning { grid-template-columns:1fr; align-items:start; }
  .editorial-grid,.editorial-grid-five,.editorial-grid-six { grid-template-columns:1fr; }
  .method-steps > div,.method-steps .three-steps { grid-template-columns:1fr; }
  .editorial-sequence { flex-wrap:wrap; }
  .editorial-sequence span { flex:1 1 42%; }
  .editorial-sequence i { display:none; }
  .organisations-page + .site-footer { display:grid; }
  .audiences-overview-page .audience-hover-grid { position:relative; z-index:1; width:calc(100% - 32px); margin:18px auto 32px; display:grid; grid-template-columns:1fr; gap:12px; }
  .intervention-stage { position:relative; z-index:1; width:calc(100% - 32px); margin:18px auto 32px; }
  .intervention-stage > header { margin-bottom:12px; }
  .intervention-stage h2 { font-size:1.4rem; }
  .intervention-hover-grid { display:grid; grid-template-columns:1fr; gap:10px; }
  .intervention-hover-card { position:relative; min-height:145px; padding:20px; overflow:hidden; border:1px solid rgba(16,34,52,.14); background:var(--white); box-shadow:0 8px 22px rgba(7,23,40,.09); }
  .intervention-hover-card .number { display:grid; width:28px; height:28px; margin-bottom:10px; place-items:center; color:var(--white); background:var(--coral-dark); border-radius:50%; font-size:.78rem; font-weight:900; }
  .intervention-hover-card h3 { color:var(--navy); font-size:1.2rem; line-height:1.2; }
  .intervention-hover-detail { position:absolute; inset:0; padding:18px; display:flex; flex-direction:column; align-items:flex-start; justify-content:center; overflow:auto; pointer-events:none; opacity:0; color:var(--white); background:linear-gradient(145deg,#071728,#123a59); transition:opacity .2s ease; }
  .intervention-hover-card:hover .intervention-hover-detail,.intervention-hover-card:focus .intervention-hover-detail,.intervention-hover-card:focus-within .intervention-hover-detail { opacity:1; }
  .intervention-hover-card:focus { outline:2px solid var(--accent-deep); outline-offset:2px; }
  .intervention-hover-detail p { margin:0; color:var(--white); line-height:1.42; }
  .intervention-hover-detail strong { margin-top:8px; color:#ffb6a5; font-size:.82rem; line-height:1.3; }
  .audience-hover-card { position:relative; min-height:210px; padding:24px; overflow:hidden; border:1px solid rgba(16,34,52,.14); background:var(--white); box-shadow:0 10px 28px rgba(7,23,40,.1); }
  .audience-hover-card .role { display:inline-block; margin:0 0 14px; padding:6px 10px; color:var(--white); background:var(--accent-deep); font-size:.9rem; font-weight:850; letter-spacing:.07em; text-transform:uppercase; }
  .audience-hover-card h2 { color:var(--navy); font-size:1.5rem; line-height:1.18; }
  .audience-hover-detail { position:absolute; inset:0; padding:22px; overflow:auto; pointer-events:none; opacity:0; color:var(--white); background:linear-gradient(145deg,#071728,#123a59); transition:opacity .2s ease; }
  .audience-hover-card:hover .audience-hover-detail,.audience-hover-card:focus .audience-hover-detail,.audience-hover-card:focus-within .audience-hover-detail { opacity:1; }
  .audience-hover-card:focus { outline:2px solid var(--accent-deep); outline-offset:2px; }
  .audience-hover-detail p { margin:0 0 12px; color:var(--white); line-height:1.4; }
  .audience-hover-detail ul { margin:0; padding-left:20px; }
  .audience-hover-detail li { margin:7px 0; }
  .resource-launchers strong { font-size:20px; }
  .perspective-columns { grid-template-columns:1fr; }
  .resource-browser { grid-template-columns:1fr; }
  .resource-tabs { grid-template-columns:1fr; }
  .resource-tabs button { min-height:64px; }
  .perspective-column article { min-height:0; }
  .perspective-resource { min-height:0; }
  .blind-spot-callout { grid-template-columns:1fr; }
  .blind-spot-grid,.why-forgotten,.field-lessons > div { grid-template-columns:1fr; }
  .change-sequence { flex-wrap:wrap; }
  .change-sequence span { flex:1 1 28%; }
  .change-sequence i { display:none; }
  .diagnostic-guide > article { grid-template-columns:36px 1fr; }
  .diagnostic-guide > article > div:nth-of-type(n+2) { grid-column:2; }
  .guide-use > div { grid-template-columns:1fr 1fr; }
  .insight-conclusion { align-items:flex-start; flex-direction:column; }
  .strategy-steps { grid-template-columns:1fr 1fr; }
  .strategy-steps article { min-height:0; }
  .governance-levels { grid-template-columns:1fr; }
  .governance-levels article { min-height:0; }
  .governance-levels article + article::before { content:'↓'; top:-20px; left:50%; transform:translateX(-50%); }
  .architecture-system { grid-template-columns:repeat(2,1fr); }
  .architecture-core { grid-column:1/-1; grid-row:1; }
  .execution-flow { grid-template-columns:1fr; }
  .execution-flow > i { justify-self:center; transform:rotate(90deg); }
  .guide-question-grid { display:grid; grid-template-columns:1fr; gap:9px; }
  .guide-question-grid > article { position:relative; padding:18px; z-index:1; cursor:pointer; border:1px solid #d9e2e7; background:linear-gradient(145deg,#fffaf8,#f2f7f9); }
  .guide-question-grid > article:focus { z-index:10; outline:2px solid var(--accent-deep); }
  .guide-question-grid h2 { margin:7px 0 0; color:var(--navy); font-size:1.12rem; }
  .guide-detail { position:absolute; top:calc(100% - 5px); left:8px; right:8px; padding:15px; pointer-events:none; opacity:0; color:var(--white); background:var(--navy); box-shadow:0 15px 35px rgba(0,0,0,.28); }
  .guide-question-grid > article:hover .guide-detail,.guide-question-grid > article:focus .guide-detail { opacity:1; }
  .guide-detail b { display:block; margin-top:9px; color:#ffb6a5; }
  .guide-detail p { margin:3px 0 0; color:var(--white); line-height:1.45; }
}

@media (max-width:560px) {
  .diagnostic-shell { padding:28px 16px 36px; }
  .result-panel { padding:22px 16px; }
  .result-layout,.result-content { grid-template-columns:1fr; }
  .result-card { padding:22px 18px; }
  .result-score { min-height:105px; }
  .result-next { border-left:0; border-top:1px solid rgba(255,255,255,.25); }
  .result-next > span { margin:10px 0; transform:rotate(90deg); }
  .result-actions { align-items:stretch; flex-direction:column; }
  .result-actions .button { width:100%; }
  .scale-legend { align-items:flex-start; flex-direction:column; gap:6px; }
  .scale-legend span { font-size:1rem; }
  .question { padding:18px; }
  .question p { font-size:1.05rem; line-height:1.42; }
  .rating span { min-height:48px; font-size:1rem; }
  .insight-body { width:min(100% - 32px,1100px); }
  .insight-hero h1 { font-size:2.35rem; }
  .guide-page .insight-hero h1 { font-size:20px; line-height:1.3; }
  .insight-lead,.insight-body > blockquote { font-size:1.1rem; }
  .guide-use > div { grid-template-columns:1fr; }
  .diagnostic-guide > article { grid-template-columns:1fr; }
  .diagnostic-guide > article > div:nth-of-type(n+2) { grid-column:auto; }
  .strategy-dialog-inner { padding:54px 18px 20px; }
  .strategy-dialog h2 { font-size:20px; }
  .strategy-steps { grid-template-columns:1fr; margin-top:22px; }
  .strategy-steps h3 { margin-top:8px; }
  .concept-dialog-inner { padding:54px 18px 20px; }
  .concept-dialog h2 { font-size:20px; }
  .governance-levels,.architecture-system,.execution-flow { margin-top:22px; }
  .architecture-system { grid-template-columns:1fr; }
  .architecture-core { grid-column:auto; }
  .search-toggle { width:40px; padding:8px; justify-content:center; overflow:hidden; color:transparent; gap:0; }
  .search-toggle span { color:var(--interaction-red); }
  .site-search { width:calc(100% - 20px); max-height:calc(100vh - 20px); }
  .site-search-inner { padding:26px 17px; }
  .search-results a { padding:14px 16px; }
  .search-results i { position:static; margin-top:8px; display:block; transform:none; }
}

/* Final harmonisation: interaction windows and white-card edge */
.eato-hover-detail p,.intervention-hover-detail p,.audience-hover-detail p,.audience-hover-detail li,.blind-spot-grid article > p,.guide-detail p,.editorial-grid article > p,.method-steps article > p,.case-summary-grid article > p,.change-thread-card > p:last-child { font-size:1rem; line-height:1.5; }
.about-results-detail li { font-size:.86rem; line-height:1.3; }
.hover-window-title { font-size:1.08rem; line-height:1.3; }
.card,.question,.profile-picker button,.eato-hover-card,.intervention-hover-card,.audience-hover-card,.blind-spot-grid article,.guide-question-grid > article,.editorial-grid article,.method-steps article,.case-summary-grid article { border-top:2px solid rgba(240,109,79,.55); }

/* Reporting levels: clearer resting state, aligned with the six practices */
.method-steps .three-steps article { background:#eef2f4; }
.resource-article-page .method-steps .three-steps b { font-size:1.22rem; line-height:1.16; }

/* Requested visual and typographic consistency across all language versions. */
.eato-hover-card,
.intervention-hover-card,
.audience-hover-card { background:linear-gradient(145deg,#d4dbe0 0%,#eef1f3 58%,#dce2e6 100%); }
.intervention-hover-card .number,
.intervention-hover-card h3 { font-weight:400; }
.eato-overview-page .quote-band blockquote b { font-weight:400; }
.eato-overview-page .flow span { font-weight:400 !important; }
.resource-article-page .method-steps b { font-size:1.22rem; font-weight:400; line-height:1.22; }
.organisations-page .reference-card:nth-child(5) { background:linear-gradient(140deg,#10263e,#374f75); }
.arabic-card { background:linear-gradient(145deg,#d4dbe0 0%,#eef1f3 58%,#dce2e6 100%); }
.arabic-card > b,
.arabic-card > h3 { font-weight:400; }

/* Explicit interaction cue on the four home-page dimensions. */
.system-line .system-dimension { position:relative; min-height:68px; padding-bottom:30px; }
.system-line .system-dimension::after { position:absolute; right:13px; bottom:7px; color:var(--interaction-red); font-family:Inter,sans-serif; font-size:.72rem; font-style:italic; font-weight:400; letter-spacing:.02em; }
html[lang^="fr"] .system-line .system-dimension::after { content:"Cliquer ici"; }
html[lang^="en"] .system-line .system-dimension::after { content:"Click here"; }
html[lang^="es"] .system-line .system-dimension::after { content:"Haga clic aquí"; }
html[lang^="de"] .system-line .system-dimension::after { content:"Hier klicken"; }

/* Resource hover windows use regular-weight typography throughout. */
.resource-dialog,
.resource-dialog * { font-weight:400 !important; }

/* Unified, understated interaction guidance. */
.system-line .system-dimension::after,
.resource-launchers i,
.organisations-page .reference-card::after { color:#b8c3cc; }

.eato-hover-card,
.intervention-hover-card,
.audience-hover-card { padding-bottom:42px; }
.eato-hover-card::after,
.intervention-hover-card::after,
.audience-hover-card::after { position:absolute; right:18px; bottom:12px; color:#111; font-family:Inter,sans-serif; font-size:.75rem; font-style:italic; font-weight:400; line-height:1.2; transition:opacity .15s ease; }
html[lang^="fr"] .eato-hover-card::after,
html[lang^="fr"] .intervention-hover-card::after,
html[lang^="fr"] .audience-hover-card::after { content:"Survoler"; }
html[lang^="en"] .eato-hover-card::after,
html[lang^="en"] .intervention-hover-card::after,
html[lang^="en"] .audience-hover-card::after { content:"Hover"; }
html[lang^="es"] .eato-hover-card::after,
html[lang^="es"] .intervention-hover-card::after,
html[lang^="es"] .audience-hover-card::after { content:"Pasar el cursor"; }
html[lang^="de"] .eato-hover-card::after,
html[lang^="de"] .intervention-hover-card::after,
html[lang^="de"] .audience-hover-card::after { content:"Darüberfahren"; }
.eato-hover-card:hover::after,
.eato-hover-card:focus::after,
.eato-hover-card:focus-within::after,
.intervention-hover-card:hover::after,
.intervention-hover-card:focus::after,
.intervention-hover-card:focus-within::after,
.audience-hover-card:hover::after,
.audience-hover-card:focus::after,
.audience-hover-card:focus-within::after { opacity:0; }

html[lang^="fr"] .organisations-page .reference-card::after { content:"Survoler"; }
html[lang^="en"] .organisations-page .reference-card::after { content:"Hover"; }
html[lang^="es"] .organisations-page .reference-card::after { content:"Pasar el cursor"; }
html[lang^="de"] .organisations-page .reference-card::after { content:"Darüberfahren"; }

.audience-hover-card h2 { font-size:clamp(1.35rem,1.65vw,1.65rem); line-height:1.2; }

/* Legal information */
.legal-page { min-height:calc(100vh - 82px); background:var(--paper); }
.legal-hero { padding:52px max(24px,calc((100vw - var(--max))/2)) 34px; color:var(--white); background:var(--navy); }
.legal-hero .eyebrow { margin-bottom:8px; }
.legal-hero h1 { font-size:clamp(2rem,3.2vw,3rem); }
.legal-hero p:last-child { max-width:850px; margin:16px 0 0; color:#cbd4dc; font-size:1rem; }
.legal-content { max-width:1000px; margin:0 auto; padding:42px 24px 70px; display:grid; grid-template-columns:1fr 1fr; gap:18px; }
.legal-content section { padding:24px; border-top:3px solid var(--coral); background:var(--white); box-shadow:0 8px 24px rgba(7,23,40,.07); }
.legal-content section.wide { grid-column:1/-1; }
.legal-content h2 { color:var(--navy); font-size:1.35rem; }
.legal-content h3 { margin:20px 0 5px; color:var(--navy); font-size:1rem; }
.legal-content p,.legal-content li { color:#45535e; font-size:.96rem; line-height:1.55; }
.legal-content p { margin:10px 0 0; }
.legal-content ul { margin:10px 0 0; padding-left:20px; }
.legal-content a { color:var(--accent-deep); font-weight:750; text-decoration:underline; text-underline-offset:3px; }
@media (max-width:720px) {
  .legal-content { grid-template-columns:1fr; }
  .legal-content section.wide { grid-column:auto; }
  .site-footer .footer-links { justify-items:start; }
}

/* About page: more breathing room and slightly stronger reading size */
.about-profile { display:flex; flex-direction:column; }
.about-copy { margin-top:16px; font-size:.96rem; line-height:1.5; }
.about-conviction { margin-top:16px; padding:11px 14px; font-size:.9rem; line-height:1.42; }
.about-results-card { margin-top:19px; }
.about-journey-copy { padding-bottom:20px; }
.about-journey-copy > p:last-child { margin-top:14px; font-size:.92rem; line-height:1.5; }
.about-journey figure { padding-top:10px; }

/* Reading-size alignment for case conclusions, methods and sequences */
.case-page .case-learning p:not(.section-index),
.guide-page .guide-use p,
.resource-article-page .editorial-band p:not(.section-index) { font-size:1rem; line-height:1.5; }
.resource-article-page .editorial-sequence span,
.eato-overview-page .flow span { font-size:1rem; line-height:1.35; font-weight:800; }

@media (max-width:900px) {
  .about-copy { font-size:1rem; }
  .about-conviction { font-size:.95rem; }
  .about-journey-copy > p:last-child { font-size:.96rem; }
}

/* Sous-titres de page : hiérarchie plus nette et lecture immédiate */
.hero-content > .lead,
.experience-main #accueil > .copy,
.page-hero > p:last-child,
.perspectives-hub-head > p:last-child,
.insight-hero > div > p:last-child,
.legal-hero > p:last-child {
  max-width:900px;
  padding-left:16px;
  border-left:3px solid var(--coral);
  color:#eef3f6 !important;
  font-size:clamp(1.08rem,1.35vw,1.22rem) !important;
  font-variant-caps:all-small-caps;
  font-weight:600;
  letter-spacing:.035em;
  line-height:1.55 !important;
}
.diagnostic-shell > .lead {
  max-width:820px;
  padding-left:16px;
  border-left:3px solid var(--coral);
  color:#354b5d !important;
  font-size:clamp(1.06rem,1.3vw,1.18rem) !important;
  font-variant-caps:all-small-caps;
  font-weight:650;
  letter-spacing:.035em;
  line-height:1.5 !important;
}
.organisations-page .organisations-hero h1 span {
  display:block;
  margin-top:8px;
  padding-left:14px;
  border-left:2px solid var(--coral);
  color:#e8eef2;
  font-variant-caps:all-small-caps;
  font-weight:550;
  letter-spacing:.035em;
  line-height:1.5;
}
@media (max-width:680px) {
  .hero-content > .lead,
  .experience-main #accueil > .copy,
  .page-hero > p:last-child,
  .perspectives-hub-head > p:last-child,
  .insight-hero > div > p:last-child,
  .legal-hero > p:last-child,
  .diagnostic-shell > .lead { padding-left:12px; font-size:1.02rem !important; line-height:1.48 !important; }
}

/* Private validation presentation rules */
.eyebrow,
.section-index,
.strategy-kicker,
.concept-kicker,
.hero-content > .lead,
.experience-main #accueil > .copy,
.page-hero > p:last-child,
.perspectives-hub-head > p:last-child,
.insight-hero > div > p:last-child,
.legal-hero > p:last-child,
.diagnostic-shell > .lead,
.organisations-page .organisations-hero h1 span { font-weight:400 !important; }

.button,
.page-back,
.resource-dialog-close,
.map-dialog-close,
.dimension-dialog-close,
.site-search-close,
.resource-launchers i,
.resource-dialog-list small,
.perspective-column article small,
.perspective-resource small,
.search-results i,
.interaction-hint,
.insight-conclusion a,
.about-map .map-enlarge span,
.about-results-card > small,
.arabic-cta { font-weight:400 !important; }

.organisations-page .reference-card::after,
.audience-hover-card::after { font-weight:400 !important; }

.eato-hover-card .number,
.eato-hover-card h3,
.eato-hover-detail p,
.dimension h3,
.dimension span,
.not-item h3,
.not-item span,
.change h3,
.change span,
.question p { font-weight:400 !important; }

.scale-legend + .profile-picker { margin-top:0; }

/* About page: regular typography, unobstructed expertise reveal and taller map */
.about-grid .section-index,
.about-grid h2,
.about-grid h3,
.about-grid strong,
.about-grid small,
.about-grid li,
.about-grid p,
.profile-download-card { font-weight:400 !important; }

.about-results-card { min-height:188px; }
.about-results-detail { inset:0; padding:16px 18px; }
.about-results-card:hover > small,
.about-results-card:focus > small,
.about-results-card:focus-within > small { opacity:0; visibility:hidden; }
.about-results-detail li { font-weight:400 !important; }

.about-journey-copy > p:last-child { font-size:1.05rem; line-height:1.55; }
.about-map .map-enlarge img { width:100%; height:clamp(265px,23vw,340px); object-fit:fill; }

@media (max-width:900px) {
  .about-results-card { min-height:292px; padding-bottom:52px; }
  .about-results-detail { inset:0; padding:16px 18px; }
  .about-journey-copy > p:last-child { font-size:1.02rem; }
  .about-map .map-enlarge img { height:auto; object-fit:contain; }
}
