/* La déchirure est une colonne de texte; les portraits restent les fichiers approuvés. */
.family-obstacles{grid-template-columns:minmax(0,1fr) minmax(280px,23%) minmax(0,1fr);align-items:center;background:#073b6a;isolation:isolate}
.family-obstacles .family-half{width:100%;align-self:center;margin:0;aspect-ratio:724/370}
.family-obstacles .family-left{grid-column:1;grid-row:1;clip-path:inset(0 0 8.1081081081% 0)}
/* Le cadrage retire les 30 dernières unités de la fenêtre de 370 unités :
   la photo source reste intacte, « Éric & Mélina » et « QUÉBEC » restent visibles,
   et la ligne « MÊME FAMILLE. MÊME AVENIR. » se trouve hors du cadre affiché. */
.family-obstacles .family-right{grid-column:3;grid-row:1}
.obstacle-tear{position:relative;grid-column:2;grid-row:1;align-self:stretch;z-index:1;margin:0 -22px;color:#073677;text-align:center;filter:drop-shadow(0 0 8px #001a3e88)}
.obstacle-tear::before{content:"";position:absolute;inset:0;z-index:-1;background:linear-gradient(98deg,#e8edf2 0%,#fff 12%,#fff 85%,#e8edf2 100%);clip-path:polygon(6% 0,97% 0,94% 4%,98% 8%,94% 12%,97% 17%,93% 21%,98% 26%,94% 30%,97% 36%,93% 41%,98% 47%,94% 51%,97% 57%,93% 62%,98% 67%,94% 73%,97% 78%,93% 82%,98% 87%,94% 92%,97% 97%,95% 100%,4% 100%,7% 96%,3% 91%,6% 85%,2% 81%,7% 75%,3% 71%,6% 65%,2% 60%,7% 55%,3% 50%,6% 44%,2% 38%,7% 32%,3% 28%,6% 22%,2% 16%,7% 11%,3% 6%)}
.obstacle-tear-content{padding:15px 31px;display:flex;flex-direction:column;align-items:center;gap:8px}
.obstacle-heading{display:flex;align-items:center;justify-content:center;gap:13px}
.obstacle-heading .obstacle-flag{width:58px;height:auto;display:block;box-shadow:0 2px 6px #001a3e22}
.obstacle-heading h2{margin:0;font-size:1.125rem;line-height:1.05;text-align:left;font-weight:850;letter-spacing:-.4px}
.obstacle-stamps{display:flex;justify-content:center;gap:13px}
.obstacle-stamps span{display:block;border:2px solid #0a4376;padding:3px 14px;font-size:1.25rem;line-height:1.05;font-weight:900;letter-spacing:1px}
.obstacle-stamps span:first-child{transform:rotate(-3deg)}
.obstacle-stamps span:last-child{transform:rotate(3deg)}
.obstacle-quota{display:flex;flex-direction:column;align-items:center;gap:2px;width:100%;padding:6px 0;border-top:1px solid #bdcddd;border-bottom:1px solid #bdcddd}
.obstacle-label{color:#c91032;font-weight:850;letter-spacing:2px;font-size:.875rem;line-height:1.2}
.obstacle-quota strong{font-size:2.15rem;font-weight:900;line-height:1;letter-spacing:-1px;color:#c91032}
.obstacle-quota>span:not(.obstacle-label){font-size:.9375rem;line-height:1.25;font-weight:700}
.obstacle-quota small{font-size:.75rem;line-height:1.3;margin-top:2px}
.obstacle-calendar{display:flex;flex-direction:column;gap:3px}
.obstacle-calendar strong{font-size:1rem;line-height:1.13}
.obstacle-calendar span{font-size:.8125rem;line-height:1.2}
.obstacle-stop{background:#fbe8ec;border-left:3px solid #c91032;color:#98152e;padding:7px 10px;width:100%;display:flex;flex-direction:column;gap:2px}
.obstacle-stop strong{font-size:.9375rem;line-height:1.1}
.obstacle-stop span{font-size:.8125rem;line-height:1.2}
@media(min-width:1400px){.family-obstacles{grid-template-columns:minmax(0,1fr) minmax(305px,22%) minmax(0,1fr)}}
@media(max-width:1000px) and (min-width:721px){.family-obstacles{grid-template-columns:minmax(0,1fr) 280px minmax(0,1fr)}.obstacle-tear-content{padding-left:33px;padding-right:33px;gap:9px}.obstacle-heading .obstacle-flag{width:54px}.obstacle-heading h2{font-size:1.2rem}}
@media(max-width:720px){.family-obstacles{grid-template-columns:1fr;gap:0}.family-obstacles .family-left{grid-column:1;grid-row:1}.family-obstacles .family-right{grid-column:1;grid-row:3}.obstacle-tear{grid-column:1;grid-row:2;margin:-10px 0;filter:drop-shadow(0 0 7px #001a3e55)}.obstacle-tear::before{clip-path:polygon(0 5%,5% 2%,9% 6%,14% 3%,20% 6%,25% 2%,30% 5%,35% 2%,41% 6%,46% 3%,52% 5%,57% 2%,64% 6%,70% 3%,76% 5%,81% 2%,87% 6%,93% 3%,100% 5%,100% 95%,95% 98%,90% 94%,84% 98%,79% 95%,73% 98%,68% 94%,63% 98%,57% 95%,51% 98%,46% 94%,41% 97%,35% 94%,30% 98%,24% 95%,19% 98%,14% 94%,8% 98%,3% 95%,0 98%)}.obstacle-tear-content{padding:30px 28px;gap:12px;max-width:430px;margin:auto}.obstacle-heading h2{font-size:1.4rem}.obstacle-heading .obstacle-flag{width:68px}.obstacle-stamps span{font-size:1.5rem}.obstacle-calendar span,.obstacle-stop span{font-size:.875rem}}

/* Portrait Éric et Mélina approuvé — cadrage complet. */
.family-obstacles .family-left.family-left-clean{clip-path:none;aspect-ratio:auto}
.family-obstacles .family-left.family-left-clean img{position:static;display:block;width:100%;height:auto;max-width:100%;top:auto;left:auto}
.family-left-caption{position:absolute;left:20px;bottom:14px;color:#fff;text-shadow:0 2px 5px #00152e}
.family-left-caption span{display:block;font-family:Georgia,'Times New Roman',serif;font-size:26px;font-style:italic;line-height:1.15}
.family-left-caption small{display:block;font-size:12px;letter-spacing:2px;margin-top:4px}
@media(max-width:1000px) and (min-width:721px){.family-left-caption{left:12px;bottom:10px}.family-left-caption span{font-size:21px}}

/* Compteur familial approuvé — 4 avril 2021. */
.family-wait-counter{display:grid;grid-template-columns:minmax(0,1fr) minmax(470px,1.05fr);align-items:center;gap:32px;margin:0 0 20px;padding:25px 30px;background:#fff;border-left:6px solid #d30b35;border-radius:10px;color:#0a3b66}
.family-wait-since{margin:0 0 9px;font-size:16px;line-height:1.4;color:#b50b2b;font-weight:700}
.family-wait-counter h2{margin:0;font-size:26px;line-height:1.2;max-width:510px;font-weight:800}
.family-wait-digits{display:grid;grid-template-columns:1.45fr repeat(3,1fr);gap:14px;align-items:start;text-align:center;font-variant-numeric:tabular-nums}
.family-wait-unit{min-width:0}
.family-wait-unit strong{display:block;font-size:clamp(38px,4.2vw,56px);line-height:1.1;font-weight:850;letter-spacing:-1.5px;white-space:nowrap}
.family-wait-unit:first-child strong{color:#c91032}
.family-wait-unit span{display:block;margin-top:6px;font-size:15px;line-height:1.3;color:#405c75}
@media(max-width:1050px){.family-wait-counter{grid-template-columns:1fr;gap:20px;text-align:center}.family-wait-counter h2{max-width:650px;margin:0 auto}.family-wait-digits{width:100%;max-width:650px;margin:auto}.family-wait-unit strong{font-size:48px}}
@media(max-width:520px){.family-wait-counter{padding:21px 12px;border-left-width:4px;gap:19px}.family-wait-since{font-size:14px}.family-wait-counter h2{font-size:21px}.family-wait-digits{gap:5px;grid-template-columns:1.4fr repeat(3,1fr)}.family-wait-unit strong{font-size:clamp(26px,7.2vw,36px);letter-spacing:-.7px}.family-wait-unit span{font-size:13px}}

/* Texte du compteur approuvé par le propriétaire. */
.family-wait-copy .family-wait-message{margin:12px 0;font-size:20px;line-height:1.4;font-weight:500;color:#0a3b66}
.family-wait-copy .family-wait-since{margin:0;font-size:15px;line-height:1.4}
@media(max-width:520px){.family-wait-copy .family-wait-message{font-size:17px}.family-wait-copy .family-wait-since{font-size:14px}}

/* Titre central et accroche approuvés. */
.comparison-message.comparison-question h1{font-size:clamp(27px,2.5vw,34px);line-height:1.08;margin-bottom:13px}
.comparison-message.comparison-question p{font-size:18px;line-height:1.35;font-weight:600}
@media(max-width:720px){.comparison-message.comparison-question h1{font-size:30px}.comparison-message.comparison-question p{font-size:17px;max-width:580px;margin:0 auto}}


/* Bandeau familial fusionné — V4.3 */
.family-story-band{display:block;margin:0 0 14px;padding:26px 30px;background:linear-gradient(110deg,#075493,#064076);border-left:6px solid #df1641;border-radius:10px;color:#fff}
.family-story-top{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(450px,1fr);align-items:center;gap:34px}
.family-story-band h2{max-width:none;color:#fff}
.family-story-band .family-wait-message{color:#fff;margin:12px 0;font-size:20px;line-height:1.4}
.family-story-band .family-wait-since{color:#dceeff;font-size:15px}
.family-story-band .family-wait-unit strong{color:#fff}
.family-story-band .family-wait-unit:first-child strong{color:#fff}
.family-story-band .family-wait-unit span{color:#dceeff}
.family-story-impact{margin-top:23px;padding-top:21px;border-top:1px solid rgba(255,255,255,.3)}
.family-story-impact h3{font-size:24px;line-height:1.25;margin:0 0 9px;color:#fff}
.family-story-impact p{font-size:18px;line-height:1.45;letter-spacing:.1px;margin:0;color:#fff}
@media(max-width:1050px){.family-story-top{grid-template-columns:1fr;gap:23px}.family-story-band{text-align:left}.family-story-band h2{margin:0}.family-story-band .family-wait-digits{max-width:650px;margin:0 auto}.family-story-impact{margin-top:24px}}
@media(max-width:520px){.family-story-band{padding:22px 16px;border-left-width:4px}.family-story-band .family-wait-message{font-size:17px}.family-story-band .family-wait-since{font-size:14px}.family-story-impact{padding-top:20px;margin-top:22px}.family-story-impact h3{font-size:21px}.family-story-impact p{font-size:16px;line-height:1.5}}
