.formalities-preparation-page{
  --prep-ink:#10213d;
  --prep-blue:#254c65;
  --prep-gold:#b08a3e;
  --prep-cream:#f6eddf;
  --prep-paper:#fff9f0;
  background:var(--prep-cream);
  color:var(--prep-ink);
}
.formalities-preparation-page main{background:radial-gradient(circle at 9% 7%,rgba(255,252,245,.94),transparent 30%),radial-gradient(circle at 92% 54%,rgba(223,197,145,.2),transparent 34%),linear-gradient(145deg,#f8f0e4,#efe1cf 58%,#f6ecdf);}
.prep-hero{
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(50px,6vw,76px) 0 clamp(44px,5vw,66px);
  background:
    linear-gradient(90deg,rgba(255,250,241,.97) 0%,rgba(255,250,241,.9) 35%,rgba(255,250,241,.58) 58%,rgba(255,250,241,.14) 100%),
    linear-gradient(180deg,rgba(255,255,255,.08),rgba(245,233,216,.08)),
    url("assets/resources/documents-utiles.png") center 57%/cover no-repeat;
}
.prep-hero::before{
  content:none;
}
.prep-hero::after{display:none;}
.prep-hero-grid{display:grid;grid-template-columns:minmax(0,1.12fr) minmax(310px,.7fr);gap:clamp(34px,6vw,82px);align-items:center;}
.prep-hero-copy h1{max-width:17ch;font:400 clamp(38px,5vw,59px)/1.02 var(--serif);letter-spacing:-.03em;color:var(--prep-ink);}
.prep-hero-copy h1 em{display:block;color:#a8792f;font-weight:400;}
.prep-hero-lead{max-width:37ch;margin-top:22px;font:400 clamp(20px,2vw,27px)/1.28 var(--serif);color:#173957;}
.prep-hero-intro{max-width:65ch;margin-top:15px;color:#365166;font-size:15px;line-height:1.7;}
.prep-principle{position:relative;padding:clamp(24px,3vw,34px);border:1px solid rgba(176,138,62,.34);border-radius:22px;background:rgba(255,251,244,.91);box-shadow:0 24px 52px -43px rgba(65,43,17,.4);backdrop-filter:blur(4px);}
.prep-principle::before{content:"";position:absolute;top:0;left:28px;width:62px;height:2px;background:linear-gradient(90deg,#b08a3e,#dfc57f);}
.prep-principle span{color:#8d6424;font-size:11px;font-weight:800;letter-spacing:.15em;text-transform:uppercase;}
.prep-principle p{margin-top:12px;color:#29465d;font-size:14px;line-height:1.68;}
.prep-experience{padding:clamp(50px,7vw,88px) 0;background:radial-gradient(circle at 12% 20%,rgba(255,253,248,.76),transparent 31%),linear-gradient(155deg,#f8f1e6,#eddfcc 68%,#f4eadc);}
.prep-experience-layout{display:grid;grid-template-columns:clamp(154px,15vw,180px) minmax(0,1fr);gap:clamp(28px,4vw,54px);align-items:start;}
.prep-experience-main{min-width:0;}
.prep-progress{position:sticky;top:calc(var(--flyvic-header-height,76px) + 20px);padding:18px 14px;border:1px solid rgba(176,138,62,.28);border-radius:18px;background:rgba(255,251,245,.9);box-shadow:0 20px 42px -38px rgba(64,42,18,.48);}
.prep-progress-copy{display:flex;flex-direction:column;gap:3px;padding:0 5px 13px;border-bottom:1px solid rgba(16,33,61,.12);}
.prep-progress-copy span{color:#806a4d;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;}
.prep-progress-copy strong{color:#173957;font:500 18px/1.2 var(--serif);}
.prep-progress-list{display:grid;gap:4px;margin:10px 0 0;padding:0;list-style:none;}
.prep-progress-list button{display:grid;width:100%;grid-template-columns:26px minmax(0,1fr);gap:6px;align-items:center;padding:8px 6px;border:0;border-radius:9px;background:transparent;color:#526678;font:600 11px/1.3 var(--sans);text-align:left;cursor:pointer;transition:background .2s,color .2s;}
.prep-progress-list button span{display:grid;width:24px;height:24px;border:1px solid rgba(16,33,61,.18);border-radius:50%;place-items:center;color:#8b672e;font:600 9px var(--sans);}
.prep-progress-list button:hover,.prep-progress-list button.is-active{background:rgba(176,138,62,.12);color:#173957;}
.prep-progress-list button.is-active span{border-color:#b08a3e;background:#b08a3e;color:#fffaf0;}
.prep-progress-list button.is-complete:not(.is-active) span{border-color:#789486;background:#dce8df;color:#244a3d;}
.prep-progress-list button:focus-visible{outline:2px solid #b08a3e;outline-offset:2px;}
.prep-progress-track{display:none;height:7px;overflow:hidden;border-radius:999px;background:#d9cdbd;}
.prep-progress-track span{display:block;width:0;height:100%;border-radius:inherit;background:linear-gradient(90deg,#8ca9a2,#b08a3e 58%,#879b72);transition:width .35s ease;}
.prep-section-head{max-width:70ch;margin-bottom:27px;}
.prep-section-head h2{font-size:clamp(29px,3.3vw,42px);line-height:1.1;letter-spacing:-.018em;}
.prep-section-head>p:last-child{margin-top:12px;color:#41586a;font-size:14.5px;line-height:1.65;}
.prep-card-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.prep-card{
  --card-tint:#e2ebe7;
  --card-line:#91aaa3;
  position:relative;
  isolation:isolate;
  display:flex;
  min-height:226px;
  overflow:hidden;
  padding:24px 22px;
  border:1px solid var(--card-line);
  border-radius:21px;
  flex-direction:column;
  align-items:flex-start;
  background:linear-gradient(145deg,#fffaf2 0%,rgba(255,249,240,.95) 46%,var(--card-tint) 100%);
  color:var(--prep-ink);
  text-align:left;
  box-shadow:0 20px 44px -38px rgba(67,46,25,.48);
  cursor:pointer;
  transition:transform .25s ease,border-color .25s ease,box-shadow .25s ease;
}
.prep-card::after{content:attr(data-mark);position:absolute;z-index:-1;right:14px;bottom:-18px;color:var(--card-line);font:400 104px/1 var(--serif);opacity:.045;}
.prep-card:hover{transform:translateY(-3px);border-color:#b08a3e;box-shadow:0 29px 56px -39px rgba(8,28,48,.82);}
.prep-card:focus-visible{outline:3px solid rgba(176,138,62,.48);outline-offset:3px;}
.prep-card-passport{--card-tint:#edf3ef;--card-line:#86a79f;}
.prep-card-visa{--card-tint:#f5eae0;--card-line:#c39b70;}
.prep-card-health{--card-tint:#edf2e8;--card-line:#8da27a;}
.prep-card-entry{--card-tint:#f5ead8;--card-line:#bd985a;}
.prep-card-documents{--card-tint:#f2e8df;--card-line:#aa8b6f;}
.prep-card-advice{--card-tint:#eff1e7;--card-line:#89966b;}
.prep-card-number{color:#8d682e;font:500 13px/1 var(--serif);font-style:italic;}
.prep-card strong{margin-top:29px;color:#173957;font:500 clamp(21px,2vw,26px)/1.1 var(--serif);}
.prep-card>span:not(.prep-card-number){max-width:31ch;margin-top:10px;color:#365166;font-size:13px;line-height:1.52;}
.prep-card i{margin-top:auto;padding-top:18px;color:#805a20;font-size:11px;font-style:normal;font-weight:800;letter-spacing:.02em;}
.prep-workspace,.prep-summary{scroll-margin-top:calc(var(--flyvic-header-height,76px) + 18px);}
.prep-workspace[hidden],.prep-step[hidden],.prep-overview[hidden],.prep-summary[hidden]{display:none;}
.prep-workspace-nav{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px;}
.prep-workspace-nav span{color:#705e48;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;}
.prep-return{padding:7px 0;border:0;border-bottom:1px solid rgba(176,138,62,.5);background:transparent;color:#173957;font:700 11.5px var(--sans);cursor:pointer;}
.prep-return:focus-visible{outline:2px solid #b08a3e;outline-offset:4px;}
.prep-step{
  --step-tint:#e2ebe7;
  --step-line:#91aaa3;
  position:relative;
  isolation:isolate;
  overflow:hidden;
  padding:clamp(27px,4vw,45px);
  border:1px solid var(--step-line);
  border-radius:26px;
  background:linear-gradient(145deg,#fffaf2 0%,rgba(255,249,240,.96) 48%,var(--step-tint) 100%);
  box-shadow:0 28px 60px -50px rgba(67,46,25,.54);
}
.prep-step::after{content:attr(data-watermark);position:absolute;z-index:-1;top:18px;right:30px;color:var(--step-line);font:400 clamp(82px,10vw,136px)/1 var(--serif);opacity:.035;}
.prep-step-passport{--step-tint:#edf3ef;--step-line:#86a79f;}
.prep-step-visa{--step-tint:#f5eae0;--step-line:#c39b70;}
.prep-step-health{--step-tint:#edf2e8;--step-line:#8da27a;}
.prep-step-entry{--step-tint:#f5ead8;--step-line:#bd985a;}
.prep-step-documents{--step-tint:#f2e8df;--step-line:#aa8b6f;}
.prep-step-advice{--step-tint:#eff1e7;--step-line:#89966b;}
.prep-step-heading{display:grid;grid-template-columns:52px minmax(0,1fr);gap:18px;align-items:start;padding:0 min(12vw,145px) 23px 0;border-bottom:1px solid rgba(16,33,61,.13);}
.prep-step-heading>span{display:grid;width:46px;height:46px;border:1px solid var(--step-line);border-radius:50%;place-items:center;color:#855f23;font:500 15px var(--serif);}
.prep-step-heading p{color:#715e46;font-size:9.5px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;}
.prep-step-heading h2{max-width:26ch;margin-top:6px;color:#173957;font-size:clamp(26px,3.2vw,36px);line-height:1.1;}
.prep-step-grid{display:grid;grid-template-columns:minmax(0,.92fr) minmax(280px,1.08fr);gap:clamp(26px,4vw,52px);margin-top:29px;}
.prep-step h3{color:#173957;font-size:19px;}
.prep-step section>p{margin-top:10px;color:#3c5365;font-size:14px;line-height:1.68;}
.prep-checks{display:grid;gap:10px;}
.prep-checks h3{margin-bottom:2px;}
.prep-checks label{display:flex;gap:11px;align-items:flex-start;padding:13px 14px;border:1px solid rgba(16,33,61,.13);border-radius:12px;background:rgba(255,250,243,.72);color:#29465d;font-size:13.2px;line-height:1.48;cursor:pointer;}
.prep-checks label:has(input:checked){border-color:var(--step-line);background:rgba(255,250,243,.94);box-shadow:inset 3px 0 0 var(--step-line);}
.prep-checks input{width:19px;height:19px;margin:1px 0 0;flex:0 0 auto;accent-color:#9b783b;cursor:pointer;}
.passport-readiness{margin-top:28px;padding:clamp(20px,3vw,30px);border:1px solid rgba(134,167,159,.62);border-radius:18px;background:rgba(255,250,243,.68);}
.passport-readiness-heading{display:flex;align-items:baseline;justify-content:space-between;gap:22px;flex-wrap:wrap;}
.passport-readiness-kicker{color:#765f3f!important;font-size:9.5px!important;font-weight:800;letter-spacing:.13em;text-transform:uppercase;}
.passport-readiness-heading h3{font-size:clamp(19px,2.2vw,25px);}
.passport-readiness-fields{display:grid;grid-template-columns:1.2fr 1fr 1fr 1fr;gap:14px;margin-top:20px;align-items:end;}
.passport-choice{min-width:0;margin:0;padding:0;border:0;}
.passport-choice legend,.passport-field{color:#29465d;font-size:11px;font-weight:750;line-height:1.4;}
.passport-choice>div{display:flex;gap:8px;margin-top:8px;}
.passport-choice label{display:flex;min-height:43px;min-width:72px;align-items:center;justify-content:center;gap:7px;padding:9px 12px;border:1px solid rgba(16,33,61,.18);border-radius:10px;background:#fffaf3;color:#173957;cursor:pointer;}
.passport-choice label:has(input:checked){border-color:#86a79f;background:#e4eeeb;box-shadow:inset 0 0 0 1px rgba(134,167,159,.35);}
.passport-choice input{width:17px;height:17px;margin:0;accent-color:#7b9a92;}
.passport-field{display:grid;gap:8px;}
.passport-field[hidden]{display:none;}
.passport-field input{width:100%;min-width:0;min-height:43px;padding:9px 11px;border:1px solid rgba(16,33,61,.2);border-radius:10px;background:#fffaf3;color:#173957;font:600 12px var(--sans);}
.passport-field input::placeholder{color:#73818c;opacity:1;}
.passport-choice input:focus-visible,.passport-field input:focus-visible{outline:3px solid rgba(176,138,62,.46);outline-offset:2px;}
.passport-verification{margin-top:20px;padding:17px 18px;border-left:3px solid #86a79f;border-radius:0 12px 12px 0;background:rgba(226,236,233,.74);}
.passport-verification[hidden]{display:none;}
.passport-verification h3{font-size:17px;}
.passport-verification p{margin-top:7px!important;color:#304b5f!important;font-size:13.2px!important;line-height:1.58!important;}
.passport-verification p+p{color:#455d6e!important;}
.prep-source-slot{margin-top:24px;padding:16px 18px;border:1px solid rgba(16,33,61,.09);border-left:3px solid var(--step-line);border-radius:0 12px 12px 0;background:rgba(255,250,243,.57);}
.prep-source-slot>span{color:#745e40;font-size:9px;font-weight:800;letter-spacing:.13em;text-transform:uppercase;}
.prep-source-slot p{margin-top:6px;color:#29465d;font:500 14.5px var(--serif);}
.prep-source-slot small{display:block;margin-top:4px;color:#5d6c79;font-size:10.5px;line-height:1.48;}
.prep-step-passport .prep-source-link{display:inline-flex;width:max-content;max-width:100%;margin-top:9px;padding:10px 14px;border:1px solid rgba(128,90,32,.36);border-radius:9px;background:rgba(255,250,243,.74);color:#704d18;font-size:12px;font-weight:800;line-height:1.35;}
.prep-step-passport .prep-source-link:hover{border-color:#9b783b;background:#fffaf3;}
.prep-step-passport .prep-source-link:focus-visible{outline:3px solid rgba(176,138,62,.5);outline-offset:3px;}
.prep-step-passport .prep-source-link+small{margin-top:8px;max-width:75ch;font-size:11px;}
.visa-prerequisite,.visa-definitions,.visa-situation,.visa-orientation{margin-top:24px;padding:clamp(20px,3vw,29px);border:1px solid rgba(195,155,112,.5);border-radius:18px;background:rgba(255,250,243,.68);}
.visa-section-kicker{margin:0 0 6px!important;color:#7c5b31!important;font-size:10.5px!important;font-weight:800;letter-spacing:.13em;text-transform:uppercase;}
.visa-prerequisite>p{max-width:78ch;margin-top:12px!important;color:#3c5365!important;font-size:14.5px!important;line-height:1.65!important;}
.visa-passport-choice{margin:18px 0 0;padding:0;border:0;}
.visa-passport-choice legend{color:#29465d;font-size:13px;font-weight:750;line-height:1.45;}
.visa-passport-choice>div{display:flex;gap:9px;flex-wrap:wrap;margin-top:9px;}
.visa-passport-choice label{display:flex;min-height:43px;align-items:center;gap:8px;padding:9px 14px;border:1px solid rgba(16,33,61,.18);border-radius:10px;background:#fffaf3;color:#173957;font-size:13px;font-weight:700;cursor:pointer;}
.visa-passport-choice label:has(input:checked){border-color:#c39b70;background:#f1e4d8;box-shadow:inset 0 0 0 1px rgba(195,155,112,.3);}
.visa-passport-choice input{width:17px;height:17px;margin:0;accent-color:#a97838;}
.visa-passport-link{display:inline-flex;width:max-content;max-width:100%;margin-top:13px;padding:9px 0;border-bottom:1px solid rgba(128,90,32,.48);color:#704d18;font-size:13px;font-weight:800;}
.visa-passport-link[hidden]{display:none;}
.visa-passport-link:hover{color:#9b6d25;border-color:#9b6d25;}
.visa-definitions-heading{max-width:67ch;}
.visa-definitions-heading h3{font-size:clamp(20px,2.4vw,28px);line-height:1.18;}
.visa-definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:20px;}
.visa-definition-grid article{padding:18px;border:1px solid rgba(16,33,61,.12);border-radius:13px;background:rgba(255,250,243,.75);}
.visa-definition-grid h4{margin:0;color:#805a20;font-size:12px;font-weight:800;letter-spacing:.08em;line-height:1.4;text-transform:uppercase;}
.visa-definition-grid p{margin-top:8px!important;color:#304b5f!important;font-size:15.2px!important;line-height:1.62!important;}
.visa-key-point{margin-top:14px!important;padding:14px 16px;border-left:3px solid #c39b70;border-radius:0 11px 11px 0;background:#f0e2d5;color:#29465d!important;font-size:15.3px!important;line-height:1.58!important;}
.visa-situation>div:first-child{display:flex;align-items:baseline;justify-content:space-between;gap:18px;flex-wrap:wrap;}
.visa-situation-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px;}
.visa-situation-fields label{display:grid;gap:8px;color:#29465d;font-size:12px;font-weight:750;line-height:1.4;}
.visa-situation-fields input,.visa-situation-fields select{width:100%;min-width:0;min-height:43px;padding:9px 12px;border:1px solid rgba(16,33,61,.2);border-radius:10px;background:#fffaf3;color:#173957;font:600 12px var(--sans);}
.visa-situation-fields input::placeholder{color:#73818c;opacity:1;}
.visa-purpose-field{grid-column:1/-1;}
.visa-passport-choice input:focus-visible,.visa-situation-fields input:focus-visible,.visa-situation-fields select:focus-visible,.visa-passport-link:focus-visible{outline:3px solid rgba(176,138,62,.48);outline-offset:2px;}
.visa-orientation[hidden]{display:none;}
.visa-orientation-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:19px 0 0;}
.visa-orientation-summary div{min-width:0;padding:12px;border:1px solid rgba(16,33,61,.12);border-radius:11px;background:rgba(255,250,243,.72);}
.visa-orientation-summary dt{color:#786347;font-size:10px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;}
.visa-orientation-summary dd{overflow-wrap:anywhere;margin:5px 0 0;color:#173957;font-size:14px;font-weight:700;line-height:1.4;}
.visa-orientation-list{display:grid;gap:9px;margin:17px 0 0;padding:0;list-style:none;}
.visa-orientation-list li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;color:#304b5f;font-size:14.2px;line-height:1.52;}
.visa-orientation-list li span{color:#9a7131;font-size:16px;line-height:1.2;}
.prep-step-visa .prep-source-link{display:inline-flex;width:max-content;max-width:100%;margin-top:9px;padding:10px 14px;border:1px solid rgba(128,90,32,.36);border-radius:9px;background:rgba(255,250,243,.74);color:#704d18;font-size:13px;font-weight:800;line-height:1.4;}
.prep-step-visa .prep-source-link:hover{border-color:#9b783b;background:#fffaf3;}
.prep-step-visa .prep-source-link:focus-visible{outline:3px solid rgba(176,138,62,.5);outline-offset:3px;}
.prep-step-visa .prep-source-link+small{margin-top:9px;max-width:88ch;font-size:12px;line-height:1.58;}
.visa-source-warning{margin-top:12px!important;padding-top:11px;border-top:1px solid rgba(16,33,61,.11);color:#664c33!important;font-size:12px!important;line-height:1.55!important;}
.health-definitions,.health-situation,.health-orientation{margin-top:24px;padding:clamp(20px,3vw,29px);border:1px solid rgba(141,162,122,.54);border-radius:18px;background:rgba(255,250,243,.7);}
.health-section-heading{max-width:70ch;}
.health-section-kicker{margin:0 0 6px!important;color:#64734d!important;font-size:10.5px!important;font-weight:800;letter-spacing:.13em;text-transform:uppercase;}
.health-definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:20px;}
.health-definition-grid article{padding:18px;border:1px solid rgba(16,33,61,.12);border-radius:13px;background:rgba(255,250,243,.78);}
.health-definition-grid h4{margin:0;color:#5f724a;font-size:12px;font-weight:800;letter-spacing:.08em;line-height:1.4;text-transform:uppercase;}
.health-definition-grid p{margin-top:8px!important;color:#304b5f!important;font-size:15.2px!important;line-height:1.62!important;}
.health-key-point{margin-top:14px!important;padding:14px 16px;border-left:3px solid #8da27a;border-radius:0 11px 11px 0;background:#e6ecde;color:#29465d!important;font-size:15.3px!important;line-height:1.58!important;}
.health-situation-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:20px;}
.health-situation-fields label{display:grid;gap:8px;color:#29465d;font-size:12px;font-weight:750;line-height:1.4;}
.health-situation-fields input,.health-situation-fields select{width:100%;min-width:0;min-height:43px;padding:9px 12px;border:1px solid rgba(16,33,61,.2);border-radius:10px;background:#fffaf3;color:#173957;font:600 12.5px var(--sans);}
.health-situation-fields input::placeholder{color:#73818c;opacity:1;}
.health-situation-fields input:focus-visible,.health-situation-fields select:focus-visible{outline:3px solid rgba(141,162,122,.52);outline-offset:2px;}
.health-orientation[hidden]{display:none;}
.health-orientation-list{display:grid;gap:10px;margin:18px 0 0;padding:0;list-style:none;}
.health-orientation-list li{display:grid;grid-template-columns:18px minmax(0,1fr);gap:9px;color:#304b5f;font-size:14.5px;line-height:1.56;}
.health-orientation-list li span{color:#70845a;font-size:16px;line-height:1.2;}
.health-source-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:10px;}
.health-source-grid article{padding:15px;border:1px solid rgba(16,33,61,.11);border-radius:11px;background:rgba(255,250,243,.62);}
.prep-step-health .prep-source-link{display:inline-flex;width:max-content;max-width:100%;padding:10px 13px;border:1px solid rgba(95,114,74,.4);border-radius:9px;background:rgba(255,250,243,.78);color:#53653f;font-size:13px;font-weight:800;line-height:1.42;}
.prep-step-health .prep-source-link:hover{border-color:#70845a;background:#fffaf3;}
.prep-step-health .prep-source-link:focus-visible{outline:3px solid rgba(141,162,122,.5);outline-offset:3px;}
.health-source-grid p{margin-top:10px!important;color:#40596a!important;font-size:12px!important;line-height:1.62!important;}
.health-source-disclaimer{margin-top:14px!important;padding-top:12px;border-top:1px solid rgba(16,33,61,.11);color:#4e6048!important;font-size:12.5px!important;font-weight:650;line-height:1.58!important;}
.entry-definitions,.entry-situation,.entry-checklist{margin-top:24px;padding:clamp(22px,3vw,30px);border:1px solid rgba(176,138,62,.34);border-radius:18px;background:rgba(255,250,243,.76);}
.prep-step-entry .prep-step-heading p,.entry-source-slot>span{font-size:15px!important;line-height:1.5;}
.entry-section-heading{max-width:72ch;}
.entry-section-heading h3{font-size:clamp(22px,2.5vw,29px);line-height:1.25;}
.entry-section-kicker{margin:0 0 7px!important;color:#806127!important;font-size:15px!important;font-weight:800;letter-spacing:.09em;line-height:1.5;text-transform:uppercase;}
.entry-definition-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:21px;}
.entry-definition-grid article{padding:19px;border:1px solid rgba(16,33,61,.14);border-radius:13px;background:rgba(255,250,243,.82);}
.entry-definition-grid h4{margin:0;color:#805a20;font-size:15px;font-weight:800;letter-spacing:.06em;line-height:1.5;text-transform:uppercase;}
.entry-definition-grid p{margin-top:9px!important;color:#29465d!important;font-size:16px!important;line-height:1.62!important;}
.entry-key-point{margin-top:15px!important;padding:15px 17px;border-left:3px solid #c39b70;border-radius:0 11px 11px 0;background:#f0e2d5;color:#29465d!important;font-size:16px!important;line-height:1.58!important;}
.entry-situation-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:21px;}
.entry-situation-fields label{display:grid;gap:8px;color:#29465d;font-size:15px;font-weight:750;line-height:1.5;}
.entry-situation-fields input,.entry-situation-fields select{width:100%;min-width:0;min-height:46px;padding:10px 13px;border:1px solid rgba(16,33,61,.22);border-radius:10px;background:#fffaf3;color:#173957;font:600 15px/1.5 var(--sans);}
.entry-situation-fields input::placeholder{color:#687986;opacity:1;}
.entry-purpose-field{grid-column:1/-1;}
.entry-situation-fields input:focus-visible,.entry-situation-fields select:focus-visible,.entry-related-links a:focus-visible,.prep-step-entry .prep-source-link:focus-visible{outline:3px solid rgba(176,138,62,.5);outline-offset:3px;}
.entry-related-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:18px;}
.entry-related-links a{padding:6px 0;border-bottom:1px solid rgba(128,90,32,.46);color:#704d18;font-size:15px;font-weight:800;line-height:1.5;}
.entry-related-links a:hover{color:#9b6d25;border-color:#9b6d25;}
.entry-checklist ul{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 22px;margin:19px 0 0;padding:0;list-style:none;}
.entry-checklist li{display:grid;grid-template-columns:20px minmax(0,1fr);gap:9px;color:#29465d;font-size:16px;line-height:1.58;}
.entry-checklist li span{color:#9a7131;font-size:18px;line-height:1.35;}
.prep-step-entry>.prep-step-grid section p,.prep-step-entry>.prep-step-grid .prep-checks label{font-size:16px!important;line-height:1.6!important;}
.entry-source-slot .prep-source-link{display:inline-flex;width:max-content;max-width:100%;margin-top:10px;padding:11px 15px;border:1px solid rgba(128,90,32,.4);border-radius:9px;background:rgba(255,250,243,.82);color:#704d18;font-size:15px;font-weight:800;line-height:1.5;overflow-wrap:anywhere;}
.entry-source-slot .prep-source-link:hover{border-color:#9b783b;background:#fffaf3;}
.entry-source-description,.entry-source-warning{max-width:88ch;color:#40596a!important;font-size:15px!important;line-height:1.62!important;}
.entry-source-description{margin-top:12px!important;}
.entry-source-warning{margin-top:14px!important;padding-top:13px;border-top:1px solid rgba(16,33,61,.13);color:#664c33!important;}
.prep-step-entry .prep-status{font-size:15px;line-height:1.5;}
.prep-step-entry .prep-status select{min-height:46px;font-size:15px;line-height:1.5;}
.documents-introduction,.documents-trip,.documents-checklist{margin-top:24px;padding:clamp(22px,3vw,30px);border:1px solid rgba(170,139,111,.42);border-radius:18px;background:rgba(255,250,243,.76);}
.prep-step-documents .prep-step-heading p,.documents-source-slot>span{font-size:15px!important;line-height:1.5;}
.documents-section-heading{max-width:72ch;}
.documents-section-heading h3{font-size:clamp(22px,2.5vw,29px);line-height:1.25;}
.documents-section-kicker{margin:0 0 7px!important;color:#795d42!important;font-size:15px!important;font-weight:800;letter-spacing:.09em;line-height:1.5;text-transform:uppercase;}
.documents-introduction>p:not(.documents-section-kicker){max-width:82ch;margin-top:13px!important;color:#29465d!important;font-size:16px!important;line-height:1.65!important;}
.documents-key-point{padding:15px 17px;border-left:3px solid #aa8b6f;border-radius:0 11px 11px 0;background:#eee4da;color:#29465d!important;}
.documents-trip-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:21px;}
.documents-trip-fields>label,.documents-choice legend{color:#29465d;font-size:15px;font-weight:750;line-height:1.5;}
.documents-trip-fields>label{display:grid;gap:8px;}
.documents-trip-fields input[type="text"],.documents-trip-fields input[type="date"],.documents-trip-fields select{width:100%;min-width:0;min-height:46px;padding:10px 13px;border:1px solid rgba(16,33,61,.22);border-radius:10px;background:#fffaf3;color:#173957;font:600 15px/1.5 var(--sans);}
.documents-trip-fields input::placeholder{color:#687986;opacity:1;}
.documents-purpose-field{grid-column:1/-1;}
.documents-choice{min-width:0;margin:0;padding:0;border:0;}
.documents-choice>div{display:flex;gap:9px;margin-top:8px;}
.documents-choice label{display:flex;min-height:46px;min-width:82px;align-items:center;justify-content:center;gap:8px;padding:10px 14px;border:1px solid rgba(16,33,61,.18);border-radius:10px;background:#fffaf3;color:#173957;font-size:15px;font-weight:750;cursor:pointer;}
.documents-choice label:has(input:checked){border-color:#aa8b6f;background:#eee4da;box-shadow:inset 0 0 0 1px rgba(170,139,111,.34);}
.documents-choice input{width:18px;height:18px;margin:0;accent-color:#947456;}
.documents-trip-fields input:focus-visible,.documents-trip-fields select:focus-visible,.documents-choice input:focus-visible,.documents-related-links a:focus-visible,.prep-step-documents .prep-source-link:focus-visible{outline:3px solid rgba(170,139,111,.5);outline-offset:3px;}
.documents-related-links{display:flex;flex-wrap:wrap;gap:12px 24px;margin-top:19px;}
.documents-related-links a{padding:6px 0;border-bottom:1px solid rgba(121,93,66,.48);color:#704d2e;font-size:15px;font-weight:800;line-height:1.5;}
.documents-related-links a:hover{color:#94652f;border-color:#94652f;}
.documents-checklist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:21px;}
.documents-checklist-grid article{display:grid;align-content:start;gap:10px;padding:19px;border:1px solid rgba(16,33,61,.14);border-radius:13px;background:rgba(255,250,243,.82);transition:border-color .2s ease,background .2s ease,box-shadow .2s ease;}
.documents-checklist-grid article:last-child{grid-column:1/-1;}
.documents-checklist-grid h4{margin:0 0 2px;color:#795d42;font-size:16px;font-weight:800;letter-spacing:.045em;line-height:1.5;text-transform:uppercase;}
.documents-checklist-grid label{display:flex;gap:10px;align-items:flex-start;padding:11px 12px;border:1px solid rgba(16,33,61,.1);border-radius:10px;background:rgba(255,250,243,.62);color:#29465d;font-size:16px;line-height:1.58;cursor:pointer;}
.documents-checklist-grid label:has(input:checked){border-color:#aa8b6f;background:#f1e9df;box-shadow:inset 3px 0 0 #aa8b6f;}
.documents-checklist-grid input{width:19px;height:19px;margin:3px 0 0;flex:0 0 auto;accent-color:#947456;cursor:pointer;}
.documents-checklist-grid label.is-minor-relevant,.documents-checklist-grid label.is-driving-relevant{border-color:#b48a49;background:#f5ead7;box-shadow:0 12px 30px -24px rgba(112,77,46,.8),inset 3px 0 0 #b48a49;}
.prep-step-documents>.prep-step-grid section p,.prep-step-documents>.prep-step-grid .prep-checks label{font-size:16px!important;line-height:1.6!important;}
.documents-source-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:11px;}
.documents-source-slot .prep-source-link{display:inline-flex;max-width:100%;padding:11px 15px;border:1px solid rgba(121,93,66,.42);border-radius:9px;background:rgba(255,250,243,.82);color:#704d2e;font-size:15px;font-weight:800;line-height:1.5;overflow-wrap:anywhere;}
.documents-source-slot .prep-source-link:hover{border-color:#94652f;background:#fffaf3;}
.documents-source-description,.documents-source-warning{max-width:88ch;color:#40596a!important;font-size:16px!important;line-height:1.62!important;}
.documents-source-description{margin-top:13px!important;}
.documents-source-warning{margin-top:15px!important;padding:14px 16px;border-left:3px solid #aa8b6f;border-radius:0 10px 10px 0;background:#eee4da;color:#5d4938!important;}
.prep-step-documents .prep-status{font-size:15px;line-height:1.5;}
.prep-step-documents .prep-status select{min-height:46px;font-size:15px;line-height:1.5;}

.advice-introduction,.advice-dashboard,.advice-final-checklist,.advice-access{margin-top:24px;padding:clamp(22px,3vw,30px);border:1px solid rgba(137,150,107,.44);border-radius:18px;background:rgba(255,250,243,.76);}
.prep-step-advice .prep-step-heading p,.advice-source-slot>span{font-size:15px!important;line-height:1.5;}
.advice-section-heading{max-width:72ch;}
.advice-section-heading h3{font-size:clamp(22px,2.5vw,29px);line-height:1.25;}
.advice-section-kicker{margin:0 0 7px!important;color:#657044!important;font-size:15px!important;font-weight:800;letter-spacing:.09em;line-height:1.5;text-transform:uppercase;}
.advice-introduction>p:not(.advice-section-kicker){max-width:82ch;margin-top:13px!important;color:#29465d!important;font-size:16px!important;line-height:1.65!important;}
.advice-key-point{padding:15px 17px;border-left:3px solid #89966b;border-radius:0 11px 11px 0;background:#e8ebdd;color:#29465d!important;}
.advice-dashboard-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:21px;}
.advice-dashboard-grid button{display:grid;gap:7px;min-width:0;padding:17px 18px;border:1px solid rgba(16,33,61,.14);border-radius:12px;background:rgba(255,250,243,.82);color:#173957;text-align:left;cursor:pointer;}
.advice-dashboard-grid button:last-child{grid-column:1/-1;}
.advice-dashboard-grid button:hover{border-color:#89966b;}
.advice-dashboard-grid button:focus-visible,.advice-final-checklist input:focus-visible,.advice-source-slot .prep-source-link:focus-visible{outline:3px solid rgba(137,150,107,.52);outline-offset:3px;}
.advice-dashboard-grid span{color:#657044;font-size:15px;font-weight:800;letter-spacing:.05em;line-height:1.5;text-transform:uppercase;}
.advice-dashboard-grid strong{color:#173957;font:500 19px/1.4 var(--serif);}
.advice-dashboard-grid strong[data-state="ready"]{color:#3f705c;}
.advice-dashboard-grid strong[data-state="verify"]{color:#7c5b20;}
.advice-dashboard-grid strong[data-state="prepare"]{color:#805443;}
.advice-dashboard-grid i{color:#657044;font-size:15px;font-style:normal;font-weight:800;line-height:1.5;}
.advice-dashboard-note{margin-top:15px!important;color:#40596a!important;font-size:16px!important;line-height:1.62!important;}
.advice-final-checklist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px 15px;margin-top:21px;}
.advice-final-checklist-grid label{display:flex;gap:11px;align-items:flex-start;padding:14px;border:1px solid rgba(16,33,61,.12);border-radius:11px;background:rgba(255,250,243,.74);color:#29465d;font-size:16px;line-height:1.58;cursor:pointer;}
.advice-final-checklist-grid label:has(input:checked){border-color:#89966b;background:#edf0e6;box-shadow:inset 3px 0 0 #89966b;}
.advice-final-checklist-grid input{width:19px;height:19px;margin:3px 0 0;flex:0 0 auto;accent-color:#77845b;cursor:pointer;}
.advice-access-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:21px;}
.advice-access-grid article{padding:19px;border:1px solid rgba(16,33,61,.13);border-radius:12px;background:rgba(255,250,243,.8);}
.advice-access-grid h4{margin:0;color:#657044;font-size:16px;font-weight:800;letter-spacing:.06em;line-height:1.5;text-transform:uppercase;}
.advice-access-grid p{margin-top:8px!important;color:#29465d!important;font-size:16px!important;line-height:1.62!important;}
.prep-step-advice>.prep-step-grid section p,.prep-step-advice>.prep-step-grid .prep-checks label{font-size:16px!important;line-height:1.6!important;}
.advice-source-actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:11px;}
.advice-source-slot .prep-source-link{display:inline-flex;max-width:100%;padding:11px 15px;border:1px solid rgba(101,112,68,.44);border-radius:9px;background:rgba(255,250,243,.82);color:#566238;font-size:15px;font-weight:800;line-height:1.5;overflow-wrap:anywhere;}
.advice-source-slot .prep-source-link:hover{border-color:#77845b;background:#fffaf3;}
.advice-source-description,.advice-source-warning{max-width:88ch;color:#40596a!important;font-size:16px!important;line-height:1.62!important;}
.advice-source-description{margin-top:13px!important;}
.advice-source-warning{margin-top:15px!important;padding:14px 16px;border-left:3px solid #89966b;border-radius:0 10px 10px 0;background:#e8ebdd;color:#4e5939!important;}
.advice-emergency{margin-top:18px;padding:20px;border:1px solid rgba(137,150,107,.42);border-radius:14px;background:#f1f0e5;}
.advice-emergency h3{font-size:21px;line-height:1.35;}
.advice-emergency p{margin-top:9px!important;color:#29465d!important;font-size:16px!important;line-height:1.62!important;}
.prep-step-advice .prep-status{font-size:15px;line-height:1.5;}
.prep-step-advice .prep-status select{min-height:46px;font-size:15px;line-height:1.5;}
.prep-status{display:grid;grid-template-columns:minmax(120px,auto) minmax(230px,365px);gap:17px;align-items:center;margin-top:22px;color:#173957;font-size:11.5px;font-weight:800;}
.prep-status select{width:100%;min-height:43px;padding:9px 38px 9px 13px;border:1px solid rgba(16,33,61,.22);border-radius:10px;background:#fffaf3;color:#173957;font:600 12.5px var(--sans);}
.prep-step-actions{display:flex;justify-content:space-between;gap:14px;margin-top:20px;}
.prep-action{min-height:43px;padding:10px 18px;border-radius:10px;font:700 11.5px var(--sans);cursor:pointer;}
.prep-action-secondary{border:1px solid rgba(16,33,61,.22);background:transparent;color:#173957;}
.prep-action-primary{border:1px solid #a97f39;background:linear-gradient(135deg,#e1c783,#b08a3e);color:#10213d;}
.prep-action:focus-visible{outline:3px solid rgba(176,138,62,.5);outline-offset:3px;}

/* Final readability harmonization for the six preparation steps. */
.prep-step .prep-step-heading>span{font-size:15px!important;}
.prep-step .prep-step-heading p,
.prep-step .prep-source-slot>span,
.passport-readiness-kicker,
.visa-section-kicker,
.health-section-kicker{font-size:15px!important;line-height:1.5;}
.prep-step section>p,
.prep-step .prep-checks label{font-size:16px!important;line-height:1.62!important;}
.prep-step .prep-source-slot small{font-size:16px!important;line-height:1.62!important;}
.prep-step .prep-source-link{font-size:15px!important;line-height:1.5!important;overflow-wrap:anywhere;}
.prep-step .prep-status{font-size:15px!important;line-height:1.5;}
.prep-step .prep-status select{min-height:46px;font-size:15px!important;line-height:1.5;}

.passport-choice legend,.passport-field{font-size:15px;line-height:1.5;}
.passport-choice label{font-size:15px;line-height:1.5;}
.passport-field input{min-height:46px;font-size:15px;line-height:1.5;}
.passport-verification p{font-size:16px!important;line-height:1.62!important;}
.prep-step-passport .prep-source-link+small{font-size:16px;line-height:1.62;}

.visa-prerequisite>p{font-size:16px!important;line-height:1.65!important;}
.visa-passport-choice legend,.visa-passport-choice label{font-size:15px;line-height:1.5;}
.visa-passport-choice label{min-height:46px;}
.visa-passport-link{font-size:15px;line-height:1.5;overflow-wrap:anywhere;}
.visa-definition-grid h4{font-size:15px;line-height:1.5;}
.visa-definition-grid p,.visa-key-point{font-size:16px!important;line-height:1.62!important;}
.visa-situation-fields label{font-size:15px;line-height:1.5;}
.visa-situation-fields input,.visa-situation-fields select{min-height:46px;font-size:15px;line-height:1.5;}
.visa-orientation-summary dt{font-size:15px;line-height:1.5;}
.visa-orientation-summary dd,.visa-orientation-list li{font-size:16px;line-height:1.58;}
.prep-step-visa .prep-source-link+small,.visa-source-warning{font-size:16px!important;line-height:1.62!important;}

.health-definition-grid h4{font-size:15px;line-height:1.5;}
.health-definition-grid p,.health-key-point{font-size:16px!important;line-height:1.62!important;}
.health-situation-fields label{font-size:15px;line-height:1.5;}
.health-situation-fields input,.health-situation-fields select{min-height:46px;font-size:15px;line-height:1.5;}
.health-orientation-list li{font-size:16px;line-height:1.58;}
.health-source-grid p,.health-source-disclaimer{font-size:16px!important;line-height:1.62!important;}
.entry-source-description,.entry-source-warning{font-size:16px!important;line-height:1.62!important;}

.prep-summary{padding:clamp(28px,4vw,45px);border:1px solid rgba(176,138,62,.34);border-radius:26px;background:linear-gradient(145deg,#fffaf3,#e9dfd1);box-shadow:0 32px 66px -52px rgba(8,28,48,.82);}
.prep-summary-head{max-width:68ch;}
.prep-summary-head h2{margin-top:6px;color:#173957;font-size:clamp(28px,3.3vw,40px);line-height:1.1;}
.prep-summary-head>p:last-child{margin-top:11px;color:#475d6e;font-size:13.5px;line-height:1.62;}
.prep-summary-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:25px;}
.prep-summary-grid button{display:grid;gap:6px;padding:17px 18px;border:1px solid rgba(16,33,61,.14);border-radius:13px;background:rgba(255,250,243,.7);color:#173957;text-align:left;cursor:pointer;}
.prep-summary-grid button:hover{border-color:#b08a3e;}
.prep-summary-grid button:focus-visible{outline:3px solid rgba(176,138,62,.5);outline-offset:2px;}
.prep-summary-grid span{color:#756246;font-size:9.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;}
.prep-summary-grid strong{font:500 18px/1.25 var(--serif);}
.prep-summary-grid strong[data-state="ready"]{color:#477261;}
.prep-summary-grid strong[data-state="verify"]{color:#8b682d;}
.prep-summary-grid strong[data-state="prepare"]{color:#8a5949;}
.prep-summary-grid i{color:#805a20;font-size:10.5px;font-style:normal;font-weight:800;}
.prep-summary-actions{display:flex;justify-content:space-between;gap:14px;margin-top:21px;}

html[data-theme="dark"] .formalities-preparation-page,
html[data-theme="dark"] .formalities-preparation-page main{background:#0d223a;color:#f5ede2;}
html[data-theme="dark"] .prep-hero{
  background:
    linear-gradient(90deg,rgba(10,30,51,.86) 0%,rgba(12,35,58,.72) 38%,rgba(12,35,58,.3) 65%,rgba(12,35,58,.08) 100%),
    linear-gradient(180deg,rgba(8,25,43,.04),rgba(8,25,43,.12)),
    url("assets/resources/documents-utiles.png") center 57%/cover no-repeat;
}
html[data-theme="dark"] .prep-hero-copy h1,
html[data-theme="dark"] .prep-hero-lead,
html[data-theme="dark"] .prep-section-head h2,
html[data-theme="dark"] .prep-summary-head h2{color:#fff8e9;}
html[data-theme="dark"] .prep-hero-copy h1 em{color:#e2c27a;}
html[data-theme="dark"] .prep-hero-intro,
html[data-theme="dark"] .prep-section-head>p:last-child,
html[data-theme="dark"] .prep-summary-head>p:last-child{color:#ddd8cf;}
html[data-theme="dark"] .prep-principle,
html[data-theme="dark"] .prep-progress{background:rgba(26,57,82,.82);border-color:rgba(217,185,120,.3);}
html[data-theme="dark"] .prep-principle p,
html[data-theme="dark"] .prep-progress-copy strong{color:#f5ede2;}
html[data-theme="dark"] .prep-experience{background:linear-gradient(155deg,#0d223a,#132e49);}
html[data-theme="dark"] .prep-progress-copy{border-bottom-color:rgba(245,237,226,.14);}
html[data-theme="dark"] .prep-progress-copy span,
html[data-theme="dark"] .prep-workspace-nav span{color:#d9c596;}
html[data-theme="dark"] .prep-progress-list button{color:#cec9c0;}
html[data-theme="dark"] .prep-progress-list button:hover,
html[data-theme="dark"] .prep-progress-list button.is-active{background:rgba(226,194,122,.13);color:#fff8e9;}
html[data-theme="dark"] .prep-progress-list button span{border-color:rgba(245,237,226,.2);color:#e2c27a;}
html[data-theme="dark"] .prep-progress-list button.is-complete:not(.is-active) span{border-color:#8ca99c;background:#294c48;color:#eff8ef;}
html[data-theme="dark"] .prep-progress-track{background:#28445d;}
html[data-theme="dark"] .prep-card{background:linear-gradient(145deg,#183852,#1d435d);border-color:color-mix(in srgb,var(--card-line) 68%,#e2c27a 32%);color:#f5ede2;}
html[data-theme="dark"] .prep-card-passport{background:linear-gradient(145deg,#183852,#1d435d);}
html[data-theme="dark"] .prep-card-visa{background:linear-gradient(145deg,#20364a,#473b47);}
html[data-theme="dark"] .prep-card-health{background:linear-gradient(145deg,#17384a,#29483f);}
html[data-theme="dark"] .prep-card-entry{background:linear-gradient(145deg,#19374a,#473f35);}
html[data-theme="dark"] .prep-card-documents{background:linear-gradient(145deg,#1a3547,#493a35);}
html[data-theme="dark"] .prep-card-advice{background:linear-gradient(145deg,#173749,#35453b);}
html[data-theme="dark"] .prep-card strong,
html[data-theme="dark"] .prep-step-heading h2,
html[data-theme="dark"] .prep-step h3,
html[data-theme="dark"] .prep-status,
html[data-theme="dark"] .prep-summary-grid button{color:#fff8e9;}
html[data-theme="dark"] .prep-card>span:not(.prep-card-number),
html[data-theme="dark"] .prep-step section>p{color:#e1ddd5;}
html[data-theme="dark"] .prep-card i,
html[data-theme="dark"] .prep-card-number{color:#e2c27a;}
html[data-theme="dark"] .prep-return{color:#f5ede2;}
html[data-theme="dark"] .prep-step{background:linear-gradient(145deg,#173650,#1b4059);border-color:color-mix(in srgb,var(--step-line) 58%,#e2c27a 42%);}
html[data-theme="dark"] .prep-step-passport{background:linear-gradient(145deg,#173650,#1b4059);}
html[data-theme="dark"] .prep-step-visa{background:linear-gradient(145deg,#19334a,#443a47);}
html[data-theme="dark"] .prep-step-health{background:linear-gradient(145deg,#15364a,#27463f);}
html[data-theme="dark"] .prep-step-entry{background:linear-gradient(145deg,#17354a,#443e35);}
html[data-theme="dark"] .prep-step-documents{background:linear-gradient(145deg,#183449,#453936);}
html[data-theme="dark"] .prep-step-advice{background:linear-gradient(145deg,#163649,#33433b);}
html[data-theme="dark"] .prep-step-heading{border-bottom-color:rgba(245,237,226,.16);}
html[data-theme="dark"] .prep-step-heading p,
html[data-theme="dark"] .prep-source-slot>span,
html[data-theme="dark"] .prep-summary-grid span{color:#e2c27a;}
html[data-theme="dark"] .prep-checks label,
html[data-theme="dark"] .prep-source-slot,
html[data-theme="dark"] .prep-summary-grid button{background:rgba(8,27,47,.44);border-color:rgba(245,237,226,.15);color:#f0e9df;}
html[data-theme="dark"] .prep-checks label:has(input:checked){background:rgba(14,42,65,.82);border-color:var(--step-line);}
html[data-theme="dark"] .prep-source-slot p{color:#f5ede2;}
html[data-theme="dark"] .prep-source-slot small{color:#cbc5bc;}
html[data-theme="dark"] .passport-readiness{border-color:rgba(134,167,159,.48);background:rgba(8,27,47,.34);}
html[data-theme="dark"] .passport-readiness-kicker,
html[data-theme="dark"] .passport-choice legend,
html[data-theme="dark"] .passport-field{color:#e5d4ad!important;}
html[data-theme="dark"] .passport-choice label,
html[data-theme="dark"] .passport-field input{border-color:rgba(245,237,226,.22);background:#102c47;color:#fff8e9;}
html[data-theme="dark"] .passport-choice label:has(input:checked){border-color:#9ab9b0;background:#244b5b;}
html[data-theme="dark"] .passport-field input::placeholder{color:#b9c1c6;}
html[data-theme="dark"] .passport-verification{border-left-color:#9ab9b0;background:rgba(12,39,61,.72);}
html[data-theme="dark"] .passport-verification p{color:#f4ede2!important;}
html[data-theme="dark"] .passport-verification p+p{color:#ddd8cf!important;}
html[data-theme="dark"] .prep-step-passport .prep-source-link{border-color:rgba(226,194,122,.42);background:rgba(8,27,47,.42);color:#f0d28c;}
html[data-theme="dark"] .prep-step-passport .prep-source-link:hover{background:rgba(14,42,65,.82);}
html[data-theme="dark"] .visa-prerequisite,
html[data-theme="dark"] .visa-definitions,
html[data-theme="dark"] .visa-situation,
html[data-theme="dark"] .visa-orientation{border-color:rgba(195,155,112,.42);background:rgba(8,27,47,.34);}
html[data-theme="dark"] .visa-section-kicker,
html[data-theme="dark"] .visa-passport-choice legend,
html[data-theme="dark"] .visa-situation-fields label{color:#e5d4ad!important;}
html[data-theme="dark"] .visa-prerequisite>p{color:#e1ddd5!important;}
html[data-theme="dark"] .visa-passport-choice label,
html[data-theme="dark"] .visa-situation-fields input,
html[data-theme="dark"] .visa-situation-fields select{border-color:rgba(245,237,226,.22);background:#102c47;color:#fff8e9;}
html[data-theme="dark"] .visa-passport-choice label:has(input:checked){border-color:#d2af79;background:#423b42;}
html[data-theme="dark"] .visa-passport-link{color:#f0d28c;border-color:rgba(226,194,122,.5);}
html[data-theme="dark"] .visa-definition-grid article,
html[data-theme="dark"] .visa-orientation-summary div{border-color:rgba(245,237,226,.15);background:rgba(8,27,47,.44);}
html[data-theme="dark"] .visa-definition-grid h4{color:#e8c77f;}
html[data-theme="dark"] .visa-definition-grid p,
html[data-theme="dark"] .visa-key-point,
html[data-theme="dark"] .visa-orientation-list li{color:#f0e9df!important;}
html[data-theme="dark"] .visa-key-point{border-left-color:#d2af79;background:rgba(76,61,50,.54);}
html[data-theme="dark"] .visa-situation-fields input::placeholder{color:#b9c1c6;}
html[data-theme="dark"] .visa-orientation-summary dt{color:#d7c49d;}
html[data-theme="dark"] .visa-orientation-summary dd{color:#fff8e9;}
html[data-theme="dark"] .visa-orientation-list li span{color:#e2c27a;}
html[data-theme="dark"] .prep-step-visa .prep-source-link{border-color:rgba(226,194,122,.42);background:rgba(8,27,47,.42);color:#f0d28c;}
html[data-theme="dark"] .prep-step-visa .prep-source-link:hover{background:rgba(14,42,65,.82);}
html[data-theme="dark"] .visa-source-warning{border-top-color:rgba(245,237,226,.14);color:#f0d7b8!important;}
html[data-theme="dark"] .health-definitions,
html[data-theme="dark"] .health-situation,
html[data-theme="dark"] .health-orientation{border-color:rgba(141,162,122,.48);background:rgba(8,27,47,.34);}
html[data-theme="dark"] .health-section-kicker,
html[data-theme="dark"] .health-situation-fields label{color:#cbd8b7!important;}
html[data-theme="dark"] .health-definition-grid article,
html[data-theme="dark"] .health-source-grid article{border-color:rgba(245,237,226,.15);background:rgba(8,27,47,.44);}
html[data-theme="dark"] .health-definition-grid h4{color:#c8dba9;}
html[data-theme="dark"] .health-definition-grid p,
html[data-theme="dark"] .health-key-point,
html[data-theme="dark"] .health-orientation-list li{color:#f0e9df!important;}
html[data-theme="dark"] .health-key-point{border-left-color:#a9bf91;background:rgba(54,75,55,.58);}
html[data-theme="dark"] .health-situation-fields input,
html[data-theme="dark"] .health-situation-fields select{border-color:rgba(245,237,226,.22);background:#102c47;color:#fff8e9;}
html[data-theme="dark"] .health-situation-fields input::placeholder{color:#b9c1c6;}
html[data-theme="dark"] .health-orientation-list li span{color:#b7ce9d;}
html[data-theme="dark"] .prep-step-health .prep-source-link{border-color:rgba(169,191,145,.46);background:rgba(8,27,47,.42);color:#d5e4c2;}
html[data-theme="dark"] .prep-step-health .prep-source-link:hover{background:rgba(14,42,65,.82);}
html[data-theme="dark"] .health-source-grid p{color:#e3ded6!important;}
html[data-theme="dark"] .health-source-disclaimer{border-top-color:rgba(245,237,226,.14);color:#dbe7cc!important;}
html[data-theme="dark"] .entry-definitions,
html[data-theme="dark"] .entry-situation,
html[data-theme="dark"] .entry-checklist{border-color:rgba(226,194,122,.35);background:rgba(8,27,47,.38);}
html[data-theme="dark"] .entry-section-kicker,
html[data-theme="dark"] .entry-situation-fields label{color:#e8c77f!important;}
html[data-theme="dark"] .entry-definition-grid article{border-color:rgba(245,237,226,.16);background:rgba(8,27,47,.48);}
html[data-theme="dark"] .entry-definition-grid h4{color:#f0d28c;}
html[data-theme="dark"] .entry-definition-grid p,
html[data-theme="dark"] .entry-key-point,
html[data-theme="dark"] .entry-checklist li,
html[data-theme="dark"] .prep-step-entry>.prep-step-grid section p,
html[data-theme="dark"] .prep-step-entry>.prep-step-grid .prep-checks label{color:#f5ede2!important;}
html[data-theme="dark"] .entry-key-point{border-left-color:#d2af79;background:rgba(76,61,50,.56);}
html[data-theme="dark"] .entry-situation-fields input,
html[data-theme="dark"] .entry-situation-fields select{border-color:rgba(245,237,226,.24);background:#102c47;color:#fff8e9;}
html[data-theme="dark"] .entry-situation-fields input::placeholder{color:#c4cbd0;}
html[data-theme="dark"] .entry-related-links a{color:#f0d28c;border-color:rgba(226,194,122,.52);}
html[data-theme="dark"] .entry-checklist li span{color:#e2c27a;}
html[data-theme="dark"] .entry-source-slot .prep-source-link{border-color:rgba(226,194,122,.44);background:rgba(8,27,47,.46);color:#f0d28c;}
html[data-theme="dark"] .entry-source-slot .prep-source-link:hover{background:rgba(14,42,65,.82);}
html[data-theme="dark"] .entry-source-description{color:#e3ded6!important;}
html[data-theme="dark"] .entry-source-warning{border-top-color:rgba(245,237,226,.16);color:#f0d7b8!important;}
html[data-theme="dark"] .documents-introduction,
html[data-theme="dark"] .documents-trip,
html[data-theme="dark"] .documents-checklist{border-color:rgba(194,163,132,.38);background:rgba(8,27,47,.38);}
html[data-theme="dark"] .documents-section-kicker,
html[data-theme="dark"] .documents-trip-fields>label,
html[data-theme="dark"] .documents-choice legend{color:#e3c4a3!important;}
html[data-theme="dark"] .documents-introduction>p:not(.documents-section-kicker),
html[data-theme="dark"] .documents-checklist-grid label,
html[data-theme="dark"] .prep-step-documents>.prep-step-grid section p,
html[data-theme="dark"] .prep-step-documents>.prep-step-grid .prep-checks label{color:#f5ede2!important;}
html[data-theme="dark"] .documents-key-point,
html[data-theme="dark"] .documents-source-warning{border-left-color:#d1ab82;background:rgba(73,59,49,.6);color:#f4e6d7!important;}
html[data-theme="dark"] .documents-trip-fields input[type="text"],
html[data-theme="dark"] .documents-trip-fields input[type="date"],
html[data-theme="dark"] .documents-trip-fields select{border-color:rgba(245,237,226,.24);background:#102c47;color:#fff8e9;}
html[data-theme="dark"] .documents-trip-fields input::placeholder{color:#c4cbd0;}
html[data-theme="dark"] .documents-choice label{border-color:rgba(245,237,226,.2);background:#102c47;color:#fff8e9;}
html[data-theme="dark"] .documents-choice label:has(input:checked){border-color:#d1ab82;background:#4b3d34;}
html[data-theme="dark"] .documents-related-links a{color:#efcfaa;border-color:rgba(209,171,130,.55);}
html[data-theme="dark"] .documents-checklist-grid article{border-color:rgba(245,237,226,.16);background:rgba(8,27,47,.48);}
html[data-theme="dark"] .documents-checklist-grid h4{color:#efcfaa;}
html[data-theme="dark"] .documents-checklist-grid label{border-color:rgba(245,237,226,.12);background:rgba(14,42,65,.62);}
html[data-theme="dark"] .documents-checklist-grid label:has(input:checked){border-color:#d1ab82;background:rgba(75,61,52,.72);box-shadow:inset 3px 0 0 #d1ab82;}
html[data-theme="dark"] .documents-checklist-grid label.is-minor-relevant,
html[data-theme="dark"] .documents-checklist-grid label.is-driving-relevant{border-color:#e0b978;background:rgba(87,68,45,.78);box-shadow:0 12px 30px -24px rgba(0,0,0,.8),inset 3px 0 0 #e0b978;}
html[data-theme="dark"] .documents-source-slot .prep-source-link{border-color:rgba(209,171,130,.46);background:rgba(8,27,47,.48);color:#efcfaa;}
html[data-theme="dark"] .documents-source-slot .prep-source-link:hover{background:rgba(14,42,65,.82);}
html[data-theme="dark"] .documents-source-description{color:#e3ded6!important;}
html[data-theme="dark"] .advice-introduction,
html[data-theme="dark"] .advice-dashboard,
html[data-theme="dark"] .advice-final-checklist,
html[data-theme="dark"] .advice-access{border-color:rgba(168,183,130,.38);background:rgba(8,27,47,.38);}
html[data-theme="dark"] .advice-section-kicker{color:#cfdaa9!important;}
html[data-theme="dark"] .advice-introduction>p:not(.advice-section-kicker),
html[data-theme="dark"] .advice-dashboard-note,
html[data-theme="dark"] .advice-final-checklist-grid label,
html[data-theme="dark"] .advice-access-grid p,
html[data-theme="dark"] .prep-step-advice>.prep-step-grid section p,
html[data-theme="dark"] .prep-step-advice>.prep-step-grid .prep-checks label{color:#f5ede2!important;}
html[data-theme="dark"] .advice-key-point,
html[data-theme="dark"] .advice-source-warning{border-left-color:#b9c990;background:rgba(58,72,51,.64);color:#f0f3e6!important;}
html[data-theme="dark"] .advice-dashboard-grid button,
html[data-theme="dark"] .advice-access-grid article{border-color:rgba(245,237,226,.16);background:rgba(8,27,47,.48);}
html[data-theme="dark"] .advice-dashboard-grid span,
html[data-theme="dark"] .advice-dashboard-grid i,
html[data-theme="dark"] .advice-access-grid h4{color:#cfdaa9;}
html[data-theme="dark"] .advice-dashboard-grid strong{color:#fff8e9;}
html[data-theme="dark"] .advice-dashboard-grid strong[data-state="ready"]{color:#a9d5bd;}
html[data-theme="dark"] .advice-dashboard-grid strong[data-state="verify"]{color:#e2c27a;}
html[data-theme="dark"] .advice-dashboard-grid strong[data-state="prepare"]{color:#e7b59f;}
html[data-theme="dark"] .advice-final-checklist-grid label{border-color:rgba(245,237,226,.14);background:rgba(14,42,65,.62);}
html[data-theme="dark"] .advice-final-checklist-grid label:has(input:checked){border-color:#b9c990;background:rgba(58,72,51,.72);box-shadow:inset 3px 0 0 #b9c990;}
html[data-theme="dark"] .advice-source-slot .prep-source-link{border-color:rgba(185,201,144,.46);background:rgba(8,27,47,.48);color:#dce7bd;}
html[data-theme="dark"] .advice-source-slot .prep-source-link:hover{background:rgba(14,42,65,.82);}
html[data-theme="dark"] .advice-source-description{color:#e3ded6!important;}
html[data-theme="dark"] .advice-emergency{border-color:rgba(185,201,144,.4);background:rgba(43,59,45,.72);}
html[data-theme="dark"] .advice-emergency p{color:#f5ede2!important;}
html[data-theme="dark"] .prep-status select{background:#102c47;color:#f5ede2;border-color:rgba(226,194,122,.34);}
html[data-theme="dark"] .prep-action-secondary{border-color:rgba(245,237,226,.27);color:#f5ede2;}
html[data-theme="dark"] .prep-summary{background:linear-gradient(145deg,#173650,#132f49);border-color:rgba(226,194,122,.3);}
html[data-theme="dark"] .prep-summary-grid strong[data-state="ready"]{color:#a9d5bd;}
html[data-theme="dark"] .prep-summary-grid strong[data-state="verify"]{color:#e2c27a;}
html[data-theme="dark"] .prep-summary-grid strong[data-state="prepare"]{color:#e7b59f;}
html[data-theme="dark"] .prep-summary-grid i{color:#e2c27a;}

@media(max-width:1080px){
  .prep-experience-layout{grid-template-columns:146px minmax(0,1fr);gap:26px;}
  .prep-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .prep-step-grid{grid-template-columns:1fr;gap:24px;}
  .passport-readiness-fields{grid-template-columns:repeat(2,minmax(0,1fr));}
  .visa-orientation-summary{grid-template-columns:repeat(2,minmax(0,1fr));}
  .health-source-grid{grid-template-columns:1fr;}
  .entry-checklist ul{grid-template-columns:1fr;}
  .documents-checklist-grid{grid-template-columns:1fr;}
  .documents-checklist-grid article:last-child{grid-column:auto;}
  .advice-dashboard-grid,.advice-final-checklist-grid,.advice-access-grid{grid-template-columns:1fr;}
  .advice-dashboard-grid button:last-child{grid-column:auto;}
}
@media(max-width:820px){
  .prep-hero{
    background:
      linear-gradient(180deg,rgba(255,250,241,.95) 0%,rgba(255,250,241,.86) 54%,rgba(255,250,241,.54) 100%),
      url("assets/resources/documents-utiles.png") 62% 56%/cover no-repeat;
  }
  html[data-theme="dark"] .prep-hero{
    background:
      linear-gradient(180deg,rgba(10,30,51,.88) 0%,rgba(12,35,58,.72) 56%,rgba(12,35,58,.42) 100%),
      url("assets/resources/documents-utiles.png") 62% 56%/cover no-repeat;
  }
  .prep-hero-grid{grid-template-columns:1fr;gap:26px;}
  .prep-principle{max-width:680px;}
  .prep-experience-layout{display:block;}
  .prep-progress{position:static;margin-bottom:26px;padding:16px 17px;}
  .prep-progress-copy{display:flex;flex-direction:row;align-items:center;justify-content:space-between;padding:0 0 11px;}
  .prep-progress-list{grid-template-columns:repeat(6,1fr);gap:3px;}
  .prep-progress-list button{display:flex;justify-content:center;padding:5px;font-size:0;}
  .prep-progress-list button span{font-size:8px;}
  .prep-progress-track{display:block;margin-top:10px;}
}
@media(max-width:620px){
  .prep-hero{padding:42px 0 38px;}
  .prep-hero::before{inset:0;opacity:.18;}
  .prep-hero-copy h1{font-size:clamp(36px,11.4vw,49px);}
  .prep-hero-lead{margin-top:18px;font-size:20px;}
  .prep-hero-intro{font-size:14px;line-height:1.62;}
  .prep-principle{padding:21px;border-radius:18px;}
  .prep-principle p{font-size:13px;}
  .prep-experience{padding:42px 0 56px;}
  .prep-progress{margin-bottom:22px;}
  .prep-card-grid{grid-template-columns:1fr;}
  .prep-card{min-height:194px;padding:21px;}
  .prep-card strong{margin-top:23px;}
  .prep-step{padding:24px 19px;border-radius:20px;}
  .prep-step::after{display:none;}
  .prep-step-heading{grid-template-columns:41px minmax(0,1fr);gap:12px;padding:0 0 20px;}
  .prep-step-heading>span{width:39px;height:39px;font-size:13px;}
  .prep-step-heading h2{font-size:25px;}
  .prep-step-grid{margin-top:23px;}
  .passport-readiness{margin-top:22px;padding:19px 16px;}
  .passport-readiness-heading{display:block;}
  .passport-readiness-heading h3{margin-top:6px;font-size:20px;line-height:1.25;}
  .passport-readiness-fields{grid-template-columns:1fr;gap:13px;margin-top:17px;}
  .passport-choice label{flex:1;}
  .passport-verification{padding:15px 14px;}
  .visa-prerequisite,.visa-definitions,.visa-situation,.visa-orientation{margin-top:20px;padding:18px 15px;}
  .visa-passport-choice>div{display:grid;grid-template-columns:1fr;}
  .visa-passport-choice label{width:100%;}
  .visa-definition-grid,.visa-situation-fields,.visa-orientation-summary{grid-template-columns:1fr;}
  .visa-purpose-field{grid-column:auto;}
  .visa-definition-grid article{padding:16px;}
  .health-definitions,.health-situation,.health-orientation{margin-top:20px;padding:18px 15px;}
  .health-definition-grid,.health-situation-fields{grid-template-columns:1fr;}
  .health-definition-grid article{padding:16px;}
  .entry-definitions,.entry-situation,.entry-checklist{margin-top:20px;padding:19px 16px;}
  .entry-definition-grid,.entry-situation-fields{grid-template-columns:1fr;}
  .entry-definition-grid article{padding:17px;}
  .entry-purpose-field{grid-column:auto;}
  .entry-section-heading h3{font-size:22px;}
  .prep-step-entry .prep-step-heading>span{font-size:15px;}
  .documents-introduction,.documents-trip,.documents-checklist{margin-top:20px;padding:19px 16px;}
  .documents-trip-fields{grid-template-columns:1fr;}
  .documents-purpose-field{grid-column:auto;}
  .documents-section-heading h3{font-size:22px;}
  .documents-choice>div{display:grid;grid-template-columns:1fr 1fr;}
  .documents-source-actions{display:grid;grid-template-columns:1fr;}
  .documents-source-slot .prep-source-link{width:100%;}
  .prep-step-documents .prep-step-heading>span{font-size:15px;}
  .advice-introduction,.advice-dashboard,.advice-final-checklist,.advice-access{margin-top:20px;padding:19px 16px;}
  .advice-section-heading h3{font-size:22px;}
  .advice-source-actions{display:grid;grid-template-columns:1fr;}
  .advice-source-slot .prep-source-link{width:100%;}
  .prep-step-advice .prep-step-heading>span{font-size:15px;}
  .prep-status{grid-template-columns:1fr;gap:8px;}
  .prep-step-actions,.prep-summary-actions{display:grid;grid-template-columns:1fr;}
  .prep-action{width:100%;}
  .prep-workspace-nav{align-items:flex-start;flex-direction:column-reverse;gap:10px;}
  .prep-summary{padding:24px 19px;border-radius:20px;}
  .prep-summary-grid{grid-template-columns:1fr;}
}
@media(prefers-reduced-motion:reduce){.prep-card,.prep-progress-track span{transition:none;}}

/* Lisibilite definitive des contenus et reperes Formalites. */
.prep-hero-intro,
.prep-principle p,
.prep-section-head>p:last-child,
.prep-card>span:not(.prep-card-number),
.prep-step section>p,
.prep-checks label,
.passport-verification p,
.visa-prerequisite>p,
.visa-definition-grid p,
.visa-key-point,
.visa-orientation-summary dd,
.visa-orientation-list li,
.health-definition-grid p,
.health-key-point,
.health-orientation-list li,
.health-source-grid p,
.health-source-disclaimer,
.entry-definition-grid p,
.entry-key-point,
.entry-checklist li,
.entry-source-description,
.entry-source-warning,
.documents-introduction>p:not(.documents-section-kicker),
.documents-checklist-grid label,
.documents-source-description,
.documents-source-warning,
.advice-introduction>p:not(.advice-section-kicker),
.advice-dashboard-note,
.advice-final-checklist-grid label,
.advice-access-grid p,
.advice-source-description,
.advice-source-warning,
.advice-emergency p{
  font-size:17px!important;
  font-weight:450!important;
  line-height:1.62!important;
}
.prep-principle span,
.prep-card i,
.prep-progress-copy span,
.prep-workspace-nav span,
.prep-step-heading p,
.passport-readiness-kicker,
.prep-source-slot>span,
.visa-section-kicker,
.visa-definition-grid h4,
.visa-orientation-summary dt,
.health-section-kicker,
.health-definition-grid h4{
  font-size:14px!important;
  font-weight:700!important;
}
.passport-choice legend,
.passport-field,
.prep-source-slot small,
.prep-step-passport .prep-source-link+small,
.visa-passport-choice legend,
.visa-situation-fields label,
.visa-source-warning,
.health-situation-fields label{
  font-size:15px!important;
  font-weight:600!important;
}

html[data-theme="light"] body.formalities-preparation-page :where(.prep-principle p,.prep-section-head>p:last-child,.prep-card>span:not(.prep-card-number),.prep-step section>p,.prep-checks label,.passport-verification p,.prep-source-slot small,.prep-step-passport .prep-source-link+small,.visa-source-warning,.health-source-grid p,.health-source-disclaimer){
  color:#304b5f!important;
}
html[data-theme="dark"] body.formalities-preparation-page :where(.prep-principle p,.prep-section-head>p:last-child,.prep-card>span:not(.prep-card-number),.prep-step section>p,.prep-checks label,.passport-verification p,.prep-source-slot small,.prep-step-passport .prep-source-link+small,.visa-source-warning,.health-source-grid p,.health-source-disclaimer){
  color:#e5dccf!important;
}

@media(max-width:760px){
  .prep-hero-intro,
  .prep-principle p,
  .prep-section-head>p:last-child,
  .prep-card>span:not(.prep-card-number),
  .prep-step section>p,
  .prep-checks label,
  .passport-verification p,
  .visa-prerequisite>p,
  .visa-definition-grid p,
  .visa-key-point,
  .visa-orientation-summary dd,
  .visa-orientation-list li,
  .health-definition-grid p,
  .health-key-point,
  .health-orientation-list li,
  .health-source-grid p,
  .health-source-disclaimer,
  .entry-definition-grid p,
  .entry-key-point,
  .entry-checklist li,
  .entry-source-description,
  .entry-source-warning,
  .documents-introduction>p:not(.documents-section-kicker),
  .documents-checklist-grid label,
  .documents-source-description,
  .documents-source-warning,
  .advice-introduction>p:not(.advice-section-kicker),
  .advice-dashboard-note,
  .advice-final-checklist-grid label,
  .advice-access-grid p,
  .advice-source-description,
  .advice-source-warning,
  .advice-emergency p{
    font-size:16px!important;
  }
}
