/* Pages de demande, informations et états — déclinaison de la maquette approuvée. */
body.iap-annex.iap-annex-request main,
body.iap-annex.iap-annex-state main,
body.iap-annex.iap-annex-legal main{max-width:none;margin:0;padding:0;background:#eaf1f7}
body.iap-annex .annex-page-hero{position:relative;overflow:hidden;padding:28px 24px 46px;border:0;background:radial-gradient(ellipse at 80% 15%,#17456a66,transparent 55%),linear-gradient(110deg,#04182e,#103557);color:#e5f1f9}
body.iap-annex .annex-page-hero::after{content:"";position:absolute;right:-180px;top:-220px;width:620px;height:620px;border:1px solid #a3d1e61c;border-radius:50%;box-shadow:0 0 0 50px #a3d1e608,0 0 0 100px #a3d1e605;pointer-events:none}
body.iap-annex .annex-page-inner{position:relative;z-index:1;width:min(100%,1080px);margin:0 auto}
body.iap-annex .annex-page-hero h1{font-family:"IAP Annex Glacial",Arial,sans-serif;font-weight:400;font-size:clamp(2.15rem,4.5vw,3.3rem);line-height:1.13;letter-spacing:-.025em;max-width:840px;margin:0 auto 20px;color:#e5f1f9;text-align:center;text-wrap:balance}
body.iap-annex .annex-page-hero .section-label{margin:0 0 16px;text-align:center;text-align-last:center;font-size:.75rem;letter-spacing:.16em;text-transform:uppercase;color:#96d2df}
body.iap-annex .annex-page-hero .annex-intro{max-width:690px;margin:0 auto;color:#bad0e0;font-size:1.075rem;line-height:1.7;text-align:center;text-align-last:center}
body.iap-annex .annex-page-hero .meta{margin:18px 0 0;text-align:center;text-align-last:center;font-size:.82rem;color:#a8c4d8}
body.iap-annex .annex-breadcrumb{display:flex;flex-wrap:wrap;gap:10px;align-items:center;margin:0 0 30px;font-size:.82rem;color:#a9c4d8;text-align:left}
body.iap-annex .annex-breadcrumb a{color:inherit;text-decoration:underline;text-underline-offset:4px}
body.iap-annex .annex-page-body{max-width:1130px;margin:auto;padding:44px 24px 64px}
body.iap-annex .annex-form-panel{max-width:750px;margin:0 auto;padding:34px;border:1px solid #bfd3e1;border-radius:18px;background:linear-gradient(125deg,#f2f7fa,#deeaf3);box-shadow:0 14px 35px #17344c06}
body.iap-annex .annex-form-panel h2{font-family:"IAP Annex Glacial",Arial,sans-serif;font-size:1.45rem;font-weight:400;line-height:1.25;text-align:left;color:#163c5b;margin:0 0 26px}
body.iap-annex .annex-form-panel :is(.request-form,.form,.contact-form){display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:23px;max-width:none;margin:0}
body.iap-annex .annex-form-panel label{display:block;min-width:0;color:#2c506d;font-family:"IAP Annex Glacial",Arial,sans-serif;font-size:.97rem;font-weight:400;line-height:1.5}
body.iap-annex .annex-form-panel input:not([type=checkbox]){display:block;width:100%;min-width:0;box-sizing:border-box;margin-top:9px;padding:12px 13px;border:1px solid #a9c3d5;border-radius:9px;background:#f5f9fc;color:#153955;font:inherit;font-size:1.05rem;line-height:1.4;min-height:48px;box-shadow:none}
body.iap-annex .annex-form-panel input:focus-visible{outline:2px solid #4284a6;outline-offset:3px}
body.iap-annex .annex-form-panel .large{grid-column:1/-1}
body.iap-annex .annex-form-panel .consent{display:block;position:relative;font-size:.88rem;line-height:1.65;font-weight:400;margin:0;padding-left:29px;color:#486780;text-align:left}
body.iap-annex .annex-form-panel .consent input{position:absolute;left:0;top:4px;width:17px;height:17px;margin:0;accent-color:#1a546f}
body.iap-annex .annex-form-panel .consent a{color:#215e80;text-decoration:underline;text-underline-offset:3px}
body.iap-annex .annex-form-panel :is(.submit,.button){grid-column:1/-1;justify-self:center;border-radius:40px;background:#123c5a;color:#edf7fc;border:1px solid #123c5a;padding:13px 25px;min-height:47px;font:inherit;font-size:.98rem;cursor:pointer}
body.iap-annex .annex-form-panel button:disabled{opacity:.58;cursor:not-allowed}
body.iap-annex .annex-form-panel :is(.hp-field,.honeypot){position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden;opacity:0}
body.iap-annex .questionnaire-note{font-size:.84rem;color:#5e7a91;text-align:center;text-align-last:center;margin:20px auto 0;line-height:1.6}
body.iap-annex .annex-form-panel .notice{margin:0 0 24px;padding:15px 18px;border:0;border-left:3px solid #75adc7;border-radius:0 9px 9px 0;background:#d9e8f1;color:#284f6b;font-size:.93rem;line-height:1.65}
body.iap-annex .annex-form-panel .request-form .notice,
body.iap-annex .annex-form-panel .form .notice{margin:0}
body.iap-annex .annex-state-card{max-width:780px;margin:0 auto;padding:34px 40px 40px;border:1px solid #bfd3e1;border-radius:18px;background:linear-gradient(135deg,#f2f7fa,#deebf3);text-align:center}
body.iap-annex .annex-state-mark{display:grid;place-items:center;width:64px;height:64px;margin:0 auto 23px;border:1px solid #9dbfd2;border-radius:50%;background:linear-gradient(135deg,#e2f1f6,#c9e1eb);color:#2e6d88;font-size:1.8rem;line-height:1}
body.iap-annex .annex-state-card p{max-width:595px;margin:0 auto 24px;color:#496880;font-size:1.075rem;line-height:1.8;text-align:center;text-align-last:center}
body.iap-annex .annex-state-card .annex-state-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:28px}
body.iap-annex .annex-state-card :is(.btn,.bouton,.action-primary,.action-secondary){display:inline-flex;align-items:center;justify-content:center;gap:15px;max-width:100%;padding:13px 22px;border:1px solid #123c5a;border-radius:40px;background:#123c5a;color:#edf7fc;font:inherit;font-size:.95rem;line-height:1.35;text-align:center;text-decoration:none}
body.iap-annex .annex-state-card :is(.btn--secondary,.secondaire,.action-secondary){background:transparent;border-color:#a6c0d4;color:#204e70}
body.iap-annex .annex-legal-switcher{display:flex;justify-content:center;flex-wrap:wrap;gap:8px;margin:0 auto 33px}
body.iap-annex .annex-legal-switcher a{border:1px solid #aec7d8;border-radius:30px;padding:9px 16px;color:#315875;font-size:.87rem;line-height:1.4;text-decoration:none}
body.iap-annex .annex-legal-switcher a[aria-current=page]{background:#163d5b;border-color:#163d5b;color:#edf6fc}
body.iap-annex .annex-legal-layout{display:grid;grid-template-columns:205px minmax(0,1fr);gap:44px;align-items:start}
body.iap-annex .annex-legal-nav{padding:0;color:#4d728e;font-size:.85rem}
body.iap-annex .annex-legal-nav>p{font-size:.75rem;letter-spacing:.12em;text-transform:uppercase;color:#28536f;margin:0 0 18px;text-align:left}
body.iap-annex .annex-legal-nav a{display:block;padding:11px 0;border-bottom:1px solid #c4d7e4;color:#486e8a;text-decoration:none;line-height:1.5}
body.iap-annex .annex-legal-nav a:hover{text-decoration:underline;color:#153b57}
body.iap-annex .annex-legal-nav details{border:0;margin:0;padding:0;text-align:left}
body.iap-annex .annex-legal-nav summary{color:#204b68;cursor:pointer;font-size:.88rem;text-align:left;padding:0 0 13px}
body.iap-annex .annex-legal-content{max-width:790px;min-width:0;padding:0;margin:0;background:transparent;border:0;box-shadow:none}
body.iap-annex .annex-legal-content h1{font-size:1.8rem;text-align:left;font-weight:400;line-height:1.25;margin:0 0 22px;color:#153d5c}
body.iap-annex .annex-legal-content section{padding:28px 0;border:0;border-bottom:1px solid #bdcfdd;background:transparent;margin:0;scroll-margin-top:30px}
body.iap-annex .annex-legal-content section:first-child{padding-top:0}
body.iap-annex .annex-legal-content h2{font:400 1.55rem/1.3 "IAP Annex Glacial",Arial,sans-serif;letter-spacing:-.01em;color:#143c5b;text-align:left;margin:0 0 17px;text-transform:none}
body.iap-annex .annex-legal-content :is(p,li){font-family:"IAP Annex Glacial",Arial,sans-serif;font-size:1.02rem;line-height:1.8;color:#46647c;margin:0 0 17px;text-align:justify;text-align-last:left;hyphens:auto;overflow-wrap:break-word}
body.iap-annex .annex-legal-content ul{padding-left:21px}
body.iap-annex .annex-legal-content .puce{padding-left:16px;text-indent:-16px}
body.iap-annex .annex-legal-content a{color:#245f80;text-underline-offset:3px;overflow-wrap:anywhere}
body.iap-annex .annex-legal-content :is(.preparation,.repere,.callout){background:linear-gradient(100deg,#d6e7f0,#e3eef5);border-left:3px solid #78adc5;border-radius:0 12px 12px 0;padding:20px 24px;margin:0 0 25px;font-size:.94rem;line-height:1.75;color:#345e7a}
body.iap-annex .annex-legal-content .preparation strong{display:block;margin-bottom:8px;font-weight:700}
body.iap-annex .annex-legal-content .callout{margin-top:28px;border-bottom:0}
body.iap-annex .annex-legal-content .callout p:last-child{margin-bottom:0}
body.iap-annex .annex-legal-content .table-wrap{width:100%;overflow:auto;border:1px solid #bdcfdd;border-radius:10px;margin:19px 0 26px}
body.iap-annex .annex-legal-content table{width:100%;border-collapse:collapse;border:0;background:#edf4f8;margin:0;font-size:.91rem;line-height:1.65}
body.iap-annex .annex-legal-content :is(th,td){padding:13px 15px;text-align:left;vertical-align:top;border:0;border-bottom:1px solid #c6d7e2;color:#42627b;overflow-wrap:anywhere;min-width:115px}
body.iap-annex .annex-legal-content th{background:#d7e6ef;color:#214d6b;font-weight:400}
body.iap-annex .annex-legal-content tr:last-child td{border-bottom:0}
body.iap-annex .annex-legal-content .annex-document-link{display:inline-flex;align-items:center;justify-content:center;border-radius:30px;border:1px solid #123c5a;background:#123c5a;color:#edf7fc;padding:13px 22px;text-decoration:none;font-size:.94rem;line-height:1.4}
body.iap-annex .annex-legal-content footer{background:transparent;padding:24px 0 0;margin:0;color:#345e7a;text-align:left}
body.iap-annex .annex-legal-content footer a{color:#245f80}
body.iap-annex .annex-single-document{max-width:790px;margin:auto}
@media(max-width:760px){body.iap-annex .annex-legal-layout{grid-template-columns:1fr;gap:30px}body.iap-annex .annex-legal-nav{padding-bottom:22px;border-bottom:1px solid #bdcfdd}body.iap-annex .annex-legal-nav details:not([open]) summary{padding:0}body.iap-annex .annex-page-hero{padding:23px 22px 37px}body.iap-annex .annex-page-body{padding:33px 22px 44px}body.iap-annex .annex-breadcrumb{margin-bottom:25px}}
@media(max-width:540px){body.iap-annex .annex-form-panel{padding:25px 20px}body.iap-annex .annex-form-panel :is(.request-form,.form,.contact-form){grid-template-columns:1fr;gap:21px}body.iap-annex .annex-state-card{padding:28px 22px}body.iap-annex .annex-page-hero h1{font-size:2.15rem}body.iap-annex .annex-page-hero .annex-intro{font-size:1rem}body.iap-annex .annex-legal-content h2{font-size:1.4rem}body.iap-annex .annex-legal-content :is(.preparation,.repere,.callout){padding:18px}body.iap-annex .annex-legal-content :is(th,td){padding:11px;font-size:.84rem}body.iap-annex .annex-state-actions{flex-direction:column;align-items:stretch}}
@media print{body.iap-annex .annex-legal-nav,body.iap-annex .annex-legal-switcher,body.iap-annex .annex-breadcrumb{display:none}body.iap-annex .annex-legal-layout{display:block}body.iap-annex .annex-page-hero{background:none;color:#102f50;padding:20px 0}body.iap-annex .annex-page-hero::after{display:none}body.iap-annex .annex-page-hero h1,body.iap-annex .annex-page-hero :is(p,.annex-intro,.section-label){color:#102f50}body.iap-annex .annex-page-body{padding:20px 0}body.iap-annex .annex-legal-content .table-wrap{overflow:visible}body.iap-annex .annex-legal-content section{break-inside:auto}body.iap-annex .annex-legal-content tr{break-inside:avoid}}
