@import url('https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Manrope:wght@400;500;600;700;800&display=swap');
:root{--ink:#093d48;--gold:#e8b958;--cream:#f3f0e8;--muted:#5d7377}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:var(--ink);background:#fff;font-family:'DM Sans',Arial,sans-serif;font-size:16px;line-height:1.7}h1,h2,h3,.brand{font-family:Manrope,Arial,sans-serif}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(42px,5.2vw,78px);line-height:1.08;font-weight:600;letter-spacing:-3px}h2{font-size:clamp(30px,3.2vw,47px);line-height:1.18;font-weight:500;letter-spacing:-1.7px}h3{font-size:21px;line-height:1.35}em{font-family:Georgia,serif;font-weight:400}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a,input,select,textarea{touch-action:manipulation}button{cursor:pointer}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid #b57b0d;outline-offset:5px}.skip{position:absolute;left:-9999px}.skip:focus{left:10px;top:10px;background:#fff;z-index:100;padding:10px}.topline{background:var(--ink);color:#fff;display:flex;justify-content:space-between;padding:7px 5%;font-size:12px;letter-spacing:1px}header{padding:22px 5%;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #dce3e2;background:#fff;position:sticky;top:0;z-index:20}.brand{display:flex;align-items:center;gap:12px;font-size:21px;font-weight:800;letter-spacing:1.5px;line-height:1.15}.brand small{display:block;font-size:9px;font-weight:600;letter-spacing:2px;margin-top:7px}nav{display:flex;gap:28px;font-size:14px}nav a[aria-current]{border-bottom:2px solid var(--gold)}.menu{display:none}.wrap{max-width:1280px;margin:auto;padding:90px 5%}.hero{display:grid;grid-template-columns:1.05fr 1fr;min-height:700px}.herocopy{padding:70px 9.5% 34px;background:var(--cream)}.eyebrow{font-size:11px;letter-spacing:2.2px;font-weight:700;margin-bottom:23px}.lead{font-size:18px;color:var(--muted);max-width:600px;line-height:1.7}.buttons{display:flex;align-items:center;gap:25px;margin:32px 0 50px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:space-between;gap:24px;background:var(--ink);color:white;padding:15px 23px;border:0;border-radius:4px;font-size:14px;font-weight:600;line-height:1.5}.btn:hover{background:#165763;text-decoration:none}.textlink{font-size:14px;font-weight:700;border-bottom:1px solid #a6b4af;padding-bottom:7px}.herobottom{border-top:1px solid #cad0c9;padding-top:23px;display:flex;gap:25px;align-items:start}.herobottom span{font-size:9px;letter-spacing:1.3px;flex-shrink:0}.herobottom p{font-size:14px;line-height:1.5}.herobottom small{font-size:11px;color:var(--muted)}.heroimage{position:relative;overflow:hidden;background:#c2d8df;min-height:690px}.portrait{position:absolute;inset:0;overflow:hidden}.portrait img{position:absolute;width:183%;max-width:none;left:-27%;top:-14%}.heroimage:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#073d48d9)}.imagecaption{position:absolute;left:8%;bottom:7%;color:#fff;z-index:2}.imagecaption span{font-size:10px;letter-spacing:2px;display:block;margin-bottom:15px}.imagecaption strong{font-family:Georgia,serif;font-size:42px;line-height:1.05;font-weight:400}.roundseal{position:absolute;right:6%;bottom:9%;z-index:2;background:var(--gold);width:85px;height:85px;display:grid;place-content:center;line-height:1.4;text-align:center;border-radius:50%;font-size:12px;letter-spacing:2px;transform:rotate(9deg)}.ribbon{padding:23px 5%;display:flex;justify-content:space-between;gap:15px;background:var(--ink);color:#fff;font-size:12px;letter-spacing:2px}.ribbon i{color:var(--gold);font-style:normal}.split{display:grid;grid-template-columns:1fr 1.1fr;gap:80px}.large{font-size:23px;line-height:1.5}.cream{background:var(--cream)}.sectionheading{display:flex;align-items:end;justify-content:space-between;gap:25px;margin-bottom:42px}.topics{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.topics a{padding:26px 0 20px;border-top:1px solid #a9b6ae;position:relative}.topics span{font-size:12px;color:var(--muted);display:block;margin-bottom:35px}.topics h3{max-width:230px}.topics p{color:var(--muted);font-size:15px}.topics b{font-size:27px;font-weight:400}.note{font-size:12px;color:var(--muted);margin-top:25px;line-height:1.6}.presidentblock{display:grid;grid-template-columns:0.85fr 1fr;gap:90px;align-items:center}.poster{max-height:540px;overflow:hidden;background:var(--cream);border-radius:4px}.poster img{display:block;width:100%;height:auto}.contactband{background:var(--ink);color:white;display:grid;grid-template-columns:1fr 1fr;gap:50px;margin:0 auto 80px;border-radius:6px;padding:60px}.contactband .eyebrow{color:var(--gold)}.contactband p{color:#d6e2df}.bigphone{font-size:clamp(20px,2.7vw,34px);letter-spacing:-1px}.contactband>div:last-child{align-self:center}.light{background:var(--gold);color:var(--ink)}footer{background:#f3f0e8;padding:60px 5% 20px;font-size:13px}.footergrid{max-width:1150px;margin:auto;display:grid;grid-template-columns:1.4fr .8fr 1fr;gap:60px}.footergrid>div>a:not(.brand){display:block;margin:9px 0}.footergrid p{margin-top:22px;color:var(--muted)}footer h3{font-size:14px}.footnote{max-width:1150px;margin:40px auto 0;padding-top:20px;border-top:1px solid #ccd1c9;display:flex;justify-content:space-between;color:var(--muted);font-size:11px}.pageintro{padding-top:75px;padding-bottom:65px;background:var(--cream);max-width:none}.pageintro h1{max-width:1000px}.pageintro .lead{max-width:750px}.valuegrid{display:grid;grid-template-columns:repeat(3,1fr);gap:45px;margin-top:45px}.valuegrid article{border-top:1px solid #b5c0b6;padding-top:20px}.valuegrid p{color:var(--muted);font-size:15px}.prioritylist article{display:grid;grid-template-columns:100px 1fr;border-top:1px solid #cfdbd7;padding:35px 0;gap:30px}.prioritylist h2{font-size:34px}.prioritylist li{margin-bottom:10px;color:var(--muted)}.num{font-size:26px;color:#9c771e}.contactlayout{display:grid;grid-template-columns:1fr 1.1fr;gap:80px;align-items:start}.contactitem{display:block;padding:25px 0;border-bottom:1px solid #cbd9d5}.contactitem span{display:block;font-size:10px;letter-spacing:2px;margin-bottom:12px}.contactitem strong{display:block;font-size:23px;font-weight:500}.contactitem small{display:block;color:var(--muted);font-size:12px;margin-top:10px}.contactitem .email{font-size:17px;overflow-wrap:anywhere}.formbox{background:var(--cream);padding:40px;border-radius:5px}.formbox h2{font-size:33px}.formbox p{font-size:14px}label{display:block;margin:18px 0 6px;font-size:13px;font-weight:600}input,textarea,select{width:100%;border:1px solid #b8c5bc;background:#fff;color:var(--ink);padding:12px;border-radius:3px}textarea{resize:vertical}form .btn,#copy{margin-top:22px}details{padding:20px 0;border-bottom:1px solid #bdc9bf}summary{cursor:pointer;font-size:17px;font-weight:600}details p{margin:15px 0 0}.prose{max-width:850px}.prose h2{font-size:28px;margin-top:35px}
@media(min-width:1500px){.portrait img{top:-20%}.herocopy{padding-top:90px}}@media(max-width:900px){header{padding:18px 5%}nav{gap:15px;font-size:12px}.hero{min-height:600px}.heroimage{min-height:600px}.herocopy{padding:45px 8% 20px}h1{letter-spacing:-2px}.hero h1{font-size:49px}.hero .lead{font-size:16px}.portrait img{width:210%;left:-33%;top:-4%}.herobottom{display:block}.herobottom p{margin:10px 0}.split,.presidentblock,.contactlayout{gap:40px}.contactband{margin-left:5%;margin-right:5%;padding:40px}.footergrid{gap:30px}.valuegrid{grid-template-columns:repeat(2,1fr)}}@media(max-width:650px){.topline{font-size:10px}header{flex-wrap:wrap}.brand{font-size:18px}.brand img{width:42px;height:42px}.menu{display:block;border:1px solid #c4d0ca;border-radius:4px;background:#fff;padding:9px 12px;color:var(--ink);font-size:12px}nav{display:none;width:100%;padding-top:20px;flex-direction:column;gap:0;font-size:15px}nav.open{display:flex}nav a{padding:11px 0}nav a[aria-current]{border:0;color:#9a6b0c}.hero{grid-template-columns:1fr}.herocopy{padding:44px 6% 24px}.hero h1{font-size:49px}.heroimage{min-height:490px;max-height:550px}.portrait img{width:160%;left:-17%;top:-19%}.imagecaption strong{font-size:36px}.herobottom{display:flex;gap:18px}.herobottom p{margin:0}.buttons{margin-bottom:30px}.ribbon{font-size:9px;letter-spacing:1px;flex-wrap:wrap;justify-content:center}.wrap{padding:55px 6%}.split,.presidentblock,.contactlayout{grid-template-columns:1fr;gap:25px}.large{font-size:21px}.sectionheading{display:block}.sectionheading .textlink{display:inline-block;margin-top:10px}.topics,.valuegrid{grid-template-columns:1fr;gap:15px}.topics span{margin-bottom:15px}.topics h3{max-width:none}.topics b{position:absolute;right:0;top:25px}.poster{max-height:460px;max-width:430px}.contactband{grid-template-columns:1fr;margin:0 5% 50px;padding:35px 7%;gap:20px}.contactband h2{font-size:33px}.footergrid{grid-template-columns:1fr;gap:25px}.footnote{display:block}.footnote a{display:block;margin-top:10px}.prioritylist article{grid-template-columns:35px 1fr;gap:15px}.prioritylist h2{font-size:27px}.formbox{padding:25px}.pageintro h1{font-size:44px}.pageintro .lead{font-size:17px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

/* Portrait autonome sur l’accueil */
.heroimage{background:#e9e7e1}.portrait img{position:static;width:100%;height:100%;object-fit:cover;object-position:center 35%;max-width:100%}.presidentblock .poster:has(img[src="assets/portrait-president.png"]){max-height:none;aspect-ratio:4/5}.presidentblock .poster img[src="assets/portrait-president.png"]{width:100%;height:100%;object-fit:cover}

/* Fondre le portrait dans la composition, sans cadre d’affiche. */
.heroimage{background:var(--cream)}
.heroimage:after{display:none}
.portrait img{object-fit:cover;object-position:center 30%;mask-image:linear-gradient(to right,transparent 0%,#000 15%,#000 88%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 10%,#000 68%,transparent 100%);mask-composite:intersect;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 15%,#000 88%,transparent 100%),linear-gradient(to bottom,transparent 0%,#000 10%,#000 68%,transparent 100%);-webkit-mask-composite:source-in}
.imagecaption{color:var(--ink);bottom:5%}.imagecaption strong{font-size:36px}.roundseal{bottom:6%}
.presidentblock .poster:has(img[src="assets/portrait-president.png"]){background:var(--cream);border-radius:12px;overflow:hidden}
@media(max-width:650px){.portrait img{object-position:center 28%}.imagecaption strong{font-size:30px}.imagecaption{bottom:4%}}

@media(min-width:901px){nav{gap:18px;font-size:13px}}@media(min-width:651px) and (max-width:900px){nav{gap:10px;font-size:11px}.brand{font-size:17px}}

.form-trap{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.formprivacy{font-size:12px!important;color:var(--muted);margin-top:18px}.consent{display:flex;gap:10px;align-items:flex-start;font-weight:400;font-size:12px}.consent input{width:17px;min-width:17px;height:17px;margin-top:3px}.btn:disabled{opacity:.65;cursor:wait}#sendstatus{margin-top:18px}#sendstatus[data-state="success"]{color:#1d694a;background:#e5f0e7;padding:15px;border-radius:4px}#sendstatus[data-state="error"]{color:#854016;background:#fff1e3;padding:15px;border-radius:4px}
