/* Nichefits coming-soon page. Direction: Gallery (bone ground, indigo ink), layout: Placard. */
:root{--ground:#EFECE7;--paper:#F6F4F0;--mat:#F8F6F2;--ink:#1E2030;--slate:#4A5372;--body:#4B4D5C;--muted:#5E6070;--line:#CFCBC4;--photo:#DDD9D3;--sand:#E3D2BA;--mist:#C9CAD6;--line-dark:#3A3D55;--line-dark-2:#6B6E85;--display:'Cormorant Garamond',Georgia,serif;--text:'Hanken Grotesk','Helvetica Neue',Arial,sans-serif;--gutter:clamp(20px,4vw,60px)}
*,*::before,*::after{box-sizing:border-box}
body{margin:0;min-height:100vh;display:flex;flex-direction:column;background:var(--ground);color:var(--ink);font-family:var(--text);font-size:16px;line-height:1.55}
img{display:block;max-width:100%}h1,h2,p,figure,ul,dl,dd{margin:0}ul{padding:0;list-style:none}a{color:inherit}
button,input{font:inherit}
.wrap{width:100%;max-width:1320px;margin:0 auto;padding:0 var(--gutter)}
.top{border-bottom:1px solid var(--line)}
.top .wrap{display:flex;align-items:center;justify-content:space-between;padding-top:18px;padding-bottom:18px}
.wordmark{font-family:var(--display);font-size:34px;font-weight:500;letter-spacing:.02em;line-height:1;text-decoration:none}
.eyebrow{font-size:12px;letter-spacing:.18em;text-transform:uppercase;color:var(--slate)}
.kicker{display:flex;align-items:center;gap:14px}.kicker::before{content:"";width:44px;height:1px;background:currentColor}
.display{font-family:var(--display);font-weight:300;letter-spacing:-.02em;line-height:.92;text-wrap:balance}
.display em{color:var(--slate)}
.lede{font-size:18px;line-height:1.6;color:var(--body);max-width:46ch}
.signup{display:flex;flex-direction:column;gap:10px;max-width:520px;width:100%}
.signup label{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--muted)}
.signup__row{display:flex;flex-wrap:wrap;gap:10px}
.signup input{flex:1 1 220px;min-width:0;height:56px;padding:0 18px;background:var(--paper);border:1px solid var(--line);color:var(--ink)}
.signup input::placeholder{color:#8B8D9A}
.btn{display:inline-flex;align-items:center;justify-content:center;min-height:56px;padding:0 30px;border:0;background:var(--ink);color:var(--paper);font-size:14px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;cursor:pointer}
.fine{font-size:13px;line-height:1.5;color:var(--muted);max-width:52ch}
.status{border-top:1px solid var(--line);max-width:520px;width:100%}
.status li{display:flex;justify-content:space-between;align-items:baseline;gap:20px;padding:12px 0;border-bottom:1px solid var(--line)}
.status span:first-child{font-family:var(--display);font-size:23px}
.status span:last-child{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:var(--muted)}
.status .now span:last-child{color:var(--ink)}
.status .now span:last-child::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--slate);margin-right:9px;vertical-align:1px}
.base{border-top:1px solid var(--line);font-size:13px;color:var(--muted)}
.base .wrap{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;padding-top:20px;padding-bottom:20px}
main{flex:1;display:flex}
.caption{display:flex;flex-wrap:wrap;justify-content:space-between;gap:6px 24px;font-size:13px;color:var(--muted)}
.caption b{font-weight:400;letter-spacing:.14em;text-transform:uppercase;color:var(--ink);margin-right:8px}
a:hover{color:var(--slate)}
:focus-visible{outline:2px solid var(--slate);outline-offset:3px}
.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap}
.trap{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}
/* Placard: one centred museum label card */
.stage{align-items:center;justify-content:center;padding:clamp(24px,6vw,80px) var(--gutter)}
.card{position:relative;width:100%;max-width:760px;background:var(--paper);border:1px solid var(--line);padding:clamp(40px,6vw,76px) clamp(24px,6vw,76px);display:flex;flex-direction:column;align-items:center;text-align:center;gap:30px;box-shadow:0 40px 80px -50px rgba(30,32,48,.45)}
.card::before{content:"";position:absolute;inset:12px;border:1px solid var(--line);pointer-events:none}
.mark{font-family:var(--display);font-size:40px;font-weight:500;letter-spacing:.02em;line-height:1}
.card h1{font-size:clamp(50px,7vw,92px)}
.rule{width:44px;height:1px;background:var(--slate)}
.card .signup{align-items:center}
.card .signup__row{width:100%}
.card .fine{text-align:center}
.card .status{text-align:left}
.signup__row .btn{flex:0 0 auto}
@media (max-width:480px){.signup__row .btn{flex:1 1 100%}}
.btn{transition:background .25s}
.btn:hover{background:var(--slate)}
.btn[disabled]{opacity:.55;cursor:wait}
.signup input:focus-visible{outline-offset:0}
.signup input[aria-invalid="true"]{border-color:#9B2C2C}
.signup__note:empty{display:none}
.signup__note{font-size:15px;color:var(--ink)}
.signup__note[data-state="error"]{color:#9B2C2C}
.signup__done{font-family:var(--display);font-size:30px;line-height:1.2}
.notfound{flex-direction:column;align-items:center;justify-content:center;gap:24px;text-align:center;padding:64px var(--gutter)}
.notfound h1{font-size:clamp(48px,7vw,96px)}
@media (prefers-reduced-motion:reduce){*{transition:none!important}}
