:root{
  --navy:#061e2b;
  --navy-2:#0b2c3d;
  --ivory:#f7f0e4;
  --paper:#fff8eb;
  --gold:#c2a158;
  --gold-2:#e2c778;
  --sage:#7e8f72;
  --ink:#102633;
}
*{box-sizing:border-box}
html{min-height:100%}
body{
  margin:0;
  min-height:100vh;
  font-family:Georgia,'Times New Roman',serif;
  color:var(--ivory);
  background:
    radial-gradient(circle at 18% 16%,rgba(226,199,120,.24),transparent 28%),
    linear-gradient(115deg,rgba(6,30,43,.96) 0%,rgba(6,30,43,.88) 42%,rgba(6,30,43,.48) 100%),
    url('hero-current.jpg?v=20260730b') center/cover fixed no-repeat;
}
body:before{
  content:"";
  position:fixed;
  inset:18px;
  border:1px solid rgba(226,199,120,.45);
  pointer-events:none;
  z-index:0;
}
.home-gate{
  position:relative;
  z-index:1;
  min-height:100vh;
  display:grid;
  grid-template-columns:minmax(320px,1.08fr) minmax(280px,.92fr);
  align-items:center;
  gap:clamp(24px,5vw,72px);
  padding:clamp(34px,6vw,82px);
}
.hero-panel{
  width:min(760px,100%);
  min-height:clamp(560px,72vh,760px);
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  align-items:center;
  text-align:center;
  padding:clamp(28px,5vw,58px);
  background:linear-gradient(180deg,rgba(6,30,43,.78),rgba(6,30,43,.56));
  border:1px solid rgba(226,199,120,.48);
  box-shadow:0 30px 90px rgba(0,0,0,.32);
  backdrop-filter:blur(3px);
}
.logo{
  width:min(280px,62vw);
  height:auto;
  margin:0 auto 24px;
  filter:drop-shadow(0 16px 28px rgba(0,0,0,.34));
}
.eyebrow,.access-label,.small-heading{
  margin:0 0 14px;
  color:var(--gold-2);
  font-family:Arial,Helvetica,sans-serif;
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.22em;
  text-transform:uppercase;
}
h1{
  margin:0 auto;
  max-width:680px;
  font-size:clamp(2.65rem,6vw,5.8rem);
  line-height:.95;
  font-weight:500;
  letter-spacing:-.045em;
}
.intro{
  max-width:590px;
  margin:24px auto 0;
  color:rgba(247,240,228,.88);
  font-family:Arial,Helvetica,sans-serif;
  font-size:clamp(1rem,1.55vw,1.22rem);
  line-height:1.65;
}
.login-card{
  width:min(500px,100%);
  margin:38px auto;
  padding:22px;
  background:rgba(255,248,235,.94);
  color:var(--ink);
  border:1px solid rgba(226,199,120,.86);
  box-shadow:0 18px 48px rgba(0,0,0,.3);
}
.login-card .access-label{color:var(--navy);margin-bottom:12px;letter-spacing:.18em}
.login-row{display:grid;grid-template-columns:1fr auto;gap:10px}
.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
input{
  width:100%;
  height:52px;
  border:1px solid rgba(6,30,43,.22);
  background:#fffdf7;
  color:var(--navy);
  padding:0 15px;
  font:1rem Arial,Helvetica,sans-serif;
  outline:none;
}
input:focus{border-color:var(--gold);box-shadow:0 0 0 3px rgba(194,161,88,.22)}
button{
  height:52px;
  border:1px solid var(--gold);
  background:var(--navy);
  color:var(--ivory);
  padding:0 22px;
  font:900 .78rem Arial,Helvetica,sans-serif;
  text-transform:uppercase;
  letter-spacing:.16em;
  cursor:pointer;
}
button:hover{background:#0b3044}
.message{min-height:1.2em;margin:10px 0 0;color:#8b1f1f;font:700 .9rem Arial,Helvetica,sans-serif;text-align:center}
.trust-line{display:flex;gap:18px;align-items:center;justify-content:center;color:var(--gold-2);font:800 .78rem Arial,Helvetica,sans-serif;letter-spacing:.2em;text-transform:uppercase}
.trust-line span+span:before{content:"•";margin-right:18px;color:rgba(226,199,120,.6)}
.info-panel{
  max-width:520px;
  justify-self:center;
  padding:clamp(28px,4vw,48px);
  background:rgba(247,240,228,.92);
  color:var(--ink);
  border-left:6px solid var(--gold);
  box-shadow:0 24px 70px rgba(0,0,0,.3);
}
.info-panel h2{margin:0 0 18px;color:var(--navy);font-size:clamp(2rem,4vw,3.3rem);line-height:1;letter-spacing:-.035em;font-weight:500}
.info-panel p,.info-panel li{font:1.02rem/1.65 Arial,Helvetica,sans-serif;color:#284252}
.info-panel ul{margin:22px 0;padding-left:20px}
.info-panel li{margin:10px 0}
.small-heading{color:var(--sage)}
.exclusive{margin-top:26px!important;color:var(--navy)!important;font-weight:800!important;letter-spacing:.05em;text-transform:uppercase}
@media(max-width:900px){
  body{background-position:center top}body:before{inset:10px}.home-gate{grid-template-columns:1fr;padding:24px}.hero-panel{min-height:auto}.info-panel{display:none}.login-row{grid-template-columns:1fr}button{width:100%}.trust-line{gap:10px;flex-wrap:wrap}.trust-line span+span:before{margin-right:10px}
}

.gold-framed-logo{border:3px solid #e2c778;padding:10px;background:rgba(255,250,241,.08);box-shadow:0 16px 34px rgba(0,0,0,.25)}
