/* ---- page-specific styles (the header and footer use your styles.css) ---- */
  .sv-hero{position:relative;overflow:hidden;padding:140px 0 56px;text-align:center}
  .sv-hero::before,.sv-hero::after{content:"";position:absolute;border-radius:50%;filter:blur(70px);z-index:0;pointer-events:none}
  .sv-hero::before{width:380px;height:380px;background:#19B8FF;opacity:.25;top:-120px;left:-100px}
  .sv-hero::after{width:420px;height:420px;background:#1E6FE0;opacity:.18;bottom:-180px;right:-120px}
  .sv-hero .container{position:relative;z-index:1}
  .sv-kick{display:inline-block;padding:7px 16px;border-radius:999px;background:#EAF3FF;border:1px solid #CFE5FF;color:#0B2F6B;font:600 13px Inter,sans-serif;letter-spacing:1px}
  .sv-hero h1{font:700 clamp(34px,5.2vw,58px)/1.1 'Space Grotesk',Inter,sans-serif;color:#0B2F6B;margin:18px auto 16px;max-width:900px}
  .sv-grad{background:linear-gradient(90deg,#0B2F6B,#1E6FE0 50%,#19B8FF);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
  .sv-hero p{max-width:720px;margin:0 auto;color:#55657F;font-size:18px;line-height:1.65}
  .sv-row{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:26px}
  .sv-points{display:flex;gap:12px;justify-content:center;flex-wrap:wrap;margin-top:30px}
  .sv-points span{padding:9px 16px;border-radius:12px;background:#fff;border:1px solid #DCE9FB;color:#0B2F6B;font:600 14px Inter,sans-serif;box-shadow:0 6px 18px rgba(11,47,107,.06)}

  .sv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px;margin-top:28px}
  .sv-card{background:#fff;border:1px solid #DCE9FB;border-radius:18px;padding:26px;box-shadow:0 10px 30px rgba(11,47,107,.06);
    transition:transform .3s ease,box-shadow .3s ease,border-color .3s ease}
  .sv-card:hover{transform:translateY(-6px);box-shadow:0 18px 40px rgba(11,47,107,.14);border-color:#B9D4F7}
  .sv-card i{font-style:normal;font-size:32px;display:inline-grid;place-items:center;width:58px;height:58px;border-radius:16px;background:#EAF3FF}
  .sv-card h3{margin:14px 0 6px;font:700 20px 'Space Grotesk',Inter,sans-serif;color:#0B2F6B}
  .sv-card p{margin:0;color:#55657F;font-size:14.5px;line-height:1.65}
  .sv-card ul{margin:12px 0 0;padding-left:18px;color:#55657F;font-size:14.5px;line-height:1.7}

  .sv-filters{display:flex;gap:10px;flex-wrap:wrap;justify-content:center;margin:26px 0 8px}
  .sv-chip{padding:10px 20px;border-radius:999px;border:1px solid #CFE5FF;background:#fff;color:#0B2F6B;font:600 14px Inter,sans-serif;cursor:pointer;transition:background .25s,color .25s,border-color .25s}
  .sv-chip:hover,.sv-chip.active{background:#0B2F6B;color:#fff;border-color:#0B2F6B}
  .sv-sol{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:18px;margin-top:22px}
  .sv-item{display:flex;flex-direction:column;gap:10px;background:#fff;border:1px solid #DCE9FB;border-radius:16px;padding:20px;
    opacity:0;transform:translateY(28px);transition:opacity .6s ease,transform .6s ease,box-shadow .3s ease}
  .sv-item.in{opacity:1;transform:none}.sv-item.in:hover{transform:translateY(-5px);box-shadow:0 16px 34px rgba(11,47,107,.13)}
  .sv-item .top{display:flex;align-items:center;gap:12px}
  .sv-item .ic{flex:none;width:46px;height:46px;border-radius:13px;display:grid;place-items:center;font-size:24px;background:linear-gradient(135deg,#EAF3FF,#D6E8FF)}
  .sv-item h4{margin:0;font:700 17px/1.25 'Space Grotesk',Inter,sans-serif;color:#0B2F6B}
  .sv-item p{margin:0;color:#55657F;font-size:14px;line-height:1.6;flex:1}
  .sv-tags{display:flex;gap:6px;flex-wrap:wrap}.sv-tags span{padding:3px 9px;border-radius:8px;background:#EAF3FF;color:#0B2F6B;font:600 11.5px Inter,sans-serif}
  .sv-foot{display:flex;justify-content:space-between;align-items:center;gap:8px}
  .sv-st{font:700 11.5px Inter,sans-serif;padding:4px 10px;border-radius:999px}
  .sv-st.built{background:#D9F2E3;color:#146c3a}.sv-st.dev{background:#FFF3C4;color:#7a5b00}.sv-st.can{background:#E3EEFF;color:#1B4FA8}
  .sv-link{font:700 13.5px Inter,sans-serif;color:#1E6FE0;text-decoration:none}.sv-link:hover{text-decoration:underline}
  .sv-note{max-width:760px;margin:22px auto 0;text-align:center;color:#55657F;font-size:14px}

  .sv-two{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:22px;margin-top:28px}
  .sv-box{background:#fff;border:1px solid #DCE9FB;border-radius:20px;padding:28px}
  .sv-box h3{margin:0 0 4px;font:700 22px 'Space Grotesk',Inter,sans-serif;color:#0B2F6B}
  .sv-box .sub{margin:0 0 14px;color:#55657F;font-size:14.5px}
  .sv-box li{list-style:none;position:relative;padding:7px 0 7px 30px;color:#33425B;font-size:15px;line-height:1.55}
  .sv-box li::before{content:"✓";position:absolute;left:0;top:7px;width:21px;height:21px;border-radius:50%;background:#D9F2E3;color:#146c3a;font:700 12px/21px Inter,sans-serif;text-align:center}
  .sv-box ul{margin:0;padding:0}

  .sv-steps{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:16px;margin-top:28px;counter-reset:s}
  .sv-step{position:relative;background:#fff;border:1px solid #DCE9FB;border-radius:16px;padding:22px 18px 18px;counter-increment:s}
  .sv-step::before{content:counter(s);display:grid;place-items:center;width:38px;height:38px;border-radius:50%;margin-bottom:12px;color:#fff;font:700 17px 'Space Grotesk',sans-serif;background:linear-gradient(135deg,#0B2F6B,#1E6FE0)}
  .sv-step h4{margin:0 0 4px;font:700 16px 'Space Grotesk',Inter,sans-serif;color:#0B2F6B}.sv-step p{margin:0;color:#55657F;font-size:14px;line-height:1.55}

  .sv-stack{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:24px}
  .sv-stack span{padding:10px 18px;border-radius:12px;background:#fff;border:1px solid #CFE5FF;color:#0B2F6B;font:600 14px Inter,sans-serif}

  .sv-faq{max-width:820px;margin:28px auto 0}
  .sv-faq details{background:#fff;border:1px solid #DCE9FB;border-radius:14px;margin-bottom:12px;overflow:hidden}
  .sv-faq summary{cursor:pointer;list-style:none;padding:16px 50px 16px 20px;font:600 16px Inter,sans-serif;color:#0B2F6B;position:relative}
  .sv-faq summary::-webkit-details-marker{display:none}
  .sv-faq summary::after{content:"+";position:absolute;right:20px;top:50%;transform:translateY(-50%);font:600 24px/1 Inter,sans-serif;color:#1E6FE0;transition:transform .3s ease}
  .sv-faq details[open] summary::after{transform:translateY(-50%) rotate(45deg)}
  .sv-faq details p{margin:0;padding:0 20px 18px;color:#55657F;font-size:15px;line-height:1.7}

  .sv-form{max-width:860px;margin:28px auto 0;background:#fff;border:1px solid #DCE9FB;border-radius:22px;padding:30px;box-shadow:0 14px 40px rgba(11,47,107,.09)}
  .sv-fg{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:14px}
  .sv-form label{display:flex;flex-direction:column;gap:6px;font:600 13.5px Inter,sans-serif;color:#0B2F6B}
  .sv-form input,.sv-form select,.sv-form textarea{padding:12px 14px;border:1px solid #BFD3F2;border-radius:10px;font:15px Inter,sans-serif;color:#1B2638;background:#fff}
  .sv-form input:focus,.sv-form select:focus,.sv-form textarea:focus{outline:3px solid rgba(30,111,224,.25);border-color:#1E6FE0}
  .sv-form .full{grid-column:1/-1}.sv-form textarea{min-height:130px;resize:vertical}
  .sv-form .acts{display:flex;gap:12px;flex-wrap:wrap;margin-top:6px}
  .sv-msg{margin:14px 0 0;font-size:14.5px;color:#146c3a;min-height:20px}.sv-msg.err{color:#b00020}

  .sv-cta{margin:0 auto;max-width:900px;text-align:center;background:linear-gradient(135deg,#0B2F6B,#1E6FE0);color:#fff;border-radius:24px;padding:44px 24px}
  .sv-cta h2{margin:0 0 10px;font:700 clamp(24px,3.4vw,36px)/1.2 'Space Grotesk',Inter,sans-serif;color:#fff}
  .sv-cta p{margin:0 auto 22px;max-width:560px;color:#DCE9FB}

  .sv-rv{opacity:0;transform:translateY(30px);transition:opacity .7s ease,transform .7s ease}.sv-rv.in{opacity:1;transform:none}
  @media (prefers-reduced-motion:reduce){.sv-item,.sv-rv{opacity:1;transform:none;transition:none}.sv-card,.sv-chip{transition:none}}

  /* ---- extra styles for the training / internship / college pages ---- */
  .tp-cat{margin:46px 0 0}.tp-cat:first-child{margin-top:20px}
  .tp-cat h3{font:700 24px 'Space Grotesk',Inter,sans-serif;color:#0B2F6B;margin:0 0 4px}
  .tp-cat .tp-sub{margin:0;color:#55657F;font-size:15px}
  .tp-meta{display:flex;gap:8px;flex-wrap:wrap;margin:6px 0 2px}
  .tp-meta span{padding:4px 10px;border-radius:999px;background:#EAF3FF;color:#0B2F6B;font:600 12px Inter,sans-serif}
  .tp-card details{margin-top:12px;border-top:1px solid #E5EEFB;padding-top:10px}
  .tp-card summary{cursor:pointer;font:700 13.5px Inter,sans-serif;color:#1E6FE0}
  .tp-card details ul{margin:10px 0 0;padding-left:18px;color:#55657F;font-size:14px;line-height:1.65}
  .tp-card h5{margin:12px 0 0;font:700 13px Inter,sans-serif;color:#0B2F6B;text-transform:uppercase;letter-spacing:.5px}
  .tp-act{display:flex;gap:10px;flex-wrap:wrap;margin-top:14px}
  .tp-act a{font:700 13.5px Inter,sans-serif;color:#1E6FE0;text-decoration:none}.tp-act a:hover{text-decoration:underline}
  .tp-badge{flex:none;min-width:52px;height:52px;padding:0 8px;border-radius:14px;display:grid;place-items:center;color:#fff;font:700 13px 'Space Grotesk',Inter,sans-serif}
  .tp-list{list-style:none;margin:12px 0 0;padding:0;color:#33425B;font-size:14px;line-height:1.9}
  .tp-colleges{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin-top:26px}
  .tp-colleges span{padding:9px 16px;border-radius:999px;background:#fff;border:1px solid #D6E3F5;color:#0B2F6B;font:600 13.5px Inter,sans-serif}
  .tp-cta{text-align:center;max-width:760px;margin:0 auto}
  .tp-cta p{color:#55657F;font-size:17px;line-height:1.65}
