/* Screen 3 only. Layout reference: formulaire_solis_avec_kenai.png. */
body.offer-screen-three { --coral:#ff705e; --warm:#f5f5f5; --surface:#101719; background:#151b20; display:flow-root; position:relative; }
body.offer-screen-three::before { position:absolute; inset:0; background:url('assets/tunnel-89/scene-3-no-kenai.jpg') center top / 100% auto; filter:blur(12px); }
.offer-screen-three .demo-notice { display:none; }
.offer-screen-three .skip-link { top:12px; width:1px; height:1px; padding:0; overflow:hidden; clip-path:inset(50%); white-space:nowrap; }
.offer-screen-three .skip-link:focus-visible { width:auto; height:auto; padding:10px; overflow:visible; clip-path:none; }
.offer-screen-three .funnel { container-type:inline-size; width:calc(100% - 84px); max-width:1280px; margin:48px auto 58px; padding:0; border:1px solid #718188; border-radius:26px; background:linear-gradient(115deg,#111b1f,#0c1619); overflow:hidden; }
.offer-screen-three .funnel-header { position:absolute; top:3.6cqw; left:4.6cqw; right:4.6cqw; margin:0; align-items:flex-start; }
.offer-screen-three .funnel-header .brand { width:14cqw; height:auto; }
.offer-screen-three .progress-area { width:32.5cqw; padding-top:.3cqw; margin-top:-2.3cqw; }
.offer-screen-three .progress-label { font-size:1.5cqw; gap:1cqw; }
.offer-screen-three .progress-label button { min-width:2.4cqw; min-height:3cqw; padding:0; font-size:2.5cqw; }
.offer-screen-three .progress-track { height:1cqw; margin:.65cqw 0 0 3.4cqw; background:#454a4c; }
.offer-screen-three #progress { background:linear-gradient(100deg,#ff8874,#ff6356); }
.offer-screen-three .contact-hero { position:relative; height:52.78cqw; isolation:isolate; }
.offer-screen-three .contact-backdrop { position:absolute; inset:0; z-index:-1; overflow:hidden; pointer-events:none; }
.offer-screen-three .contact-backdrop > svg { width:100%; height:100%; display:block; stroke:none; fill:none; }
.offer-screen-three .contact-backdrop > .contact-mobile-base,.offer-screen-three .contact-backdrop > .contact-mobile-scene { display:none; }
.offer-screen-three .contact-copy { position:absolute; top:14.7cqw; left:4.6cqw; width:53cqw; }
.offer-screen-three .contact-copy .kicker { font-size:1.5cqw; margin:0 0 1.45cqw; letter-spacing:.14em; }
.offer-screen-three .contact-copy h1 { font-size:6.05cqw; line-height:1.1; letter-spacing:-.04em; margin:0 0 2.5cqw; }
.offer-screen-three .contact-copy .lead { font-size:2.05cqw; line-height:1.43; font-weight:400; margin:0; }
.offer-screen-three .contact-form { position:relative; margin:0 2.8cqw; padding:3.55cqw 8.4cqw 4.1cqw; border:1px solid #72838b66; border-bottom-color:#72838b08; border-radius:2.5cqw; background:linear-gradient(110deg,#25303620,#0e171a66); }
.offer-screen-three .field { margin:0 0 3.15cqw; }
.offer-screen-three .field label { font-size:2cqw; line-height:1.4; margin-bottom:1.15cqw; font-weight:500; }
.offer-screen-three .field input { min-height:6.1cqw; padding:1.3cqw 1.8cqw; border-radius:1.2cqw; font-size:1.8cqw; line-height:1.4; background:linear-gradient(110deg,#ffffff06,#ffffff09); border-color:#9ca9b057; }
.offer-screen-three .field input::placeholder { color:#828c92; }
.offer-screen-three .field .input-shell.with-icon input { padding-left:7.3cqw; }
.offer-screen-three .input-shell > svg { width:2.8cqw; height:2.8cqw; left:2.5cqw; margin-top:-1.4cqw; }
.offer-screen-three .two-col { gap:2.7cqw; }
.offer-screen-three .field small { font-size:1.65cqw; line-height:1.45; color:#c4ccd1; margin-top:1.3cqw; }
.offer-screen-three .field:has(#email) { margin-bottom:3.25cqw; }
.offer-screen-three .field:has(#phone) { margin-bottom:1.8cqw; }
.offer-screen-three .error:empty { display:none; }
.offer-screen-three .check-label { gap:1.9cqw; font-size:1.7cqw; line-height:1.4; min-height:3.7cqw; color:var(--warm); }
.offer-screen-three .check-label input { appearance:none; width:3.2cqw; height:3.2cqw; margin:0; border:1px solid #9ca9b080; border-radius:.55cqw; background:#ffffff09; position:relative; }
.offer-screen-three .check-label input:checked { background:linear-gradient(120deg,#ff7f68,#ff5f50); border-color:#ff8065; }
.offer-screen-three .check-label input:checked::after { content:''; display:block; position:absolute; width:55%; height:30%; border-left:3px solid white; border-bottom:3px solid white; transform:rotate(-45deg); left:22%; top:25%; }
.offer-screen-three .check-label input:disabled { opacity:.55; }
.offer-screen-three .contact-whatsapp { width:3.3cqw; height:3.5cqw; stroke:none; fill:none; margin-left:-.5cqw; }
.offer-screen-three .contact-form .cta { width:calc(100% + 3.8cqw); margin:4.8cqw -1.9cqw 0; min-height:7.8cqw; padding:1.8cqw; font-size:2.4cqw; font-weight:500; gap:2cqw; background:linear-gradient(110deg,#ff6857,#ff7c68); }
.offer-screen-three .contact-form .cta svg { width:2.8cqw; height:2.8cqw; }
.offer-screen-three .contact-privacy { display:flex; justify-content:center; align-items:center; gap:2.1cqw; margin:3.8cqw -4.4cqw 0; padding:3cqw 11cqw 0 14.5cqw; border-top:1px solid #84929740; }
.offer-screen-three .contact-privacy > svg { width:3.9cqw; height:3.9cqw; border:1px solid #e4e9ec; border-radius:50%; padding:.8cqw; }
.offer-screen-three .contact-privacy p { font-size:1.35cqw; line-height:1.4; color:#bdc5cc; margin:0; }
.offer-screen-three .funnel-footer { margin:1.55cqw 4.1cqw 1.3cqw; padding:0; min-height:6.6cqw; border:0; gap:2.1cqw; }
.offer-screen-three .funnel-footer .brand { width:8.7cqw; height:auto; }
.offer-screen-three .funnel-footer::before { content:''; order:1; width:7cqw; height:1px; background:#93a3a577; }
.offer-screen-three .funnel-footer > span { order:2; font-size:1.02cqw; letter-spacing:.14em; line-height:1.5; }
@media (min-width:701px) and (max-width:1000px) {
  .offer-screen-three .funnel { width:calc(100% - 40px); margin:24px auto; }
  .offer-screen-three .contact-copy .lead { font-size:17px; }
  .offer-screen-three .contact-copy h1 { font-size:5.9cqw; }
  .offer-screen-three .contact-copy .kicker { font-size:12px; }
  .offer-screen-three .progress-label { font-size:12px; }
  .offer-screen-three .field label { font-size:17px; }
  .offer-screen-three .field input { min-height:54px; font-size:16px; }
  .offer-screen-three .field small { font-size:14px; }
  .offer-screen-three .check-label { font-size:14px; }
  .offer-screen-three .contact-form .cta { min-height:62px; font-size:20px; }
  .offer-screen-three .contact-privacy { padding-left:8cqw; padding-right:5cqw; }
  .offer-screen-three .contact-privacy p { font-size:12px; }
}
@media (max-width:700px) {
  body.offer-screen-three::before { background-size:auto 100%; background-position:center top; filter:blur(10px); }
  .offer-screen-three .funnel { width:calc(100% - 20px); margin:12px auto 24px; border-radius:20px; }
  .offer-screen-three .funnel-header { position:relative; top:auto; left:auto; right:auto; margin:18px 20px 24px; gap:16px; align-items:center; }
  .offer-screen-three .funnel-header .brand { width:98px; }
  .offer-screen-three .progress-area { width:165px; padding:0; margin:0; }
  .offer-screen-three .progress-label { font-size:11px; gap:4px; }
  .offer-screen-three .progress-label button { font-size:23px; min-width:28px; min-height:44px; }
  .offer-screen-three .progress-track { height:6px; margin:0 0 0 32px; }
  .offer-screen-three .contact-hero { height:auto; padding-bottom:105cqw; }
  .offer-screen-three .contact-copy { position:relative; top:auto; left:auto; width:auto; margin:0 22px; }
  .offer-screen-three .contact-copy .kicker { font-size:11px; margin:0 0 14px; }
  .offer-screen-three .contact-copy h1 { font-size:33px; margin:0 0 20px; line-height:1.08; }
  .offer-screen-three .contact-copy .lead { font-size:17px; line-height:1.5; }
  .offer-screen-three .contact-backdrop { inset:-92px 0 0; }
  .offer-screen-three .contact-backdrop > svg { display:none; }
  .offer-screen-three .contact-backdrop > .contact-mobile-base { display:block; width:100%; height:100%; }
  .offer-screen-three .contact-backdrop > .contact-mobile-scene { display:block; position:absolute; bottom:0; left:0; width:100%; height:115cqw; mask-image:linear-gradient(transparent,#000 15%,#000 97%,transparent); }
  .offer-screen-three .contact-form { margin:0 16px; padding:25px 20px 24px; border-radius:18px; }
  .offer-screen-three .field,.offer-screen-three .field:has(#email) { margin:0 0 25px; }
  .offer-screen-three .field label { font-size:17px; margin-bottom:10px; }
  .offer-screen-three .field input { font-size:16px; min-height:54px; padding:14px 16px; border-radius:10px; }
  .offer-screen-three .field .input-shell.with-icon input { padding-left:48px; }
  .offer-screen-three .input-shell > svg { width:23px; height:23px; left:14px; margin-top:-11.5px; }
  .offer-screen-three .field small { font-size:13px; margin-top:11px; }
  .offer-screen-three .two-col { grid-template-columns:1fr; gap:0; }
  .offer-screen-three .field:has(#phone) { margin-bottom:14px; }
  .offer-screen-three .check-label { gap:10px; font-size:13px; min-height:44px; }
  .offer-screen-three .check-label input { width:24px; height:24px; border-radius:5px; }
  .offer-screen-three .contact-whatsapp { width:24px; height:25px; margin-left:-5px; }
  .offer-screen-three .contact-form .cta { width:100%; margin:26px 0 0; font-size:20px; min-height:60px; padding:16px; gap:18px; }
  .offer-screen-three .contact-form .cta svg { width:25px; height:25px; }
  .offer-screen-three .contact-privacy { gap:12px; margin:26px 0 0; padding:22px 0 0; align-items:flex-start; }
  .offer-screen-three .contact-privacy > svg { width:32px; height:32px; padding:7px; }
  .offer-screen-three .contact-privacy p { font-size:12px; line-height:1.5; }
  .offer-screen-three .funnel-footer { margin:14px 18px 18px; padding-top:0; gap:12px; flex-wrap:wrap; }
  .offer-screen-three .funnel-footer .brand { width:65px; }
  .offer-screen-three .funnel-footer::before { flex:1; width:auto; }
  .offer-screen-three .funnel-footer > span { order:4; width:100%; text-align:center; font-size:8px; line-height:1.6; letter-spacing:.12em; }
}
