:root{--navy:#152638;--navy2:#203850;--teal:#2b6e72;--gold:#f9c56b;--cream:#fcf8f0;--ink:#203343;--sub:#677783;--line:#e5e9e7;--paper:#fff;--serif:Georgia,"Times New Roman",serif;--sans:ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:80px}body{margin:0;background:var(--cream);font-family:var(--sans);color:var(--ink);line-height:1.65;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit;cursor:pointer}a:focus-visible,button:focus-visible{outline:3px solid #e7a43e;outline-offset:4px}h1,h2,h3,p{margin:0}h1,h2{line-height:1.12;letter-spacing:-.038em}h1,h2 em{font-family:var(--serif);font-style:italic;font-weight:400}h1 em{color:var(--gold)}h2 em{color:var(--teal)}.shell{width:min(1170px,calc(100% - 44px));margin-inline:auto}.section{padding-block:100px}.skip{position:absolute;top:-100px;left:10px;background:#fff;z-index:50;padding:10px}.skip:focus{top:10px}.announcement{background:#0b1827;color:#d7ddd9;text-align:center;font-size:11px;letter-spacing:.16em;padding:9px 10px;font-weight:700;text-transform:uppercase}.announcement-star{color:var(--gold);margin-inline:14px}.nav{height:82px;display:flex;align-items:center;justify-content:space-between;gap:18px}.brand{display:flex;gap:10px;align-items:center}.brand-mark{height:43px;width:43px;display:grid;place-items:center;background:var(--navy);border-radius:15px 4px 15px 4px;color:var(--gold);font-family:var(--serif);font-size:26px;position:relative}.brand-mark span{font-size:9px;position:absolute;right:3px;top:3px}.brand-name{font-weight:900;font-size:20px;letter-spacing:-.04em;line-height:1}.brand-name small{display:block;font-size:9px;text-transform:uppercase;letter-spacing:.16em;color:var(--teal);margin-top:7px}.nav nav{display:flex;gap:35px;font-size:13px;font-weight:700;color:#4d5c67}.nav nav a:hover,.footer a:hover{color:var(--teal)}.nav-donate{border-radius:5px;background:var(--navy);color:#fff;padding:12px 19px;font-weight:800;font-size:12px}.nav-donate span{padding-left:9px}.hero{background:var(--navy);color:white;position:relative;overflow:hidden}.hero-wrap{display:grid;grid-template-columns:50% 50%;min-height:585px}.hero-copy{padding:82px 50px 100px 0;position:relative;z-index:2}.eyebrow{display:block;color:var(--teal);font-weight:900;font-size:11px;letter-spacing:.18em;line-height:1.4}.eyebrow.light{color:var(--gold)}.eyebrow-dash{display:inline-block;height:1px;width:24px;background:var(--gold);vertical-align:middle;margin-right:13px}.hero h1{font-size:clamp(51px,5.8vw,80px);font-weight:860;max-width:650px;margin:28px 0 23px}.bang{color:var(--gold)}.hero-lede{color:#d3dae0;max-width:500px;font-size:16px;line-height:1.83}.hero-actions{display:flex;align-items:center;gap:12px;margin-top:37px;flex-wrap:wrap}.btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;padding:14px 20px;min-height:50px;border-radius:7px;font-weight:850;font-size:13px;transition:transform .2s ease,background .2s ease;line-height:1.3;border:1px solid transparent}.btn:hover{transform:translateY(-2px)}.btn-gold{background:var(--gold);color:#152638}.btn-ghost{border-color:#6c8393;color:white}.btn-ghost:hover{background:#ffffff12}.btn-play{background:#1d3141;color:#fff;width:23px;height:23px;border-radius:50%;font-size:9px;display:grid;place-items:center}.hero-signature{color:#aebbc3;font-size:12px;letter-spacing:.045em;margin-top:55px}.hero-signature span{font-family:var(--serif);font-style:italic;font-size:21px;color:var(--gold);margin-left:10px}.hero-visual{position:relative;min-height:520px;align-self:stretch;overflow:hidden}.hero-visual .photo{position:absolute;inset:0;background:linear-gradient(165deg,#b3d5e6 0%,#8bb6c6 40%,#425b70 78%,#152638 100%);background-image:linear-gradient(90deg,rgba(18,37,54,.10),rgba(18,37,54,.04)),url('https://upload.wikimedia.org/wikipedia/commons/thumb/e/eb/Toronto_skyline_2025.jpg/1280px-Toronto_skyline_2025.jpg'),url('./assets/toronto-illustration.svg');background-size:cover,cover,cover;background-position:center,55% center,center;filter:saturate(.88)}.hero-visual .photo:after{content:"";position:absolute;inset:0;background:linear-gradient(to bottom,rgba(18,33,45,.02) 35%,rgba(18,33,45,.7) 100%)}.photo-grain{position:absolute;inset:0;border:12px solid #f7ca8312}.hero-badge{width:148px;height:148px;display:flex;flex-direction:column;justify-content:center;align-items:center;background:#f8c76b;border-radius:50%;color:#203142;position:absolute;right:6%;top:8%;transform:rotate(11deg);box-shadow:0 15px 40px #12223055}.hero-badge span{font-size:10px;letter-spacing:.18em;font-weight:850}.hero-badge strong{font-family:var(--serif);font-size:30px;line-height:1.4;font-style:italic}.photo-caption{position:absolute;bottom:35px;left:30px;color:#fff;font-size:12px;font-weight:800;letter-spacing:.11em}.photo-caption span{color:var(--gold);margin-inline:10px}.hero-wave{position:absolute;bottom:-1px;left:0;width:100%;height:32px;background:var(--cream);clip-path:polygon(0 66%,18% 30%,42% 63%,63% 35%,79% 62%,100% 18%,100% 100%,0 100%)}.milestone{display:grid;grid-template-columns:1fr 1fr;column-gap:35px;align-items:center;padding:37px 4px 45px;border-bottom:1px solid var(--line)}.stat-main{display:flex;align-items:center;gap:20px}.stat-symbol{font-size:48px;line-height:1;color:var(--gold)}.stat-main p{font-size:10px;letter-spacing:.16em;font-weight:900;color:var(--teal)}.stat-main strong{display:block;font-size:50px;line-height:1.1;letter-spacing:-.055em}.stat-main strong span{font-size:30px;color:var(--teal)}.stat-text{max-width:400px;font-size:14px;color:#60717b}.stat-text strong{color:var(--ink)}.stat-details{grid-column:1/-1;display:flex;justify-content:space-between;gap:20px;color:#8998a0;font-size:11px;letter-spacing:.04em;margin-top:26px}.stat-details small{font-size:inherit}.story{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}.story h2,.participate h2,.campaigns h2,.thank-you h2{font-size:clamp(39px,4.6vw,62px)}.story h2{margin:20px 0 24px}.story-intro>p{font-size:15px;color:#60717b;margin-bottom:19px;max-width:510px;line-height:1.87}.video-card{background:#fff;border-radius:14px;overflow:hidden;box-shadow:0 16px 50px #21374816;border:1px solid #e9e9e3}.video-art{height:260px;background:radial-gradient(circle at 20% 20%,#3d777f 0%,transparent 40%),linear-gradient(135deg,#1a3046,#1a5365);position:relative;display:flex;justify-content:center;align-items:center;flex-direction:column;overflow:hidden;color:#fff}.video-grid{position:absolute;inset:0;background-image:linear-gradient(#ffffff08 1px,transparent 1px),linear-gradient(90deg,#ffffff08 1px,transparent 1px);background-size:38px 38px;transform:rotate(-12deg) scale(1.2)}.video-round{position:relative;width:79px;height:79px;border:2px solid var(--gold);border-radius:50%;display:grid;place-items:center;font-family:var(--serif);font-size:47px;font-style:italic;color:var(--gold);background:#122d4080}.video-title{text-align:center;font-size:13px;letter-spacing:.19em;font-weight:900;position:relative;line-height:1.6;margin-top:19px}.video-spark{position:absolute;font-size:42px;color:var(--gold)}.video-spark.v1{top:18px;right:17%}.video-spark.v2{bottom:14px;left:15%}.video-bottom{padding:20px;display:flex;justify-content:space-between;align-items:center;gap:20px}.video-bottom strong{font-size:14px;display:block}.video-bottom small{display:block;color:#84919a;font-size:11px;margin-top:3px}.video-state{white-space:nowrap;font-size:10px;color:#916c32;background:#fff3d7;border-radius:40px;padding:7px 9px;font-weight:900;letter-spacing:.08em}.video-frame{aspect-ratio:16/9;width:100%;border:0;display:block}.three-reasons{margin-top:25px}.three-reasons>span{font-weight:900;font-size:11px;text-transform:uppercase;letter-spacing:.1em;color:var(--teal)}.three-reasons>div{border-bottom:1px solid #dde4e5;padding:9px 0;font-size:14px;font-weight:700}.three-reasons b{color:#d99b33;margin-right:12px}.participate{background:#eff2ed}.participate-heading,.campaigns-heading{display:flex;justify-content:space-between;align-items:end;gap:45px}.participate-heading h2,.campaigns-heading h2{margin-top:19px;max-width:680px}.participate-heading>p,.campaigns-heading>p{max-width:320px;font-size:14px;color:#677781;line-height:1.8}.audience-tabs{display:flex;gap:10px;margin-top:38px;margin-bottom:16px;flex-wrap:wrap}.audience-tab{background:transparent;border:1px solid #b8c7c9;border-radius:8px;padding:12px 18px;color:#55666a;font-weight:850;font-size:13px}.audience-tab.active{color:#fff;background:var(--teal);border-color:var(--teal)}.audience-tab span{font-size:19px;margin-right:7px;vertical-align:-1px}.audience-panel{background:#fff;display:grid;grid-template-columns:100px 1fr auto;align-items:center;gap:28px;padding:35px;border:1px solid #e4ebe8;border-radius:14px;min-height:178px}.audience-icon{width:85px;height:85px;border-radius:50%;display:grid;place-items:center;background:#fff4d8;color:#d99d38;font-size:49px}.audience-kicker{font-size:10px;color:var(--teal);font-weight:900;letter-spacing:.13em}.audience-panel h3{font-size:24px;letter-spacing:-.03em;line-height:1.3;margin-top:5px}.audience-panel p{font-size:13px;color:var(--sub);max-width:570px;margin-top:7px;line-height:1.7}.btn-dark{background:var(--navy);color:#fff;white-space:nowrap}.campaigns-heading{margin-bottom:23px}.campaign-legend{border-left:3px solid var(--gold);padding-left:15px;color:#6d7983;font-size:13px;line-height:1.65;margin-bottom:28px}.campaign-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.campaign-card{background:#fff;border:1px solid var(--line);border-radius:15px;padding:27px;display:flex;flex-direction:column;gap:12px;box-shadow:0 8px 25px #1d33470c}.campaign-card.highlight{border-color:#e8c77d;box-shadow:0 10px 40px #c6a5561a}.campaign-tag{align-self:start;display:inline-block;background:#eff4f1;border-radius:30px;padding:5px 10px;font-size:10px;font-weight:900;letter-spacing:.09em;color:#367477}.campaign-card.highlight .campaign-tag{color:#9d741d;background:#fff5d9}.campaign-card h3{font-family:var(--serif);font-size:25px;line-height:1.2;letter-spacing:-.02em}.campaign-card>p{color:#75828b;font-size:13px;flex:1}.campaign-meta{font-size:12px;border-top:1px solid var(--line);padding-top:13px;color:#56656f}.campaign-meta strong{color:var(--ink)}.campaign-link{background:var(--navy);color:#fff;font-weight:900;font-size:12px;border-radius:7px;display:flex;align-items:center;justify-content:space-between;padding:13px 15px;margin-top:7px}.campaign-link:hover{background:var(--teal)}.campaign-source{font-size:11px;color:#8b9699;margin-top:13px}.loading{color:var(--sub);font-size:14px}.empty-message{padding:28px;background:#fff;border:1px solid var(--line);border-radius:14px}.empty-message p{margin-top:5px;color:var(--sub);font-size:13px}.text-link{display:inline-block;margin-top:13px;color:var(--teal);font-weight:800}.donate{background:var(--navy);color:#fff}.donate-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center}.donate h2{font-size:clamp(40px,4vw,59px);margin-top:21px}.donate-grid>div:first-child>p{color:#c6d1d8;font-size:15px;margin:27px 0;line-height:1.8}.donate-grid>div:first-child>.external-note{font-size:11px;color:#9eb0be;margin:17px 0 0;max-width:420px}.donate-instructions{background:#fff;color:var(--ink);border-radius:15px;padding:30px}.instructions-top{display:flex;align-items:start;gap:12px}.important-mark{background:#fff3d8;color:#ba7f23;border-radius:50%;width:32px;height:32px;display:grid;place-items:center;font-weight:1000;flex:none}.instructions-top strong{font-size:17px}.instructions-top p{color:var(--sub);font-size:13px;margin-top:4px}.donate-instructions ol{padding-left:22px;font-size:13px;line-height:1.8;margin:20px 0 17px}.donate-instructions li{padding-left:5px;margin:7px 0}.name-copy{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:13px;background:#eef5f4;border:1px dashed #78a7a2;border-radius:8px}.name-copy strong{font-size:23px;color:var(--teal);font-family:var(--serif)}.name-copy button{border:0;border-radius:6px;background:var(--teal);color:white;font-size:11px;font-weight:900;padding:10px}.donate-foot{font-size:11px;color:#77858f;margin-top:14px;line-height:1.8}.copy-status{font-size:12px;color:var(--teal);min-height:1em}.thank-you{text-align:center;max-width:770px;margin:auto;position:relative}.thank-star{color:#eabb65;font-size:48px;display:block}.thank-you h2{margin:18px 0}.thank-you p{font-size:15px;line-height:1.9;color:var(--sub);max-width:580px;margin:auto}.signature{font-family:var(--serif);font-size:38px;font-style:italic;margin-top:23px;color:var(--teal)}.signature span{color:#d7a746}.share-actions{margin-top:26px;display:flex;flex-direction:column;align-items:center;gap:10px}.btn-outline{background:transparent;border:1px solid #9cb5b2;color:var(--teal)}#share-status{font-size:12px;color:var(--teal)}.footer{background:#e8ede8;padding:34px 0 23px}.footer-inner{display:flex;justify-content:space-between;gap:20px}.footer-inner strong{font-family:var(--serif);font-size:20px}.footer-inner p{font-size:11px;color:#70827f}.footer-links{display:flex;gap:25px;align-items:start;font-size:12px;font-weight:800}.footer-credits{border-top:1px solid #d4ded9;margin-top:22px;padding-top:17px;font-size:10px;color:#80908b}.footer-credits a{text-decoration:underline}
@media(max-width:970px){.hero-wrap{grid-template-columns:1fr 1fr}.hero-copy{padding:70px 30px 90px 0}.hero h1{font-size:clamp(48px,5.5vw,64px)}.story{gap:35px}.donate-grid{gap:45px}.audience-panel{grid-template-columns:80px 1fr}.audience-panel .btn{grid-column:2;justify-self:start}.campaign-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:690px){.shell{width:min(100% - 32px,1170px)}.announcement{font-size:9px;letter-spacing:.07em}.announcement-star{margin-inline:5px}.nav{height:68px}.brand-mark{width:39px;height:39px}.brand-name{font-size:18px}.nav nav{display:none}.nav-donate{font-size:11px;padding:11px}.hero-wrap{display:flex;flex-direction:column}.hero-copy{padding:62px 4px 47px}.hero h1{font-size:clamp(47px,11.2vw,70px);margin:20px 0}.hero-lede{font-size:14px}.hero-actions{margin-top:25px}.btn{font-size:12px}.hero-signature{margin-top:27px}.hero-visual{height:310px;min-height:310px;margin-bottom:25px}.hero-badge{width:109px;height:109px;right:4%;top:6%}.hero-badge strong{font-size:24px}.hero-badge span{font-size:8px}.photo-caption{left:17px;bottom:25px;font-size:10px}.hero-wave{height:17px}.milestone{padding:32px 0 34px;grid-template-columns:1fr;row-gap:12px}.stat-main{gap:13px}.stat-symbol{font-size:37px}.stat-main strong{font-size:44px}.stat-text{font-size:13px}.stat-details{margin-top:13px;display:grid;gap:3px;font-size:10px}.section{padding-block:67px}.story{grid-template-columns:1fr;gap:26px}.story h2,.participate h2,.campaigns h2,.thank-you h2{font-size:clamp(37px,9.2vw,52px)}.story-intro>p{font-size:14px}.video-art{height:230px}.participate-heading,.campaigns-heading{display:block}.participate-heading>p,.campaigns-heading>p{margin-top:17px}.audience-tabs{margin-top:28px;display:grid;grid-template-columns:1fr 1fr;gap:7px}.audience-tab{padding:12px 7px;font-size:11px}.audience-tab span{font-size:15px;margin-right:3px}.audience-panel{padding:21px;grid-template-columns:1fr;gap:13px}.audience-icon{width:60px;height:60px;font-size:33px}.audience-panel h3{font-size:22px}.audience-panel .btn{grid-column:1;justify-self:stretch}.campaign-grid{grid-template-columns:1fr;gap:13px}.campaign-card{padding:24px}.donate-grid{grid-template-columns:1fr;gap:34px}.donate h2{font-size:clamp(38px,9.5vw,52px)}.donate-instructions{padding:22px}.name-copy strong{font-size:21px}.thank-you{padding-block:78px}.footer-inner{display:block}.footer-links{flex-wrap:wrap;margin-top:20px;gap:15px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* V2 : l'avertissement précède toujours le lien de don, dans l'ordre visuel et de lecture. */
.donate-grid{align-items:start}
.donate-action-stack{display:flex;flex-direction:column;gap:18px}
.donate-action-stack>.btn{align-self:stretch;text-align:center}
.donate-action-stack>.external-note{font-size:11px;color:#a9bac7;line-height:1.7;margin:0}
.donate-intro>p{color:#c6d1d8;font-size:15px;margin-top:27px;line-height:1.8}
.fabrique-reminder{display:flex;gap:9px;align-items:flex-start;background:#fff7e4;border:1px solid #e6c67c;border-left:4px solid #d7a13a;border-radius:7px;padding:11px 10px;font-size:12px;line-height:1.5;color:#443824}
.fabrique-reminder-mark{flex:none;display:grid;place-items:center;background:#deb259;color:#242e36;font-weight:900;width:19px;height:19px;border-radius:50%;font-size:12px}
.fabrique-reminder-text strong{color:#3e392b}
@media(max-width:690px){.donate-action-stack{gap:14px}.donate-intro>p{font-size:14px;margin-top:20px}.fabrique-reminder{font-size:12px}}

/* V3 — lecteur video local, accessible sur telephone */
#video{scroll-margin-top:28px;} .video-frame{width:100%;aspect-ratio:16/9;height:auto;display:block;background:#142638;object-fit:contain;} .video-frame:focus-visible{outline:3px solid #d9a745;outline-offset:-3px;}
