/* Shared editorial rhythm across French and English routes. */
main{--text-gap:.875rem;--heading-gap:1.25rem}
main p{line-height:1.65}
main h1{line-height:1.14;letter-spacing:-.02em}
main h2{font-size:clamp(2rem,3.2vw,2.9rem);line-height:1.2;letter-spacing:-.02em}
main h3{font-size:1.375rem;line-height:1.35}
main h4{font-size:1rem;line-height:1.4}
main .eyebrow{margin-bottom:.875rem;line-height:1.5}
main :where(p+p){margin-top:var(--text-gap)}
main :where(h2+p,h3+p,h4+p){margin-top:var(--text-gap)}
main :where(p+h2,p+h3){margin-top:1.75rem}
main :where(.section){padding-block:56px}
main .section-top{gap:32px;margin-bottom:28px;align-items:start}
main :where(.section>.eyebrow+h2){margin-bottom:var(--heading-gap)}
main :where(.section>h2+p){max-width:900px;margin-bottom:24px}
main :where(.section>.lead){max-width:900px}
main :where(.intro-copy p:not(:last-child)){margin-bottom:0}
main :where(.local-intro>div>p:not(.lead),.cabinet>div>p:not(.eyebrow)){margin-top:var(--text-gap)}
main :where(.intro,.insight-inner,.cabinet,.local-intro,.local-flow,.quality,.expert-method>.wrap,.training-practical>.wrap,.network-invitation>.wrap,.submission-layout,.shop-creators,.shop-order>.wrap,.representative-section){column-gap:40px;row-gap:24px;align-items:start}
main :where(.training-formats,.territory-topics,.services-grid,.intel-formats,.online-format-grid){row-gap:24px}
main :where(.training-formats article,.territory-topics article,.online-format-grid article){align-self:start}
main .training-formats h3,main .territory-topics h3{margin-bottom:12px}
main :where(.training-formats p+p,.territory-topics p+p,.online-format-grid p+p){margin-top:var(--text-gap)}
main .services-grid article p{margin-top:12px}
main .service h3{margin-bottom:0}
main .service .deliverables{margin-top:20px;padding-top:16px}
main .professional-package .package-fee{margin-top:8px;padding-top:12px}
main .professional-package dl{margin-top:0;margin-bottom:16px}
main .professional-package dt{margin-top:14px}
main .professional-package dd{margin-top:6px}
main .professional-package h3{margin-block:10px}
main .professional-package .package-purpose{margin-bottom:12px}
main :where(.training-practical p:not(.eyebrow)){margin-bottom:14px}
main :where(.expert-bio){margin-top:16px}
main :where(.watch-heading){margin-top:32px;margin-bottom:20px}
main :where(.my-projects){margin-top:32px;padding-top:28px}
main :where(.privacy-section){margin-bottom:28px}
main .role-table-scroll{margin-block:24px}
main .role-table th,main .role-table td{padding:14px;line-height:1.6}
main :where(.section>.button,.section>p+.button){margin-top:14px}
@media(max-width:680px){
 main h1{font-size:clamp(2.2rem,8.5vw,2.8rem)}
 main h2{font-size:clamp(1.8rem,7vw,2.3rem)}
 main h3{font-size:1.25rem}
 main h1 br,main h2 br{display:none}
 main .section{padding-block:38px}
 main .section-top{gap:18px;margin-bottom:24px}
 main :where(.intro,.insight-inner,.cabinet,.local-intro,.local-flow,.quality,.expert-method>.wrap,.training-practical>.wrap,.network-invitation>.wrap,.submission-layout,.shop-creators,.shop-order>.wrap,.representative-section){row-gap:20px}
 main :where(.training-formats,.territory-topics,.services-grid,.intel-formats,.online-format-grid){row-gap:20px}
 main .role-table th,main .role-table td{padding:12px}
}
/* One Blue Ocean visual identity across every service and country page. */
:root{--navy:#063245;--deep:#032634;--blue:#08778d;--teal:#139da7;--soft:#f3f7f9;--line:#d8e4e9;--muted:#49636d}
main :where(.intel-hero,.local-hero,.experts-hero,.vision-hero,.shop-hero){background:var(--navy);color:#fff}
main :where(.intel-hero,.local-hero,.experts-hero,.vision-hero,.shop-hero) :where(.eyebrow,.breadcrumbs){color:#a9e2e5}
main :where(.intel-hero,.local-hero,.experts-hero,.vision-hero,.shop-hero) :where(p,.lead){color:#d3e3eb}
main :where(.expertise-section,.example-section,.training-practical,.online-learning,.expert-method,.useful-links){background:var(--soft)}
.button{border-radius:4px;font-size:.9375rem;line-height:1.5;font-weight:600;min-height:48px;padding:13px 22px}
.button-teal{background:#087d8e;color:#fff;border:1px solid #087d8e}.button-teal:hover{background:#066577}
.button-outline{border:1px solid #087d8e;background:transparent;color:var(--navy)}
main :where(.intel-hero,.local-hero,.experts-hero,.vision-hero,.shop-hero,.hero,.online-details aside) .button-outline{color:#fff;border-color:#9fd4da}
main :where(.services-grid article,.training-formats article,.territory-topics article,.online-format-grid article,.professional-package,.expert-card,.join-path,.local-topics article){border-radius:4px;border:1px solid var(--line);border-top:3px solid var(--blue);padding:26px;background:#fff;box-shadow:none}
main .services-grid article:last-child{background:var(--navy);color:#fff}
main .services-grid article:last-child :where(p,a,.tiny-label){color:#fff}
main :where(.training-formats article,.territory-topics article,.online-format-grid article,.professional-package,.expert-card,.join-path,.local-topics article) h3{color:var(--navy)}
main .number{font-size:1rem;font-weight:700;letter-spacing:.06em;color:var(--blue)}
.breadcrumbs{font-size:.9375rem;line-height:1.5;margin-bottom:24px;gap:12px}
main .small-link{font-size:.9375rem;font-weight:600;text-underline-offset:4px}
@media(max-width:680px){main :where(.services-grid article,.training-formats article,.territory-topics article,.online-format-grid article,.professional-package,.expert-card,.join-path,.local-topics article){padding:22px}.button{padding:12px 18px}}
.legal-details{display:grid;grid-template-columns:minmax(180px,1fr) 1.4fr;gap:0;margin-top:20px;max-width:900px}.legal-details dt,.legal-details dd{margin:0;padding:14px 0;border-bottom:1px solid var(--line)}.legal-details dt{font-weight:600;padding-right:24px}.legal-details a{overflow-wrap:anywhere}@media(max-width:600px){.legal-details{grid-template-columns:1fr}.legal-details dt{padding-bottom:3px;border-bottom:0}.legal-details dd{padding-top:3px}}
main :where(h1,h2,h3,h4,p,li,dt,dd,figcaption){-webkit-user-select:none;user-select:none}
main :where(form,form *,input,textarea,select,[contenteditable="true"],.legal-details,.legal-details *,#contact,#contact *,[data-copy-allowed],[data-copy-allowed] *){-webkit-user-select:text;user-select:text}
.briefing-share{border:1px solid var(--line);border-left:3px solid var(--blue);padding:22px;margin-bottom:28px;background:var(--soft)}.briefing-share .hero-actions{margin-top:14px}.briefing-share p{font-size:.9375rem;margin-top:14px;color:var(--muted)}

.representative-photo{display:block;width:100%;max-width:280px;height:360px;object-fit:contain;background:#f2f6f8;margin-bottom:24px}

/* Audit: consecutive sections need one shared interval, not two full paddings. */
main>.wrap.section+.wrap.section{padding-top:28px}
main .page-primary-title{font-size:clamp(2.3rem,4vw,3.5rem);margin-bottom:24px;max-width:1000px}
main :where(section,article,form,label,.section-top>*,.local-heading>*,.contact-inner>*){min-width:0}
main :where(h1,h2,h3,h4,p,li,dd,a){overflow-wrap:break-word}
main :where(input:not([type="checkbox"]):not([type="radio"]),select,textarea){max-width:100%;min-width:0}
main :where(video){max-width:100%}
main :where(.hero-actions,.guide-actions,.flagship-actions,.join-actions){flex-wrap:wrap}
@media(max-width:680px){
 main>.wrap.section+.wrap.section{padding-top:20px}
 main .page-primary-title{font-size:clamp(2.2rem,8.5vw,2.8rem)}
 main :where(.hero-actions,.guide-actions,.flagship-actions,.join-actions) .button{max-width:100%;white-space:normal;text-align:center}
}
.contextual-link{display:inline-flex;align-items:center;min-height:44px;padding-block:8px}
.reference-facts{margin:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.reference-facts>div{padding:22px;background:var(--soft);border-top:3px solid var(--blue)}.reference-facts dt{font-weight:700;margin-bottom:8px}.reference-facts dd{margin:0;line-height:1.65}.reference-upcoming{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.reference-upcoming article{padding:24px;border:1px solid var(--line)}.reference-status{font-size:.95rem;color:var(--blue);font-weight:600}.reference-upcoming .small-link{display:inline-block;margin-top:16px}.engagement-method{padding:0;list-style:none;counter-reset:method;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.engagement-method li{counter-increment:method;padding:22px;background:var(--soft)}.engagement-method li:before{content:'0' counter(method);display:block;color:var(--blue);font-weight:700;margin-bottom:14px}.home-reference-layout{display:grid;grid-template-columns:1fr 1fr;gap:32px;align-items:center}.home-reference-layout img{height:auto;aspect-ratio:16/9;object-fit:cover}.home-reference-layout .button{margin-top:22px}@media(max-width:930px){.engagement-method{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.reference-facts,.reference-upcoming,.engagement-method,.home-reference-layout{grid-template-columns:1fr;gap:20px}}
