/* doc-project | public/assets/css/public-base.css | Socle mobile-first public avec identité visuelle administrable, navigation accessible, composants tactiles et mouvement réduit. | Expose: styles globaux publics et logo du header | Dépend de: layout public | Impacte: toutes pages publiques | Tables: aucune */
:root{--ink:#17202a;--muted:#5f6872;--paper:#f6f2e9;--surface:#fff;--brand:#b46b15;--brand-dark:#754006;--accent:#183b4e;--line:#ded7ca;--success:#1f6b46;--warning:#8a5b00;--danger:#9d2d25;--shadow:0 18px 50px rgba(23,32,42,.12);--radius:20px;--max:1180px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font:400 1rem/1.6 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;padding-bottom:72px}img{display:block;max-width:100%;height:auto}a{color:inherit}button,input,select,textarea{font:inherit}.skip-link{position:fixed;left:1rem;top:-5rem;z-index:1000;background:#fff;padding:.7rem 1rem;border-radius:.5rem}.skip-link:focus{top:1rem}.site-header{min-height:72px;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;background:rgba(246,242,233,.94);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;backdrop-filter:blur(12px)}.brand{display:flex;align-items:center;gap:.65rem;font-weight:800;text-decoration:none;white-space:nowrap}.brand-mark{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:var(--ink);color:#fff}.brand-logo{display:block;width:auto;height:auto;max-width:180px;max-height:52px;object-fit:contain}.site-header nav{display:none;align-items:center;gap:1.1rem}.site-header nav a{text-decoration:none;font-weight:650}.site-header nav a:hover,.site-header nav a:focus-visible{color:var(--brand-dark)}.phone-link{padding:.55rem .8rem;border-radius:999px;background:var(--ink);color:#fff!important}.button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:.75rem 1.15rem;border:1px solid transparent;border-radius:999px;font-weight:750;text-decoration:none;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,background .15s ease}.button:hover{transform:translateY(-1px)}.button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,summary:focus-visible{outline:3px solid rgba(180,107,21,.35);outline-offset:2px}.button.primary{background:var(--brand);color:#fff;box-shadow:0 10px 28px rgba(180,107,21,.28)}.button.secondary{background:var(--accent);color:#fff}.button.ghost{background:transparent;border-color:currentColor}.button.light{background:#fff;color:var(--ink)}.button.wide{width:100%}.eyebrow{display:block;color:var(--brand-dark);font-size:.78rem;font-weight:850;letter-spacing:.12em;text-transform:uppercase}.section{max-width:var(--max);margin:0 auto;padding:4.5rem 1rem}.section-heading{max-width:720px;margin-bottom:2rem}.section-heading h2{margin:.25rem 0 .5rem;font-size:clamp(2rem,7vw,3.6rem);line-height:1.08}.section-heading p{color:var(--muted)}.field{display:grid;gap:.4rem;position:relative}.field-row{display:grid;gap:1rem}.field label,form>label,fieldset label{font-weight:700}input,select,textarea{width:100%;min-height:48px;padding:.72rem .85rem;border:1px solid #cfc7b8;border-radius:12px;background:#fff;color:var(--ink)}textarea{resize:vertical}input:disabled{background:#eeeae1;color:#626262}.suggestions{position:absolute;top:100%;left:0;right:0;z-index:20;background:#fff;border-radius:0 0 12px 12px;box-shadow:var(--shadow);overflow:hidden}.suggestions button{display:block;width:100%;padding:.7rem;text-align:left;border:0;border-bottom:1px solid var(--line);background:#fff}.suggestions button:hover{background:#faf7f1}.flash{max-width:var(--max);margin:1rem auto;padding:.85rem 1rem;border-radius:12px}.flash.success{background:#e1f2e9;color:var(--success)}.flash.warning{background:#fff2d3;color:var(--warning)}.flash.error{background:#f9dfdd;color:var(--danger)}.site-footer{display:grid;gap:1.5rem;padding:3rem 1rem 6rem;background:var(--ink);color:#fff}.site-footer>div:nth-child(2){display:grid;gap:.45rem}.site-footer a{color:#fff}.footer-call{font-weight:850;font-size:1.25rem}.mobile-actions{position:fixed;z-index:80;left:0;right:0;bottom:0;display:grid;grid-template-columns:1fr 1fr;padding:.6rem max(.6rem,env(safe-area-inset-left)) calc(.6rem + env(safe-area-inset-bottom));background:#fff;border-top:1px solid var(--line);box-shadow:0 -10px 30px rgba(0,0,0,.12)}.mobile-actions a{min-height:48px;display:grid;place-items:center;text-decoration:none;font-weight:800}.mobile-actions a:first-child{background:var(--ink);color:#fff;border-radius:999px 0 0 999px}.mobile-actions a:last-child{background:var(--brand);color:#fff;border-radius:0 999px 999px 0}.cookie-banner{position:fixed;z-index:90;left:1rem;right:1rem;bottom:84px;padding:1rem;background:#fff;border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow)}.cookie-banner button{min-height:44px;margin-right:.5rem;border:0;border-radius:999px;padding:.6rem 1rem}.status{display:inline-flex;padding:.28rem .55rem;border-radius:999px;background:#e9e5dd;font-size:.82rem;font-weight:800}.notice{padding:1rem;border-radius:12px;background:#e4f1f6}.notice.warning{background:#fff0d0}@media(min-width:700px){body{padding-bottom:0}.site-header{padding-inline:2rem}.site-header nav{display:flex}.mobile-actions{display:none}.field-row{grid-template-columns:1fr 1fr}.site-footer{grid-template-columns:2fr 1fr 1fr;padding:4rem max(2rem,calc((100vw - var(--max))/2))}.cookie-banner{left:auto;right:2rem;bottom:2rem;max-width:480px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}.button:hover{transform:none}}