@font-face { font-family: 'Inter'; src: local('Inter'); }
* { box-sizing: border-box; }
body { margin: 0; font-family: 'Inter', system-ui, sans-serif; color: #141414; -webkit-font-smoothing: antialiased; background: #fff; }
a { color: #141414; text-decoration: none; }
a:hover { color: #b8860b; border-bottom: 1px solid #b8860b; }

.header { display:flex; align-items:center; justify-content:space-between; padding:20px 32px; border-bottom:1px solid #eee; max-width:1180px; margin:0 auto; }
.brand { display:flex; align-items:center; gap:14px; }
.brand img { width:64px; height:64px; object-fit:contain; }
.brand-name { display:flex; flex-direction:column; line-height:1.05; }
.brand-name .en { font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:19px; letter-spacing:0.02em; text-transform:uppercase; }
.brand-name .fr { font-size:11px; color:#8a8a8a; letter-spacing:0.05em; text-transform:uppercase; }

.lang-toggle { display:flex; align-items:center; gap:4px; background:#f2f2f2; border-radius:999px; padding:4px; }
.lang-toggle button { border:none; cursor:pointer; padding:7px 16px; border-radius:999px; font-size:13px; font-weight:600; letter-spacing:0.02em; font-family:inherit; background:transparent; color:#141414; }
.lang-toggle button.active { background:#141414; color:#f0b93a; }

.hero { position:relative; z-index:1; background-image:linear-gradient(180deg, rgba(255,255,255,0.16), rgba(255,255,255,0.3)), url('../assets/hero.jpg'); background-size:cover; background-position:center 15%; padding:64px 32px 112px; min-height:560px; display:flex; align-items:flex-start; justify-content:center; text-align:center; }
.hero h1 { font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:56px; line-height:1.05; color:#141414; margin:0; text-transform:uppercase; letter-spacing:0.01em; text-shadow:0 1px 6px rgba(255,255,255,0.5); max-width:760px; }
.hero .eyebrow { display:inline-block; color:#8a6200; font-size:13px; font-weight:700; letter-spacing:0.16em; text-transform:uppercase; margin-bottom:22px; }

.note-section { position:relative; z-index:2; padding:0 32px; }
.note { max-width:760px; margin:-34px auto 0; background:#fdf6e6; border:1px solid #f0b93a; border-radius:10px; padding:22px 28px; text-align:left; }
.note p { margin:0; font-size:15px; line-height:1.6; color:#4a3d16; }
.note strong { color:#141414; }

.signup { padding:80px 32px 88px; }
.signup .lead { max-width:640px; margin:0 auto 48px; text-align:center; }
.signup .lead p { font-size:17px; line-height:1.65; color:#333; margin:0; }
.signup-form-wrap { max-width:520px; margin:0 auto; text-align:center; }
.signup-form-wrap h2 { font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:32px; text-transform:uppercase; margin:0 0 12px; letter-spacing:0.01em; }
.signup-form-wrap .sub { font-size:15.5px; line-height:1.6; color:#555; margin:0 0 32px; }

#mc_embed_signup form { display:flex; flex-direction:column; gap:14px; text-align:left; }
.field { display:flex; flex-direction:column; gap:6px; }
.field-row { display:flex; gap:14px; }
.field-row .field { flex:1; }
label { font-size:13px; font-weight:600; color:#333; }
input[type="email"], input[type="text"] { width:100%; padding:13px 14px; border:1px solid #ddd; border-radius:8px; font-size:15px; font-family:inherit; }
button[type="submit"] { margin-top:6px; width:100%; background:#f0b93a; color:#141414; border:none; padding:15px; border-radius:8px; font-size:15.5px; font-weight:700; letter-spacing:0.02em; text-transform:uppercase; cursor:pointer; font-family:inherit; }
button[type="submit"]:hover { background:#e0a923; }

.programs { background:#f7f5f0; padding:72px 32px 88px; }
.programs-inner { max-width:1080px; margin:0 auto; }
.programs-head { text-align:center; margin-bottom:48px; }
.programs-head h2 { font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:30px; text-transform:uppercase; margin:0 0 10px; }
.programs-head p { font-size:15.5px; color:#666; margin:0; }
.programs-grid { display:grid; grid-template-columns:repeat(auto-fit, minmax(230px, 1fr)); gap:32px; }
.province-card { background:#fff; border:1px solid #e8e5dd; border-radius:10px; padding:26px 24px; }
.province-card .title { font-family:'Barlow Condensed',sans-serif; font-weight:700; font-size:18px; text-transform:uppercase; letter-spacing:0.03em; color:#141414; border-bottom:2px solid #f0b93a; padding-bottom:10px; margin-bottom:16px; }
.province-card .links { display:flex; flex-direction:column; gap:12px; }
.province-card .links a { font-size:14px; line-height:1.4; border-bottom:1px solid transparent; }

footer { background:#141414; padding:36px 32px; text-align:center; }
footer img { width:32px; height:32px; object-fit:contain; margin-bottom:14px; }
footer p { margin:0; font-size:12.5px; color:#999; line-height:1.6; }

[data-lang="fr"] { display: none !important; }
body.lang-fr [data-lang="fr"] { display: initial !important; }
body.lang-fr [data-lang="en"] { display: none !important; }
