:root{--cs-bg:#FFFFFF;--cs-ink:#1A1A1A;--cs-muted:#6B6B6B;--cs-line:#D6D2CC;--cs-soft:#F7F5F2;--cs-cta:#1E3A5F;--cs-cta-hover:#16304F}
*{box-sizing:border-box}
html,body{margin:0;min-height:100%}
body.password-page{background:var(--cs-bg);color:var(--cs-ink);font-family:'DM Sans',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased}
.visually-hidden{position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.cs{display:flex;min-height:100vh;min-height:100dvh;flex-wrap:wrap}
.cs__content{flex:1 1 480px;display:flex;flex-direction:column;justify-content:space-between;gap:48px;padding:48px 56px}
.cs__media{flex:1 1 480px;min-height:60vh;position:relative}
.cs__img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}
.cs__logo{font-family:'Fraunces',Georgia,serif;font-size:30px;font-weight:600;letter-spacing:-.02em;color:var(--cs-ink);text-decoration:none;display:inline-flex;align-items:center;gap:8px}
.cs__logo-img{height:36px;width:auto}
.cs__dot{width:10px;height:10px;border-radius:50%;background:var(--cs-ink);display:inline-block;margin-top:10px}
.cs__body{display:flex;flex-direction:column;gap:20px;max-width:520px}
.cs__eyebrow{font-size:12px;letter-spacing:.16em;text-transform:uppercase;color:var(--cs-muted);font-weight:500}
.cs__heading{font-family:'Fraunces',Georgia,serif;font-weight:500;font-size:clamp(36px,5vw,56px);line-height:1.02;letter-spacing:-.01em;margin:0;text-wrap:pretty}
.cs__text{margin:0;font-size:17px;line-height:1.6;color:var(--cs-muted)}
.cs__text strong{color:var(--cs-ink);font-weight:600}
.cs__form{display:flex;gap:10px;flex-wrap:wrap}
.cs__field{flex:1;min-width:220px}
.cs__field input,.cs__pwform input{height:52px;width:100%;border:1px solid var(--cs-line);border-radius:999px;padding:0 20px;font:400 15px 'DM Sans',sans-serif;background:#fff;color:var(--cs-ink)}
.cs__field input:focus,.cs__pwform input:focus{outline:2px solid var(--cs-cta);outline-offset:1px;border-color:var(--cs-cta)}
.cs__btn{display:inline-flex;align-items:center;justify-content:center;height:52px;padding:0 24px;border-radius:999px;background:var(--cs-cta);color:#fff;font:500 15px 'DM Sans',sans-serif;border:0;cursor:pointer;transition:background .2s}
.cs__btn:hover{background:var(--cs-cta-hover)}
.cs__btn--dark{background:var(--cs-ink);height:44px}
.cs__success{margin:0;padding:14px 18px;background:var(--cs-soft);border-radius:12px;font-size:14px}
.cs__countdown{display:flex;gap:16px;align-items:center;font-size:13px;color:var(--cs-muted);flex-wrap:wrap}
.cs__timer{display:flex;gap:8px}
.cs__unit{background:var(--cs-soft);border-radius:10px;padding:8px 12px;display:flex;flex-direction:column;align-items:center;min-width:52px}
.cs__unit strong{font-size:20px;font-family:'Fraunces',Georgia,serif;color:var(--cs-ink);font-weight:500;font-variant-numeric:tabular-nums}
.cs__unit small{font-size:10px;letter-spacing:.1em;text-transform:uppercase}
.cs__social{display:flex;gap:12px}
.cs__social a{width:44px;height:44px;border:1px solid var(--cs-line);border-radius:50%;display:flex;align-items:center;justify-content:center;color:var(--cs-ink);transition:border-color .2s}
.cs__social a:hover{border-color:var(--cs-ink)}
.cs__owner{font-size:13px;color:var(--cs-muted)}
.cs__owner summary{cursor:pointer}
.cs__pwform{display:flex;gap:8px;margin-top:12px;max-width:360px}
.cs__pwform input{height:44px}
.errors{color:#C0392B;font-size:13px;width:100%;margin:0 0 8px}
.errors ul{margin:0;padding-left:18px}
@media (max-width:860px){
  .cs{flex-direction:column-reverse}
  .cs__content{padding:32px 20px 40px;gap:32px}
  .cs__media{min-height:42vh;flex:0 0 auto}
  .cs__form .cs__btn{width:100%}
}
