:root{--blue:#000e4e;--primary:#0756cf;--pale:#eef6ff;--ink:#172044}*{box-sizing:border-box}body{margin:0;color:#1d284b;font:14px Arial,sans-serif;background:#fbfcff}.topbar{height:112px;display:flex;align-items:center;padding:12px 32px 8px;gap:32px;background:#fff;border-bottom:3px solid #e8eef7}.brand{display:flex;gap:30px;align-items:center;min-width:254px}.rf{width:125px;height:90px;display:flex;flex-direction:column;color:#121212;position:relative;padding-top:18px}.rf i{position:absolute;top:0;width:53px;height:16px;background:linear-gradient(90deg,#102b88 0 33%,#fff 33% 66%,#ef3f40 66%)}.rf strong{font-size:18px;line-height:17px}.rf small{margin-top:5px;font-size:10px;line-height:10px;font-style:italic}.paris{display:flex;align-items:center;gap:5px;text-align:center;color:var(--blue)}.paris span{font-size:34px}.paris b{font-size:11px;line-height:11px}.paris em{font-size:24px;font-style:normal}.heading{flex:1;align-self:flex-start}.heading h1{font:700 27px/29px Arial,sans-serif;margin:0;color:var(--blue)}.heading p{margin:6px 0;font-size:15px}main{display:grid;grid-template-columns:320px minmax(650px,1fr) 490px;gap:24px;padding:20px 18px;max-width:1960px;margin:auto}.steps{background:#f6f8fd;padding:8px 12px;align-self:start;position:sticky;top:12px;max-height:calc(100vh - 24px);overflow:auto}.steps ol{list-style:none;margin:0;padding:0}.steps li{height:58px;display:flex;align-items:center;gap:15px;padding:8px 12px;font-size:14px;border-radius:4px;cursor:pointer}.steps li span{display:grid;place-items:center;width:35px;height:35px;border-radius:50%;background:#e5e9f1;color:#172044;font-weight:bold}.steps li.current{background:#e7f1ff;color:#004bbd;font-weight:bold}.steps li.current span{background:#0756cf;color:#fff}.help{margin-top:24px;padding:14px;background:#edf5ff;border:1px solid #dceafa;color:#123682}.help h3,.info h3{margin:0 0 8px;font-size:17px}.help p{line-height:18px;margin:0 0 8px}.help strong,.help small{display:block;margin:7px 0}.help button{width:100%;background:#fff;border:1px solid #1957b5;padding:9px;color:#0645a6;font-weight:bold;border-radius:4px}.content{background:#fff;padding:4px 14px}h2{font:700 28px/34px Arial,sans-serif;margin:12px 0 2px;color:var(--blue)}.intro{color:#59637d;font-style:italic;margin:0 0 24px;font-size:15px}.grid{display:grid;gap:18px;margin:16px 0}.three{grid-template-columns:repeat(3,1fr)}.two{grid-template-columns:1fr 2fr}.four{grid-template-columns:1.1fr 1fr 1fr 1.25fr}.bottom-grid{grid-template-columns:1fr 1.35fr 1.35fr;margin-top:26px}label{display:block;font-weight:bold;font-size:13px;margin-bottom:7px;color:#111a3d}sup{color:#e1000f;font-size:14px}label small{font-weight:normal;color:#69718a}input,select,textarea{width:100%;height:47px;border:1px solid #cfd4dd;border-radius:4px;padding:0 15px;color:#5c6680;background:#fff;font:14px Arial,sans-serif}input:invalid:not(:placeholder-shown),select:invalid{border-color:#e1000f}select{appearance:auto}textarea{height:70px;padding:11px;resize:vertical;line-height:18px}.choices{display:grid;grid-template-columns:repeat(4,1fr);gap:9px;margin:8px 0 22px}.choices button{border:1px solid #d8dce2;background:#fff;min-height:67px;border-radius:3px;color:#283354;text-align:left;padding:10px;font:13px Arial,sans-serif;display:flex;align-items:center;gap:12px}.choices button i{font-style:normal;font-size:20px;color:#aeb5c3}.choices .selected{border-color:#1d67df;background:#f7fbff}.choices .selected i{color:#0866e8}.activity button{font-size:13px}.activity button span{line-height:16px}.radios{display:flex;gap:24px;height:47px;align-items:center}.radios label{margin:0;font-weight:normal;font-size:14px;display:flex;align-items:center;gap:8px}.radios input{width:21px;height:21px;accent-color:#0866e8}.stack{height:auto;display:block}.stack label{margin:5px 0}.notice{padding:13px;background:#e7f2ff;color:#394b71;line-height:20px;margin:14px 0 18px}.hint{display:block;font-weight:normal;font-style:italic;color:#68728d;margin-top:3px}.damage button{min-height:48px}.counter{text-align:right;color:#707991;font-size:11px;margin-top:-18px;margin-bottom:10px}hr{border:0;border-top:1px solid #dfe3e9;margin:28px 0 18px}.actions{border-top:1px solid #e2e5eb;margin-top:20px;padding-top:16px;display:flex;gap:15px}.actions span{flex:1}.actions button{height:48px;border-radius:5px;font-weight:bold;font-size:14px;padding:0 20px}.next{width:174px;background:#0756cf;border:0;color:#fff}.back{background:#fff;border:1px solid #1260d1;color:#0750b9}.save{background:#fff;border:1px solid #e1e5ee;color:#1c397a}.hidden{display:none!important}.info section{padding:18px 20px;margin-bottom:16px;border-radius:4px}.hero{height:238px;color:#fff;background:linear-gradient(120deg,rgba(0,23,58,.88),rgba(8,39,85,.72)),linear-gradient(135deg,#172334,#7592a9 45%,#332d2b 46%,#89a1ad);padding-top:114px!important}.hero h2{color:#fff;font-size:22px;line-height:26px;margin:0}.hero p{margin:7px 0;line-height:20px}.blue{background:#e7f2ff}.blue p{line-height:22px;margin:15px 0}.yellow{background:#fff0c9;color:#5d4c26}.yellow p{line-height:22px}.pink{background:#fff0f3;color:#6a3043}.pink p{line-height:20px}.pink u{color:#16488c;font-weight:bold}.page-2 .intro{margin-bottom:12px}footer{background:#171f3c;color:#fff;padding:26px max(32px,calc((100vw - 1924px)/2));display:flex;justify-content:space-between;gap:30px}footer strong,footer span{display:block}footer span{margin-top:8px;color:#d8dcea}footer a{margin-left:22px;color:#fff;text-decoration:underline;cursor:pointer}@media(max-width:1200px){main{grid-template-columns:250px minmax(550px,1fr)}.info{display:none}.topbar{padding-left:15px;padding-right:15px}}@media(max-width:800px){.topbar{height:auto}.brand{min-width:0}.heading p,.paris{display:none}.heading h1{font-size:18px;line-height:21px}main{display:block;padding:10px}.steps{position:static;max-height:none}.steps ol{display:flex;overflow:auto}.steps li{min-width:52px;font-size:0;padding:6px}.steps li span{font-size:14px}.help{display:none}.content{padding:5px}.three,.two,.four,.bottom-grid{grid-template-columns:1fr}.choices{grid-template-columns:1fr 1fr}h2{font-size:22px;line-height:28px}.actions .save{display:none}footer{display:block;padding:24px}footer a{display:block;margin:12px 0 0}}

/* Grand desktop: keep the composition centred and airy on 2000 px+ screens. */
@media (min-width: 2000px){
  body{font-size:15px}.topbar{padding-left:calc((100vw - 1920px)/2);padding-right:calc((100vw - 1920px)/2)}
  main{max-width:2040px;grid-template-columns:330px minmax(780px,1fr) 500px;padding-left:32px;padding-right:32px}
  .content{padding:12px 22px}.steps li{font-size:15px}.info section{padding:22px 24px}
}

/* Laptop / smaller desktop: no horizontal overflow from the three-column layout. */
@media (min-width: 1201px) and (max-width: 1599px){
  main{grid-template-columns:250px minmax(0,1fr) 350px;gap:16px;padding:16px}
  .choices{grid-template-columns:repeat(3,1fr)}.info section{padding:14px}.hero{height:210px;padding-top:94px!important}.hero h2{font-size:19px}
  .three{gap:12px}.grid{gap:12px}.steps li{font-size:13px;gap:10px}.steps li span{width:30px;height:30px}
}

/* Tablet: preserve form usability while keeping the step map visible above content. */
@media (min-width: 801px) and (max-width: 1200px){
  main{grid-template-columns:220px minmax(0,1fr);gap:16px;padding:16px}.info{display:none}.choices{grid-template-columns:repeat(3,1fr)}
  .steps{top:8px}.help{padding:10px;font-size:12px}.help h3{font-size:15px}.help button{font-size:12px}
}

/* Phone: concise header, horizontal steps, large tap targets and a single-column form. */
@media (max-width: 800px){
  body{font-size:15px}.topbar{min-height:78px;height:auto;padding:10px 16px;gap:14px}.brand{gap:10px}.rf{width:92px;height:56px;padding-top:14px}.rf i{width:42px;height:12px}.rf strong{font-size:13px;line-height:13px}.rf small{display:none}.paris{display:none}.heading h1{font-size:18px;line-height:22px}.heading p{display:none}
  main{padding:0;display:block}.steps{position:static;max-width:none;width:100%;padding:10px 12px;background:#f6f8fd;overflow:visible}.steps ol{display:flex;gap:8px;overflow-x:auto;scroll-snap-type:x mandatory;padding-bottom:2px}.steps li{height:46px;min-width:max-content;font-size:13px;padding:6px 10px;scroll-snap-align:start}.steps li span{width:28px;height:28px;font-size:13px}.help{display:none}
  .content{padding:18px 16px}.info{display:none}h2{font-size:22px;line-height:28px;margin-top:4px}.intro{font-size:14px;line-height:20px;margin-bottom:18px}.grid,.three,.two,.four,.bottom-grid{grid-template-columns:1fr;gap:12px;margin:14px 0}.choices{grid-template-columns:1fr;gap:8px}.choices button{min-height:52px;font-size:14px}.activity button{min-height:58px}.radios{height:auto;min-height:42px}.notice{font-size:13px;padding:12px}.actions{position:sticky;bottom:0;background:#fff;padding:12px 0;margin-bottom:-18px;z-index:3;gap:8px}.actions .save{display:none}.actions span{display:none}.actions button{flex:1;padding:0 12px}.next{width:auto}.back{width:auto}input,select{height:48px;font-size:16px}textarea{font-size:16px;min-height:110px}footer{display:block;padding:24px 16px;margin-top:0;font-size:13px}footer a{display:block;margin:13px 0 0}
}

@media (max-width: 380px){.heading h1{font-size:16px;line-height:19px}.rf{width:80px}.content{padding-left:12px;padding-right:12px}.steps{padding-left:8px;padding-right:8px}}

.steps li{height:auto;min-height:58px;align-items:flex-start}.steps li span{flex:0 0 35px;margin-top:3px}.steps li.complete{background:#e7f1ff;color:#004bbd;font-weight:bold}.steps li.complete span{background:#0756cf;color:#fff;font-size:0}.steps li.complete span::after{content:'✓';font-size:15px}.steps li.current span{font-size:14px}.steps li.current span::after{display:none}.page-loader{position:fixed;inset:0;z-index:50;display:grid;place-items:center;background:rgba(255,255,255,.76);opacity:0;visibility:hidden;transition:opacity .15s ease,visibility .15s ease}.page-loader.show{opacity:1;visibility:visible}.page-loader span{width:48px;height:48px;border:5px solid #dceafa;border-top-color:#0756cf;border-radius:50%;animation:form-spin .75s linear infinite}@keyframes form-spin{to{transform:rotate(360deg)}}@media(max-width:800px){.steps li{min-height:46px;align-items:center}.steps li span{flex-basis:28px;margin-top:0}.steps li.complete span::after{font-size:12px}}

/* Native validity never paints a field: visual state begins only after user interaction. */
.content input:invalid:not(:placeholder-shown),.content select:invalid{border-color:#cfd4dd}.content input.invalid-field,.content select.invalid-field,.content textarea.invalid-field{border:2px solid #e1000f!important;background:#fff5f5;box-shadow:0 0 0 1px rgba(225,0,15,.08)}.content input.valid-field,.content select.valid-field,.content textarea.valid-field{border:2px solid #009b62!important;background:#f3fff8;box-shadow:0 0 0 1px rgba(0,155,98,.08)}.content input.invalid-field:focus,.content select.invalid-field:focus,.content textarea.invalid-field:focus{outline:3px solid rgba(225,0,15,.17)}.content input.valid-field:focus,.content select.valid-field:focus,.content textarea.valid-field:focus{outline:3px solid rgba(0,155,98,.17)}
.custom-select.invalid-field .custom-select-button{border:2px solid #e1000f;background:#fff5f5}.custom-select.valid-field .custom-select-button{border:2px solid #009b62;background:#f3fff8}

.brand-logo{display:block;height:78px;max-width:125px;object-fit:contain;object-position:left center}.brand-logo-rf{width:135px}.brand-logo-paris{width:94px}@media(max-width:800px){.brand-logo{height:54px}.brand-logo-rf{width:86px}.brand-logo-paris{width:64px}}.section-divider{margin-top:34px;margin-bottom:18px}.section-intro{margin-bottom:18px}html{scroll-behavior:smooth}#company,#activity,#representative,#incident{scroll-margin-top:24px}

.custom-select{position:relative;width:100%}.custom-select>select{position:absolute;opacity:0;pointer-events:none;width:1px;height:1px}.custom-select-button{width:100%;height:47px;padding:0 42px 0 15px;border:1px solid #cfd4dd;border-radius:4px;background:#fff;color:#1d284b;text-align:left;font:14px Arial,sans-serif;position:relative}.custom-select-button::after{content:'⌄';position:absolute;right:15px;top:50%;font-size:19px;line-height:1;color:#253457;transform:translateY(-50%)}.custom-select-button.placeholder{color:#7d8492}.custom-select.open .custom-select-button{border-color:#0756cf;box-shadow:0 0 0 2px rgba(7,86,207,.14)}.custom-select-menu{display:none;position:absolute;z-index:20;top:calc(100% + 4px);left:0;right:0;max-height:230px;overflow:auto;padding:5px;background:#fff;border:1px solid #b9c4d8;border-radius:4px;box-shadow:0 7px 18px rgba(13,28,62,.18)}.custom-select.open .custom-select-menu{display:block}.custom-select-option{display:block;width:100%;padding:10px 12px;border:0;border-radius:3px;background:#fff;text-align:left;color:#1d284b;font:14px Arial,sans-serif}.custom-select-option:hover,.custom-select-option.selected{background:#e7f1ff;color:#004bbd}.validation-toast{position:fixed;z-index:100;right:24px;bottom:24px;display:flex;align-items:flex-start;gap:11px;width:min(390px,calc(100vw - 32px));padding:15px 17px;background:#fff;border-left:5px solid #e1000f;border-radius:5px;box-shadow:0 9px 28px rgba(13,28,62,.22);opacity:0;visibility:hidden;transform:translateY(16px);transition:.22s ease}.validation-toast.show{opacity:1;visibility:visible;transform:translateY(0)}.validation-toast span{display:grid;place-items:center;width:21px;height:21px;flex:0 0 21px;border-radius:50%;background:#e1000f;color:#fff;font-weight:bold}.validation-toast p{margin:1px 0;color:#1d284b;font:14px/20px Arial,sans-serif}@media(max-width:800px){.custom-select-button{height:48px;font-size:16px}.validation-toast{right:16px;bottom:16px}}
