/* Service dossier d'autorisation d'enseigne - enseigne.net */
.ae{--ae-r:var(--radius,.75rem)}
.ae-hero{background:var(--primary);color:var(--primary-foreground);padding:3.5rem 0 3rem}
.ae-hero .ae-kicker{display:inline-block;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent)}
.ae-hero h1{font-family:var(--font-display);font-size:clamp(1.9rem,4.5vw,3rem);font-weight:800;line-height:1.12;margin:.75rem 0 0;max-width:22ch}
.ae-hero p.ae-lead{margin-top:1rem;font-size:1.125rem;opacity:.85;max-width:62ch}
.ae-hero .ae-ctas{display:flex;flex-wrap:wrap;gap:.75rem;margin-top:1.75rem}
.ae-crumb{font-size:.85rem;opacity:.75}.ae-crumb a{color:inherit;text-decoration:none}.ae-crumb a:hover{text-decoration:underline}
.ae-btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem 1.3rem;border-radius:var(--ae-r);font-weight:700;text-decoration:none;border:1px solid transparent;cursor:pointer;font-size:1rem;line-height:1.2}
.ae-btn-accent{background:var(--accent);color:var(--accent-foreground)}.ae-btn-accent:hover{filter:brightness(1.05)}
.ae-btn-ghost{border-color:currentColor;color:inherit;background:transparent}.ae-btn-ghost:hover{background:rgba(127,127,127,.12)}
.ae-btn-dark{background:var(--primary);color:var(--primary-foreground)}
.ae-btn[disabled]{opacity:.6;cursor:wait}
.ae-sec{padding:3.5rem 0}.ae-sec-muted{background:var(--muted)}
.ae-sec h2{font-family:var(--font-display);font-size:clamp(1.5rem,3vw,2.1rem);font-weight:800;line-height:1.2;margin:0}
.ae-sec .ae-sub{margin-top:.75rem;color:var(--muted-foreground);max-width:68ch;font-size:1.05rem}
.ae-grid{display:grid;gap:1rem;margin-top:2rem}
@media(min-width:720px){.ae-g2{grid-template-columns:repeat(2,1fr)}.ae-g3{grid-template-columns:repeat(3,1fr)}.ae-g4{grid-template-columns:repeat(4,1fr)}}
.ae-card{background:var(--card);border:1px solid var(--border);border-radius:calc(var(--ae-r) + .25rem);padding:1.4rem}
.ae-card h3{font-weight:800;font-size:1.1rem;margin:0}
.ae-card p{margin:.5rem 0 0;color:var(--muted-foreground);line-height:1.55}
.ae-num{display:inline-flex;width:2rem;height:2rem;border-radius:999px;background:var(--accent);color:var(--accent-foreground);font-weight:800;align-items:center;justify-content:center;margin-bottom:.75rem}
.ae-stat{font-family:var(--font-display);font-size:2.2rem;font-weight:800;color:var(--accent);line-height:1}
.ae-stat+p{margin-top:.5rem}
.ae-alert{border-left:4px solid var(--accent);background:var(--card);border-radius:var(--ae-r);padding:1.25rem 1.4rem;margin-top:2rem;border-top:1px solid var(--border);border-right:1px solid var(--border);border-bottom:1px solid var(--border)}
.ae-alert strong{display:block;font-size:1.05rem;margin-bottom:.35rem}
.ae-list{list-style:none;padding:0;margin:1rem 0 0}.ae-list li{position:relative;padding-left:1.6rem;margin:.55rem 0;line-height:1.5}
.ae-list li:before{content:"";position:absolute;left:0;top:.45em;width:.9rem;height:.5rem;border-left:2.5px solid var(--accent);border-bottom:2.5px solid var(--accent);transform:rotate(-45deg)}
.ae-faq details{border:1px solid var(--border);border-radius:var(--ae-r);background:var(--card);padding:1rem 1.2rem;margin-top:.75rem}
.ae-faq summary{font-weight:700;cursor:pointer}.ae-faq details p{margin:.75rem 0 0;color:var(--muted-foreground);line-height:1.6}
.ae-tabs{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:2rem;border-bottom:1px solid var(--border)}
.ae-tab{background:none;border:0;border-bottom:3px solid transparent;padding:.75rem 1rem;font-weight:700;font-size:1rem;color:var(--muted-foreground);cursor:pointer;margin-bottom:-1px}
.ae-tab[aria-selected=true]{color:var(--foreground);border-bottom-color:var(--accent)}
.ae-panel{padding-top:1.75rem}.ae-panel[hidden]{display:none}
.ae-price{font-family:var(--font-display);font-size:3rem;font-weight:800;line-height:1}.ae-price small{font-size:1rem;font-weight:600;color:var(--muted-foreground)}
.ae-table-wrap{overflow-x:auto;margin-top:1rem}
.ae-table{width:100%;border-collapse:collapse;font-size:.98rem}
.ae-table th,.ae-table td{padding:.7rem .8rem;border-bottom:1px solid var(--border);text-align:left;white-space:nowrap}
.ae-table th{font-size:.8rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted-foreground)}
.ae-table tbody tr{cursor:pointer}.ae-table tbody tr:hover{background:var(--muted)}
.ae-table tbody tr.is-sel{background:color-mix(in oklab,var(--accent) 14%,transparent)}
.ae-badge{display:inline-block;font-size:.75rem;font-weight:700;padding:.2rem .55rem;border-radius:999px;background:color-mix(in oklab,var(--accent) 18%,transparent);color:var(--foreground)}
.ae-note{font-size:.88rem;color:var(--muted-foreground);margin-top:1rem;line-height:1.5}
.ae-form fieldset{border:1px solid var(--border);border-radius:calc(var(--ae-r) + .25rem);padding:1.25rem 1.25rem 1.4rem;margin:0 0 1.25rem;background:var(--card)}
.ae-form legend{font-weight:800;padding:0 .4rem;font-size:1.05rem}
.ae-row{display:grid;gap:1rem}@media(min-width:640px){.ae-row-2{grid-template-columns:1fr 1fr}.ae-row-3{grid-template-columns:1fr 1fr 1fr}}
.ae-field{display:flex;flex-direction:column;gap:.35rem;margin-top:.9rem}
.ae-field label,.ae-label{font-weight:600;font-size:.92rem}
.ae-field input,.ae-field select,.ae-field textarea{font:inherit;padding:.7rem .8rem;border:1px solid var(--border);border-radius:var(--ae-r);background:var(--background);color:var(--foreground);width:100%;box-sizing:border-box}
.ae-field input:focus,.ae-field select:focus,.ae-field textarea:focus{outline:2px solid var(--accent);outline-offset:1px}
.ae-field .ae-help{font-size:.82rem;color:var(--muted-foreground)}
.ae-check{display:flex;gap:.6rem;align-items:flex-start;margin-top:.9rem;line-height:1.45}
.ae-check input{margin-top:.25rem;width:1.05rem;height:1.05rem;accent-color:var(--accent);flex:none}
.ae-choices{display:grid;gap:.6rem;margin-top:.6rem}@media(min-width:640px){.ae-choices{grid-template-columns:repeat(3,1fr)}}
.ae-choice{display:flex;gap:.6rem;align-items:flex-start;border:1px solid var(--border);border-radius:var(--ae-r);padding:.8rem;cursor:pointer;background:var(--background)}
.ae-choice:has(input:checked){border-color:var(--accent);box-shadow:0 0 0 1px var(--accent)}
.ae-choice input{accent-color:var(--accent);margin-top:.2rem}
.ae-choice b{display:block}.ae-choice span{font-size:.85rem;color:var(--muted-foreground)}
.ae-summary{position:sticky;top:6rem}
.ae-total{display:flex;justify-content:space-between;align-items:baseline;border-top:1px solid var(--border);margin-top:1rem;padding-top:1rem;font-weight:800;font-size:1.15rem}
.ae-sline{display:flex;justify-content:space-between;gap:1rem;margin-top:.5rem;font-size:.95rem}
.ae-layout{display:grid;gap:1.5rem}@media(min-width:960px){.ae-layout{grid-template-columns:minmax(0,1fr) 320px;align-items:start}}
.ae-msg{margin-top:1rem;padding:1rem 1.2rem;border-radius:var(--ae-r);font-weight:600}
.ae-msg.ok{background:color-mix(in oklab,oklch(69.6% .17 162.48) 15%,transparent);border:1px solid oklch(69.6% .17 162.48)}
.ae-msg.err{background:color-mix(in oklab,oklch(63% .22 27) 12%,transparent);border:1px solid oklch(63% .22 27)}
.ae-hp{position:absolute!important;left:-9999px!important;width:1px;height:1px;overflow:hidden}
.ae-cta{background:var(--primary);color:var(--primary-foreground);border-radius:calc(var(--ae-r) + .5rem);padding:2rem;display:flex;flex-wrap:wrap;gap:1.25rem;align-items:center;justify-content:space-between}
.ae-cta h2{color:inherit}.ae-cta p{opacity:.85;margin:.5rem 0 0;max-width:60ch}
.ae-legal{font-size:.82rem;color:var(--muted-foreground);margin-top:2rem}
.ae-city-cta{margin:2rem 0;border:1px solid var(--border);border-left:4px solid var(--accent);border-radius:var(--ae-r);padding:1.25rem 1.4rem;background:var(--card);display:flex;flex-wrap:wrap;gap:1rem;align-items:center;justify-content:space-between}
.ae-city-cta p{margin:.35rem 0 0;color:var(--muted-foreground)}

.ae-choice input,.ae-check input,.ae-field .ae-choice input{width:1.05rem!important;height:1.05rem;flex:none;padding:0;margin:.2rem 0 0}
.ae-choice>div{flex:1;min-width:0}
.ae-sline b,#s-total{white-space:nowrap}
.ae-field[hidden],.ae-form [hidden]{display:none!important}
.ae-card h3:first-child,.ae-card .ae-badge:first-child{margin-top:0}
