@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{--green:#123c2b;--deep:#102c21;--gold:#e0a928;--cream:#f5f2e9;--ink:#172c23}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--cream);color:var(--ink);font:16px/1.65 'DM Sans',sans-serif}a{color:inherit;text-decoration:none}button,select{font:inherit;cursor:pointer}button,a,select{ -webkit-tap-highlight-color:transparent}button:focus-visible,a:focus-visible,select:focus-visible,summary:focus-visible{outline:3px solid var(--gold);outline-offset:5px}header{position:absolute;top:0;z-index:5;display:flex;align-items:center;justify-content:space-between;width:100%;padding:28px 4.5%;color:white;border-bottom:1px solid #ffffff35;gap:20px}.brand{display:flex;gap:12px;align-items:center;font:800 17px/1.1 Manrope,sans-serif;letter-spacing:.04em}.brand small{display:block;letter-spacing:.3em;font-size:10px;margin-top:6px}.brand-sun{color:var(--gold);font-size:44px}nav{display:flex;gap:32px;font-size:13px}.nav-right{display:flex;gap:24px;align-items:center}.nav-cta{border:1px solid #ffffff80;padding:10px 20px;border-radius:30px;font-size:13px}select{border:0;background:transparent;color:inherit;font-size:12px}select option{color:var(--ink)}.hero{height:100svh;min-height:640px;position:relative;overflow:hidden;background:var(--deep)}.video-wrap{position:absolute;inset:0;overflow:hidden}.video-wrap iframe{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:max(100vw,177.78svh);height:max(100svh,56.25vw);border:0;pointer-events:none}.hero-shade{position:absolute;inset:0;background:linear-gradient(90deg,#03130a9c,transparent 80%),linear-gradient(0deg,#05150ccc,transparent 50%,#05150c66)}.hero-copy{position:absolute;left:7%;bottom:22%;color:white}.eyebrow{font-size:10px;letter-spacing:.22em;font-weight:700;margin:0 0 25px}.green{color:var(--green)}h1,h2,h3,p{margin-top:0}h1,h2{font-family:Manrope,sans-serif;font-weight:500;letter-spacing:-.055em;line-height:1.06}h1{font-size:clamp(48px,6.5vw,100px);margin-bottom:30px}h1 em,h2 em{font-style:normal;color:var(--gold)}.hero-copy>p:not(.eyebrow){font-size:17px;line-height:1.65;color:#ffffffe0}.text-link{display:inline-flex;gap:45px;border-bottom:1px solid #ffffff70;padding:10px 0;font-size:13px}.text-link span{color:var(--gold);font-size:24px}.video-controls{position:absolute;left:7%;bottom:48px;display:flex;gap:10px;flex-wrap:wrap}.video-controls button,.video-controls a{background:#0a201954;color:white;border:1px solid #ffffff60;border-radius:24px;padding:9px 17px;font-size:12px;backdrop-filter:blur(8px)}.film-credit{position:absolute;bottom:55px;right:5%;font-size:10px;color:#ffffffa8;letter-spacing:.08em}#end-card{position:absolute;inset:0;background:var(--cream);z-index:4;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:30px}#end-card[hidden]{display:none}#end-card img{width:min(500px,75vw)}#end-card button{border:1px solid var(--green);border-radius:24px;background:transparent;padding:10px 30px}.ribbon{background:var(--gold);padding:22px 7%;display:flex;justify-content:space-between;gap:20px;font-size:10px;letter-spacing:.15em;font-weight:700}.section{padding:110px 7%}h2{font-size:clamp(38px,4.3vw,66px);margin-bottom:32px}h2 em{color:#99813f}.mission{display:grid;grid-template-columns:1fr 1fr;gap:8%}.mission-copy{padding-top:28px;max-width:560px}p{color:#627166}.lead{font-size:22px;line-height:1.5;color:var(--ink)}.dark{border-color:#123c2b55}.manifesto{height:670px;position:relative;color:white;overflow:hidden}.manifesto>img{width:100%;height:100%;object-fit:cover}.manifesto:after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,#07180fd9,transparent 90%)}.manifesto>div{position:absolute;z-index:1;left:7%;top:28%;max-width:640px}.manifesto p{color:#ffffffc4;max-width:440px}.manifesto h2 em{color:var(--gold)}.section-head{display:flex;justify-content:space-between;gap:60px;align-items:end;margin-bottom:60px}.section-head>p{max-width:330px;font-size:15px}.action-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:0 40px}.action-grid article{border-top:1px solid #bbc5b9;padding:30px 0 36px}.action-grid article>span{font:400 15px Manrope;color:#9d8038}.action-grid h3{font:600 22px Manrope;letter-spacing:-.03em;margin:32px 0 15px}.action-grid p{font-size:14px}.terrain{background:var(--deep);color:var(--cream);display:grid;grid-template-columns:1fr 1fr;gap:10%}.terrain p{color:#b7c7ba}.terrain h2 em{color:var(--gold)}.small{font-size:12px}.continent-mark{font:800 clamp(55px,8vw,130px)/1 Manrope;color:#ffffff0d;position:relative;margin-top:60px;letter-spacing:-.08em}.continent-mark span{position:absolute;left:10px;top:-12px;color:var(--gold);font-size:70px;font-weight:400;letter-spacing:-.05em}.regions{padding-top:6px}details{border-bottom:1px solid #ffffff26}summary{cursor:pointer;list-style:none;padding:24px 0;font:500 22px Manrope;display:flex;justify-content:space-between}summary:after{content:'+';color:var(--gold)}details[open] summary:after{content:'−'}.country-list{display:flex;gap:8px;flex-wrap:wrap;padding-bottom:25px}.country-list span{font-size:12px;border:1px solid #ffffff20;padding:5px 12px;border-radius:20px;color:#c5d0c6}.commitment{display:grid;grid-template-columns:1fr 1fr;gap:9%;align-items:center}.lion-photo{height:630px;position:relative}.lion-photo img{width:100%;height:100%;object-fit:cover}.lion-photo span{position:absolute;bottom:0;left:0;right:0;background:#123c2be0;color:white;padding:22px 26px;letter-spacing:.15em;font-size:10px}.fund-note{display:flex;gap:20px;border-top:1px solid #bdc6b9;padding-top:24px;margin-top:30px}.fund-note>span{font-size:30px;color:#a38130}.fund-note p{font-size:14px}.button{display:inline-block;border-radius:30px;padding:15px 28px;font-size:14px;font-weight:600}.green-button{background:var(--green);color:white}.gold-button{background:var(--gold);color:var(--deep)}.engage{background:var(--green);color:var(--cream);position:relative;overflow:hidden}.engage:after{content:'';width:500px;height:500px;border:1px solid #ffffff15;border-radius:50%;position:absolute;right:-90px;top:-220px;pointer-events:none}.engage h2{font-size:clamp(48px,7vw,100px)}.engage h2 em{color:var(--gold)}.join-bottom{display:flex;justify-content:space-between;align-items:center;gap:30px}.join-bottom p{color:#c2d0c3;max-width:480px;margin:0}footer{padding:70px 7% 25px;display:grid;grid-template-columns:1.1fr 1fr .8fr;gap:40px;font-size:13px}footer img{width:180px}footer a{display:block;margin-bottom:12px}footer .eyebrow{margin-bottom:24px}footer p{font-size:13px}.footer-brand p{margin-top:20px}.footer-bottom{grid-column:1/-1;border-top:1px solid #cdd2c5;padding-top:25px;display:flex;justify-content:space-between;color:#627166;font-size:11px}.footer-bottom button{font-size:11px;border:0;background:transparent;color:inherit}dialog{max-width:650px;width:90%;border:0;padding:45px;background:var(--cream);color:var(--ink)}dialog::backdrop{background:#00180ecc}dialog h2{font-size:30px}dialog p{font-size:14px}#legal-close{float:right;background:none;border:0;font-size:25px}.skip{position:fixed;left:10px;top:-100px;background:white;z-index:99;padding:10px}.skip:focus{top:10px}@media(max-width:800px){header{padding:18px 5%}nav{display:none}.brand{font-size:13px}.brand-sun{font-size:35px}.nav-right{gap:10px}.nav-cta{font-size:11px;padding:8px 10px}.hero{min-height:650px}.hero-copy{left:6%;right:6%;bottom:27%}h1{font-size:clamp(45px,9vw,65px)}.hero-copy>p:not(.eyebrow){font-size:15px}.video-controls{left:6%;right:6%;bottom:63px;gap:7px}.video-controls button,.video-controls a{padding:8px 11px;font-size:11px}.film-credit{left:6%;bottom:28px}.ribbon{padding:18px 6%;font-size:9px}.ribbon span:last-child{display:none}.section{padding:70px 6%}.mission,.terrain,.commitment{grid-template-columns:1fr;gap:35px}.mission-copy{padding:0}.manifesto{height:580px}.manifesto>div{left:6%;right:6%;top:30%}.section-head{display:block;margin-bottom:30px}.section-head>p{max-width:none}.action-grid{grid-template-columns:repeat(2,1fr);gap:0 25px}.action-grid h3{font-size:19px}.continent-mark{margin:30px 0}.lion-photo{height:420px}.join-bottom{display:block}.join-bottom .button{margin-top:25px}footer{grid-template-columns:1fr;gap:25px;padding:50px 6% 25px}.footer-bottom{flex-wrap:wrap;gap:15px}.eyebrow{font-size:9px}h2{font-size:40px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}

.hero-copy .eyebrow,.engage>.eyebrow{color:#f5f2e9}

#end-card #replay{display:none}

.brand-wordmark{display:block;width:230px;height:auto}@media(max-width:800px){.brand-wordmark{width:160px}}

/* V1.1.5 — une ouverture qui laisse vivre le film */
.hero-copy{bottom:16%;transition:opacity .9s ease,transform .9s ease;max-width:760px}
.hero-copy h1{font-size:clamp(36px,4.2vw,64px);margin-bottom:16px}
.hero-copy .eyebrow{margin-bottom:14px}.hero-copy>p:not(.eyebrow){font-size:14px;margin-bottom:10px}
.hero-copy .text-link{font-size:11px;padding:4px 0;gap:22px}
.hero-copy.is-hidden{opacity:0;transform:translateY(12px);pointer-events:none;visibility:hidden;transition:opacity .9s ease,transform .9s ease,visibility 0s .9s}
.video-controls{bottom:24px;gap:7px}.video-controls button{padding:6px 11px;font-size:10px;border-color:#ffffff45;background:#0a20192e}
.hero-shade{background:linear-gradient(0deg,#05150c85,transparent 48%,#05150c45)}
@media(max-width:800px){.hero-copy{bottom:15%}.hero-copy h1{font-size:clamp(34px,8vw,44px)}.hero-copy>p:not(.eyebrow){font-size:12px}.video-controls{bottom:24px}.video-controls button{padding:6px 10px;font-size:10px}}
@media(prefers-reduced-motion:reduce){.hero-copy,.hero-copy.is-hidden{transition:none}}

/* V1.1.7 — conserver la photographie entière, quelle que soit la largeur. */
.manifesto{height:auto;min-height:0}
.manifesto>img{display:block;width:100%;height:auto;object-fit:contain}
.manifesto>div{top:9%;max-width:640px}
.manifesto .eyebrow{color:#fff;margin-bottom:18px}
.manifesto h2{margin-bottom:22px}
@media(max-width:800px){.manifesto{height:auto}.manifesto>div{top:7%;max-width:70%}.manifesto h2{font-size:clamp(26px,4.5vw,40px);margin-bottom:12px}.manifesto p{font-size:12px}.manifesto .eyebrow{margin-bottom:12px}}
@media(max-width:520px){.manifesto{display:flex;flex-direction:column;background:var(--deep)}.manifesto>div{position:relative;top:auto;left:auto;right:auto;order:-1;max-width:none;padding:32px 6% 12px}.manifesto:after{display:none}.manifesto>img{height:auto}.manifesto h2{font-size:32px}.manifesto p{font-size:13px}}

/* V1.1.8 — invitation à agir et titres plus lisibles */
.actions .section-head{align-items:center;gap:6%}.actions .section-head>div{flex:1}.actions .section-head>p{font-size:16px;line-height:1.75;max-width:370px}
.actions h2{font-size:clamp(42px,4.6vw,72px)}.action-grid h3{font-size:clamp(24px,2.15vw,32px);line-height:1.22;margin:26px 0 18px}.action-grid article>span{font-size:19px}.action-grid p{font-size:15px;line-height:1.8}
@media(max-width:800px){.actions .section-head>p{max-width:none}.actions h2{font-size:40px}.action-grid h3{font-size:25px}}@media(max-width:520px){.action-grid{grid-template-columns:1fr}.actions h2{font-size:36px}}

/* V1.1.9 — lion entier, sans recadrage ni bandeau sur la photo. */
.lion-photo{height:auto;min-width:0}.lion-photo img{display:block;width:100%;height:auto;object-fit:contain}.lion-photo span{position:static;display:block;background:var(--green)}
@media(max-width:800px){.lion-photo{height:auto}}

/* Reveal only moving footage, never the Vimeo thumbnail. */
.video-wrap iframe{opacity:0}.hero.film-playing .video-wrap iframe{opacity:1}
/* 1.3.0 */
body.end-screen header{color:var(--green);border-color:#123c2b30}body.end-screen .nav-cta{border-color:#123c2b70}body.end-screen .brand-wordmark{content:url('assets/wordmark-green.svg')}
.language-picker{position:relative}#language-toggle{color:inherit;background:transparent;border:0;padding:10px;font-size:12px}#language-menu{position:absolute;inset-inline-end:0;top:100%;width:min(380px,90vw);max-height:65svh;overflow:auto;padding:12px;display:grid;grid-template-columns:1fr 1fr;gap:4px;border:1px solid #ffffff55;border-radius:16px;background:#102c21df;backdrop-filter:blur(24px);box-shadow:0 12px 36px #0003;color:white}#language-menu[hidden]{display:none}#language-menu button{border:0;background:transparent;color:inherit;text-align:start;padding:10px;border-radius:8px;font-size:13px}#language-menu button:hover,#language-menu button[aria-current=true]{background:#ffffff22}#language-menu .flag{font-size:21px;margin-inline-end:8px}
#contact-form{max-width:900px;margin-top:40px}#contact-form label{display:block;margin:0 0 20px}#contact-form label span{display:block;font-size:14px;margin-bottom:7px}#contact-form input,#contact-form textarea{font:inherit;width:100%;color:var(--ink);border:1px solid #ffffff55;border-radius:10px;background:var(--cream);padding:14px;min-width:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:22px}.form-privacy,#form-status{font-size:13px;color:var(--cream)}.honey{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.engage button{border:0}#film-credit-link{position:absolute;z-index:2;cursor:pointer;border-radius:5px}#film-credit-link:focus-visible{outline:2px solid white}body.end-screen #film-credit-link{display:none}
.rotate-hint{display:none;position:absolute;z-index:3;left:6%;right:6%;top:35%;color:#fff;text-align:center;padding:22px;background:#102c21c9;border:1px solid #ffffff55;border-radius:18px;backdrop-filter:blur(12px)}.rotate-hint p{color:#fff}.rotate-hint button{background:var(--cream);color:var(--green);border:0;border-radius:24px;padding:10px 20px}.rotate-hint .rotate-symbol{font-size:34px}.hero.film-playing .rotate-hint{display:none}
@media(max-width:600px){.form-grid{grid-template-columns:1fr;gap:0}#language-menu{width:300px}}
@media(orientation:portrait) and (pointer:coarse){.rotate-hint{display:block}.hero.film-playing .rotate-hint{display:block}.hero.landscape-dismissed .rotate-hint{display:none}.hero-copy{bottom:15%}.video-wrap iframe{width:100vw;height:56.25vw}.hero{min-height:600px}}
[dir=rtl] .hero-copy{left:auto;right:7%}[dir=rtl] h1,[dir=rtl] h2{letter-spacing:0}

/* 1.3.2: transparent glass language selector over the film. */
#language-menu{background:linear-gradient(135deg,rgba(255,255,255,.14),rgba(255,255,255,.035));border:1px solid rgba(255,255,255,.42);backdrop-filter:blur(7px) saturate(125%);-webkit-backdrop-filter:blur(7px) saturate(125%);box-shadow:0 10px 30px rgba(0,0,0,.12),inset 0 1px 0 rgba(255,255,255,.25);color:#fff;scrollbar-width:thin;scrollbar-color:#ffffff70 transparent}
#language-menu button{text-shadow:0 1px 3px #000c,0 0 10px #0006}
#language-menu button:hover,#language-menu button[aria-current=true]{background:rgba(255,255,255,.16);box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}
body.end-screen #language-menu{color:var(--green);border-color:#123c2b35;background:rgba(255,255,255,.12)}body.end-screen #language-menu button{text-shadow:none}body.end-screen #language-menu button:hover,body.end-screen #language-menu button[aria-current=true]{background:#123c2b0d}

/* v1.3.4: compact glass pills and an accessible film credit hit area. */
#language-menu{width:min(520px,calc(100vw - 32px));grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;max-height:calc(100svh - 120px)}
#language-menu button{border:1px solid #ffffff45;border-radius:999px;padding:7px 10px;font-size:12px;line-height:1.4;display:flex;align-items:center;min-height:38px;white-space:nowrap}
#language-menu .flag{font-size:18px;margin-inline-end:7px}
body.end-screen #language-menu button{border-color:#123c2b30}
.hero-shade{pointer-events:none}
#film-credit-link{pointer-events:auto;border:1px solid transparent}
#film-credit-link span{position:absolute;bottom:100%;right:0;white-space:nowrap;font:12px/1.4 sans-serif;padding:7px 11px;color:white;background:#102c21b3;backdrop-filter:blur(8px);border-radius:999px;opacity:0;pointer-events:none;transition:opacity .15s}
#film-credit-link:hover,#film-credit-link:focus-visible{border-color:#ffffff80;background:#ffffff0d}
#film-credit-link:hover span,#film-credit-link:focus-visible span{opacity:1}
@media(max-width:600px){#language-menu{width:min(340px,calc(100vw - 32px));grid-template-columns:repeat(2,minmax(0,1fr));gap:4px}#language-menu button{min-height:32px;padding:5px 9px}}
@media(max-width:800px){#language-menu{position:fixed;top:76px;inset-inline-end:16px;max-height:calc(100svh - 92px)}}
