:root{font-family:Inter,Segoe UI,Arial,sans-serif;color:#f1f3ee;background:#101113;color-scheme:dark}*{box-sizing:border-box}body{margin:0}.access-layout{min-height:100svh;display:grid;grid-template-columns:54% 46%}.story{padding:54px 6vw;display:flex;flex-direction:column;position:relative;border-right:1px solid #25292a;background:radial-gradient(ellipse at 15% 105%,#35451b70,transparent 60%),linear-gradient(#ffffff03 1px,transparent 1px),linear-gradient(90deg,#ffffff03 1px,transparent 1px),#0c0e0e;background-size:auto,64px 64px,64px 64px,auto}.brand{color:#f3f4ef;text-decoration:none;font-size:29px;font-weight:750;letter-spacing:-1px;display:flex;gap:3px;align-items:center}.brand span{color:#cfef7b}.story-copy{margin:auto 0;padding:70px 0;max-width:560px}.accent-line{height:2px;width:44px;background:#cfef7b;margin-bottom:25px}.eyebrow,.welcome{font-size:10px;letter-spacing:2px;color:#b8cc94;font-weight:650}h1{font-size:clamp(38px,4.1vw,66px);line-height:1.12;letter-spacing:-2px;margin:22px 0}h1 span{color:#cfef7b}.story-copy>p:not(.eyebrow){font-size:15px;color:#9da69d;line-height:1.8;max-width:410px}.features{display:flex;gap:18px;margin-top:34px;flex-wrap:wrap;font-size:11px;color:#acb69c}.features span::before{content:'·';color:#cfef7b;margin-right:7px}.story small{color:#798374;font-size:11px}.access{display:grid;place-items:center;padding:48px 40px;background:#111315}.access-card{width:100%;max-width:390px}h2{font-size:29px;letter-spacing:-.8px;margin:15px 0 10px}.access-card>p{font-size:13px;line-height:1.7;color:#949d98}form{margin-top:32px}label{display:block;margin:19px 0 8px;font-size:12px;color:#dfe5db}input{width:100%;height:47px;padding:12px 14px;background:#202426;border:1px solid #3b4142;border-radius:10px;font:inherit;font-size:14px;color:#f2f4ef}input:focus{outline:2px solid #cfef7b;outline-offset:2px}input::placeholder{color:#808a83}.password-wrap{position:relative}.password-wrap input{padding-right:78px}.password-wrap button{position:absolute;right:12px;top:0;height:47px;background:none;border:0;color:#b6c0ab;font-size:11px;cursor:pointer}.primary{display:flex;align-items:center;justify-content:space-between;width:100%;margin-top:20px;padding:14px 18px;border:0;border-radius:10px;background:#cfef7b;color:#172008;font-size:13px;font-weight:700;cursor:pointer}.primary:hover{background:#ddfa95}.primary:disabled{opacity:.5;cursor:wait}#access-message{font-size:12px;color:#f2c4ad;line-height:1.6}.access-card .access-note{margin-top:26px;text-align:center;font-size:11px;color:#7d897e}[hidden]{display:none!important}@media(max-width:800px){.access-layout{grid-template-columns:1fr}.story{padding:25px 7vw;border-right:0;border-bottom:1px solid #25292a}.story-copy{padding:30px 0 10px}.story-copy h1{font-size:38px}.story-copy>p:not(.eyebrow),.features,.story small,.accent-line{display:none}.eyebrow{font-size:9px}.access{padding:35px 7vw 55px}.access-card{max-width:480px}h2{font-size:26px}.welcome{display:none}}@media(prefers-reduced-motion:no-preference){.primary{transition:background .15s}}
.access-card{max-width:430px}.access-brand{margin-bottom:28px}#access-title{white-space:nowrap;font-size:clamp(20px,2.1vw,29px)}.access-switch{margin-top:24px;text-align:center;font-size:12px;color:#949d98}.access-switch a{color:#cfef7b;text-decoration:none}.access-switch a:hover{text-decoration:underline}@media(max-width:800px){#access-title{font-size:clamp(18px,5.3vw,29px)}}
.story.story-video{padding:0;overflow:hidden;background:#080a09;min-height:100svh;position:relative}.login-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;display:block}@media(max-width:800px){.story.story-video{min-height:0;height:42svh}.login-video{object-fit:cover}}

#lovable-badge {
  display: none !important;
}

.brand-logo{display:block;width:154px;height:auto;aspect-ratio:902/211;object-fit:contain;flex-shrink:0}
.login-video::-webkit-media-controls,.login-video::-webkit-media-controls-start-playback-button{display:none!important;-webkit-appearance:none}

/* Prevent iOS focus zoom without disabling user-controlled pinch zoom. */
@media(max-width:800px){.access-card input{font-size:16px}}
.forgot-link{display:block;width:max-content;margin:14px auto 0;font-size:12px;color:#cfef7b;text-decoration:none}.forgot-link:hover,.forgot-link:focus-visible{text-decoration:underline}.forgot-link[hidden]{display:none}[hidden]{display:none!important}
