/* raven-foresight.css — page-specific styles */

.body{color:var(--muted);font-size:1.05rem;max-width:58ch;margin-top:20px}
.note{margin-top:22px;font-family:'IBM Plex Mono',monospace;font-size:.7rem;color:var(--muted);letter-spacing:.06em}
.card h3{font-size:1rem;font-weight:600;margin-bottom:8px}
.card p{color:var(--muted);font-size:.92rem}
.card .num{font-family:'IBM Plex Mono',monospace;font-size:.66rem;color:var(--steel);letter-spacing:.2em;margin-bottom:12px}
.card .impl{margin-top:14px;padding-top:12px;border-top:1px dashed var(--line);font-size:.85rem;color:var(--text)}
.card .impl::before{content:'RAVEN FORESIGHT → ';font-family:'IBM Plex Mono',monospace;font-size:.58rem;letter-spacing:.14em;color:var(--violet)}
.deck-frame{position:relative;border:1px solid rgba(120,200,255,.22);border-radius:16px;overflow:hidden;background:#05080F;box-shadow:0 34px 100px rgba(0,0,0,.65),0 0 90px rgba(94,139,255,.14);margin-top:34px}
.deck-frame img{width:100%;height:auto}
.hs{position:absolute;width:20px;height:20px;margin:-10px 0 0 -10px;z-index:5;cursor:pointer;background:none;border:none;padding:0}
.hs::before{content:'';position:absolute;inset:5px;border-radius:50%;background:#7BC8FF;box-shadow:0 0 12px #7BC8FF}
.hs::after{content:'';position:absolute;inset:0;border-radius:50%;border:1.5px solid rgba(123,200,255,.7);animation:hspulse 2.2s var(--ease) infinite}
@keyframes hspulse{0%{transform:scale(.6);opacity:1}80%,100%{transform:scale(1.9);opacity:0}}
.hs-label{position:absolute;bottom:26px;left:50%;transform:translateX(-50%);width:230px;background:rgba(8,18,38,.92);border:1px solid rgba(120,200,255,.35);border-radius:10px;padding:11px 13px;font-family:'IBM Plex Mono',monospace;font-size:.66rem;line-height:1.5;color:#CFE6FF;text-align:left;opacity:0;visibility:hidden;transition:opacity .25s,visibility .25s;backdrop-filter:blur(8px);pointer-events:none;z-index:6}
.hs-label b{display:block;color:#7BC8FF;letter-spacing:.14em;text-transform:uppercase;font-size:.58rem;margin-bottom:5px;font-weight:500}
.hs:hover .hs-label,.hs:focus-visible .hs-label,.hs.open .hs-label{opacity:1;visibility:visible}
.hs.edge-r .hs-label{left:auto;right:-8px;transform:none}
.hs.low .hs-label{bottom:auto;top:26px}
.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:20px;counter-reset:step;margin-top:34px}
.step{border-left:1px solid var(--line);padding:6px 0 6px 24px}
.step::before{counter-increment:step;content:'0' counter(step);font-family:'Krona One',sans-serif;font-size:1.4rem;background:var(--grad);-webkit-background-clip:text;background-clip:text;color:transparent;display:block;margin-bottom:12px}
.step h3{font-size:1rem;font-weight:600;margin-bottom:8px}
.step p{color:var(--muted);font-size:.91rem}
.deck-frame{overflow:visible!important}
.deck-frame img{border-radius:16px}
.deck-frame::after{border-radius:16px}
.hs-label{z-index:40}
.hs.open{z-index:41}
.hs.low .hs-label{bottom:auto!important;top:28px!important}
.hs.edge-r .hs-label{left:auto!important;right:0!important}
.hs.edge-l .hs-label{left:0!important;right:auto!important}
@media (max-width:920px){
    .nav-links{display:none;position:absolute;top:74px;left:0;right:0;flex-direction:column;background:var(--raven);border-bottom:1px solid var(--line);padding:18px 32px;gap:16px}
    .nav-links.open{display:flex}
    .menu-toggle{display:block}.nav .btn{display:none}
    .grid2,.cards2,.cards3{grid-template-columns:1fr}
    .cards5{grid-template-columns:1fr 1fr}
    .hero{padding:130px 0 50px}
    section{padding:50px 0}
    
  }
#eaModal{position:fixed;inset:0;z-index:400;background:rgba(4,8,16,.9);backdrop-filter:blur(10px);
    display:flex;align-items:flex-start;justify-content:center;padding:40px 20px;overflow-y:auto;
    opacity:0;visibility:hidden;transition:opacity .3s var(--ease),visibility .3s}
#eaModal.open{opacity:1;visibility:visible}
.ea-card{position:relative;width:100%;max-width:660px;border:1px solid rgba(123,200,255,.35);border-radius:18px;
    background:linear-gradient(180deg,rgba(16,26,44,.98),rgba(9,15,26,.98));padding:34px 34px 30px;
    box-shadow:0 40px 110px rgba(0,0,0,.7);margin:auto}
.ea-close{position:absolute;top:16px;right:18px;background:rgba(13,20,31,.9);border:1px solid rgba(123,200,255,.45);
    color:#EAF2FF;border-radius:99px;padding:7px 15px;font-family:'IBM Plex Mono',monospace;font-size:.72rem;
    letter-spacing:.12em;cursor:pointer;transition:all .2s}
.ea-close:hover{background:rgba(94,139,255,.3)}
.ea-eyebrow{font-family:'IBM Plex Mono',monospace;font-size:.84rem;font-weight:500;letter-spacing:.2em;
    text-transform:uppercase;color:#AFC7F2;margin-bottom:10px}
.ea-card h2{font-family:'Krona One',sans-serif;font-size:1.5rem;line-height:1.2;margin-bottom:10px}
.ea-intro{color:#C3D3EA;font-size:1rem;line-height:1.55;margin-bottom:24px}
.ea-field{margin-bottom:18px}
.ea-field label{display:block;font-family:'IBM Plex Mono',monospace;font-size:.8rem;font-weight:500;
    letter-spacing:.1em;text-transform:uppercase;color:#B9CBE6;margin-bottom:7px}
.ea-field label .req{color:#FFB35C}
.ea-field input[type=text],.ea-field input[type=email],.ea-field input[type=tel],.ea-field select,.ea-field textarea{
    width:100%;background:rgba(7,11,18,.85);border:1px solid rgba(140,165,210,.32);border-radius:10px;
    padding:12px 14px;color:#EDF3FF;font-family:'Archivo',sans-serif;font-size:1rem;transition:border-color .2s,box-shadow .2s}
.ea-field input:focus,.ea-field select:focus,.ea-field textarea:focus{outline:none;border-color:#7BC8FF;
    box-shadow:0 0 0 3px rgba(94,139,255,.18)}
.ea-field input::placeholder,.ea-field textarea::placeholder{color:#7089A8}
.ea-field select option{background:#0D141F;color:#EDF3FF}
.ea-row{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.ea-hint{font-size:.86rem;color:#9DB0CC;margin-top:6px}
.ea-vendors{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:9px;margin-top:4px;
    max-height:230px;overflow-y:auto;padding:14px;border:1px solid rgba(140,165,210,.28);border-radius:12px;
    background:rgba(7,11,18,.6)}
.ea-check{display:flex;align-items:center;gap:9px;font-size:.95rem;color:#D6E3F5;cursor:pointer;
    padding:6px 8px;border-radius:8px;transition:background .15s}
.ea-check:hover{background:rgba(94,139,255,.14)}
.ea-check input{width:17px;height:17px;accent-color:#5E8BFF;cursor:pointer;flex:0 0 17px}
.ea-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:26px;align-items:center}
.ea-err{color:#FFB35C;font-size:.9rem;margin-top:12px;display:none}
.ea-err.show{display:block}
.ea-note{font-family:'IBM Plex Mono',monospace;font-size:.78rem;color:#9DB0CC;letter-spacing:.06em;margin-top:16px;line-height:1.6}
@media (max-width:620px){.ea-row{grid-template-columns:1fr}.ea-card{padding:28px 20px 24px}}
