/* =========================================================
   OZUS PEERS - LANDING PAGE
   White glossmorphism / responsive design
   ========================================================= */

:root{
  --navy:#101c45;
  --navy-2:#17265a;
  --purple:#6845ff;
  --violet:#8a3ffc;
  --pink:#ee4fa3;
  --orange:#ff8c42;
  --blue:#368dff;
  --cyan:#16c9d9;
  --green:#25c997;
  --border:#e6e9f5;
  --muted:#69728d;
  --surface:rgba(255,255,255,.78);
  --shadow:0 18px 55px rgba(35,45,100,.10);
}

*{box-sizing:border-box}

html{scroll-behavior:smooth}

body{
  margin:0;
  font-family:"Inter",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--navy);
  background:
    radial-gradient(circle at 5% 20%, rgba(103,69,255,.07), transparent 28%),
    radial-gradient(circle at 95% 55%, rgba(32,183,255,.07), transparent 28%),
    #fff;
  overflow-x:hidden;
}

a{text-decoration:none}

.site-header{
  background:rgba(255,255,255,.86);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
  border-bottom:1px solid rgba(225,229,242,.75);
  position:sticky;
  top:0;
  z-index:1000;
}

.brand-mark{
  width:40px;height:40px;border-radius:50%;
  display:inline-flex;align-items:center;justify-content:center;
  color:#fff;
  background:linear-gradient(135deg,#394cff,#7045ff 55%,#ff6a87);
  box-shadow:0 7px 20px rgba(87,70,255,.25);
  position:relative;
  flex:0 0 auto;
}
.brand-mark:after{
  content:"";
  position:absolute;
  width:15px;height:15px;border:4px solid white;border-radius:50%;
}
.brand-mark i{font-size:7px;color:#fff;position:relative;z-index:2}

.brand-name{
  display:block;font-size:20px;line-height:20px;letter-spacing:-.5px;
}
.navbar-brand small,.footer-brand small{
  display:block;font-size:10px;color:#6d7690;margin-top:2px;
}
.nav-link{
  color:#111a3b!important;font-size:13px;font-weight:600;
  position:relative;padding:.5rem .2rem!important;
}
.nav-link.active,.nav-link:hover{color:#503cff!important}
.nav-link.active:after{
  content:"";position:absolute;left:0;right:0;bottom:-9px;height:2px;
  background:#5b40ff;border-radius:3px;
}

.btn{
  border-radius:11px;
  font-weight:600;
  transition:.25s ease;
}
.btn:hover{transform:translateY(-2px)}

.btn-login{
  border:1px solid #735fff;color:#503cff;background:#fff;
  padding:9px 18px;font-size:13px;
}
.btn-signup,.btn-primary-gradient{
  color:#fff!important;border:0;
  background:linear-gradient(110deg,#603cff,#e84fa8 68%,#ff9347);
  box-shadow:0 9px 22px rgba(113,69,255,.20);
}
.btn-signup{padding:10px 19px;font-size:13px}

.hero-section{padding:68px 0 50px}
.eyebrow{
  display:inline-flex;align-items:center;gap:8px;
  padding:7px 13px;border:1px solid #e3e5f3;border-radius:999px;
  color:#2531b6;background:#fff;font-size:12px;font-weight:600;
  box-shadow:0 8px 24px rgba(35,45,100,.05);
}
.eyebrow i{color:#f7a522}
h1{
  font-size:48px;line-height:1.13;letter-spacing:-2.2px;
  font-weight:800;margin:17px 0 20px;color:#101d43;
}
h1 span,.section-heading span{
  background:linear-gradient(90deg,#6a43ff,#e34da7,#ff814c);
  -webkit-background-clip:text;background-clip:text;color:transparent;
}
.hero-copy{
  max-width:510px;color:#505a76;font-size:14px;line-height:1.75;
}
.btn-primary-gradient,.btn-outline-primary{font-size:13px;padding:14px 19px}
.btn-primary-gradient i{margin-left:18px}
.btn-outline-primary{border:1px solid #604cff;color:#4938de}

.student-proof{display:flex;align-items:center;gap:14px}
.avatar-stack{display:flex}
.avatar-stack span{
  width:34px;height:34px;border-radius:50%;border:2px solid white;
  margin-left:-7px;display:flex;align-items:center;justify-content:center;
  background:linear-gradient(145deg,#ffc4a5,#7ca8ff);font-size:10px;font-weight:800;color:#fff;
}
.avatar-stack span:first-child{margin-left:0}
.student-proof strong{display:block;font-size:14px}
.student-proof small{display:block;color:#65708a;font-size:11px;line-height:1.45}

.dashboard-wrap{position:relative;padding-bottom:10px}
.glass-dashboard{
  border:1px solid rgba(196,207,235,.85);
  border-radius:18px;
  padding:24px;
  background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(247,250,255,.74));
  box-shadow:var(--shadow),inset 0 1px 0 rgba(255,255,255,.95);
  backdrop-filter:blur(18px);
}
.dashboard-heading h3{font-size:17px;font-weight:700;margin:0 0 5px}
.dashboard-heading p{font-size:11px;color:#65708a;margin:0 0 18px}
.glass-card{
  border:1px solid #e0e5f2;
  background:rgba(255,255,255,.73);
  border-radius:13px;padding:15px;
}
.glass-card h6{font-size:11px;font-weight:700;margin:0;color:#15224b}
.progress-card{text-align:center;height:100%}
.progress-ring{
  width:116px;height:116px;border-radius:50%;margin:12px auto 5px;
  background:conic-gradient(#7445ff 0 52%,#368cff 52% 72%,#e8eaf2 72% 100%);
  display:grid;place-items:center;
}
.progress-ring:before{
  content:"";width:92px;height:92px;border-radius:50%;background:white;
  grid-area:1/1;
}
.ring-value{grid-area:1/1;z-index:1;font-weight:800;font-size:22px}
.progress-card small{font-size:9px;color:#6b748a}
.stats-card{height:100%;display:flex;flex-direction:column;justify-content:space-around}
.stats-card div{display:grid;grid-template-columns:25px 1fr auto;align-items:center;gap:7px}
.stats-card i{font-size:14px;color:#5545f6}
.stats-card span{font-size:10px;color:#667089}
.stats-card strong{font-size:12px}
.subject-card{padding:15px}
.subject-card h6{font-size:11px;margin:0}
.subject-card>a,.subject-card a{font-size:9px;color:#513dff}
.subject-box{padding:10px;border:1px solid #e5e8f1;border-radius:10px}
.subject-box span{display:block;font-size:9px;color:#667089;margin-bottom:5px}
.subject-box strong{font-size:15px}
.bar{height:5px;background:#eceef4;border-radius:10px;margin-top:8px;overflow:hidden}
.bar i{display:block;height:100%;border-radius:10px;background:linear-gradient(90deg,#6542ff,#d74cb2)}
.mini-features{display:flex;justify-content:center;gap:9px;flex-wrap:wrap;margin-top:15px}
.mini-features span{
  display:inline-flex;align-items:center;gap:7px;border:1px solid #e7e9f3;
  padding:7px 11px;border-radius:999px;background:rgba(255,255,255,.7);
  font-size:9px;color:#313b5d;box-shadow:0 5px 15px rgba(40,50,100,.05);
}
.mini-features i{color:#604cff;font-size:13px}

.section{padding:35px 0}
.section-shell{
  border:1px solid #e5e8f1;border-radius:18px;padding:18px;
  background:rgba(255,255,255,.72);box-shadow:0 14px 40px rgba(35,45,100,.04);
}
.section-heading{text-align:center;padding:3px 0 20px}
.section-heading h2{font-size:23px;font-weight:750;margin:0;letter-spacing:-.6px}
.heading-line{height:3px;width:49px;margin:9px auto 0;border-radius:10px;background:linear-gradient(90deg,#6344ff,#e952a8)}

.feature-card{
  min-height:193px;text-align:center;padding:21px 13px 15px;
  border:1px solid #e5e8f1;border-radius:14px;
  background:linear-gradient(145deg,rgba(255,255,255,.92),rgba(249,250,255,.72));
  transition:.25s ease;
}
.feature-card:hover{transform:translateY(-5px);box-shadow:0 16px 30px rgba(46,57,110,.09)}
.feature-icon{
  width:43px;height:43px;border-radius:11px;margin:0 auto 13px;
  display:grid;place-items:center;color:#fff;font-size:21px;
  box-shadow:0 9px 18px rgba(70,70,120,.16);
}
.purple{background:linear-gradient(145deg,#6178ff,#9a48f5)}
.violet{background:linear-gradient(145deg,#6c44ff,#b24de7)}
.orange{background:linear-gradient(145deg,#ff9d32,#ff742d)}
.green{background:linear-gradient(145deg,#24ca8e,#18bba4)}
.pink{background:linear-gradient(145deg,#ef4d9c,#ed4d68)}
.cyan{background:linear-gradient(145deg,#2acbd6,#22b5ed)}
.feature-card h5{font-size:11px;font-weight:750;margin-bottom:9px}
.feature-card p{font-size:9px;line-height:1.55;color:#68728b;margin:0}

.promo-card{
  overflow:hidden;border:1px solid #e1e6f1;border-radius:19px;
  background:
    radial-gradient(circle at 65% 50%,rgba(101,70,255,.10),transparent 35%),
    linear-gradient(120deg,#fff,#fafdff);
  padding:24px 34px 10px;
  box-shadow:0 18px 50px rgba(35,45,100,.07);
}
.promo-card h2{font-size:25px;line-height:1.2;font-weight:800;letter-spacing:-.7px}
.promo-card p{font-size:12px;color:#59647d;line-height:1.65;max-width:400px}
.metrics{display:flex;gap:10px;flex-wrap:wrap;margin-top:20px}
.metrics>div{
  min-width:78px;border:1px solid #e1e5ef;border-radius:9px;padding:9px 7px;text-align:center;background:#fff;
}
.metrics strong{display:block;font-size:14px;color:#4e40df}
.metrics small{font-size:8px;color:#6e768a}
.store-buttons{display:flex;gap:10px;flex-wrap:wrap}
.store-btn{
  min-width:135px;height:40px;padding:4px 10px;border-radius:6px;
  background:#080b12;color:white;display:flex;align-items:center;gap:8px;
}
.store-btn i{font-size:20px}.store-btn span{font-size:7px;line-height:1.05}.store-btn b{font-size:12px}
.student-image{width:100%;max-width:570px;display:block;margin:0 auto;mix-blend-mode:multiply}

.final-cta{
  border-radius:17px;padding:17px 28px;color:white;
  display:flex;align-items:center;gap:18px;
  background:linear-gradient(100deg,#2f8dfb,#7542ed 48%,#ff8a4b);
  box-shadow:0 16px 35px rgba(90,69,235,.18);
}
.cta-trophy{font-size:32px}
.final-cta h3{font-size:19px;margin:0 0 3px;font-weight:750}
.final-cta p{font-size:11px;margin:0;opacity:.9}
.btn-white{background:#fff;color:#6440e9;padding:11px 22px;font-size:12px}
.btn-cta-outline{border:1px solid rgba(255,255,255,.75);color:#fff;padding:11px 22px;font-size:12px}

.footer{padding:35px 0 18px;background:#fff;border-top:1px solid #e9ebf2}
.footer-brand{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.footer-brand strong{display:block;font-size:15px}
.footer p{font-size:10px;line-height:1.65;color:#69728a;max-width:250px}
.footer h6{font-size:11px;margin:4px 0 14px}
.footer>a,.footer .col-lg-2 a{display:block;color:#657089;font-size:10px;margin-bottom:9px}
.footer a:hover{color:#513dff}
.socials{display:flex;gap:8px}
.socials a{
  width:29px;height:29px;border:1px solid #dfe3ec;border-radius:50%;
  display:grid;place-items:center;color:#1d294b;font-size:12px;
}
.newsletter{display:flex;border:1px solid #e1e5ee;border-radius:9px;overflow:hidden;height:40px}
.newsletter input{min-width:0;flex:1;border:0;outline:0;padding:0 12px;font-size:10px}
.newsletter button{width:42px;border:0;color:#fff;background:linear-gradient(135deg,#6b45ff,#c04cd4)}
.copyright{border-top:1px solid #e9ebf2;margin-top:25px;padding-top:16px;text-align:center;font-size:9px;color:#6c7487}

/* Responsive */
@media (max-width:991.98px){
  .navbar-collapse{padding:15px 0}
  .nav-link.active:after{display:none}
  .hero-section{padding-top:45px}
  h1{font-size:43px}
  .dashboard-wrap{margin-top:10px}
}
@media (max-width:767.98px){
  .container{padding-left:18px;padding-right:18px}
  .hero-section{padding:34px 0}
  h1{font-size:38px;letter-spacing:-1.5px}
  .hero-copy{font-size:13px}
  .btn-primary-gradient,.btn-outline-primary{width:100%;text-align:center}
  .student-proof{margin-top:30px!important}
  .glass-dashboard{padding:15px}
  .progress-card{min-height:190px}
  .section{padding:22px 0}
  .section-shell{padding:12px}
  .section-heading h2{font-size:20px}
  .feature-card{min-height:180px;padding:18px 10px}
  .promo-card{padding:25px 18px 0}
  .promo-card h2{font-size:23px}
  .metrics>div{flex:1;min-width:70px}
  .store-btn{min-width:128px}
  .final-cta{padding:22px 18px;flex-wrap:wrap}
  .cta-trophy{display:none}
  .final-cta .me-auto{flex:1 0 100%}
  .final-cta .btn{flex:1}
  .footer{padding-top:28px}
}
@media (max-width:420px){
  h1{font-size:33px}
  .dashboard-heading h3{font-size:15px}
  .stats-card span{font-size:9px}
  .feature-card{min-height:190px}
  .feature-card h5{font-size:10px}
  .feature-card p{font-size:8.5px}
}
