/* Fonts vendored locally (Latin + Latin-ext subsets) so the Lambda@Edge CSP
   `style-src 'self'` and `font-src 'self' data:` hold without any external
   call-outs to fonts.googleapis.com / fonts.gstatic.com. */
@import url('../fonts/_fonts.css');
:root{--font-display:'Poppins',-apple-system,sans-serif;--font-body:'Inter',-apple-system,sans-serif;--font-mono:ui-monospace,SFMono-Regular,Menlo,monospace;--ivory:#ece7d9;--accent:#009ea8;--secondary:#f88020;--line:rgba(232,228,214,0.12)}
*{box-sizing:border-box}
html,body{margin:0;padding:0;background:#040607}
body{font-family:var(--font-body);color:rgba(232,228,214,0.62);-webkit-font-smoothing:antialiased}
a{color:rgba(232,228,214,0.45);text-decoration:none}
a:hover{color:var(--ivory)}
:focus-visible{outline:2px solid #ece7d9;outline-offset:3px}
.eme-page{position:relative;min-height:100vh;overflow:hidden;background:#040607}
.eme-scan{position:absolute;top:0;left:0;right:0;height:100vh;opacity:.02;background-image:repeating-linear-gradient(45deg,#fff 0,#fff 1px,transparent 1px,transparent 6px);pointer-events:none}
.eme-vignette{position:absolute;inset:0;background:radial-gradient(70% 60% at 50% 50%,rgba(4,6,7,.6) 0%,rgba(4,6,7,.28) 60%,rgba(4,6,7,.75) 100%);pointer-events:none}
.eme-center{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;padding:clamp(16px,4vw,72px)}
.eme-frame{width:100%;max-width:1320px;min-height:74vh;position:relative;display:flex;flex-direction:column;background:rgba(4,6,7,.6);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border:1px solid var(--line);box-shadow:0 40px 120px rgba(0,0,0,.8)}
.eme-bracket{position:absolute;width:14px;height:14px;z-index:2}
.eme-bracket--tl{top:-1px;left:-1px;border-top:1px solid rgba(232,228,214,.45);border-left:1px solid rgba(232,228,214,.45)}
.eme-bracket--tr{top:-1px;right:-1px;border-top:1px solid rgba(232,228,214,.45);border-right:1px solid rgba(232,228,214,.45)}
.eme-bracket--bl{bottom:-1px;left:-1px;border-bottom:1px solid rgba(232,228,214,.45);border-left:1px solid rgba(232,228,214,.45)}
.eme-bracket--br{bottom:-1px;right:-1px;border-bottom:1px solid rgba(232,228,214,.45);border-right:1px solid rgba(232,228,214,.45)}
.eme-left{width:100%;border-bottom:1px solid var(--line);padding:clamp(28px,4vw,60px);display:flex;flex-direction:column;justify-content:space-between;gap:48px}
.eme-right{width:100%;padding:clamp(28px,4vw,60px);display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;perspective:1200px}
@media(min-width:1000px){.eme-frame{flex-direction:row}.eme-left{width:40%;border-bottom:none;border-right:1px solid var(--line)}.eme-right{width:60%}}
.eme-logo{height:30px;display:block;margin-bottom:44px}
.eme-eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:28px}
.eme-eyebrow i{width:18px;height:1px;background:var(--secondary);display:block}
.eme-eyebrow span{font-size:10.5px;text-transform:uppercase;letter-spacing:.25em;color:var(--secondary);font-style:normal}
.eme-pill{display:inline-flex;align-items:center;gap:8px;margin-bottom:22px;padding:6px 12px;border-radius:999px;border:1px solid rgba(0,158,168,.33);background:rgba(0,158,168,.08)}
.eme-pill i{width:6px;height:6px;border-radius:999px;background:var(--accent);box-shadow:0 0 10px var(--accent);display:block}
.eme-pill span{font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:var(--ivory)}
.eme-h1{margin:0 0 12px;font-family:var(--font-display);font-weight:500;font-size:clamp(30px,3.6vw,52px);line-height:1.06;letter-spacing:-.03em;text-transform:uppercase;color:var(--ivory)}
.eme-context{margin:0 0 26px;font-family:var(--font-display);font-weight:500;font-size:clamp(17px,1.6vw,22px);letter-spacing:-.01em;text-transform:uppercase;color:rgba(232,228,214,.38)}
.eme-intro{margin:0;max-width:360px;font-size:14px;line-height:1.65;color:rgba(232,228,214,.5)}
.eme-notice-title{margin:0 0 16px;padding-bottom:14px;border-bottom:1px solid var(--line);font-size:10.5px;text-transform:uppercase;letter-spacing:.25em;color:rgba(232,228,214,.4)}
.eme-notice{margin:0;max-width:380px;font-size:13px;line-height:1.7;color:rgba(232,228,214,.45)}
.eme-crosshair{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:48px;height:48px;opacity:.18;pointer-events:none}
.eme-crosshair i:first-child{position:absolute;top:0;bottom:0;left:50%;width:1px;background:var(--ivory)}
.eme-crosshair i:last-child{position:absolute;left:0;right:0;top:50%;height:1px;background:var(--ivory)}
.eme-stack{position:relative;width:100%;max-width:400px;transform-style:preserve-3d;transform:rotateX(8deg) rotateY(-6deg) translateZ(0);transition:transform .7s cubic-bezier(.25,1,.5,1)}
.eme-ghost{position:absolute;inset:0;border-radius:14px;border:1px solid var(--line)}
.eme-ghost--far{background:rgba(232,228,214,.03);transform:translateY(26px) translateZ(-30px) scale(.96);opacity:.5}
.eme-ghost--near{background:rgba(232,228,214,.04);transform:translateY(13px) translateZ(-15px) scale(.98);opacity:.75}
.eme-card{position:relative;border-radius:14px;padding:32px;background:rgba(9,12,13,.86);border:1px solid var(--line);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);box-shadow:0 30px 80px rgba(0,0,0,.75),0 0 60px rgba(0,158,168,.07);overflow:hidden}
.eme-card::before{content:'';position:absolute;top:0;left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(0,158,168,.4),transparent)}
.eme-h2{margin:0;font-family:var(--font-display);font-size:20px;font-weight:500;color:var(--ivory);letter-spacing:-.01em}
.eme-sub{font-size:12.5px;color:rgba(232,228,214,.45);margin:6px 0 24px}
.eme-alert{padding:8px 10px;font-size:13px;border-radius:6px;background:rgba(214,73,88,.12);border:1px solid #d64958;color:#ff8b96;line-height:1.45;margin-bottom:16px}
.eme-alert[hidden]{display:none}
.eme-fields{display:flex;flex-direction:column;gap:18px}
.eme-field{display:flex;flex-direction:column;gap:8px}
.eme-field-label{display:flex;align-items:center;justify-content:space-between;gap:12px;font-size:10px;text-transform:uppercase;letter-spacing:.2em;color:rgba(232,228,214,.4);transition:color .15s ease}
.eme-field:focus-within .eme-field-label{color:var(--accent)}
.eme-field input{height:42px;width:100%;padding:0 14px;background:#050708;color:var(--ivory);font-size:13.5px;font-family:var(--font-body);border-radius:6px;border:1px solid rgba(232,228,214,.14);outline:none;transition:border-color .15s ease,box-shadow .15s ease}
.eme-field input:focus{border-color:var(--accent);box-shadow:0 0 0 3px rgba(0,158,168,.13)}
.eme-reveal{background:none;border:none;padding:0;cursor:pointer;font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:rgba(232,228,214,.4);font-family:var(--font-body)}
.eme-remember{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:22px 0 26px}
.eme-remember span{font-size:12.5px;color:rgba(232,228,214,.55)}
.eme-switch{position:relative;width:34px;height:16px;border-radius:999px;cursor:pointer;background:rgba(232,228,214,.1);border:1px solid var(--line);transition:background .25s ease,border-color .25s ease}
.eme-switch i{position:absolute;top:1px;left:2px;width:12px;height:12px;border-radius:999px;background:rgba(232,228,214,.5);transition:left .25s ease,background .25s ease}
.eme-switch[aria-checked="true"]{background:rgba(0,158,168,.27);border-color:var(--accent)}
.eme-switch[aria-checked="true"] i{left:18px;background:var(--accent)}
.eme-arc{position:relative;display:flex;align-items:center;justify-content:center;width:100%;height:58px;border:none;border-radius:12px;padding:0;background:transparent;cursor:pointer}
.eme-arc:disabled{cursor:progress;opacity:.7}
.eme-arc__canvas{position:absolute;inset:0;width:100%;height:100%;display:block;border-radius:12px}
.eme-arc__label{position:relative;z-index:1;pointer-events:none;font-family:var(--font-body);font-size:12px;font-weight:500;letter-spacing:.3em;text-indent:.3em;text-transform:uppercase;color:var(--ivory)}
.eme-links{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;font-size:11.5px}
.eme-links a{padding:12px 0}
.eme-foot{margin-top:22px;padding-top:18px;border-top:1px solid var(--line);font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:rgba(232,228,214,.45);text-align:center}
.eme-done{text-align:center;padding:20px 0 8px}
.eme-done h2{margin:0;font-family:var(--font-display);font-size:21px;font-weight:600;color:var(--ivory)}
.eme-done p{font-size:13px;color:rgba(232,228,214,.5);margin:8px 0 0}
.eme-back{margin-top:22px;background:none;border:1px solid var(--line);color:rgba(232,228,214,.6);border-radius:8px;padding:10px 18px;font-size:12px;font-family:var(--font-body);cursor:pointer}
[hidden]{display:none!important}
@media(prefers-reduced-motion:reduce){.eme-stack{transition:none}}
