*{box-sizing:border-box}html,body{margin:0;min-height:100%;background:#050505;color:#f4efe4;font-family:Arial,Helvetica,sans-serif}body{min-height:100vh}.hidden{display:none!important}:root{--gold:#d3aa55;--gold2:#8f6b2c;--ink:#050505;--panel:#0c0c0c;--muted:#aaa193;--line:rgba(211,170,85,.32)}button,input{font:inherit}button{cursor:pointer}.shell{min-height:100vh;background:radial-gradient(circle at 75% 20%,rgba(181,128,44,.18),transparent 28%),linear-gradient(125deg,#030303 0%,#090704 48%,#030303 100%)}.login{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(420px,.95fr);min-height:100vh}.login-art{position:relative;background-image:linear-gradient(90deg,rgba(0,0,0,.15),rgba(0,0,0,.67)),url('login-hero.jpg');background-size:cover;background-position:center;min-height:100vh}.login-art:after{content:"";position:absolute;inset:0;border:1px solid rgba(211,170,85,.18);pointer-events:none}.login-card-wrap{display:flex;align-items:center;justify-content:center;padding:50px}.login-card{width:min(560px,100%);padding:42px 42px 34px;border:1px solid var(--line);background:rgba(7,7,7,.86);box-shadow:0 30px 90px rgba(0,0,0,.6);backdrop-filter:blur(18px)}.brand-lockup{text-align:center}.brand-lockup img{width:155px;height:auto;display:block;margin:0 auto 18px;border-radius:2px}.eyebrow{letter-spacing:.22em;text-transform:uppercase;color:var(--gold);font-size:12px;font-weight:700}.brand-title{margin:8px 0 4px;font-family:Georgia,'Times New Roman',serif;font-size:34px;letter-spacing:.045em}.brand-sub{color:#cbbfAD;letter-spacing:.25em;font-size:12px;text-transform:uppercase}.invite{margin:28px 0 8px;padding-top:24px;border-top:1px solid var(--line);text-align:center}.invite h1{font-size:34px;margin:6px 0 8px;font-weight:600;letter-spacing:.03em}.invite p{margin:0 auto;color:var(--muted);max-width:440px;line-height:1.55}.form{margin-top:28px}.field{margin:0 0 18px}.field label{display:block;font-size:11px;letter-spacing:.17em;text-transform:uppercase;color:#cdb77f;margin-bottom:8px}.field input{width:100%;background:#080808;color:#fff;border:1px solid #3a3327;padding:15px 16px;outline:none;transition:.2s}.field input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(211,170,85,.08)}.primary{width:100%;border:1px solid #dbb560;background:linear-gradient(135deg,#b68836,#e1c27b);color:#0b0905;padding:15px 18px;font-weight:800;text-transform:uppercase;letter-spacing:.14em}.primary:hover{filter:brightness(1.06)}.error{min-height:22px;color:#ffccbc;font-size:13px;text-align:center;margin-top:12px}.privacy{margin-top:20px;padding-top:18px;border-top:1px solid #201c15;color:#827a70;font-size:11px;line-height:1.5;text-align:center}.topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:15px 26px;border-bottom:1px solid var(--line);background:rgba(4,4,4,.94);backdrop-filter:blur(16px)}.topbrand{display:flex;align-items:center;gap:14px}.topbrand img{width:55px;height:50px;object-fit:cover;object-position:top;border-radius:2px}.topbrand b{display:block;letter-spacing:.13em}.topbrand span{display:block;color:#aa9b7f;font-size:10px;letter-spacing:.18em;margin-top:3px}.smallbtn{border:1px solid #5a4930;background:#0d0d0d;color:#e7d4ad;padding:9px 13px;font-size:11px;text-transform:uppercase;letter-spacing:.12em}.smallbtn:hover{border-color:var(--gold)}.library{max-width:1420px;margin:0 auto;padding:62px 32px 70px}.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:40px;align-items:end;margin-bottom:42px}.hero-grid h2{font-family:Georgia,'Times New Roman',serif;font-size:44px;line-height:1.08;margin:8px 0 14px;font-weight:500}.hero-grid p{color:#b9afa1;line-height:1.65;max-width:750px;margin:0}.auto-badge{justify-self:end;border:1px solid var(--line);padding:16px 18px;color:#cdbb95;background:#0a0907;font-size:12px;letter-spacing:.13em;text-transform:uppercase}.grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.deck{position:relative;background:#0a0a0a;border:1px solid #29231a;transition:.22s;overflow:hidden}.deck:hover{transform:translateY(-3px);border-color:#86672e;box-shadow:0 22px 55px rgba(0,0,0,.4)}.deck-thumb{aspect-ratio:16/10;background:#111;overflow:hidden;border-bottom:1px solid #2a241b}.deck-thumb img{width:100%;height:100%;object-fit:cover;display:block}.deck-body{padding:20px 20px 18px}.deck-kicker{font-size:10px;letter-spacing:.17em;color:var(--gold);text-transform:uppercase}.deck h3{font-family:Georgia,'Times New Roman',serif;font-weight:500;font-size:25px;margin:9px 0 8px}.deck p{color:#9f978b;line-height:1.5;font-size:13px;min-height:58px}.deck-meta{display:flex;align-items:center;justify-content:space-between;margin-top:16px;padding-top:13px;border-top:1px solid #241f18;color:#8d8271;font-size:11px;letter-spacing:.08em;text-transform:uppercase}.deck button{position:absolute;inset:0;border:0;background:transparent;color:transparent;width:100%;height:100%}.site-footer{border-top:1px solid #241f18;color:#7c7469;padding:30px 32px 38px;text-align:center;font-size:11px;line-height:1.7}.site-footer strong{color:#b9a16d;letter-spacing:.1em}.viewer{position:fixed;inset:0;background:#000;z-index:100;display:flex;flex-direction:column}.viewer-head{height:58px;flex:0 0 58px;display:flex;align-items:center;justify-content:space-between;padding:0 16px;border-bottom:1px solid #262016;background:#060606}.viewer-title{min-width:0}.viewer-title b{font-size:13px;letter-spacing:.07em}.viewer-title span{display:block;color:#8f8679;font-size:10px;margin-top:2px;letter-spacing:.1em;text-transform:uppercase}.viewer-actions{display:flex;gap:8px}.viewer-stage{position:relative;flex:1;min-height:0;display:flex;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(circle at center,#15110b,#000 70%)}.viewer-stage img{display:block;max-width:100%;max-height:100%;width:auto;height:auto;object-fit:contain;box-shadow:0 0 75px rgba(0,0,0,.65);opacity:1;transition:opacity .25s ease}.viewer-stage img.fade{opacity:.12}.clickzone{position:absolute;top:0;bottom:0;width:18%;z-index:2}.clickzone.prev{left:0}.clickzone.next{right:0}.viewer-bottom{height:76px;flex:0 0 76px;background:#060606;border-top:1px solid #251f16;display:grid;grid-template-columns:150px 1fr 150px;align-items:center;padding:0 18px;gap:18px}.controls{display:flex;gap:8px;align-items:center}.round{width:38px;height:38px;border:1px solid #5b4a31;background:#0b0b0b;color:#e6d0a6;border-radius:50%;font-size:15px}.round:hover{border-color:var(--gold)}.progress-wrap{min-width:0}.progress-line{height:3px;background:#201c16;position:relative;overflow:hidden}.progress-line div{height:100%;background:linear-gradient(90deg,#9b7634,#e1c77f);width:0}.slide-info{display:flex;justify-content:space-between;margin-top:9px;color:#958a7a;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.autotime{text-align:right;color:#a18f6d;font-size:10px;letter-spacing:.1em;text-transform:uppercase}.end-overlay{position:absolute;inset:0;background:rgba(0,0,0,.7);display:flex;align-items:center;justify-content:center;z-index:6}.end-card{width:min(460px,85vw);padding:34px;border:1px solid #765b2b;background:#090806;text-align:center}.end-card h3{font-family:Georgia,serif;font-size:29px;margin:0 0 9px}.end-card p{color:#aaa095;line-height:1.5}.end-actions{display:flex;gap:10px;margin-top:22px}.end-actions button{flex:1}.secondary{border:1px solid #6d5732;background:#0d0c0a;color:#e4d2ad;padding:12px}.secondary:hover{border-color:var(--gold)}@media(max-width:980px){.login{grid-template-columns:1fr}.login-art{display:none}.login-card-wrap{padding:24px;min-height:100vh}.grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{grid-template-columns:1fr}.auto-badge{justify-self:start}.viewer-bottom{grid-template-columns:120px 1fr 95px}.library{padding:42px 20px}}@media(max-width:620px){.login-card{padding:28px 22px}.brand-title{font-size:28px}.invite h1{font-size:28px}.grid{grid-template-columns:1fr}.library h2{font-size:35px}.topbrand span{display:none}.viewer-title span{display:none}.viewer-head{height:54px;flex-basis:54px}.viewer-bottom{grid-template-columns:100px 1fr;padding:0 10px;height:68px;flex-basis:68px}.autotime{display:none}.round{width:35px;height:35px}.smallbtn.hide-mobile{display:none}}

.login-intro-note{color:var(--muted);font-size:.95rem;line-height:1.55;margin-top:.35rem}

/* VELTHARA server sizing refinement — desktop entry page */
html,body{width:100%;overflow-x:hidden}
.login{grid-template-columns:minmax(0,58%) minmax(380px,42%);min-height:100svh}
.login-art{
  min-height:100svh;
  background-size:contain;
  background-repeat:no-repeat;
  background-position:center center;
  background-color:#030303;
}
.login-card-wrap{padding:clamp(18px,2.2vw,36px)}
.login-card{width:min(470px,100%);padding:28px 30px 24px}
.brand-lockup img{width:108px;margin:0 auto 11px}
.brand-title{margin:5px 0 3px;font-size:28px}
.brand-sub{font-size:10px;letter-spacing:.23em}
.invite{margin:20px 0 5px;padding-top:17px}
.invite h1{font-size:29px;margin:5px 0 7px;line-height:1.08}
.invite p{max-width:390px;line-height:1.45;font-size:13px}
.login-intro-note{font-size:12px!important;line-height:1.45!important;margin-top:5px!important}
.form{margin-top:21px}
.field{margin:0 0 13px}
.field label{font-size:10px;margin-bottom:6px}
.field input{padding:12px 13px;min-height:43px}
.primary{padding:13px 15px;font-size:13px}
.error{min-height:17px;font-size:11px;margin-top:9px}
.privacy{margin-top:15px;padding-top:13px;font-size:9.5px;line-height:1.45}

@media (min-width:1800px){
  .login{grid-template-columns:minmax(0,60%) minmax(400px,40%)}
  .login-card{width:min(480px,100%)}
}
@media (max-height:720px) and (min-width:981px){
  .login-card-wrap{padding:14px 26px}
  .login-card{padding:21px 27px 18px}
  .brand-lockup img{width:86px;margin-bottom:8px}
  .brand-title{font-size:24px}
  .invite{margin-top:14px;padding-top:13px}
  .invite h1{font-size:25px}
  .form{margin-top:15px}
  .field{margin-bottom:10px}
  .field input{min-height:39px;padding:9px 12px}
  .privacy{margin-top:10px;padding-top:10px}
}
@media(max-width:980px){
  .login{grid-template-columns:1fr}
  .login-art{display:none}
  .login-card-wrap{padding:24px;min-height:100svh}
  .login-card{width:min(500px,100%)}
}
@media(max-width:620px){
  .login-card{padding:24px 20px 20px}
  .brand-lockup img{width:92px}
  .brand-title{font-size:25px}
  .invite h1{font-size:25px}
}

/* Programme response / email confirmation */
.end-overlay{overflow:auto;padding:24px 14px}
.decision-card{width:min(780px,94vw);max-height:none;padding:32px 34px 28px;text-align:left}
.decision-card>h3{font-family:Georgia,'Times New Roman',serif;font-size:30px;letter-spacing:.05em;text-align:center;margin:4px 0 9px}
.decision-lead{text-align:center;color:#e9dfcb!important;font-size:17px;line-height:1.45;margin:0 auto 7px!important;max-width:620px}
.decision-note{text-align:center;color:#9f9688!important;font-size:12px!important;line-height:1.5!important;max-width:650px;margin:0 auto 22px!important}
.decision-options{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:18px 0 14px}
.decision-option{min-height:144px;border:1px solid #5d4b2d;background:#0d0c0a;color:#f2eadc;padding:18px;text-align:left;display:flex;flex-direction:column;gap:8px;transition:.2s}
.decision-option:hover,.decision-option.selected{border-color:var(--gold);background:#14110b;transform:translateY(-1px);box-shadow:0 12px 36px rgba(0,0,0,.28)}
.decision-option strong{font-size:14px;letter-spacing:.08em;color:#f3dfad}
.decision-option>span:last-child{font-size:12px;line-height:1.45;color:#aaa093;text-transform:none;letter-spacing:0}
.decision-tag{font-size:9px;letter-spacing:.18em;color:#b99754}
.email-confirm{margin-top:16px;padding:19px;border:1px solid #6c562d;background:#090806}
.email-confirm-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding-bottom:12px;border-bottom:1px solid #282116}
.email-confirm-head b{font-size:11px;letter-spacing:.08em;color:#f0d794;text-align:right}
.email-confirm p{color:#aaa095;font-size:12px;line-height:1.5;margin:13px 0}
.response-fields{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin:12px 0}
.response-fields label{display:block;color:#cdb77f;font-size:9px;letter-spacing:.14em;text-transform:uppercase}
.response-fields input{width:100%;margin-top:6px;background:#050505;color:#fff;border:1px solid #3b3225;padding:11px 12px;outline:none}
.response-fields input:focus{border-color:var(--gold)}
.response-email-btn{margin-top:4px}
.email-status{min-height:18px;margin-top:9px;color:#e2c67e;font-size:11px;text-align:center}
.email-fallback{margin-top:7px;color:#7f776c;font-size:10px;line-height:1.45;text-align:center}
.email-fallback a{color:#c8ab6e}
.utility-actions{margin-top:14px}
.utility-actions .secondary{text-transform:uppercase;letter-spacing:.08em;font-size:10px}
@media(max-width:680px){.decision-card{padding:24px 18px}.decision-options,.response-fields{grid-template-columns:1fr}.decision-option{min-height:auto}.email-confirm-head{align-items:flex-start;flex-direction:column}.email-confirm-head b{text-align:left}.decision-card>h3{font-size:26px}.decision-lead{font-size:15px}}

.invited-club{display:inline-block;margin:8px 0 12px;padding:7px 11px;border:1px solid rgba(196,156,72,.45);background:rgba(196,156,72,.08);font-size:.88rem;letter-spacing:.02em}.invited-club strong{color:var(--gold,#c9a24b)}
