/* Piliers : reprise du contenu existant dans la composition actuelle. */
.pillars-page{background:#faf9f5;color:#16343d;font-family:Nunito,sans-serif}
.pillars-page .container{width:80%;max-width:1400px;margin:auto}
.screen-flow .pillars-page .pillars-hero{background:#faf9f5;padding-top:120px}
.pillars-page .science-grid{display:grid;grid-template-columns:1fr 1fr;gap:55px;align-items:center}
.pillars-page .pillars-hero h1{font-size:clamp(36px,4.5vw,64px);line-height:1.12;color:#16343d}
.pillars-page .pillars-hero p{font-size:20px;line-height:1.5}
.pillars-page .screen-section h2{max-width:30ch}
.pillars-page .soft-section,.pillars-page .delivery{background:#fff}
.pillars-page .objectives,.pillars-page .related{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:30px}
.pillars-page .objectives article{border-top:2px solid #5ce3d4;padding-top:20px;background:none}
.pillars-page .pillar-definitions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:25px 0}
.pillars-page .pillar-def{display:flex;gap:18px;align-items:center;padding:20px 0;border:0;border-top:1px solid #cbd9d6;background:none}
.pillars-page .pillar-icon svg{width:40px;height:40px;fill:none;stroke:currentColor;stroke-width:1.7}
.pillars-page .pillar-def.att{color:#31bd7b}.pillars-page .pillar-def.mem{color:#055769}.pillars-page .pillar-def.emo{color:#0d9283}.pillars-page .pillar-def.dec{color:#289dd2}
.pillars-page .pillar-def h3{color:inherit;font-size:25px;margin:0 0 8px}.pillars-page .pillar-def p{color:#16343d;margin:0}
.pillars-page .profile-pair{display:grid;grid-template-columns:1fr 1fr;gap:35px;margin:25px 0}
.pillars-page .profile-pair article{background:none;padding:0}
.pillars-page .screen-section p{font-size:18px;line-height:1.5}
.pillars-page .screen-section .mission-note,.pillars-page .screen-section .page-reserve{font-size:14px}
.pillars-page .related a{border-top:1px solid #169e91;padding:22px 0;display:flex;flex-direction:column;gap:12px}
@media(max-width:800px){
 .pillars-page .container{width:90%}
 .pillars-page .science-grid,.pillars-page .profile-pair,.pillars-page .objectives,.pillars-page .related{grid-template-columns:1fr;gap:20px}
 .screen-flow .pillars-page .pillars-hero{padding-top:88px}
 .pillars-page .pillars-hero h1{font-size:34px}
 .pillars-page .pillar-definitions{grid-template-columns:1fr;gap:8px}
 .pillars-page .screen-section p{font-size:16px}
 .pillars-page .science-map .map{height:300px}
 .pillars-page .method-engine{display:block}
}
/* Piliers : hero ardoise, carte détaillée et exemples contextualisés. */
.screen-flow .pillars-page .pillars-hero{background:#16343d;color:#fff}
.pillars-page .pillars-hero h1{color:#fff}
.pillars-page .pillars-hero .map-center{background:#16343d;color:#fff;border-color:#5ce3d4}
.pillars-page .pillars-hero .connections{opacity:.45}
.pillar-understanding{background:#fff}
.pillar-understanding-grid{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1.6fr);align-items:center;gap:45px}
.screen-flow .pillar-context h2{font-size:clamp(26px,2.7vw,38px)}
.pillars-page .pillar-context p{font-size:17px}
.detailed-map{display:grid;grid-template-columns:1fr 1fr;gap:20px 30px;position:relative}
.detailed-map-center{grid-column:1/-1;text-align:center;font-size:18px;padding:12px 0;border-bottom:1px solid #d6e2df}
.definition-node{padding:16px 0;border-top:2px solid var(--pillar)}
.definition-node.att{--pillar:#31bd7b}.definition-node.mem{--pillar:#055769}.definition-node.emo{--pillar:#0d9283}.definition-node.dec{--pillar:#289dd2}
.definition-node h3{display:flex;gap:12px;align-items:center;color:var(--pillar);font-size:21px;line-height:1.25;margin:0 0 14px}
.definition-node svg{width:30px;height:30px;flex-shrink:0;fill:none;stroke:currentColor;stroke-width:1.7}
.pillars-page .definition-node p{font-size:15px;line-height:1.5;margin:0}
.pillar-examples>p{max-width:80ch}
.campaign-examples-tabs{display:flex;gap:12px;margin:24px 0}
.campaign-examples-tabs button{font:800 17px Nunito,sans-serif;padding:13px 22px;border:0;background:#e9ece8;color:#16343d;border-radius:6px;cursor:pointer}
.campaign-examples-tabs button[aria-selected=true]{background:#5ce3d4}
.campaign-examples-tabs button:focus-visible{outline:2px solid #087f79;outline-offset:4px}
.campaign-example-content{padding:25px 0;border-top:1px solid #169e91;min-height:170px}
.campaign-example-content h3{font-size:28px;margin:0 0 15px}
.campaign-example-content [hidden]{display:none}
.pillars-page .examples-note{font-size:14px;max-width:90ch;color:#52696e}
@media(max-width:800px){
 .pillar-understanding-grid{grid-template-columns:1fr;gap:25px}
 .detailed-map{grid-template-columns:1fr;gap:18px}
 .campaign-examples-tabs{gap:6px;flex-wrap:wrap}
 .campaign-examples-tabs button{font-size:14px;padding:10px 12px}
 .campaign-example-content h3{font-size:24px}
}
/* Reprendre les marges et proportions des pages Moteur et Services. */
.pillars-page .wrap{width:80%;max-width:1440px;margin-left:auto;margin-right:auto}
.pillars-page .science-grid{grid-template-columns:1.1fr 1fr;gap:clamp(35px,5vw,80px)}
.pillars-page .science-grid>div,.pillars-page .pillar-understanding-grid>div{min-width:0}
.pillars-page .science-map{width:100%;margin:0}
.pillars-page .science-map .map{margin:0 auto;width:100%;max-width:550px}
.pillars-page .pillars-hero h1{margin:0 0 25px;font-size:clamp(36px,4.3vw,60px)}
.pillars-page .pillars-hero p{margin:0;max-width:36ch}
.pillars-page .pillar-understanding-grid{gap:clamp(35px,4vw,65px)}
.pillars-page .pillar-context h2{margin:0 0 24px}
.pillars-page .definition-node{border-top:0;padding:16px 0}
.pillars-page .detailed-map{gap:24px 35px;padding:25px 0}
.pillars-page .detailed-map-center{border:0;margin-bottom:10px}
.pillars-page .pillar-examples h2{max-width:28ch;margin:0 0 25px}
.pillars-page .pillar-examples>p{max-width:75ch}
.pillars-page .campaign-example-content{padding:28px 0;max-width:100%;min-height:180px}
@media(max-width:800px){
 .pillars-page .wrap{width:90%}
 .pillars-page .science-grid,.pillars-page .pillar-understanding-grid{grid-template-columns:1fr;gap:30px}
 .pillars-page .science-map .map{height:320px;max-width:420px}
 .pillars-page .detailed-map{padding:0;gap:18px}
 .pillars-page .pillars-hero h1{font-size:34px}
}
/* Définitions lisibles, références discrètes et profils des trois campagnes. */
.pillars-page .definition-node h3,.pillars-page .definition-node p,.pillars-page .definition-node li{color:#111}
.pillars-page .definition-node svg{color:var(--pillar)}
.pillars-page .definition-node ul{margin:12px 0 0;padding-left:18px;font-size:15px;line-height:1.5}
.pillars-page .definition-node li+li{margin-top:7px}
.pillars-page .pillar-references{margin-top:24px;padding-top:14px;border-top:1px solid #d6e2df}
.pillars-page .pillar-references h3{font-size:13px;margin:0 0 8px}
.pillars-page .pillar-references p{font-size:12px;line-height:1.45;margin:0 0 7px}
.pillars-page .pillar-references a{color:#52696e;text-underline-offset:3px}
.pillars-page .campaign-example-content [role=tabpanel]:not([hidden]){display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:clamp(24px,4vw,60px);align-items:center}
.pillars-page .campaign-profile{margin:0;min-width:0}
.pillars-page .campaign-profile figcaption{font-size:17px;font-weight:800;margin-bottom:22px}
.example-bar-row{display:grid;grid-template-columns:115px minmax(0,1fr);gap:12px;align-items:center;margin:20px 0;color:var(--pillar)}
.example-bar-row.att{--pillar:#31bd7b}.example-bar-row.mem{--pillar:#055769}.example-bar-row.emo{--pillar:#0d9283}.example-bar-row.dec{--pillar:#289dd2}
.example-pillar{display:flex;gap:8px;align-items:center;font-size:15px;font-weight:800}
.example-pillar svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:1.7;flex-shrink:0}
.example-bar-track{display:flex;align-items:center;gap:8px;min-width:0}
.example-bar{height:10px;background:var(--pillar);flex-shrink:0}
.example-bar-tag{font-size:11px;font-weight:800;white-space:nowrap}
@media(max-width:800px){.pillars-page .campaign-example-content [role=tabpanel]:not([hidden]){grid-template-columns:1fr}.example-bar-row{grid-template-columns:95px minmax(0,1fr);gap:8px}.example-pillar{font-size:13px}.example-bar-tag{font-size:10px}.pillars-page .pillar-references{margin-bottom:12px}}
/* Comment : message principal prioritaire, définitions secondaires, sources en pied. */
.pillars-page .pillar-understanding-grid{grid-template-columns:minmax(0,1fr) minmax(0,1.25fr);column-gap:clamp(32px,4vw,64px);row-gap:24px;align-items:center}
.pillars-page .pillar-context h2{font-size:clamp(30px,3.1vw,44px);line-height:1.12;margin:0 0 22px}
.pillars-page .pillar-context p{font-size:18px;line-height:1.5;margin:0 0 16px}
.pillars-page .detailed-map{gap:22px 26px;padding:0}
.pillars-page .definition-node{padding:0}
.pillars-page .definition-node h3{font-size:18px;line-height:1.2;gap:9px;margin:0 0 10px}
.pillars-page .definition-node svg{width:25px;height:25px}
.pillars-page .definition-node p,.pillars-page .definition-node ul{font-size:13px;line-height:1.4}
.pillars-page .definition-node ul{margin-top:8px;padding-left:16px}
.pillars-page .definition-node li+li{margin-top:4px}
.pillars-page .pillar-understanding-grid>.pillar-references{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:5px 28px;margin:0;padding-top:12px}
.pillars-page .pillar-references h3{grid-column:1/-1;margin:0 0 3px}
.pillars-page .pillar-references p{font-size:11px;line-height:1.35;margin:0}
@media(min-width:801px) and (max-height:800px){
 .screen-flow .pillars-page .pillar-understanding{padding-top:100px;padding-bottom:24px}
 .pillars-page .pillar-understanding-grid{row-gap:16px}
 .pillars-page .pillar-context h2{font-size:32px;margin-bottom:16px}
 .pillars-page .pillar-context p{font-size:17px;margin-bottom:12px}
 .pillars-page .detailed-map{gap:16px 22px}
}
@media(max-width:800px){
 .pillars-page .pillar-understanding-grid{grid-template-columns:1fr;gap:28px}
 .pillars-page .pillar-context h2{font-size:32px}
 .pillars-page .definition-node p,.pillars-page .definition-node ul{font-size:15px;line-height:1.5}
 .pillars-page .pillar-understanding-grid>.pillar-references{grid-template-columns:1fr}
}
/* Exemples de campagnes : un écran desktop, graphique et onglets réunis. */
@media(min-width:801px){
 .screen-flow .pillars-page .pillar-examples{padding-top:clamp(96px,13svh,125px);padding-bottom:24px}
 .pillars-page .pillar-examples h2{font-size:clamp(30px,4.6svh,44px);line-height:1.12;max-width:38ch;margin:0 0 16px}
 .pillars-page .pillar-examples>p:not(.examples-note){font-size:16px;line-height:1.45;max-width:100ch;margin:0 0 16px}
 .pillars-page .campaign-examples-tabs{margin:0 0 16px;gap:10px}
 .pillars-page .campaign-examples-tabs button{font-size:15px;padding:10px 18px}
 .pillars-page .campaign-example-content{padding:20px 0;min-height:0}
 .pillars-page .campaign-example-content [role=tabpanel]:not([hidden]){grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:clamp(28px,4vw,60px)}
 .pillars-page .campaign-example-copy h3{font-size:clamp(23px,3.2svh,30px);line-height:1.2;margin:0 0 12px}
 .pillars-page .campaign-example-copy p{font-size:16px;line-height:1.5;margin:0;max-width:42ch}
 .pillars-page .campaign-profile figcaption{font-size:16px;line-height:1.35;margin-bottom:16px}
 .pillars-page .example-bar-row{margin:16px 0}
 .pillars-page .examples-note{font-size:12px;line-height:1.4;margin:8px 0 0;max-width:110ch}
}
@media(min-width:801px) and (max-height:700px){
 .screen-flow .pillars-page .pillar-examples{padding-top:88px;padding-bottom:18px}
 .pillars-page .pillar-examples h2{font-size:30px;margin-bottom:12px}
 .pillars-page .pillar-examples>p:not(.examples-note){font-size:15px;margin-bottom:12px}
 .pillars-page .campaign-examples-tabs{margin-bottom:12px}
 .pillars-page .campaign-example-content{padding:14px 0}
 .pillars-page .campaign-profile figcaption{margin-bottom:10px}
 .pillars-page .example-bar-row{margin:12px 0}
}

/* Sciences : gabarit mobile dense sans réduire la lisibilité des piliers. */
@media(max-width:800px){
 .screen-flow .pillars-page .pillars-hero{min-height:calc(100svh - 80px);padding:88px 5% 16px}
 .pillars-page .pillars-hero h1{font-size:30px;line-height:1.08;margin-bottom:14px}
 .pillars-page .pillars-hero p{font-size:15px;line-height:1.35}
 .pillars-page .science-map .map{height:245px;max-width:300px}
 .pillars-page .science-map .map-center{padding:10px 11px;font-size:12px}
 .pillars-page .science-map .map-center strong{font-size:15px;line-height:1.1}
 .pillars-page .science-map .map-center span{font-size:11px;margin-top:4px}
 .pillars-page .campaign-examples-tabs{display:flex;flex-wrap:nowrap;width:100%;gap:4px;margin:12px 0}
 .pillars-page .campaign-examples-tabs button{flex:1;font-size:11px;line-height:1.15;padding:8px 3px;white-space:nowrap}
 .screen-flow .pillars-page .pillar-examples{padding:86px 5% 14px}
 .pillars-page .pillar-examples h2{font-size:25px;line-height:1.14;margin-bottom:10px}
 .pillars-page .pillar-examples>p:not(.examples-note){font-size:14px;line-height:1.35;margin:0 0 10px}
 .pillars-page .campaign-example-content{padding:12px 0}
 .pillars-page .campaign-example-copy h3{font-size:20px;margin-bottom:7px}
 .pillars-page .campaign-example-copy p,.pillars-page .campaign-profile figcaption{font-size:13px;line-height:1.35;margin-bottom:8px}
 .example-bar-row{margin:8px 0;grid-template-columns:84px minmax(0,1fr)}
 .example-pillar{font-size:11px;gap:4px}.example-pillar svg{width:17px;height:17px}
 .example-bar{height:7px}.example-bar-tag{font-size:8px}
 .pillars-page .examples-note{font-size:10px;line-height:1.28;margin-top:6px}
 .pillars-page .os-close{padding:54px 6%}
 .pillars-page .os-close h2{font-size:30px}.pillars-page .os-close p{font-size:16px}
}

.pillars-page .os-close{text-align:center;align-items:center}
@media(min-width:801px){
 .pillars-page .science-map .map{height:330px;max-width:470px}
 .pillars-page .science-map .map-center{padding:13px 15px;font-size:14px}
 .pillars-page .science-map .map-center strong{font-size:18px;line-height:1.15}
 .pillars-page .science-map .map-center span{font-size:13px;margin-top:5px}
 .pillars-page .campaign-examples-tabs{display:flex;flex-wrap:nowrap;width:100%;gap:8px}
 .pillars-page .campaign-examples-tabs button{flex:1;font-size:13px;padding:9px 8px;white-space:nowrap}
 .pillars-page .campaign-example-content [role=tabpanel]:not([hidden]){gap:32px}
 .pillars-page .campaign-example-copy h3{font-size:24px}
 .pillars-page .campaign-example-copy p{font-size:15px;line-height:1.4}
 .pillars-page .example-bar-row{margin:12px 0}
 .pillars-page .example-pillar{font-size:13px}.pillars-page .example-bar-tag{font-size:10px}
}
