:root{--ink:#0a0a0a;--ink-soft:#2b2b2b;--ink-mute:#6a6a6a;--paper:#fbfbfa;--line:#e3e1dc;--serif-display:"EB Garamond", Georgia, serif;--serif-body:"EB Garamond", Georgia, serif;--gutter:clamp(20px, 5vw, 64px);--ease:cubic-bezier(.16, 1, .3, 1)}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--serif-body);background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-size:18px;line-height:1.6}.btn{font-family:var(--serif-display);letter-spacing:.02em;border:1px solid var(--ink);color:var(--ink);cursor:pointer;transition:color .45s var(--ease);background:0 0;align-items:center;gap:16px;padding:17px 30px;font-size:16px;display:inline-flex;position:relative;overflow:hidden}.btn span,.btn svg{z-index:1;position:relative}.btn:before{content:"";background:var(--ink);transition:transform .5s var(--ease);position:absolute;inset:0;transform:translateY(101%)}.btn:hover{color:var(--paper)}.btn:hover:before{transform:translateY(0)}.btn--solid{background:var(--ink);color:var(--paper);transition:background .45s var(--ease), color .45s var(--ease);padding:19px 34px;font-size:17px}.btn--solid:before{display:none}.btn--solid:hover{background:var(--paper);color:var(--ink)}.btn:disabled{opacity:.5;cursor:default}.btn:disabled:before{transform:translateY(101%)}.btn:disabled:hover{color:var(--ink)}.field__label{font-family:var(--serif-display);letter-spacing:.14em;text-transform:uppercase;color:var(--ink-mute);transition:color .35s var(--ease);justify-content:space-between;align-items:baseline;font-size:14px;display:flex}.field__input{font-family:var(--serif-body);color:var(--ink);border:none;border-bottom:1px solid var(--line);width:100%;transition:border-color .4s var(--ease);background:0 0;padding:11px 2px;font-size:18px;line-height:1.5}.field__input::placeholder{color:var(--ink-mute);opacity:.55;font-style:italic}.field__input:hover{border-color:var(--ink-mute)}.field__input:focus{border-color:var(--ink);outline:none}.field__error{font-family:var(--serif-body);color:var(--ink-soft);font-size:14.5px;font-style:italic}.field__error:before{content:"— "}.acces{--acces-haut:#fdfcfa;--acces-bas:#fbe4cd;--acces-bord:#11111114;min-height:100vh;padding:var(--gutter);background:linear-gradient(175deg, var(--acces-haut) 0%, var(--acces-haut) 30%, var(--acces-bas) 100%);flex-direction:column;align-items:center;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;display:flex;position:relative}.acces__badge{top:var(--gutter);right:var(--gutter);letter-spacing:.06em;text-transform:uppercase;color:var(--ink-mute);border:1px solid var(--acces-bord);border-radius:999px;padding:5px 12px;font-size:11.5px;position:absolute}.acces__card{text-align:center;width:100%;max-width:520px;margin:auto 0}.acces__logo{width:clamp(210px,21vw,280px);height:auto;margin:0 auto;display:block}.acces__tagline{font-family:var(--serif-body);letter-spacing:.01em;color:var(--ink-mute);margin:14px 0 clamp(32px,4.5vw,46px);font-size:clamp(18px,2.4vw,21px);font-style:italic}.acces__form{text-align:left;gap:14px;max-width:460px;margin:0 auto;display:grid}.acces .field__input{border:1px solid var(--acces-bord);text-align:center;width:100%;transition:border-color .2s var(--ease), background .2s var(--ease);background:#fff;border-radius:20px;padding:16px 20px;font-family:inherit;font-size:15.5px;font-style:normal}.acces .field__input:focus{background:#fff;border-color:#1111114d;outline:none}.acces .field__input::placeholder{color:var(--ink-mute);opacity:1;font-style:normal}.acces .field__error{color:#b42318;text-align:center;font-family:inherit;font-size:13px;font-style:normal;display:block}.acces .field__error:before{content:none}.acces__form .btn--solid{border-radius:24px;justify-content:center;width:100%;padding:19px 24px;font-family:inherit;font-size:17px;font-weight:600}.acces__form .btn--solid[disabled]{opacity:.32;cursor:not-allowed}.acces__sign{border-top:1px solid var(--acces-bord);text-align:center;width:100%;max-width:960px;font-family:var(--serif-body);color:var(--ink-mute);margin-top:clamp(30px,5vh,60px);padding-top:18px;font-size:15px}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (max-width:560px){body{font-size:17px}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
