@import url("https://fonts.googleapis.com/css2?family=Plus+Jakarta+Sans:wght@400;500;600;700;800&display=swap");

:root{
  --ink:#101828;
  --muted:#667085;
  --blue:#3157e5;
  --blueDark:#132b75;
  --navy:#071630;
  --sky:#dce7ff;
  --ash:#e5e7e9;
  --cream:#f7f5ef;
  --white:#ffffff;
  --line:#dfe3e8;
}

*{box-sizing:border-box;letter-spacing:0}
html{scroll-behavior:smooth}
body{margin:0;background:#fff;color:var(--ink);font-family:"Plus Jakarta Sans",sans-serif}
a{color:inherit;text-decoration:none}
button,input,textarea,select{font:inherit;letter-spacing:0}
button{cursor:pointer}
img{display:block;max-width:100%}
svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.container{width:min(1180px,calc(100% - 48px));margin-inline:auto}

.siteHeader{height:88px;background:rgba(255,255,255,.88);backdrop-filter:blur(18px);border-bottom:1px solid rgba(16,24,40,.07);position:sticky;top:0;z-index:50}
.navigation{height:100%;display:flex;align-items:center;justify-content:space-between}
.logo{display:flex;align-items:center}
.logo img{width:158px;height:54px;object-fit:contain;object-position:left center}
.navItems{display:flex;align-items:center;gap:21px;font-size:12px;font-weight:600;color:#344054}
.navItems a{transition:color .2s}
.navItems a:hover{color:var(--blue)}
.navButton,.button{display:inline-flex;align-items:center;justify-content:center;gap:10px;border-radius:999px;font-size:14px;font-weight:700}
.navButton{padding:11px 16px;color:#fff;background:var(--blue);border:1px solid var(--blue);white-space:nowrap;box-shadow:0 10px 25px rgba(49,87,229,.18)}
.navButton svg{width:16px}
.menuToggle{display:none;width:46px;height:46px;padding:0;border:1px solid #d8def0;border-radius:14px;background:#fff;align-items:center;justify-content:center;flex-direction:column;gap:5px;color:var(--ink)}
.menuToggle span{display:block;width:20px;height:2px;border-radius:2px;background:currentColor;transition:transform .25s,opacity .2s}
.menuOpen .menuToggle span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.menuOpen .menuToggle span:nth-child(2){opacity:0}
.menuOpen .menuToggle span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}
.mobileMenu{position:absolute;top:100%;left:0;right:0;background:rgba(255,255,255,.98);backdrop-filter:blur(18px);border-top:1px solid rgba(16,24,40,.06);box-shadow:0 22px 45px rgba(16,24,40,.12)}
.mobileMenu[hidden]{display:none}
.mobileMenuLinks{padding-top:17px;padding-bottom:24px;display:flex;flex-direction:column}
.mobileMenuLinks>a{padding:14px 4px;border-bottom:1px solid #edf0f5;color:#344054;font-size:14px;font-weight:650}
.mobileMenuLinks .mobileLogin{margin-top:18px;padding:14px 18px;border:0;border-radius:999px;background:var(--blue);color:#fff;display:flex;align-items:center;justify-content:center;gap:10px}
.mobileLogin svg{width:16px}

.hero{min-height:760px;position:relative;overflow:hidden;isolation:isolate;background:#eef3f6 url("/assets/youmind-clean-background.png") center center/cover no-repeat;background-attachment:fixed}
.heroGrid{min-height:760px;display:grid;grid-template-columns:1.12fr .88fr;gap:64px;align-items:center}
.heroContent{position:relative;z-index:2;padding:70px 0}
.overline{margin:0 0 26px;display:flex;align-items:center;gap:11px;color:var(--blue);font-size:12px;font-weight:800;text-transform:uppercase}
.overline>span{width:30px;height:2px;background:currentColor}
.hero h1{margin:0;max-width:760px;font-size:clamp(50px,5.5vw,76px);line-height:1.03;font-weight:700}
.hero h1 em,.profileContent h2 em,.offerContent h2 em,.requestContent h2 em{font-style:normal;color:var(--blue)}
.heroText{max-width:650px;margin:30px 0 0;color:#4f596a;font-size:17px;line-height:1.8}
.heroTextSecondary{margin-top:12px;font-size:14px}
.heroHeadline{max-width:650px;margin:24px 0 0;font-size:21px;line-height:1.45;font-weight:600;color:#26364e}
.heroButtons{display:flex;align-items:center;gap:25px;margin-top:40px}
.button{border:0;padding:16px 23px}
.buttonPrimary{background:var(--blue);color:#fff;box-shadow:0 12px 28px rgba(49,87,229,.22)}
.buttonLink{display:inline-flex;align-items:center;gap:9px;font-size:14px;font-weight:700}
.buttonLink svg{width:17px}
.heroDetails{display:grid;grid-template-columns:1fr 1fr;gap:28px;max-width:590px;margin-top:58px;padding-top:24px;border-top:1px solid rgba(16,24,40,.15)}
.heroDetails div{display:flex;flex-direction:column;gap:7px}
.heroDetails strong{font-size:13px}
.heroDetails span{color:#77808f;font-size:11px;line-height:1.4}
.heroVisual{height:650px;position:relative;display:flex;align-items:flex-end;justify-content:center}
.portraitFrame{position:relative;width:88%;height:590px;overflow:hidden;border-radius:280px 280px 34px 34px;background:#bfc4c8;box-shadow:0 32px 65px rgba(16,24,40,.16);transition:transform .7s cubic-bezier(.2,.8,.2,1),box-shadow .7s}
.heroVisual:hover .portraitFrame{transform:translateY(-8px) rotate(.4deg);box-shadow:0 42px 80px rgba(16,24,40,.2)}
.portraitFrame::before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 65%,rgba(7,22,48,.18));z-index:1}
.portraitFrame img{width:100%;height:100%;object-fit:cover;object-position:center top}
.portraitCard{position:absolute;z-index:2;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border:1px solid rgba(255,255,255,.8);box-shadow:0 20px 45px rgba(16,24,40,.13);border-radius:17px;padding:16px 19px}
.cardTop{top:92px;right:-10px;display:grid;place-items:center;padding:10px}
.universityLogo{width:96px;height:72px;object-fit:contain;filter:drop-shadow(0 8px 12px rgba(7,22,48,.18))}
.portraitCard div,.cardBottom{display:flex;flex-direction:column;gap:4px}
.portraitCard small{font-size:10px;color:#777f8d}
.portraitCard strong{font-size:13px}
.cardBottom{left:-10px;bottom:62px;max-width:285px;line-height:1.45}
.cardBottom strong{font-size:10px;font-weight:600;color:#737b88}
.heroGlow{position:absolute;border-radius:50%;filter:blur(4px);opacity:.5;animation:floatGlow 9s ease-in-out infinite}
.heroGlowOne{width:260px;height:260px;background:#fff;top:80px;left:40%}
.heroGlowTwo{width:190px;height:190px;background:#c8d5ff;right:5%;bottom:-50px;animation-delay:2s}

.welcomeSection{padding:95px 0 65px;background:#fff}
.welcomeGrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:100px;align-items:start}
.welcomeGrid h2,.sectionIntro h2,.teachingCopy h2,.portalIntro h2,.collaborationBox h2,.accessCard h2{margin:0;font-size:clamp(42px,4.5vw,60px);line-height:1.12}
.welcomeGrid h2 em{font-style:normal;color:var(--blue)}
.welcomeGrid p{margin:0 0 17px;color:var(--muted);font-size:14px;line-height:1.85}
.welcomeGrid .button{margin-top:15px}
.services{position:relative;z-index:4;padding-bottom:125px}
.sectionIntro{max-width:760px;margin-bottom:52px}
.sectionIntro h2{max-width:650px}
.servicesGrid{display:grid;grid-template-columns:repeat(3,1fr);border-radius:24px;overflow:hidden;box-shadow:0 26px 60px rgba(7,22,48,.13)}
.expertiseGrid{grid-template-columns:repeat(2,1fr)}
.serviceCard{position:relative;min-height:330px;padding:34px;color:#fff;background:var(--blue)}
.serviceCard:nth-child(2){background:#183fae}
.serviceCard:nth-child(3){background:var(--navy)}
.serviceTop{display:flex;justify-content:space-between;align-items:center}
.serviceIcon{font-size:30px}
.serviceTop small{font-size:11px;color:rgba(255,255,255,.55)}
.serviceCard h2,.serviceCard h3{margin:52px 0 15px;font-size:23px}
.serviceCard p{margin:0;color:rgba(255,255,255,.72);font-size:13px;line-height:1.75}
.serviceCard>a{position:absolute;right:30px;bottom:28px;width:42px;height:42px;border:1px solid rgba(255,255,255,.35);border-radius:50%;display:grid;place-items:center}

.profileSection{padding:85px 0 125px}
.profileGrid{display:grid;grid-template-columns:.86fr 1.14fr;gap:105px;align-items:center}
.profileImage{height:650px;position:relative}
.profileImage::before{content:"";position:absolute;inset:40px 45px 0 0;border-radius:30px;background:var(--sky)}
.profileImage img{position:relative;width:92%;height:610px;object-fit:cover;object-position:center top;border-radius:30px;box-shadow:0 30px 55px rgba(16,24,40,.12)}
.profileTag{position:absolute;right:0;bottom:55px;padding:18px 20px;border-radius:15px;background:#fff;box-shadow:0 18px 40px rgba(16,24,40,.14);display:flex;align-items:center;gap:10px;font-size:12px}
.profileTag>span{color:var(--blue)}
.profileContent h2,.offerContent h2,.sectionHeading h2,.testimonialHeading h2,.requestContent h2{margin:0;font-size:clamp(42px,4.5vw,60px);line-height:1.12}
.profileContent>p:not(.overline){margin:20px 0 0;color:var(--muted);font-size:14px;line-height:1.8}
.profileButtons{display:flex;gap:13px;margin-top:34px}
.buttonOutline{color:var(--blue);background:#fff;border:1px solid #cad3ef}

.credentialsSection{padding:0 0 125px}
.credentialGrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:24px}
.credentialCard{padding:36px;border-radius:24px;background:#f5f7fb;border:1px solid #e9edf5}
.credentialCard>span,.teachingTopics>span,.accessCard>span,.topicLabel{display:block;margin-bottom:18px;color:var(--blue);font-size:11px;font-weight:800;text-transform:uppercase}
.credentialCard h3{margin:0 0 14px;font-size:24px}
.credentialCard p{margin:0;color:var(--muted);font-size:13px;line-height:1.8}
.credentialCard ul{list-style:none;padding:0;margin:0;display:grid;gap:14px}
.credentialCard li{color:var(--muted);font-size:13px;line-height:1.6}
.credentialCard li strong{display:inline-block;width:48px;color:var(--blue)}
.philosophyCard{grid-column:1/-1;background:var(--sky)}
.philosophyCard p{max-width:900px}

.offerSection{padding:120px 0;background:var(--navy);color:#fff;position:relative;overflow:hidden;background-attachment:fixed}
.offerSection::after{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:#173f99;filter:blur(100px);opacity:.35;right:-170px;top:-180px}
.offerGrid{position:relative;z-index:1;display:grid;grid-template-columns:.82fr 1.18fr;gap:100px;align-items:center}
.overlineLight{color:#9fb4ff}
.offerContent h2 em{color:#9db4ff}
.offerContent>p:not(.overline){margin:25px 0;color:#b5bfd0;font-size:14px;line-height:1.85}
.buttonLight{margin-top:18px;background:#fff;color:var(--navy)}
.researchFocus{position:relative;z-index:1;display:grid;grid-template-columns:.85fr 1.15fr;gap:70px;align-items:center}
.knowledgeCanvas{position:relative;min-height:390px;display:grid;place-items:center;perspective:800px}
.knowledgeCanvas::before{content:"";position:absolute;width:78%;height:78%;border-radius:50%;background:radial-gradient(circle,rgba(68,104,230,.28),transparent 66%);filter:blur(12px);animation:meshPulse 7s ease-in-out infinite}
.knowledgeOrbit{position:absolute;border:1px solid rgba(170,191,255,.32);border-radius:50%;animation:slowSpin 20s linear infinite}
.orbitOne{width:320px;height:320px}
.orbitTwo{width:230px;height:230px;animation-direction:reverse;animation-duration:14s}
.knowledgeNode{position:absolute;width:14px;height:14px;border-radius:50%;background:#9fb4ff;box-shadow:0 0 0 8px rgba(159,180,255,.09),0 0 30px rgba(159,180,255,.65);animation:nodeFloat 5s ease-in-out infinite}
.nodeOne{top:14%;left:29%}.nodeTwo{top:29%;right:17%;animation-delay:-1s}.nodeThree{bottom:18%;left:22%;animation-delay:-2s}.nodeFour{bottom:11%;right:31%;animation-delay:-3s}
.knowledgeCore{position:relative;z-index:2;width:145px;height:145px;border-radius:34px;display:grid;place-items:center;background:rgba(255,255,255,.94);border:1px solid rgba(255,255,255,.7);box-shadow:0 28px 70px rgba(0,0,0,.32);animation:coreFloat 6s ease-in-out infinite}
.knowledgeCore img{width:105px;height:92px;object-fit:contain;filter:drop-shadow(0 12px 15px rgba(7,22,48,.2))}
.expertiseList{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:18px}
.expertiseItem{display:grid;grid-template-columns:42px 1fr;gap:18px;padding:25px;border:1px solid rgba(255,255,255,.16);border-radius:20px;background:rgba(255,255,255,.045);backdrop-filter:blur(8px)}
.expertiseItem .serviceIcon{color:#9fb4ff}
.expertiseItem h3{margin:0 0 9px;font-size:17px}
.expertiseItem p{margin:0;color:#aeb9ca;font-size:12px;line-height:1.7}
.researchAction{grid-column:1/-1;justify-self:start;margin-top:4px}
.benefitList{border-top:1px solid rgba(255,255,255,.18)}
.benefitItem{display:grid;grid-template-columns:45px 1fr 35px;gap:22px;align-items:center;padding:24px 0;border-bottom:1px solid rgba(255,255,255,.18)}
.benefitItem>span{font-size:10px;color:#8393ae}
.benefitItem p{margin:0;font-size:15px;line-height:1.55}
.benefitItem b{width:29px;height:29px;display:grid;place-items:center;border-radius:50%;background:#fff;color:var(--blue);font-size:12px}

.blogSection{padding:125px 0}
.sectionHeading{display:flex;justify-content:space-between;align-items:end;margin-bottom:52px}
.sectionCopy{max-width:760px;margin:18px 0 0;color:var(--muted);font-size:14px;line-height:1.8}
.publicationSection{padding-top:125px;padding-bottom:125px;background:var(--cream);position:relative;overflow:hidden}
.publicationInner{position:relative;z-index:1}
.publicationList{border-top:1px solid var(--line)}
.publicationItem{display:grid;grid-template-columns:60px 1fr 70px;gap:22px;align-items:center;padding:24px 0;border-bottom:1px solid var(--line);transition:padding .3s,background .3s}
.publicationItem:hover{padding-left:18px;padding-right:18px;background:rgba(255,255,255,.72)}
.publicationItem>span{font-size:10px;color:#98a2b3}
.publicationItem h3{margin:0;font-size:17px;line-height:1.5}
.publicationMeta p{margin:7px 0 0;color:var(--muted);font-size:12px;line-height:1.55}
.publicationItem strong{text-align:right;color:var(--blue);font-size:13px}
.sectionLink{margin-top:30px;color:var(--blue)}
.blogGrid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
.blogCard{border:1px solid var(--line);border-radius:24px;overflow:hidden;background:#fff;transition:transform .25s,box-shadow .25s}
.blogCard:hover{transform:translateY(-6px);box-shadow:0 26px 55px rgba(16,24,40,.11)}
.blogImage{height:330px;position:relative;overflow:hidden}
.blogImage img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.blogCard:hover .blogImage img{transform:scale(1.04)}
.blogImage>span{position:absolute;right:22px;bottom:22px;width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--blue)}
.blogBody{padding:29px 31px 32px}
.blogBody h3{margin:0;font-size:22px}
.blogBody p{margin:14px 0 22px;color:var(--muted);font-size:14px;line-height:1.7}
.topicGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.topicCard{min-height:210px;padding:28px;border:1px solid var(--line);border-radius:22px;background:#fff;display:flex;flex-direction:column;transition:transform .35s,box-shadow .35s,border-color .35s}
.topicCard:hover{transform:translateY(-9px);border-color:#ccd6ff;box-shadow:0 24px 55px rgba(16,24,40,.11)}
.topicCard small{color:var(--blue);font-size:10px}
.topicCard h3{margin:32px 0 20px;font-size:18px;line-height:1.45}
.topicCard>span{margin-top:auto;color:#98a2b3;font-size:10px;text-transform:uppercase}

.teachingSection{padding:125px 0;background:var(--cream)}
.teachingGrid{display:grid;grid-template-columns:.85fr 1.15fr;gap:90px}
.teachingCopy>p:not(.overline){color:var(--muted);font-size:14px;line-height:1.85}
.teachingCopy h3{margin:30px 0 8px;font-size:17px}
.teachingTopics{padding:36px;border-radius:24px;background:#fff;box-shadow:0 22px 50px rgba(16,24,40,.06)}
.teachingTopics>div{display:grid;grid-template-columns:45px 1fr;padding:13px 0;border-bottom:1px solid var(--line)}
.teachingTopics small{color:#98a2b3;font-size:10px}
.teachingTopics p{margin:0;font-size:13px;font-weight:600}
.teachingTopics .categoryNote{display:block;margin-top:20px;color:var(--muted);line-height:1.6}

.portalSection{padding:120px 0;background:var(--blue);color:#fff}
.portalGrid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px;align-items:center}
.portalIntro>p:not(.overline){color:#d3dcff;font-size:14px;line-height:1.8}
.buttonPortal{margin-top:18px;color:#fff;background:transparent;border:1px solid rgba(255,255,255,.45)}
.capabilityGrid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px;border-top:1px solid rgba(255,255,255,.2)}
.capabilityGrid>div{display:grid;grid-template-columns:34px 1fr 24px;gap:10px;align-items:center;padding:17px 0;border-bottom:1px solid rgba(255,255,255,.2)}
.capabilityGrid span{font-size:9px;color:#aebfff}
.capabilityGrid p{margin:0;font-size:12px;line-height:1.45}
.capabilityGrid b{width:22px;height:22px;border-radius:50%;background:#fff;color:var(--blue);display:grid;place-items:center;font-size:9px}

.collaborationSection{padding:70px 0 125px}
.collaborationBox{padding:34px 34px 34px 60px;border-radius:30px;background:var(--sky);display:grid;grid-template-columns:1.1fr .9fr;gap:54px;align-items:center;overflow:hidden}
.collaborationBox h2{max-width:760px}
.collaborationBox p{max-width:820px;color:var(--muted);font-size:14px;line-height:1.8}
.collaborationContent>.button{margin-top:18px}
.collaborationVisual{position:relative;min-height:365px;border-radius:22px;overflow:hidden}
.collaborationVisual::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(7,22,48,.88) 100%)}
.collaborationVisual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;transition:transform .7s}
.collaborationBox:hover .collaborationVisual img{transform:scale(1.04)}
.collaborationVisualLabel{position:absolute;z-index:1;left:28px;right:28px;bottom:25px;color:#fff}
.collaborationVisualLabel span{display:block;margin-bottom:8px;color:#c8d4ff;font-size:9px;font-weight:800;text-transform:uppercase}
.collaborationVisualLabel strong{display:block;max-width:330px;font-size:18px;line-height:1.4}

.accessSection{padding:0 0 125px}
.accessGrid{display:grid;grid-template-columns:1.15fr .85fr;gap:24px}
.accessCard{padding:52px 48px;border-radius:28px;background:#f5f7fb;display:flex;flex-direction:column;align-items:flex-start;transition:transform .35s,box-shadow .35s}
.accessCard:hover{transform:translateY(-7px);box-shadow:0 28px 65px rgba(16,24,40,.12)}
.accessCard>span{margin-bottom:28px}
.accessCard h2{font-size:40px;margin-bottom:22px}
.accessCard p{margin:0;color:var(--muted);font-size:14px;line-height:1.8}
.accessCard>.button{margin-top:32px}
.accessCard .accessNote{font-size:11px}
.accessCardDark{background:var(--navy);color:#fff}
.accessCardDark p{color:#aeb9ca}
.accessCardDark>span{color:#9fb4ff}

.testimonialSection{padding:120px 0;background:var(--blue);color:#fff}
.testimonialHeading{text-align:center;max-width:730px;margin:0 auto 55px}
.testimonialHeading .overline{justify-content:center}
.testimonialGrid{display:grid;grid-template-columns:1fr 1fr;gap:25px;max-width:960px;margin:auto}
.testimonialCard{padding:35px;border-radius:22px;background:#fff;color:var(--ink);box-shadow:0 24px 45px rgba(7,22,48,.12)}
.quoteMark{font-size:54px;line-height:.8;color:var(--blue);font-weight:800}
.testimonialCard>p{min-height:90px;margin:18px 0 28px;font-size:16px;line-height:1.7}
.student{display:flex;align-items:center;gap:14px;padding-top:20px;border-top:1px solid var(--line)}
.student img{width:54px;height:54px;border-radius:50%;object-fit:cover}
.student>div{display:flex;flex-direction:column;gap:5px}
.student strong{font-size:13px}
.student span{font-size:11px;color:var(--muted)}

.requestSection{padding:125px 0;background:var(--cream)}
.requestGrid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:center}
.requestGridVertical{grid-template-columns:1fr;gap:34px;align-items:start}
.requestGridVertical .requestContent{max-width:850px}
.requestGridVertical .requestForm{width:100%}
.requestContent>p:not(.overline){margin-top:25px;color:var(--muted);line-height:1.8}
.requestForm{padding:27px;border-radius:0;background:#fff;box-shadow:none}
.formRow{display:grid;grid-template-columns:1fr 1fr;gap:16px}
.requestForm label{display:flex;flex-direction:column;margin-bottom:12px}
.requestForm label>span{font-size:11px;font-weight:700;margin-bottom:8px;color:#5c6573}
.requestForm input,.requestForm textarea,.requestForm select{width:100%;border:1px solid var(--line);border-radius:12px;padding:11px 13px;outline:none;background:#fbfcfd;transition:border .2s,box-shadow .2s}
.requestForm input:focus,.requestForm textarea:focus,.requestForm select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(49,87,229,.1)}
.requestForm textarea{resize:vertical}
.formSuccess{margin:15px 0 0;color:var(--blue);font-size:12px;font-weight:700}
.studentNotice{padding:18px;border-left:3px solid var(--blue);background:#fff;font-size:12px!important}

.footer{padding:76px 0 26px;background:#06142b;color:#fff}
.footerTop{display:grid;grid-template-columns:1.25fr .65fr .8fr 1.25fr;gap:64px}
.footerTopRefined{align-items:start}
.logoLight img{filter:brightness(0) invert(1);opacity:.96}
.footerBrand>p{margin:24px 0 0;color:#8f9aad;font-size:12px}
.footerBrand .footerAddress{margin-top:16px;color:#c2cad6;line-height:1.8}
.footerColumn{display:flex;flex-direction:column;align-items:flex-start;gap:11px}
.footerColumn h3{margin:0 0 12px;font-size:13px;color:#fff}
.footerColumn p,.footerColumn a{margin:0;color:#9ba6b8;font-size:11px;line-height:1.75}
.footerColumn a{transition:color .2s,transform .2s}
.footerColumn a:hover{color:#fff;transform:translateX(3px)}
.footerContact p{max-width:280px}
.footerAction{margin-top:10px!important;display:inline-flex;align-items:center;gap:8px;color:#fff!important;font-weight:700}
.footerAction svg{width:15px}
.subscribe form{display:flex;width:100%;margin-bottom:17px}
.subscribe input{min-width:0;flex:1;padding:12px;border:0;border-radius:9px 0 0 9px}
.subscribe button{border:0;border-radius:0 9px 9px 0;background:var(--blue);color:#fff;padding:0 13px;font-size:11px;font-weight:700}
.footerBottom{margin-top:55px;padding-top:22px;border-top:1px solid #25334a;color:#718096;font-size:10px;text-align:center;line-height:1.6}
.footerBottomRefined{display:flex;justify-content:space-between;gap:30px;text-align:left}
.nerdclipCredit{display:inline-flex;align-items:center;gap:9px;color:#9ba6b8;text-decoration:none;cursor:pointer;transition:color .2s}.nerdclipCredit span{white-space:nowrap;text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.nerdclipCredit img{width:92px;height:24px;object-fit:contain}.nerdclipCredit:hover{color:#fff}.nerdclipCredit:focus-visible{outline:2px solid #fff;outline-offset:5px;border-radius:4px}
.innerHero{padding:110px 0;background:linear-gradient(120deg,#fff 0%,#f5f6f7 52%,#d7d9db 100%);background-size:180% 180%;animation:heroBackground 12s ease infinite}
.innerHeroContent{max-width:900px}
.innerHero h1{margin:0;font-size:clamp(52px,6vw,78px);line-height:1.05}
.innerHero h1 em{font-style:normal;color:var(--blue)}
.innerHero p{max-width:760px;margin:24px 0 0;color:var(--muted);font-size:16px;line-height:1.8}
.innerProfile{padding-top:110px}
.backLink{margin-top:34px}
.compactFooter{padding-top:25px}
.compactFooterBrand{display:flex;justify-content:center;padding-top:20px}
.compactFooter .footerBottom{margin-top:0}
.srOnly{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}

.innerPageHero{padding:78px 0 84px;background:linear-gradient(120deg,#071630 0%,#0d2550 58%,#173f99 100%);border-bottom:1px solid #213e78;position:relative;overflow:hidden;color:#fff}
.innerPageHero::after{content:"";position:absolute;width:340px;height:340px;border-radius:50%;right:-80px;top:-180px;background:rgba(103,139,255,.22);filter:blur(25px)}
.innerPageHeroContent{position:relative;z-index:1}
.innerPageBreadcrumb{display:flex;align-items:center;gap:10px;color:#bac7df;font-size:12px}
.innerPageBreadcrumb a{color:#b7c8ff;font-weight:700}
.innerPageBreadcrumb b{color:#7184aa}
.innerPageHero h1{margin:22px 0 0;font-size:clamp(52px,6.5vw,82px);line-height:1;font-weight:700}
.innerPageHero p{max-width:760px;margin:20px 0 0;color:#c6d1e4;font-size:15px;line-height:1.75}
.innerPageHeroAction{margin-top:28px}

.publicationPageHero{padding:78px 0 84px;background:linear-gradient(120deg,#f8faff,#e8edff);border-bottom:1px solid #dfe5f5}
.publicationPageHero h1{margin:22px 0 0;font-size:clamp(52px,6.5vw,82px);line-height:1;font-weight:700}
.publicationBreadcrumb{display:flex;align-items:center;gap:10px;color:var(--muted);font-size:12px}
.publicationBreadcrumb a{color:var(--blue);font-weight:700}
.publicationBreadcrumb b{color:#adb5c4}
.publicationPurpose{padding:100px 0}
.purposeInner{display:grid;grid-template-columns:1fr;gap:24px;align-items:start;position:relative;z-index:1;text-align:left}
.publicationPurpose .purposeInner>span,.archiveHeading>div>span{color:#9fb4ff;font-size:11px;font-weight:800;text-transform:uppercase}
.publicationPurpose h2,.archiveHeading h2{margin:0;font-size:clamp(38px,4.2vw,58px);line-height:1.1}
.publicationPurpose p{max-width:900px;margin:24px 0 0;color:#b5bfd0;font-size:14px;line-height:1.85}
.deepPurpose{background:var(--navy);color:#fff;position:relative;overflow:hidden}
.deepPurpose::after{content:"";position:absolute;width:500px;height:500px;border-radius:50%;background:#173f99;filter:blur(100px);opacity:.35;right:-170px;top:-180px}
.publicationArchive{padding:100px 0 125px;background:var(--cream)}
.archiveHeading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:42px}
.archiveHeading>div>span{display:block;margin-bottom:14px}
.publicationFilters{display:grid;grid-template-columns:1.5fr .65fr .8fr;gap:14px;margin-bottom:34px;padding:16px;border:1px solid #e2e5e9;border-radius:20px;background:#fff;box-shadow:0 15px 40px rgba(16,24,40,.05)}
.publicationSearch{position:relative;display:flex;align-items:center}
.publicationSearch svg{position:absolute;left:16px;width:18px;color:#8a94a3}
.publicationFilters input,.publicationFilters select{width:100%;height:52px;border:1px solid #dfe3e8;border-radius:13px;background:#fbfcfd;color:var(--ink);outline:none}
.publicationFilters input{padding:0 16px 0 48px}
.publicationFilters select{padding:0 15px}
.publicationFilters input:focus,.publicationFilters select:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(49,87,229,.09)}
.publicationCardList{display:grid;gap:16px}
.publicationArchiveCard{display:grid;grid-template-columns:58px 1fr auto;gap:28px;align-items:center;padding:32px;border:1px solid #e1e4e8;border-radius:22px;background:#fff;transition:transform .3s,box-shadow .3s,border-color .3s}
.publicationArchiveCard:hover{transform:translateY(-5px);border-color:#cbd4f7;box-shadow:0 24px 55px rgba(16,24,40,.08)}
.publicationNumber{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;background:var(--sky);color:var(--blue);font-size:11px;font-weight:800}
.publicationTags{display:flex;gap:8px;margin-bottom:13px}
.publicationTags span{padding:6px 9px;border-radius:999px;background:#f1f4fb;color:#5f6b7c;font-size:9px;font-weight:800;text-transform:uppercase}
.publicationTags span:last-child{background:#e7edff;color:var(--blue)}
.publicationArchiveContent h3{margin:0;font-size:19px;line-height:1.45}
.publicationArchiveContent h4{margin:10px 0 0;color:#344054;font-size:12px;font-weight:700;line-height:1.55}
.publicationArchiveContent p{max-width:820px;margin:13px 0 0;color:var(--muted);font-size:12px;line-height:1.7}
.publicationView{min-width:150px;padding:13px 16px;border:1px solid #cad3ef;border-radius:999px;color:var(--blue);display:flex;align-items:center;justify-content:center;gap:8px;font-size:11px;font-weight:800}
.publicationView svg{width:15px}
.publicationEmpty{padding:60px 25px;text-align:center;border:1px dashed #cfd5df;border-radius:22px;background:#fff}
.publicationEmpty h3{margin:0;font-size:22px}
.publicationEmpty p{margin:10px 0 0;color:var(--muted);font-size:13px}

.resourceHero .button,.coursesHero .button{margin-top:30px}
.resourceSection,.courseSection{padding:110px 0 125px}
.resourceIntro{display:grid;grid-template-columns:.9fr 1.1fr;gap:80px;align-items:start;margin-bottom:50px}
.resourceIntro h2{margin:0;font-size:clamp(38px,4vw,55px);line-height:1.12}
.resourceIntro p{margin:0;color:var(--muted);font-size:14px;line-height:1.85}
.resourceGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.resourceCard{min-height:270px;padding:28px;border:1px solid var(--line);border-radius:22px;background:#fff;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s,border-color .3s}
.resourceCard:hover{transform:translateY(-7px);border-color:#cad5ff;box-shadow:0 24px 55px rgba(16,24,40,.09)}
.resourceCard>span{color:var(--blue);font-size:10px}
.resourceCard h3{margin:34px 0 12px;font-size:20px}
.resourceCard p{margin:0;color:var(--muted);font-size:13px;line-height:1.7}
.resourceCard a{display:flex;align-items:center;gap:8px;margin-top:auto;color:var(--blue);font-size:12px;font-weight:700}
.resourceCard a svg{width:15px}
.resourcePageHero{padding:78px 0 84px;background:linear-gradient(120deg,#f8faff,#e8edff);border-bottom:1px solid #dfe5f5}
.resourcePageHero h1{margin:22px 0 0;font-size:clamp(52px,6.5vw,82px);line-height:1;font-weight:700}
.resourcePurpose{padding:100px 0}
.resourcePurpose .purposeInner>span,.resourceLibraryHeading>div>span{color:#9fb4ff;font-size:11px;font-weight:800;text-transform:uppercase}
.resourcePurpose h2,.resourceLibraryHeading h2{margin:0;font-size:clamp(38px,4.2vw,58px);line-height:1.1}
.resourcePurpose p{max-width:900px;margin:24px 0 0;color:#b5bfd0;font-size:14px;line-height:1.85}
.resourceLibrary{padding:100px 0 125px;background:var(--cream)}
.resourceLibraryHeading{display:flex;align-items:flex-end;justify-content:space-between;gap:40px;margin-bottom:38px}
.resourceLibraryHeading>div>span{display:block;margin-bottom:14px}
.resourceLibraryHeading p{max-width:680px;margin:18px 0 0;color:var(--muted);font-size:13px;line-height:1.7}
.resourceTabs{display:flex;gap:8px;margin-bottom:28px;padding:7px;border:1px solid #e1e5eb;border-radius:17px;background:#fff;width:max-content;max-width:100%}
.resourceTabs button{padding:12px 20px;border:0;border-radius:12px;background:transparent;color:#687386;font-size:12px;font-weight:750;transition:background .2s,color .2s,box-shadow .2s}
.resourceTabs button.active{background:var(--blue);color:#fff;box-shadow:0 9px 22px rgba(49,87,229,.2)}
.protectedResourceList{display:grid;gap:16px}
.protectedResourceCard{display:grid;grid-template-columns:52px 1fr 185px;gap:28px;align-items:center;padding:30px 32px;border:1px solid #e1e4e8;border-radius:22px;background:#fff;transition:transform .3s,box-shadow .3s,border-color .3s}
.protectedResourceCard:hover{transform:translateY(-5px);border-color:#cad4f6;box-shadow:0 24px 55px rgba(16,24,40,.08)}
.resourceIndex{width:46px;height:46px;border-radius:15px;display:grid;place-items:center;background:var(--sky);color:var(--blue);font-size:11px;font-weight:800}
.protectedResourceContent>span{color:var(--blue);font-size:9px;font-weight:800;text-transform:uppercase}
.protectedResourceContent h3{margin:10px 0 7px;font-size:20px;line-height:1.4}
.protectedResourceContent strong{display:block;color:#3e4858;font-size:11px}
.protectedResourceContent p{max-width:780px;margin:12px 0 0;color:var(--muted);font-size:12px;line-height:1.7}
.resourceAccess{display:flex;flex-direction:column;align-items:flex-end;gap:12px}
.resourceAccess>span{color:#8c95a3;font-size:9px;text-transform:uppercase}
.resourceAccess>a{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;padding:13px 15px;border-radius:999px;background:var(--blue);color:#fff;font-size:11px;font-weight:800}
.resourceAccess svg{width:15px}
.resourceNotice{margin-top:28px;padding:34px;border-radius:22px;background:var(--navy);color:#fff;display:flex;align-items:center;justify-content:space-between;gap:35px}
.resourceNotice h3{margin:0;font-size:22px}
.resourceNotice p{margin:10px 0 0;color:#aeb9ca;font-size:12px;line-height:1.65}
.resourceNotice>div:last-child{display:flex;gap:10px;flex-shrink:0}
.resourceNotice .buttonOutline{background:transparent;color:#fff;border-color:rgba(255,255,255,.35)}
.blogPurpose{padding:100px 0}
.blogPurposeInner{display:grid;grid-template-columns:1fr;gap:24px;align-items:start;position:relative;z-index:1;text-align:left}
.blogPurposeInner>span{color:#9fb4ff;font-size:11px;font-weight:800;text-transform:uppercase}
.blogArchiveHeading>span{color:var(--blue);font-size:11px;font-weight:800;text-transform:uppercase}
.blogPurpose h2,.blogArchiveHeading h2{margin:0;font-size:clamp(38px,4.2vw,58px);line-height:1.1}
.blogPurpose p{max-width:900px;margin:24px 0 0;color:#b5bfd0;font-size:14px;line-height:1.85}
.blogArchive{padding:100px 0 125px;background:var(--cream)}
.blogArchiveHeading{margin-bottom:42px}
.blogArchiveHeading>span{display:block;margin-bottom:14px}
.blogPostGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.blogPostCard{border:1px solid #e1e4e8;border-radius:22px;background:#fff;overflow:hidden;display:flex;flex-direction:column;transition:transform .3s,box-shadow .3s,border-color .3s}
.blogPostCard:hover{transform:translateY(-7px);border-color:#cad4f6;box-shadow:0 25px 58px rgba(16,24,40,.09)}
.blogPostImage{position:relative;height:230px;overflow:hidden;background:#eef2ff}
.blogPostImage img{width:100%;height:100%;object-fit:cover;transition:transform .45s}
.blogPostCard:hover .blogPostImage img{transform:scale(1.04)}
.blogImage2 img{object-fit:contain;padding:45px;background:linear-gradient(145deg,#f7f9ff,#dce7ff)}
.blogImage5 img{object-position:center 18%}
.blogPostImage>span{position:absolute;right:17px;top:17px;width:39px;height:39px;border-radius:50%;display:grid;place-items:center;background:#fff;color:var(--blue);font-size:10px;font-weight:800;box-shadow:0 10px 25px rgba(16,24,40,.12)}
.blogPostBody{padding:26px;display:flex;flex-direction:column;flex:1}
.blogPostMeta{color:#8a94a3;font-size:9px;text-transform:uppercase;line-height:1.5}
.blogPostMeta b{margin:0 4px}
.blogPostBody h3{margin:16px 0 10px;font-size:19px;line-height:1.45}
.blogPostBody>p{margin:0;color:var(--muted);font-size:12px;line-height:1.7}
.blogPostTags{display:flex;flex-wrap:wrap;gap:7px;margin:20px 0}
.blogPostTags span{padding:6px 9px;border-radius:999px;background:#f1f4fb;color:#667085;font-size:9px;font-weight:700}
.blogPostBody>a{display:flex;align-items:center;gap:8px;margin-top:auto;color:var(--blue);font-size:11px;font-weight:800}
.blogPostBody>a svg{width:15px}
.courseGrid{display:grid;grid-template-columns:repeat(2,1fr);gap:18px}
.courseCard{min-height:220px;padding:32px;border-radius:22px;background:#f5f7fb;border:1px solid #e8ecf3;display:flex;flex-direction:column;transition:transform .3s,background .3s,box-shadow .3s}
.courseCard:nth-child(3n){background:var(--sky)}
.courseCard:hover{transform:translateY(-7px);background:#fff;box-shadow:0 25px 60px rgba(16,24,40,.1)}
.courseCard small{color:var(--blue);font-size:10px}
.courseCard h2{margin:30px 0;font-size:24px}
.courseCard>span{display:flex;align-items:center;gap:8px;margin-top:auto;color:var(--blue);font-size:12px;font-weight:700}
.courseCard svg{width:15px}

.authPage{min-height:100vh;display:grid;grid-template-columns:1.12fr .88fr;background:#fff}
.authVisual{position:relative;min-height:100vh;padding:48px;display:flex;align-items:flex-end;color:#fff;background:linear-gradient(90deg,rgba(5,18,38,.8),rgba(5,18,38,.14)),url("/assets/student-campus.png") center/cover no-repeat}
.authBack{position:absolute;top:38px;left:46px;padding:10px 15px;border:1px solid rgba(255,255,255,.35);border-radius:999px;background:rgba(7,22,48,.2);backdrop-filter:blur(10px);font-size:12px}
.authVisualCopy{max-width:610px;padding:0 10px 30px}
.authVisualCopy>span,.authEyebrow{display:block;margin-bottom:20px;font-size:11px;font-weight:800;text-transform:uppercase}
.authVisualCopy>span{color:#c5d2ff}
.authVisualCopy h1{max-width:580px;margin:0;font-size:clamp(48px,5.2vw,78px);line-height:1.03}
.authVisualCopy p{max-width:560px;margin:24px 0 0;color:rgba(255,255,255,.78);font-size:15px;line-height:1.8}
.authPanel{padding:55px;display:grid;place-items:center;background:linear-gradient(145deg,#fff 0%,#f8faff 100%)}
.authFormWrap{width:min(100%,500px)}
.authLogo{margin-bottom:48px}
.authEyebrow{margin-bottom:12px;color:var(--blue)}
.authFormWrap h2{margin:0;font-size:42px}
.authFormWrap>p:not(.authSwitch):not(.authMessage){margin:12px 0 30px;color:var(--muted);font-size:13px;line-height:1.7}
.authForm{display:grid;gap:17px}
.authForm label:not(.remember){display:grid;gap:8px}
.authForm label>span{font-size:11px;font-weight:700;color:#4d5766}
.authForm input{width:100%;padding:14px 15px;border:1px solid #dce2ea;border-radius:13px;background:#fff;outline:none}
.authForm input:focus{border-color:var(--blue);box-shadow:0 0 0 4px rgba(49,87,229,.1)}
.authForm .button{width:100%;margin-top:5px}
.authOptions{display:flex;align-items:center;justify-content:space-between;gap:15px;font-size:11px}
.remember{display:flex;align-items:center;gap:8px;color:var(--muted)}
.remember input{width:auto}
.authOptions>a,.authSwitch a{color:var(--blue);font-weight:700}
.authSwitch{text-align:center;margin:25px 0 0!important;font-size:12px!important;color:var(--muted)}
.authMessage{margin:17px 0 0!important;padding:12px;border-radius:11px;background:var(--sky);color:var(--blue);font-size:11px!important;font-weight:700}
.authNameRow{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.authRegister .authPanel{padding-top:35px;padding-bottom:35px}
.authRegister .authLogo{margin-bottom:28px}

@keyframes heroBackground{0%{background-position:0% 50%}50%{background-position:100% 50%}100%{background-position:0% 50%}}
@keyframes floatGlow{0%,100%{transform:translateY(0)}50%{transform:translateY(22px)}}
@keyframes slowSpin{to{transform:rotate(360deg)}}
@keyframes meshPulse{0%,100%{transform:scale(.96);opacity:.5}50%{transform:scale(1.05);opacity:1}}
@keyframes nodeFloat{0%,100%{transform:translate3d(0,0,0)}50%{transform:translate3d(0,-18px,24px)}}
@keyframes coreFloat{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-12px) rotate(1deg)}}
@keyframes sectionReveal{from{opacity:0;transform:translateY(55px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}

@supports(animation-timeline:view()){
  .servicesGrid,.profileGrid,.credentialGrid,.researchFocus,.publicationInner,.topicGrid,.collaborationBox,.accessGrid,.requestGrid{
    animation:sectionReveal linear both;
    animation-timeline:view();
    animation-range:entry 5% cover 28%;
  }
}

@media(max-width:980px){
  .navItems{display:none}
  .navigation>.navButton{display:none}
  .menuToggle{display:flex;margin-left:auto}
  .heroGrid,.profileGrid,.offerGrid,.requestGrid,.welcomeGrid,.researchFocus,.teachingGrid,.portalGrid{grid-template-columns:1fr}
  .heroGrid{gap:0}
  .heroContent{padding-bottom:25px}
  .heroVisual{height:570px}
  .portraitFrame{height:530px;width:min(520px,88%)}
  .profileGrid,.offerGrid,.requestGrid{gap:55px}
  .welcomeGrid,.researchFocus,.teachingGrid,.portalGrid{gap:50px}
  .knowledgeCanvas{min-height:340px}
  .profileImage{height:600px}
  .profileImage img{height:560px}
  .footerTop{grid-template-columns:1fr 1fr}
  .topicGrid{grid-template-columns:1fr 1fr}
  .collaborationBox{grid-template-columns:1fr}
  .resourceGrid{grid-template-columns:1fr 1fr}
  .blogPostGrid{grid-template-columns:1fr 1fr}
  .protectedResourceCard{grid-template-columns:48px 1fr}
  .resourceAccess{grid-column:2;align-items:flex-start}
  .resourceAccess>a{width:auto}
  .resourceNotice{align-items:flex-start;flex-direction:column}
  .publicationFilters{grid-template-columns:1fr 1fr}
  .publicationSearch{grid-column:1/-1}
  .publicationArchiveCard{grid-template-columns:48px 1fr}
  .publicationView{grid-column:2;justify-self:start}
  .authPage{grid-template-columns:1fr}
  .authVisual{min-height:520px}
  .authPanel{padding:70px 30px}
}

@media(max-width:700px){
  .container{width:min(100% - 30px,1180px)}
  .siteHeader{height:76px}
  .logo img{width:138px;height:46px}
  .hero,.heroGrid{min-height:auto}
  .heroGrid{grid-template-columns:minmax(0,1fr)}
  .heroContent,.innerPageHeroContent{min-width:0;max-width:100%;overflow-wrap:anywhere}
  .heroContent{padding:75px 0 20px}
  .hero h1{max-width:100%;font-size:36px;overflow-wrap:anywhere}
  .heroHeadline{max-width:100%;font-size:16px;overflow-wrap:anywhere}
  .innerPageHero p{overflow-wrap:anywhere}
  .heroText{font-size:15px}
  .heroButtons{align-items:flex-start;flex-direction:column;gap:17px}
  .heroDetails{gap:15px}
  .heroVisual{height:470px}
  .portraitFrame{height:440px;width:95%}
  .cardTop{right:-2px;top:70px}
  .cardBottom{left:-2px;bottom:35px}
  .welcomeSection{padding:72px 0 38px}
  .services{padding:55px 0 82px}
  .servicesGrid,.expertiseGrid{grid-template-columns:1fr}
  .serviceCard{min-height:285px}
  .profileSection,.offerSection,.blogSection,.testimonialSection,.requestSection{padding:70px 0}
  .profileImage{height:500px}
  .profileImage img{height:465px;width:96%}
  .profileTag{right:0;bottom:28px}
  .profileContent h2,.offerContent h2,.sectionHeading h2,.testimonialHeading h2,.requestContent h2,.welcomeGrid h2,.sectionIntro h2,.teachingCopy h2,.portalIntro h2,.collaborationBox h2,.accessCard h2{font-size:38px}
  .profileButtons{flex-wrap:wrap}
  .offerGrid{gap:45px}
  .blogGrid,.testimonialGrid,.topicGrid,.credentialGrid,.expertiseList,.capabilityGrid,.accessGrid{grid-template-columns:1fr}
  .philosophyCard{grid-column:auto}
  .themeItem:not(:nth-child(3n+1)){padding-left:0;border-left:0}
  .collaborationBox,.accessCard{padding:34px 25px}
  .collaborationVisual{min-height:300px}
  .publicationItem{grid-template-columns:36px 1fr 48px;gap:10px}
  .publicationItem h3{font-size:14px}
  .blogImage{height:260px}
  .testimonialCard>p{min-height:auto}
  .formRow{grid-template-columns:1fr;gap:0}
  .requestForm{padding:24px 20px}
  .footerTop{grid-template-columns:1fr;gap:40px}
  .publicationPageHero{padding:58px 0 62px}
  .innerPageHero{padding:58px 0 62px}
  .publicationPurpose{padding:70px 0}
  .purposeInner{grid-template-columns:1fr;gap:20px}
  .archiveHeading{align-items:flex-start;flex-direction:column}
  .publicationFilters{grid-template-columns:1fr}
  .publicationSearch{grid-column:auto}
  .publicationArchive{padding:75px 0}
  .publicationArchiveCard{grid-template-columns:1fr;gap:17px;padding:24px}
  .publicationNumber{width:40px;height:40px}
  .publicationView{grid-column:auto}
  .footerBottomRefined{flex-direction:column;gap:5px}
  .resourceSection,.courseSection{padding:75px 0}
  .resourceIntro,.resourceGrid,.courseGrid{grid-template-columns:1fr}
  .resourceIntro{gap:24px}
  .resourcePageHero{padding:58px 0 62px}
  .resourcePurpose{padding:70px 0}
  .resourceLibrary{padding:75px 0}
  .resourceLibraryHeading{align-items:flex-start;flex-direction:column}
  .resourceTabs{width:100%;overflow-x:auto}
  .resourceTabs button{white-space:nowrap;flex:1}
  .protectedResourceCard{grid-template-columns:1fr;gap:16px;padding:24px}
  .resourceAccess{grid-column:auto}
  .resourceNotice{padding:26px}
  .resourceNotice>div:last-child{width:100%;flex-direction:column}
  .blogPurpose{padding:70px 0}
  .blogPurposeInner{gap:20px}
  .blogArchive{padding:75px 0}
  .blogPostGrid{grid-template-columns:1fr}
  .authVisual{min-height:430px;padding:28px}
  .authBack{top:24px;left:24px}
  .authVisualCopy{padding-bottom:5px}
  .authVisualCopy h1{font-size:42px}
  .authPanel{padding:48px 24px}
  .authFormWrap h2{font-size:35px}
  .authNameRow{grid-template-columns:1fr}
}

/* Student portal */
.studentDashboard{min-height:100vh;background:#f5f7fb;color:#172033;display:grid;grid-template-columns:270px 1fr}
.dashboardSidebar{position:sticky;top:0;height:100vh;min-height:100vh;padding:28px 20px;background:#071630;color:#fff;display:flex;flex-direction:column;z-index:80;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#3157e5 transparent}
.dashboardBrand{height:54px;display:flex;align-items:center;justify-content:space-between;margin:0 6px 28px}
.dashboardBrand img{width:145px;height:50px;object-fit:contain;object-position:left;filter:brightness(0) invert(1)}
.sidebarClose{display:none;border:0;background:transparent;color:#fff}
.dashboardProfile{display:flex;align-items:center;gap:12px;padding:16px 14px;margin-bottom:26px;border:1px solid rgba(255,255,255,.1);border-radius:17px;background:rgba(255,255,255,.055)}
.studentAvatar{width:42px;height:42px;border-radius:14px;display:grid;place-items:center;background:linear-gradient(135deg,#5274ef,#8aa0f7);color:#fff;font-size:12px;font-weight:800;box-shadow:0 10px 22px rgba(49,87,229,.3)}
.studentAvatar.small{width:38px;height:38px;border-radius:12px}.studentAvatar.large{width:88px;height:88px;border-radius:26px;font-size:20px}
.dashboardProfile>div:last-child,.topbarUser>div:last-child{display:flex;flex-direction:column;gap:4px;min-width:0}
.dashboardProfile strong,.topbarUser strong{font-size:11px;line-height:1.35;overflow-wrap:anywhere}.topbarUser strong{white-space:nowrap}.dashboardProfile span,.topbarUser span{color:#8ea0bd;font-size:9px}
.navGroupLabel{display:block;margin:0 12px 12px;color:#647894;font-size:9px;font-weight:800;text-transform:uppercase}
.dashboardNav{display:flex;flex-direction:column;gap:5px;flex:0 0 auto}
.dashboardNav button{width:100%;padding:13px 14px;border:0;border-radius:13px;background:transparent;color:#9eb0ca;display:flex;align-items:center;gap:13px;text-align:left;font-size:11px;font-weight:650;transition:.2s}
.dashboardNav button svg{width:17px}.dashboardNav button:hover{background:rgba(255,255,255,.06);color:#fff}.dashboardNav button.active{background:#3157e5;color:#fff;box-shadow:0 12px 28px rgba(49,87,229,.25)}
.dashboardNav button b{margin-left:auto;width:20px;height:20px;border-radius:7px;display:grid;place-items:center;background:#fff;color:#3157e5;font-size:9px}
.dashboardSidebarBottom{margin-top:24px;padding-bottom:8px}
.semesterCard{padding:16px;margin-bottom:14px;border-radius:15px;background:linear-gradient(135deg,rgba(49,87,229,.25),rgba(255,255,255,.05));display:flex;flex-direction:column}
.semesterCard span,.semesterCard small{color:#8ea0bd;font-size:8px}.semesterCard strong{margin:7px 0 4px;font-size:12px}
.dashboardLogout{display:flex;align-items:center;gap:11px;padding:13px 14px;color:#9eb0ca;font-size:10px;font-weight:650}.dashboardLogout svg{width:17px}
.dashboardWorkspace{min-width:0}
.dashboardTopbar{height:82px;padding:0 42px;background:rgba(255,255,255,.9);backdrop-filter:blur(16px);border-bottom:1px solid #e7eaf0;display:flex;align-items:center;gap:28px;position:sticky;top:0;z-index:40}
.dashboardMenu{display:none;width:42px;height:42px;border:1px solid #dfe4eb;border-radius:13px;background:#fff}
.dashboardSearch{width:min(440px,48%);display:flex;align-items:center;gap:10px;padding:0 15px;height:44px;border-radius:14px;background:#f4f6f9;color:#8791a1}
.dashboardSearch svg{width:17px}.dashboardSearch input{width:100%;border:0;outline:0;background:transparent;font-size:10px}
.topbarActions{margin-left:auto;display:flex;align-items:center;gap:22px}
.notificationButton{position:relative;width:42px;height:42px;padding:0;border:1px solid #e0e4eb;border-radius:13px;background:#fff;color:#5d6878;display:grid;place-items:center;line-height:0}.notificationButton svg{width:17px;height:17px}.notificationButton span{position:absolute;right:9px;top:8px;width:7px;height:7px;border-radius:50%;background:#3157e5;border:2px solid #fff}
.topbarUser{display:flex;align-items:center;gap:10px}.topbarUser strong{color:#243046}.topbarUser span{color:#8490a1}
.dashboardContent{padding:38px 42px 70px;max-width:1500px;margin:0 auto}
.dashboardWelcome{padding:34px 38px;border-radius:25px;background:#071630;color:#fff;display:flex;align-items:center;justify-content:space-between;gap:35px;position:relative;overflow:hidden}
.dashboardWelcome::after{content:"";position:absolute;width:320px;height:320px;border-radius:50%;right:-110px;top:-170px;background:#3157e5;filter:blur(70px);opacity:.55}
.dashboardWelcome>div,.dashboardWelcome>button{position:relative;z-index:1}.dashboardWelcome span,.dashboardPageHeading>span,.panelHeading span{color:#8da6ff;font-size:9px;font-weight:800;text-transform:uppercase}
.dashboardWelcome h1{margin:10px 0 9px;font-size:32px}.dashboardWelcome p{margin:0;color:#d4dbea;font-size:14px;line-height:1.65}
.dashboardWelcome button,.saveProfile{display:flex;align-items:center;gap:9px;padding:13px 18px;border:0;border-radius:999px;background:#fff;color:#17378f;font-size:10px;font-weight:800;white-space:nowrap}.dashboardWelcome button svg{width:14px}
.dashboardStats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin:22px 0}
.dashboardStats article{padding:21px;border:1px solid #e5e8ee;border-radius:19px;background:#fff;display:flex;align-items:center;gap:15px}
.statIcon{width:44px;height:44px;border-radius:14px;display:grid;place-items:center;flex:0 0 auto}.statIcon svg{width:18px}.statIcon.blue{background:#e7edff;color:#3157e5}.statIcon.violet{background:#f0eaff;color:#7857d8}.statIcon.amber{background:#fff1da;color:#c27b11}.statIcon.green{background:#dff6ea;color:#188e5a}
.dashboardStats article>div:last-child{display:flex;flex-direction:column}.dashboardStats span{color:#596779;font-size:12px;font-weight:650}.dashboardStats strong{margin:4px 0;font-size:24px}.dashboardStats small{color:#748195;font-size:11px}
.dashboardColumns{display:grid;grid-template-columns:1.55fr .75fr;gap:20px;margin-bottom:20px}
.dashboardPanel{padding:26px;border:1px solid #e3e7ed;border-radius:21px;background:#fff}
.panelHeading{display:flex;align-items:center;justify-content:space-between;gap:25px;margin-bottom:22px}.panelHeading span{color:#3157e5}.panelHeading h2{margin:7px 0 0;font-size:18px}.panelHeading button{display:flex;align-items:center;gap:7px;border:0;background:transparent;color:#3157e5;font-size:9px;font-weight:750}.panelHeading button svg{width:14px}
.compactCourseList{display:grid}.compactCourse{display:grid;grid-template-columns:44px 1fr auto;gap:14px;align-items:center;padding:15px 0;border-top:1px solid #eef0f4}
.courseMark{width:42px;height:42px;border-radius:13px;display:grid;place-items:center}.courseMark svg{width:17px}.courseMark.blue{background:#e8eeff;color:#3157e5}.courseMark.violet{background:#f1eaff;color:#7b58d5}.courseMark.teal{background:#dff6f3;color:#168c82}
.courseRowBody span{color:#657286;font-size:11px}.courseRowBody h3{margin:4px 0 8px;font-size:14px;line-height:1.4}.compactCourse>strong{color:#536174;font-size:11px;font-weight:700}
.progressTrack{height:5px;border-radius:999px;background:#edf0f4;overflow:hidden}.progressTrack i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#3157e5,#7690ef)}.courseRowBody small{display:block;margin-top:5px;color:#687589;font-size:11px}
.scheduleList article{display:grid;grid-template-columns:42px 1fr;gap:13px;padding:14px 0;border-top:1px solid #edf0f4}.scheduleList article>strong{width:40px;height:44px;border-radius:12px;background:#f0f3fa;color:#3157e5;display:grid;place-items:center;font-size:14px}.scheduleList span{color:#8a94a4;font-size:7px;text-transform:uppercase}.scheduleList h3{margin:3px 0;font-size:10px}.scheduleList p{margin:0;color:#8a94a4;font-size:7px}
.recentResources{margin-top:0}
.resourceTable article{display:grid;grid-template-columns:42px 1fr 90px 38px;gap:15px;align-items:center;padding:14px 0;border-top:1px solid #edf0f4}.resourceFile{width:40px;height:40px;border-radius:12px;display:grid;place-items:center;background:#e8eeff;color:#3157e5}.resourceFile svg{width:16px}.file2{background:#e9f7f1;color:#168a5d}.file3{background:#fff0dc;color:#b87312}.file4{background:#f1eaff;color:#7956d4}
.resourceTable span{color:#3157e5;font-size:7px;text-transform:uppercase}.resourceTable h3{margin:3px 0;font-size:10px}.resourceTable p{margin:0;color:#8a94a4;font-size:7px}.resourceTable time{color:#8490a1;font-size:8px}.resourceTable button{width:34px;height:34px;padding:0;border:1px solid #dfe4ed;border-radius:11px;background:#fff;color:#3157e5;display:grid;place-items:center;line-height:0}.resourceTable button svg{width:14px;height:14px}
.dashboardPageHeading{margin-bottom:28px}.dashboardPageHeading h1{margin:9px 0 8px;font-size:34px}.dashboardPageHeading p{max-width:680px;margin:0;color:#758092;font-size:11px;line-height:1.7}
.courseCardGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.dashboardCourseCard{min-height:310px;padding:26px;border-radius:22px;color:#fff;display:flex;flex-direction:column;position:relative;overflow:hidden}.dashboardCourseCard::after{content:"";position:absolute;width:190px;height:190px;border:1px solid rgba(255,255,255,.18);border-radius:50%;right:-70px;top:-75px}.courseCard1{background:#3157e5}.courseCard2{background:#6849bf}.courseCard3{background:#087d77}
.courseCardTop,.courseCardBottom{display:flex;align-items:center;justify-content:space-between;position:relative;z-index:1}.courseCardTop span{font-size:12px;font-weight:800}.courseCardTop small{color:rgba(255,255,255,.92);font-size:11px;font-weight:650}.courseCardIcon{margin:35px 0 20px;width:45px;height:45px;border-radius:14px;background:rgba(255,255,255,.18);display:grid;place-items:center}.dashboardCourseCard h2{margin:0;font-size:19px;line-height:1.45}.dashboardCourseCard>p{margin:10px 0 18px;color:rgba(255,255,255,.9);font-size:13px;line-height:1.55}.dashboardCourseCard .progressTrack{background:rgba(255,255,255,.22)}.dashboardCourseCard .progressTrack i{background:#fff}.courseCardBottom{margin-top:auto;padding-top:15px}.courseCardBottom strong{font-size:11px}.courseCardBottom button{border:0;background:transparent;color:#fff;display:flex;align-items:center;gap:7px;font-size:12px;font-weight:800}.courseCardBottom svg{width:14px}
.courseActivity{margin-top:20px}.activityTimeline p{position:relative;margin:0;padding:14px 0 14px 28px;border-top:1px solid #edf0f4;font-size:10px}.activityTimeline i{position:absolute;left:3px;top:18px;width:9px;height:9px;border-radius:50%;background:#3157e5;box-shadow:0 0 0 5px #e9eeff}.activityTimeline span{display:block;margin-top:5px;color:#8a94a4;font-size:8px}
.resourceToolbar{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.filterPills{display:flex;gap:7px}.filterPills button,.outlineAction{padding:10px 14px;border:1px solid #dfe3ea;border-radius:999px;background:#fff;color:#687486;font-size:8px;font-weight:700}.filterPills button.active{background:#071630;border-color:#071630;color:#fff}.miniSearch{display:flex;align-items:center;gap:8px;width:250px;padding:0 13px;height:39px;border:1px solid #dfe3ea;border-radius:13px;background:#fff;color:#8893a3}.miniSearch svg{width:14px}.miniSearch input{width:100%;border:0;outline:0;font-size:9px}.resourceLibrary{padding-top:12px}
.assignmentSummary{display:grid;grid-template-columns:repeat(3,1fr);gap:15px;margin-bottom:18px}.assignmentSummary article{padding:22px;border-radius:18px;background:#fff;border:1px solid #e4e7ed;display:flex;align-items:center;justify-content:space-between}.assignmentSummary span{color:#778294;font-size:9px}.assignmentSummary strong{font-size:23px}.assignmentList>article{display:grid;grid-template-columns:70px 1fr 100px 120px;gap:18px;align-items:center;padding:18px 0;border-top:1px solid #edf0f4}.assignmentIcon{width:58px;height:58px;display:grid;grid-template-columns:1fr;place-items:center;background:#e4f2f1;color:#005870;border-left:3px solid #08a2a0}.assignmentIcon i{font-size:20px;line-height:1}.assignmentIcon span{margin-top:-7px;font-size:7px;font-weight:850;letter-spacing:.08em}.assignmentList h3{margin:0 0 6px;font-size:11px}.assignmentList p{margin:0;color:#8490a0;font-size:8px;display:flex;align-items:center;gap:5px}.assignmentList p svg{width:12px}.statusPill{justify-self:start;padding:7px 10px;border-radius:999px;font-size:7px;font-weight:800}.statusPill.amber{background:#fff0d9;color:#a7670d}.statusPill.gray{background:#eef0f4;color:#697586}.statusPill.green{background:#dff5e9;color:#117648}.assignmentList>article>button{display:flex;align-items:center;gap:6px;border:0;background:transparent;color:#3157e5;font-size:8px;font-weight:750}.assignmentList>article>button svg{width:12px}
.announcementList{display:grid;gap:15px}.announcementList article{padding:25px;border:1px solid #e2e6ed;border-radius:20px;background:#fff;display:grid;grid-template-columns:55px 1fr 42px;gap:20px;align-items:center}.announcementList article.featured{border-color:#cfd8fa;box-shadow:0 18px 40px rgba(49,87,229,.07)}.noticeDate{width:52px;height:58px;border-radius:14px;background:#edf1ff;color:#3157e5;display:grid;place-items:center;padding:8px}.noticeDate strong{font-size:16px}.noticeDate span{font-size:7px;text-transform:uppercase}.noticeTag{color:#3157e5;font-size:7px;font-weight:800;text-transform:uppercase}.announcementList h2{margin:6px 0 8px;font-size:14px}.announcementList p{margin:0;color:#768193;font-size:9px;line-height:1.6}.announcementList article>button{width:38px;height:38px;padding:0;border:1px solid #dfe4ec;border-radius:12px;background:#fff;color:#3157e5;display:grid;place-items:center;line-height:0}.announcementList article>button svg{width:14px;height:14px}
.profileSettingsGrid{display:grid;grid-template-columns:300px 1fr;gap:20px}.studentProfileCard{text-align:center;display:flex;flex-direction:column;align-items:center}.studentProfileCard h2{margin:18px 0 6px;font-size:18px}.studentProfileCard p{margin:0;color:#7e8999;font-size:9px}.studentProfileCard>span{margin:19px 0;color:#3157e5;font-size:8px}.profileFormGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.profileForm label{display:flex;flex-direction:column;gap:7px;margin-bottom:15px}.profileForm label>span{color:#687486;font-size:8px;font-weight:700}.profileForm input,.profileForm select{height:43px;border:1px solid #dfe4eb;border-radius:12px;padding:0 13px;outline:0;background:#fbfcfd;font-size:9px}.saveProfile{margin-top:8px;background:#3157e5;color:#fff;border-radius:12px}
.sidebarBackdrop{display:none}
.dashboardWorkspace{min-height:100vh;display:flex;flex-direction:column}.dashboardContent{width:100%;flex:1}.dashboardFooter{margin-top:auto;padding:18px 42px;border-top:1px solid #e4e8ef;background:#fff;color:#657286;display:grid;grid-template-columns:1fr auto;align-items:center;gap:24px;font-size:11px}.dashboardFooter>a{color:#3157e5;font-weight:800;text-decoration:none}.dashboardNerdclipCredit{justify-self:end;display:inline-flex;align-items:center;gap:8px;color:#657286!important;font-weight:650!important;cursor:pointer}.dashboardNerdclipCredit span{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.dashboardNerdclipCredit img{width:88px;height:22px;object-fit:contain}.dashboardNerdclipCredit:hover{color:#3157e5!important}.dashboardNerdclipCredit:focus-visible{outline:2px solid #3157e5;outline-offset:5px;border-radius:4px}
.legacyDashboardContent{font-family:'Plus Jakarta Sans',sans-serif;color:#071630;background:#f7f9fc}.legacyDashboardContent>.container-fluid{max-width:1400px;padding:0}.legacyDashboardContent h1,.legacyDashboardContent h2,.legacyDashboardContent h3,.legacyDashboardContent h4,.legacyDashboardContent h5{color:#071630;font-weight:750}.legacyDashboardContent h4{font-size:30px}.legacyDashboardContent .card{margin:0;border:1px solid #e2e7ef!important;border-radius:20px!important;background:#fff;box-shadow:0 16px 42px rgba(7,22,48,.06)!important;opacity:1;transform:none;animation:none}.legacyDashboardContent .card-header{padding:20px 24px;border-radius:20px 20px 0 0!important;background:#071630!important;color:#fff!important}.legacyDashboardContent .card-body,.legacyDashboardContent .card.p-4{padding:24px!important}.legacyDashboardContent .table{margin:0;font-size:11px}.legacyDashboardContent .table>:not(caption)>*>*{padding:14px 12px;border-color:#e8ebf0}.legacyDashboardContent .table-dark{--bs-table-bg:#071630}.legacyDashboardContent .btn{border-radius:11px;font-size:10px;font-weight:750;padding:10px 15px}.legacyDashboardContent .btn-primary{background:#3157e5;border-color:#3157e5}.legacyDashboardContent .form-control,.legacyDashboardContent .form-select{min-height:44px;border:1px solid #dce2ea;border-radius:11px;font-size:11px}.legacyDashboardContent .badge{border-radius:999px;padding:7px 10px;font-size:8px}.legacyDashboardContent .row{--bs-gutter-y:18px}.dashboardNav nav{display:grid;gap:4px}.dashboardNav nav a{margin:0!important}.dashboardNav nav hr{margin:12px 0;border-color:rgba(255,255,255,.15)}.dashboardNav nav form{margin:0}.dashboardNav nav form button{width:100%;padding:13px 14px!important;border:0!important;border-radius:13px!important;background:transparent!important;color:#9eb0ca!important;text-align:left!important;font-size:11px!important}.dashboardNav nav form button:hover{background:rgba(255,255,255,.06)!important;color:#fff!important}.academicDashboard .dashboardSidebar{background:#071630}

@media(max-width:1100px){
  .dashboardStats{grid-template-columns:1fr 1fr}
  .courseCardGrid{grid-template-columns:1fr 1fr}.courseCardGrid article:last-child{grid-column:1/-1}
  .dashboardColumns{grid-template-columns:1fr}.upcomingPanel{grid-column:auto}
}
@media(max-width:820px){
  .studentDashboard{display:block}
  .dashboardSidebar{position:fixed;left:0;top:0;width:275px;transform:translateX(-105%);transition:transform .28s;box-shadow:20px 0 55px rgba(7,22,48,.28)}
  .dashboardSidebar.sidebarOpen{transform:translateX(0)}.sidebarClose{display:grid;place-items:center}.sidebarBackdrop{display:block;position:fixed;inset:0;border:0;background:rgba(7,22,48,.48);z-index:70}
  .dashboardMenu{display:grid;place-items:center}.dashboardTopbar{padding:0 22px}.dashboardSearch{width:auto;flex:1}.topbarUser>div:last-child{display:none}
  .dashboardContent{padding:28px 22px 60px}.profileSettingsGrid{grid-template-columns:1fr}
}
@media(max-width:600px){
  .dashboardTopbar{height:72px;gap:12px;padding:0 16px}.dashboardSearch{display:none}.topbarActions{gap:10px}
  .dashboardContent{padding:22px 16px 50px}
  .dashboardWelcome{padding:28px 24px;align-items:flex-start;flex-direction:column}.dashboardWelcome h1{font-size:27px}.dashboardWelcome button{width:100%;justify-content:center}
  .dashboardStats,.courseCardGrid,.assignmentSummary{grid-template-columns:1fr}.courseCardGrid article:last-child{grid-column:auto}
  .dashboardColumns{gap:14px}.dashboardPanel{padding:20px 17px}.compactCourse{grid-template-columns:40px 1fr}.compactCourse>strong{display:none}
  .resourceTable article{grid-template-columns:40px 1fr 34px}.resourceTable time{display:none}
  .resourceToolbar{align-items:stretch;flex-direction:column}.filterPills{overflow-x:auto;padding-bottom:4px}.filterPills button{white-space:nowrap}.miniSearch{width:100%}
  .assignmentList>article{grid-template-columns:62px 1fr;gap:12px}.assignmentList .statusPill{grid-column:2}.assignmentList>article>button{grid-column:2}
  .announcementList article{grid-template-columns:48px 1fr;padding:19px}.announcementList article>button{display:none}
  .profileFormGrid{grid-template-columns:1fr}
  .dashboardFooter{padding:18px 16px;grid-template-columns:1fr;gap:10px}.dashboardNerdclipCredit{justify-self:start}
}

/* Laravel integration helpers */
.courseCardBottom a{color:#fff;font-size:12px;font-weight:800;text-decoration:none}.assignmentList>article>a{color:#3157e5;font-size:11px;font-weight:800;text-decoration:none}.announcementList article>form{margin:0}.announcementList article>form button{white-space:nowrap}
.navButton span,.button span,.buttonLink span,.footerAction span{font-size:1.15em;line-height:1}
.formAlert{padding:12px 14px;border-radius:12px;margin:16px 0;font-size:12px;font-weight:600}
.formAlertError{background:#fff0f0;color:#a51d2d;border:1px solid #ffd1d6}
.formAlertSuccess{background:#ecfdf3;color:#167044;border:1px solid #b7efcf}
.contactDirect{justify-content:center;align-items:flex-start}.contactDirect>a:not(.button){color:var(--blue);font-weight:700}.contactDirect p{margin:0;color:var(--muted)}
.contactDetails{display:grid;gap:14px;margin:28px 0}.contactDetails a,.contactDetails p{display:grid;gap:4px;margin:0;color:inherit;text-decoration:none}.contactDetails span{color:var(--blue);font-size:9px;font-weight:800;letter-spacing:.12em;text-transform:uppercase}.contactDetails strong{font-size:13px;overflow-wrap:anywhere}.contactHoneypot{position:absolute!important;left:-10000px!important;width:1px!important;height:1px!important;overflow:hidden!important}.requestForm .button{border:0;cursor:pointer}
.dashboardNav a{width:100%;padding:13px 14px;border:0;border-radius:13px;background:transparent;color:#9eb0ca;display:flex;align-items:center;gap:13px;text-align:left;font-size:11px;font-weight:650;transition:.2s;text-decoration:none}
.dashboardNav a:hover{background:rgba(255,255,255,.06);color:#fff}.dashboardNav a.active{background:#3157e5;color:#fff;box-shadow:0 12px 28px rgba(49,87,229,.25)}
.dashboardNav a b{margin-left:auto;width:20px;height:20px;border-radius:7px;display:grid;place-items:center;background:#fff;color:#3157e5;font-size:9px}
.navGlyph{width:17px;text-align:center;font-size:16px}.dashboardSidebarBottom form{margin:0}.dashboardSidebarBottom button{width:100%;border:0;background:transparent;cursor:pointer}
.dashboardWelcome>a{position:relative;z-index:1;display:flex;align-items:center;gap:9px;padding:13px 18px;border-radius:999px;background:#fff;color:#17378f;font-size:10px;font-weight:800;white-space:nowrap;text-decoration:none}
.panelHeading a{font-size:9px;font-weight:800;color:#3157e5;text-decoration:none}.compactCourse{text-decoration:none;color:inherit}.scheduleList a{display:grid;grid-template-columns:42px 1fr;gap:13px;padding:14px 0;border-top:1px solid #edf0f4;text-decoration:none;color:inherit}.scheduleList a>strong{width:40px;height:44px;border-radius:12px;background:#f0f3fa;color:#3157e5;display:grid;place-items:center;font-size:14px}
.dashboardEmpty{padding:24px;text-align:center;color:#7d8795}.dashboardEmpty h3{margin:0 0 8px;font-size:15px}.dashboardEmpty p{font-size:11px}.dashboardEmpty a{color:#3157e5;font-size:10px;font-weight:800}
.notificationButton{text-decoration:none;color:inherit;display:grid;place-items:center}
.sidebarBackdrop[hidden],.mobileMenu[hidden]{display:none!important}
@media(max-width:600px){.dashboardWelcome>a{width:100%;justify-content:center}}

/* Public detail, store and transaction pages */
.publicationDetailSection,.courseDetailSection,.articleSection,.productDetailSection,.transactionSection{padding:85px 0;background:#f7f9fc}
.publicationDetailGrid,.courseDetailGrid,.articleGrid,.productDetailGrid{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(260px,.65fr);gap:34px;align-items:start}
.publicationDetailCard,.courseDetailMain,.articleMain,.productDetailContent,.transactionCard{padding:42px;border:1px solid #e1e6ee;border-radius:24px;background:#fff;box-shadow:0 24px 65px rgba(7,22,48,.07)}
.publicationDetailCard>span,.courseDetailMain>span,.articleMain>span,.productDetailContent>span,.transactionEyebrow,.storeBody>span{color:#3157e5;font-size:10px;font-weight:800;letter-spacing:.14em;text-transform:uppercase}
.publicationDetailCard h1,.courseDetailMain h1,.articleMain h1,.productDetailContent h1{margin:13px 0 18px;color:#071630;font-size:clamp(30px,4vw,50px);line-height:1.12}
.publicationDetailMeta,.courseDetailMeta,.articleMeta{display:flex;flex-wrap:wrap;gap:9px 20px;padding-bottom:24px;border-bottom:1px solid #e5e9ef;color:#7b8696;font-size:11px}
.publicationAbstract,.articleContent,.productDescription{padding-top:26px;color:#647083;font-size:13px;line-height:1.9}.publicationAbstract h2,.articleContent h2,.productDescription h2{color:#071630;font-size:19px}
.publicationDetailActions{display:flex;flex-wrap:wrap;gap:10px;margin-top:28px}.publicationDetailAside,.articleAside,.courseAccessCard{padding:28px;border-radius:21px;background:#071630;color:#fff}.publicationDetailAside h2,.articleAside h2,.courseAccessCard h2{margin:8px 0 12px;font-size:20px}.publicationDetailAside p,.articleAside p,.courseAccessCard p{color:#aeb9ca;font-size:11px;line-height:1.75}.publicationDetailAside a,.articleAside a,.courseAccessCard a{margin-top:12px}
.articleCover,.productDetailImage{overflow:hidden;border-radius:24px;background:#e8edf7}.articleCover img,.productDetailImage img{display:block;width:100%;max-height:520px;object-fit:cover}.articleBack,.productBack,.courseCreateLink{display:inline-flex;margin-top:24px;color:#3157e5;font-size:11px;font-weight:800;text-decoration:none}
.courseDetailMain>p{color:#657184;line-height:1.9}.productDetailContent>strong{display:block;margin:18px 0;color:#3157e5;font-size:27px}
.storePurpose{padding-top:72px}.storeArchive{padding:85px 0;background:#f7f9fc}.storeGrid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.storeCard{overflow:hidden;border:1px solid #e2e7ef;border-radius:22px;background:#fff;transition:.25s}.storeCard:hover{transform:translateY(-5px);box-shadow:0 24px 55px rgba(7,22,48,.09)}.storeImage{display:block;height:220px;overflow:hidden;background:#e9eef8}.storeImage img{width:100%;height:100%;object-fit:cover}.storeBody{padding:25px}.storeBody h3{margin:9px 0;font-size:18px;line-height:1.35}.storeBody h3 a{color:#071630;text-decoration:none}.storeBody p{min-height:54px;color:#748092;font-size:11px;line-height:1.65}.storeBody>div{display:flex;align-items:center;justify-content:space-between;gap:15px;margin-top:20px}.storeBody strong{color:#071630;font-size:16px}.storeBody>div a{color:#3157e5;font-size:9px;font-weight:800;text-decoration:none}.designPagination{margin-top:35px}.designPagination nav>div:first-child{display:none}.designPagination nav>div:last-child{display:flex;justify-content:center}.designPagination svg{width:16px}
.transactionWrap{max-width:720px}.transactionCard h1{margin:10px 0 12px;font-size:clamp(29px,4vw,42px)}.transactionCard>p{color:#6e7a8c;font-size:12px;line-height:1.75}.transactionSummary{display:flex;align-items:center;gap:16px;margin:28px 0;padding:18px 0;border-top:1px solid #e5e9ef;border-bottom:1px solid #e5e9ef}.transactionSummary img{width:64px;height:64px;border-radius:14px;object-fit:cover}.transactionSummary div{flex:1}.transactionSummary h2{margin:0 0 5px;font-size:15px}.transactionSummary span{color:#7b8696;font-size:10px}.transactionSummary strong{color:#3157e5;font-size:19px}.designForm{display:grid;gap:17px}.designForm label{display:grid;gap:8px;color:#465268;font-size:10px;font-weight:750}.designForm input,.designForm select{width:100%;height:50px;padding:0 15px;border:1px solid #dbe1ea;border-radius:13px;background:#fbfcfe;color:#071630;outline:none}.designForm input:focus,.designForm select:focus{border-color:#3157e5;box-shadow:0 0 0 4px rgba(49,87,229,.09)}.designFormGrid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.transactionActions{display:flex;flex-wrap:wrap;align-items:center;gap:12px;margin-top:8px}.transactionCancel{color:#738095;font-size:10px;font-weight:700;text-decoration:none}.transactionNote{margin-top:20px;text-align:center;color:#7b8696;font-size:10px}.transactionSuccess{text-align:center}.successMark{width:76px;height:76px;margin:0 auto 20px;border-radius:50%;display:grid;place-items:center;background:#e1f6ea;color:#168653;font-size:32px}.transactionDetails{display:grid;gap:12px;margin:25px 0;padding:22px;border-radius:17px;background:#f4f7fb;text-align:left}.transactionDetails p{display:flex;justify-content:space-between;gap:20px;margin:0;color:#6b7688;font-size:11px}.transactionDetails strong{color:#071630}.transactionInstructions{padding:18px;border-radius:15px;background:#eef2fb;color:#566378;font-size:11px;line-height:1.7;text-align:left}
@media(max-width:900px){.publicationDetailGrid,.courseDetailGrid,.articleGrid,.productDetailGrid{grid-template-columns:1fr}.storeGrid{grid-template-columns:1fr 1fr}}
@media(max-width:600px){.publicationDetailSection,.courseDetailSection,.articleSection,.productDetailSection,.transactionSection,.storeArchive{padding:55px 0}.publicationDetailCard,.courseDetailMain,.articleMain,.productDetailContent,.transactionCard{padding:27px 22px}.storeGrid,.designFormGrid{grid-template-columns:1fr}.transactionSummary{align-items:flex-start;flex-wrap:wrap}.transactionSummary strong{width:100%}}

@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  *{animation:none!important;transition:none!important}
  .hero,.offerSection{background-attachment:scroll}
}
.dashboardForm{display:grid;gap:16px}.dashboardForm label{display:grid;gap:7px;color:#25324b;font-weight:700;font-size:.9rem}.dashboardForm input,.dashboardForm textarea,.dashboardForm select{width:100%;border:1px solid #d8deea;border-radius:10px;padding:11px 13px;background:#fff;color:#17213a;font:inherit}.dashboardForm textarea{resize:vertical}.primaryAction{border:0;border-radius:999px;padding:12px 20px;background:#12327a;color:#fff;font-weight:800;cursor:pointer}.textAction{display:inline-block;margin-top:8px;color:#12327a;text-decoration:underline;font-weight:800}
.maintenanceLinks{display:flex;flex-wrap:wrap;gap:10px}.backupDownloadRow{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:14px 0;border-bottom:1px solid var(--nc-line)}.backupDownloadRow>div{display:grid;gap:4px;min-width:0}.backupDownloadRow strong{overflow-wrap:anywhere}.backupDownloadRow small{color:#667b80}.backupDownloadRow form{display:flex;align-items:end;gap:8px}.backupDownloadRow label{margin:0}.backupDownloadRow input{min-height:42px}.cleanupAreas{display:grid;gap:8px}.dashboardForm .cleanupArea{grid-template-columns:20px minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px;border:1px solid var(--nc-line);background:#f7faf9}.dashboardForm .cleanupArea input{width:18px;height:18px;accent-color:var(--nc-primary)}.cleanupArea span{display:grid;gap:3px}.cleanupArea small{color:#667b80;font-weight:500}.cleanupArea b{color:var(--nc-primary);font-size:1.05rem}.maintenanceCleanup #cleanup-total{color:var(--nc-primary)}
@media(max-width:700px){.backupDownloadRow,.backupDownloadRow form{align-items:stretch;flex-direction:column}.backupDownloadRow form{width:100%}}

/* NerdClip dashboard brand — intentionally scoped away from the public website */
.studentDashboard{--nc-primary:#005870;--nc-primary-dark:#003b4c;--nc-primary-deep:#002c39;--nc-accent:#08a2a0;--nc-accent-soft:#d9f2f0;--nc-surface:#f5f8f7;--nc-line:#dce7e5;--nc-ink:#122b31;background:var(--nc-surface);color:var(--nc-ink)}
.studentDashboard .dashboardSidebar,.studentDashboard.academicDashboard .dashboardSidebar{background:linear-gradient(180deg,var(--nc-primary-dark) 0%,var(--nc-primary-deep) 100%);scrollbar-color:var(--nc-accent) transparent}
.studentDashboard .dashboardBrand{height:62px;margin:0 4px 25px}.studentDashboard .dashboardBrand>a{width:178px;height:54px;padding:4px 0;border-radius:0;background:transparent;display:flex;align-items:center;box-shadow:none}.studentDashboard .dashboardBrand img{width:100%;height:100%;object-fit:contain;object-position:left;filter:none}
.studentDashboard .dashboardProfile{border-color:rgba(255,255,255,.12);background:rgba(255,255,255,.07);box-shadow:inset 0 1px rgba(255,255,255,.04)}.studentDashboard .studentAvatar{background:linear-gradient(135deg,var(--nc-primary),var(--nc-accent));box-shadow:0 10px 24px rgba(0,88,112,.3)}.studentDashboard .dashboardProfile span,.studentDashboard .topbarUser span{color:#8eb7bf}.studentDashboard .navGroupLabel{color:#7ca6af;letter-spacing:.14em}
.studentDashboard .dashboardNav a.active,.studentDashboard .dashboardNav button.active{background:linear-gradient(135deg,var(--nc-primary),#087c8d);box-shadow:0 13px 30px rgba(0,88,112,.34)}.studentDashboard .dashboardNav a b,.studentDashboard .dashboardNav button b{color:var(--nc-primary)}.studentDashboard .semesterCard{background:linear-gradient(135deg,rgba(8,162,160,.22),rgba(255,255,255,.055))}
.studentDashboard .dashboardTopbar{border-bottom-color:var(--nc-line);box-shadow:0 4px 22px rgba(0,59,76,.035)}.studentDashboard .dashboardSearch{background:#eff5f4;color:#6a8185}.studentDashboard .dashboardSearch input:focus{outline:2px solid var(--nc-accent);outline-offset:8px;border-radius:4px}.studentDashboard .notificationButton:focus-visible,.studentDashboard a:focus-visible,.studentDashboard button:focus-visible{outline:3px solid rgba(8,162,160,.38);outline-offset:3px}.studentDashboard .notificationButton span{background:var(--nc-accent)}
.studentDashboard .dashboardWelcome{background:linear-gradient(118deg,var(--nc-primary-deep),var(--nc-primary-dark));box-shadow:0 22px 48px rgba(0,44,57,.14)}.studentDashboard .dashboardWelcome::after{background:var(--nc-accent);opacity:.42}.studentDashboard .dashboardWelcome span,.studentDashboard .dashboardPageHeading>span,.studentDashboard .panelHeading span{color:#65d3cf}.studentDashboard .dashboardWelcome>a,.studentDashboard .dashboardWelcome button,.studentDashboard .saveProfile{color:var(--nc-primary-dark)}
.studentDashboard .dashboardStats article,.studentDashboard .dashboardPanel,.studentDashboard .legacyDashboardContent .card{border-color:var(--nc-line)!important;box-shadow:0 14px 36px rgba(0,59,76,.055)!important}.studentDashboard .statIcon.blue,.studentDashboard .courseMark.blue,.studentDashboard .resourceFile{background:#dceff2;color:var(--nc-primary)}.studentDashboard .statIcon.green,.studentDashboard .courseMark.teal{background:var(--nc-accent-soft);color:#087672}
.studentDashboard .panelHeading a,.studentDashboard .panelHeading button,.studentDashboard .dashboardEmpty a,.studentDashboard .assignmentList>article>a,.studentDashboard .textAction{color:var(--nc-primary)}.studentDashboard .progressTrack i{background:linear-gradient(90deg,var(--nc-primary),var(--nc-accent))}.studentDashboard .scheduleList article>strong,.studentDashboard .scheduleList a>strong{color:var(--nc-primary);background:#e3f0f1}.studentDashboard .resourceTable span,.studentDashboard .resourceTable button{color:var(--nc-primary)}
.studentDashboard .courseCard1{background:linear-gradient(145deg,var(--nc-primary),#087b88)}.studentDashboard .courseCard2{background:linear-gradient(145deg,#184e5a,#2d7880)}.studentDashboard .courseCard3{background:linear-gradient(145deg,#087872,#18a39b)}.studentDashboard .activityTimeline i{background:var(--nc-accent);box-shadow:0 0 0 5px var(--nc-accent-soft)}
.studentDashboard .legacyDashboardContent h1,.studentDashboard .legacyDashboardContent h2,.studentDashboard .legacyDashboardContent h3,.studentDashboard .legacyDashboardContent h4,.studentDashboard .legacyDashboardContent h5{color:var(--nc-ink)}.studentDashboard .legacyDashboardContent .card-header,.studentDashboard .legacyDashboardContent .table-dark{background:var(--nc-primary-dark)!important;--bs-table-bg:var(--nc-primary-dark)}.studentDashboard .legacyDashboardContent .btn-primary,.studentDashboard .primaryAction{background:var(--nc-primary);border-color:var(--nc-primary)}.studentDashboard .legacyDashboardContent .btn-primary:hover,.studentDashboard .primaryAction:hover{background:var(--nc-primary-dark);border-color:var(--nc-primary-dark)}
.studentDashboard .legacyDashboardContent .dashboardWelcome h1{color:#fff}
.studentDashboard .legacyDashboardContent .form-control:focus,.studentDashboard .legacyDashboardContent .form-select:focus,.studentDashboard .dashboardForm input:focus,.studentDashboard .dashboardForm textarea:focus,.studentDashboard .dashboardForm select:focus{border-color:var(--nc-accent);box-shadow:0 0 0 4px rgba(8,162,160,.12)}
.studentDashboard .dashboardFooter{border-top:1px solid var(--nc-line);background:#fff;color:#657a7e}.studentDashboard .dashboardNerdclipCredit{color:var(--nc-primary-dark)}.studentDashboard .dashboardNerdclipCredit img{width:106px;height:28px;object-fit:contain}.studentDashboard .dashboardNerdclipCredit:hover{color:var(--nc-primary);text-decoration-color:var(--nc-accent)}
@media(max-width:820px){.studentDashboard .sidebarBackdrop{background:rgba(0,44,57,.58)}}

/* NerdClip dashboard component consistency */
.studentDashboard .legacyDashboardContent .text-primary{color:var(--nc-primary)!important}
.studentDashboard .legacyDashboardContent .bg-primary{background-color:var(--nc-primary)!important}
.studentDashboard .legacyDashboardContent .bg-primary.bg-opacity-10{background-color:rgba(0,88,112,.11)!important;color:var(--nc-primary)!important}
.studentDashboard .legacyDashboardContent .btn-outline-primary{color:var(--nc-primary);border-color:var(--nc-primary)}
.studentDashboard .legacyDashboardContent .btn-outline-primary:hover{color:#fff;background:var(--nc-primary);border-color:var(--nc-primary)}
.studentDashboard .legacyDashboardContent .badge.bg-secondary,.studentDashboard .legacyDashboardContent .badge.bg-info{background:#dcebea!important;color:#24474d!important}
.studentDashboard .legacyDashboardContent .alert-info{background:#e5f4f3;border-color:#b9dedb;color:#164f54}
.studentDashboard .legacyDashboardContent .form-check-input:checked{background-color:var(--nc-primary);border-color:var(--nc-primary)}
.studentDashboard .legacyDashboardContent .profileAvatarPlaceholder{background:linear-gradient(135deg,var(--nc-primary),var(--nc-accent));box-shadow:0 16px 34px rgba(0,88,112,.2)}
.studentDashboard .pagination{gap:5px;margin:22px 0 0;flex-wrap:wrap}.studentDashboard .page-link{min-width:36px;border-color:var(--nc-line);color:var(--nc-primary);border-radius:9px!important;text-align:center}.studentDashboard .page-item.active .page-link{background:var(--nc-primary);border-color:var(--nc-primary);color:#fff}.studentDashboard .page-item.disabled .page-link{color:#84979a;background:#f2f6f5}
.studentDashboard .dataTables_wrapper>.row:first-child,.studentDashboard .dataTables_wrapper>.row:last-child{display:none!important}.studentDashboard table.dataTable{width:100%!important;margin:0!important}.studentDashboard .table-responsive{overflow-x:visible}.studentDashboard .card-body.p-0>.table-responsive,.studentDashboard .card>.table-responsive{border-radius:inherit}
.studentDashboard .noticeTag{color:var(--nc-primary);background:#e7f3f2;border-radius:999px;padding:5px 9px;display:inline-flex}.studentDashboard .announcementList article.featured{border-color:#9fd1cd;box-shadow:0 18px 40px rgba(0,88,112,.08)}
.studentDashboard .noticeDate{background:#e5f3f2;color:var(--nc-primary)}
.studentDashboard .notificationButton{color:var(--nc-primary);font-size:18px}.studentDashboard .notificationButton .notificationCount{position:absolute;right:-5px;top:-7px;min-width:20px;height:20px;padding:0 5px;border:2px solid #fff;border-radius:999px;background:var(--nc-accent);color:#fff;display:flex;align-items:center;justify-content:center;font-size:9px;font-weight:800;line-height:1}
.studentDashboard .announcementList article{grid-template-columns:55px minmax(0,1fr)}.studentDashboard .announcementDetails summary{list-style:none;cursor:pointer}.studentDashboard .announcementDetails summary::-webkit-details-marker{display:none}.studentDashboard .announcementDetails .textAction{display:inline-block;margin-top:10px;font-size:10px;font-weight:800}.studentDashboard .announcementBody{margin-top:15px;padding:15px;border-radius:12px;background:#f0f7f6;color:#405b60;font-size:11px;line-height:1.75}
.studentDashboard .announcementHistory{display:grid;gap:12px}.studentDashboard .announcementHistory article{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;align-items:start;padding:18px;border:1px solid var(--nc-line);border-radius:15px;background:#fbfdfc}.studentDashboard .announcementHistory h3{margin:5px 0 7px;font-size:14px}.studentDashboard .announcementHistory p{margin:0 0 9px;color:#657a7e;font-size:10px;line-height:1.65;white-space:normal;overflow-wrap:anywhere}.studentDashboard .announcementHistory small{color:#829396}.studentDashboard .dashboardPagination nav{overflow:visible}
@media(max-width:900px){.studentDashboard .table-responsive{overflow-x:auto}.studentDashboard .announcementHistory article{grid-template-columns:1fr}.studentDashboard .announcementHistory form{justify-self:start}}

/* Square dashboard frames and image-free course catalogue */
.studentDashboard .dashboardBrand>a,.studentDashboard .dashboardProfile,.studentDashboard .dashboardSearch,.studentDashboard .notificationButton,.studentDashboard .dashboardWelcome,.studentDashboard .dashboardStats article,.studentDashboard .dashboardPanel,.studentDashboard .legacyDashboardContent .card,.studentDashboard .legacyDashboardContent .card-header,.studentDashboard .announcementList article,.studentDashboard .noticeDate,.studentDashboard .announcementBody,.studentDashboard .announcementHistory article,.studentDashboard .dashboardForm input,.studentDashboard .dashboardForm textarea,.studentDashboard .dashboardForm select,.studentDashboard .legacyDashboardContent .form-control,.studentDashboard .legacyDashboardContent .form-select,.studentDashboard .table-responsive,.studentDashboard .modal-content,.studentDashboard .alert,.studentDashboard .formAlert,.studentDashboard .resourceToolbar,.studentDashboard .miniSearch,.studentDashboard .assignmentList article,.studentDashboard .scheduleList a>strong,.studentDashboard .compactCourse,.studentDashboard .courseMark,.studentDashboard .statIcon,.studentDashboard .profileAvatarPlaceholder{border-radius:0!important}
.studentDashboard .courseCardGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.studentDashboard .dashboardCourseCard{min-width:0;border:1px solid var(--nc-line);border-radius:0;background:#fff;color:var(--nc-ink);display:flex;flex-direction:column;overflow:hidden;box-shadow:none;transition:border-color .2s,box-shadow .2s,transform .2s}.studentDashboard .dashboardCourseCard:hover{border-color:#8dbab8;box-shadow:0 14px 30px rgba(0,59,76,.08);transform:translateY(-2px)}
.studentDashboard .courseIdentity{height:118px;padding:22px;background:#edf4f3;border-bottom:1px solid var(--nc-line);display:flex;align-items:flex-end;justify-content:space-between;color:var(--nc-primary)}.studentDashboard .courseIdentity span{font-size:30px;font-weight:850;letter-spacing:-.05em}.studentDashboard .courseIdentity i{font-size:30px;opacity:.65}.studentDashboard .courseCardBody{padding:20px;display:flex;flex:1;flex-direction:column}.studentDashboard .courseCardTop{display:flex;justify-content:space-between;gap:12px;color:#607679;font-size:9px;font-weight:800;text-transform:uppercase}.studentDashboard .courseCardTop small{color:var(--nc-primary);font-size:9px}.studentDashboard .dashboardCourseCard h2{margin:15px 0 8px;color:var(--nc-ink);font-size:18px;line-height:1.35}.studentDashboard .dashboardCourseCard p{min-height:52px;margin:0;color:#6b7e81;font-size:10px;line-height:1.7}.studentDashboard .courseMeta{display:flex;flex-wrap:wrap;gap:8px 14px;margin:14px 0;color:#63777a;font-size:9px}.studentDashboard .courseMeta i{color:var(--nc-primary)}.studentDashboard .courseCardBottom{margin-top:auto;padding-top:16px;border-top:1px solid var(--nc-line);display:flex;align-items:center;justify-content:space-between;gap:12px}.studentDashboard .courseCardBottom strong{color:#345158;font-size:10px}.studentDashboard .courseCardBottom a,.studentDashboard .courseCardBottom button{border:0;background:transparent;color:var(--nc-primary);font-size:10px;font-weight:800;text-decoration:none}.studentDashboard .courseCardBottom form{margin:0}
.studentDashboard .notificationButton{overflow:visible}.studentDashboard .notificationButton .notificationCount{right:-8px;top:-8px;min-width:22px;height:22px;padding:0 6px;border:3px solid #fff;border-radius:999px;background:#e11d48;color:#fff;font-size:10px;box-shadow:0 2px 8px rgba(145,16,48,.22)}
.studentDashboard .navGlyph{font-size:15px;line-height:1}.studentDashboard .statIcon i,.studentDashboard .courseMark i{font-size:17px}
@media(max-width:1100px){.studentDashboard .courseCardGrid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.studentDashboard .courseCardGrid{grid-template-columns:1fr}}

/* Portal accessibility, workflow and audit surfaces */
.studentDashboard .dashboardSidebar,.studentDashboard .dashboardSidebar a,.studentDashboard .dashboardSidebar button{color:#d9eaed}.studentDashboard .dashboardProfile strong,.studentDashboard .dashboardSidebar .active,.studentDashboard .dashboardSidebar .active *{color:#fff}.studentDashboard .dashboardWelcome,.studentDashboard .dashboardWelcome h1,.studentDashboard .dashboardWelcome h2,.studentDashboard .dashboardWelcome p{color:#fff}.studentDashboard .legacyDashboardContent .card-header,.studentDashboard .legacyDashboardContent .card-header h1,.studentDashboard .legacyDashboardContent .card-header h2,.studentDashboard .legacyDashboardContent .card-header h3,.studentDashboard .legacyDashboardContent .card-header h4,.studentDashboard .legacyDashboardContent .card-header h5,.studentDashboard .legacyDashboardContent .table-dark,.studentDashboard .legacyDashboardContent .table-dark th{color:#fff!important}.studentDashboard .bg-success,.studentDashboard .bg-danger,.studentDashboard .bg-primary,.studentDashboard .badge.bg-success,.studentDashboard .badge.bg-danger,.studentDashboard .badge.bg-primary{color:#fff!important}.studentDashboard .btn-light{color:#17343a!important}.studentDashboard .text-warning{color:#946200!important}.studentDashboard .table-primary{--bs-table-bg:#e2f2f0;--bs-table-color:#17343a}
.publicationActions,.assignmentActions{display:flex;align-items:center;gap:7px;flex-wrap:nowrap}.publicationActions form,.assignmentActions form{display:flex;margin:0}.publicationActions .btn,.assignmentActions .btn{width:38px;height:38px;padding:0;display:inline-flex;align-items:center;justify-content:center;flex:0 0 38px}.publicationActions .bi,.assignmentActions .bi{font-size:15px;line-height:1}
.adminCourseIdentity{height:220px;padding:28px;background:#edf4f3;border-bottom:1px solid var(--nc-line);display:flex;align-items:flex-end;justify-content:space-between;color:var(--nc-primary)}.adminCourseIdentity>span{font-size:48px;font-weight:850;letter-spacing:-.06em}.adminCourseIdentity>div{display:grid;justify-items:end;gap:8px}.adminCourseIdentity i{font-size:36px}.adminCourseIdentity small{color:#4f7075;font-size:10px;font-weight:750}
.courseStatGrid small{display:block;white-space:nowrap;font-size:9px}.courseStatGrid .fs-4{font-size:1.35rem!important}
.bookingSummary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px;align-items:stretch}.bookingSummary>div{display:flex;min-width:0}.bookingSummary .card{width:100%;height:100%;min-height:128px;justify-content:center}.bookingSummary .card h3{line-height:1.15}
.enquirySubject{display:block;color:var(--nc-ink);text-decoration:none}.enquirySubject p{color:#697d81;font-size:10px;line-height:1.6}.enquirySubject span{color:var(--nc-primary);font-size:9px;font-weight:800}.enquiryDetail{max-width:900px}.enquirySender{display:grid;grid-template-columns:auto 1fr auto;gap:15px;align-items:center;padding-bottom:20px;border-bottom:1px solid var(--nc-line)}.enquirySender>div:nth-child(2){display:grid;gap:3px}.enquirySender a{color:var(--nc-primary);font-size:11px}.enquiryMessage{margin:25px 0;padding:24px;background:#f5f8f7;color:#203b40;font-size:13px;line-height:1.85;white-space:normal;overflow-wrap:anywhere}
.gradingForm{display:grid;gap:9px}.gradingForm label{display:grid;gap:5px;color:#40575b;font-size:9px;font-weight:750}.gradingForm .form-control{font-size:10px}.auditFilters{display:grid;grid-template-columns:1.2fr 1.4fr 1fr 1fr auto auto;gap:12px;align-items:end;margin-bottom:24px}.auditFilters label{display:grid;gap:6px;color:#40575b;font-size:9px;font-weight:750}.auditFilters input,.auditFilters select{height:42px;border:1px solid var(--nc-line);border-radius:0;padding:0 11px;background:#fff}.auditFilters .outlineAction{text-decoration:none;text-align:center}
.confirmationModal{border:0!important;border-radius:0!important}.confirmationModal .modal-header{background:#fff!important;color:var(--nc-ink)!important}.confirmationModal .modal-header span{color:var(--nc-primary);font-size:9px;font-weight:800;text-transform:uppercase}.confirmationModal .modal-header h2{margin:4px 0 0;color:var(--nc-ink)!important;font-size:18px}.confirmationModal .modal-body p{margin:0;color:#50666a;line-height:1.65}
@media(max-width:900px){.auditFilters{grid-template-columns:1fr 1fr}.publicationActions,.assignmentActions{flex-wrap:wrap}}@media(max-width:700px){.bookingSummary{grid-template-columns:1fr}}@media(max-width:560px){.auditFilters{grid-template-columns:1fr}.enquirySender{grid-template-columns:auto 1fr}.enquirySender>.noticeTag{grid-column:1/-1;width:max-content}}
.portalResourceGrid,.portalStoreGrid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.portalResourceGrid article,.portalStoreGrid article{display:flex;flex-direction:column}.resourceMeta{display:grid;grid-template-columns:48px minmax(0,1fr);gap:14px;align-items:center}.resourceMeta .resourceFile{width:48px;height:48px;display:grid;place-items:center;background:#e5f3f2;color:var(--nc-primary);font-size:20px}.resourceMeta>span{min-width:0;color:#557176;font-size:9px;font-weight:800;line-height:1.45;text-transform:uppercase;overflow-wrap:anywhere}.portalResourceGrid h2,.portalStoreGrid h2{margin:20px 0 8px;font-size:17px}.portalResourceGrid p,.portalStoreGrid p{color:#647a7e;font-size:10px;line-height:1.7;flex:1}.portalResourceGrid .resourceAction{align-self:flex-start;padding:10px 15px;font-size:9px;text-decoration:none}.storeIdentity{min-height:105px;padding:20px;margin:-26px -26px 18px;background:#edf4f3;border-bottom:1px solid var(--nc-line);color:var(--nc-primary);display:flex;align-items:flex-end;justify-content:space-between}.storeIdentity i{font-size:31px}.storeIdentity span{font-size:9px;font-weight:800;text-transform:uppercase}.portalStoreGrid article>div:last-child{display:flex;justify-content:space-between;align-items:center;gap:15px;padding-top:15px;border-top:1px solid var(--nc-line)}.portalStoreGrid article>div:last-child a{color:var(--nc-primary);font-size:10px;font-weight:800;text-decoration:none}.portalProductDetail{margin-top:22px;display:grid;grid-template-columns:280px 1fr;gap:30px}.portalProductDetail .storeIdentity{min-height:300px;margin:-26px 0 -26px -26px;align-items:center;justify-content:center;flex-direction:column;gap:20px}.portalProductDetail .storeIdentity i{font-size:70px}.portalProductDetail h1{margin:14px 0;font-size:30px}.portalProductDetail>div:last-child>strong{display:block;color:var(--nc-primary);font-size:22px}.portalProductDetail p{margin:20px 0;color:#536b70;line-height:1.75}.portalProductDetail .primaryAction{display:inline-flex;text-decoration:none}.portalCheckout{max-width:720px;margin:22px auto}.portalCheckout h1{margin:14px 0 7px}.portalCheckout>p{color:#607579}.portalCheckout>small{display:block;margin-top:15px;color:#6c8084}.portalOrderSummary{display:grid;grid-template-columns:90px 1fr auto;gap:18px;align-items:center;margin:24px 0;padding:18px 0;border-top:1px solid var(--nc-line);border-bottom:1px solid var(--nc-line)}.portalOrderSummary .storeIdentity{min-height:82px;margin:0;justify-content:center}.portalOrderSummary h2{font-size:15px}.portalOrderSummary span{color:#6f8285;font-size:10px}.portalOrderSummary>strong{color:var(--nc-primary);font-size:18px}.purchaseChoice{display:flex;flex-wrap:wrap;gap:10px;margin-top:18px}

.courseAccessToolbar{display:flex;justify-content:flex-end;margin-bottom:22px}.courseCodeSearch{width:min(100%,520px);height:46px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:stretch;border:1px solid var(--nc-line);background:#fff}.courseCodeSearch>i{display:grid;place-items:center;color:var(--nc-primary)}.courseCodeSearch input{min-width:0;border:0;outline:0;padding:0 8px;color:var(--nc-ink);font-size:10px}.courseCodeSearch button{border:0;border-left:1px solid var(--nc-primary);padding:0 18px;background:var(--nc-primary);color:#fff;font-size:9px;font-weight:800}.courseCodeSearch button:hover{background:var(--nc-primary-dark)}
@media(max-width:950px){.portalResourceGrid,.portalStoreGrid{grid-template-columns:repeat(2,1fr)}.portalProductDetail{grid-template-columns:1fr}.portalProductDetail .storeIdentity{min-height:180px;margin:-26px -26px 0}}@media(max-width:620px){.portalResourceGrid,.portalStoreGrid{grid-template-columns:1fr}.portalOrderSummary{grid-template-columns:70px 1fr}.portalOrderSummary>strong{grid-column:2}}
.studentGrade{margin:15px 0;padding:18px;border-left:4px solid var(--nc-accent);background:#edf7f6}.studentGrade>span{display:block;color:#587074;font-size:9px;font-weight:800;text-transform:uppercase}.studentGrade>strong{display:block;margin:3px 0 12px;color:var(--nc-primary);font-size:28px}.studentGrade div{padding-top:12px;border-top:1px solid #cfe3e0}.studentGrade p{margin:6px 0 0;color:#415d62;font-size:10px;line-height:1.7}

.walletAccountHeader{min-height:64px;display:flex;align-items:center;justify-content:space-between;gap:16px;background:#004a5f!important;color:#fff!important}.walletAccountHeader strong,.walletAccountHeader strong i{color:#fff!important}.walletAccountAction{border:1px solid rgba(255,255,255,.58);background:transparent;color:#fff!important;display:inline-flex;align-items:center;gap:7px;padding:8px 11px;font-size:10px;font-weight:800}.walletAccountAction i{color:#fff!important}.walletAccountAction:hover,.walletAccountAction:focus{background:#fff;color:#004a5f!important;text-decoration:none}.walletAccountAction:hover i,.walletAccountAction:focus i{color:#004a5f!important}.walletBankModal .modal-header{background:#005870!important;color:#fff!important}.walletBankModal .walletModalHeading small{display:block;margin-bottom:4px;color:#d8eef1!important;opacity:1!important}.walletBankModal .modal-title,.walletBankModal .modal-title i{color:#fff!important}.walletBankModal .btn-close{filter:var(--bs-btn-close-white-filter);opacity:.9}.walletEmptyAccount{min-height:150px;display:grid;grid-template-columns:48px 1fr;gap:15px;align-items:center;padding:18px;background:#f2f8f7;border:1px solid var(--nc-line)}.walletEmptyAccount>i{width:48px;height:48px;display:grid;place-items:center;background:#dcefed;color:var(--nc-primary);font-size:21px}.walletEmptyAccount strong{display:block;color:var(--nc-ink);font-size:12px}.walletEmptyAccount p{margin:5px 0 0;color:#647a7e;font-size:10px;line-height:1.6}.walletEmptyAccount .primaryAction{grid-column:2;justify-self:start}.withdrawalDestination{margin:20px 0;display:grid;grid-template-columns:44px 1fr;gap:12px;align-items:center;padding:14px;background:#f2f8f7;border:1px solid var(--nc-line)}.withdrawalDestination>i{font-size:21px;color:var(--nc-primary)}.withdrawalDestination div{display:grid;gap:3px}.withdrawalDestination span{color:#6b7f83;font-size:8px;font-weight:800;text-transform:uppercase}.withdrawalDestination strong{font-size:11px}.withdrawalDestination small{color:#61777b;font-size:9px}@media(max-width:520px){.walletAccountHeader{align-items:flex-start;flex-direction:column}.walletEmptyAccount{grid-template-columns:1fr}.walletEmptyAccount .primaryAction{grid-column:1}.assignmentIcon{width:52px;height:52px}}

/* Portal contrast floor: all secondary copy remains readable on light surfaces. */
.studentDashboard .dashboardPageHeading p,
.studentDashboard .dashboardStats small,
.studentDashboard .assignmentSummary span,
.studentDashboard .assignmentList p,
.studentDashboard .scheduleList span,
.studentDashboard .scheduleList p,
.studentDashboard .dashboardCourseCard p,
.studentDashboard .courseMeta,
.studentDashboard .announcementHistory p,
.studentDashboard .announcementHistory small,
.studentDashboard .enquiryPreview,
.studentDashboard .notificationList p{color:#4d6468!important}
.studentDashboard .statusPill.amber{color:#764400}
.studentDashboard .statusPill.gray{color:#46575a}
.studentDashboard .page-item.disabled .page-link{color:#526669;background:#f2f6f5}
.studentDashboard .dashboardSidebar .navGroupLabel{color:#b1d0d5}
.studentDashboard .dashboardProfile span,.studentDashboard .topbarUser span{color:#9fc6cd}
.studentDashboard .legacyDashboardContent .btn-outline-danger{color:#a51d2d;border-color:#a51d2d}
.portalCheckoutSuccess{max-width:760px;text-align:center;margin:0 auto}.checkoutSuccessIcon{width:64px;height:64px;margin:0 auto 18px;display:grid;place-items:center;background:#d9f2f0;color:#087672;font-size:28px}.portalCheckoutSuccess .transactionDetails{margin:24px 0;text-align:left}.portalCheckoutActions{display:flex;align-items:center;justify-content:center;gap:18px;flex-wrap:wrap}.portalCheckoutActions .primaryAction{display:inline-flex;align-items:center;gap:8px;text-decoration:none}.portalCheckoutActions .textAction{margin:0}
.studentDashboard .enquirySubject p{color:#40585d!important}.studentDashboard .card.bg-primary.text-white h1,.studentDashboard .card.bg-primary.text-white h5{color:#fff!important;opacity:1!important}.studentDashboard .badge.bg-primary.bg-opacity-10{background:#e4f0f1!important;color:#00485d!important}

/* Compact public archive controls: the shared hero now carries the page introduction. */
.publicationUtility{display:flex;justify-content:flex-end;margin-bottom:14px}.publicationUtility a{color:#536174;font-size:11px;font-weight:650;text-decoration:underline;text-underline-offset:4px}.publicationUtility a:hover,.publicationUtility a:focus{color:var(--blue)}
.publicationFilters{gap:8px;margin-bottom:24px;padding:8px;border-radius:12px;box-shadow:none}.publicationFilters input,.publicationFilters select{height:42px;border-radius:8px;font-size:12px}.publicationFilters input{padding-left:42px}
.resourceTabs{gap:4px;margin-bottom:20px;padding:4px;border-radius:11px}.resourceTabs button{padding:8px 12px;border-radius:7px;font-size:10px}.resourceTabs button.active{box-shadow:0 5px 14px rgba(49,87,229,.16)}
.publicationArchive,.resourceLibrary,.blogArchive,.storeArchive{padding-top:64px}
.contactEmailOnly{align-self:start;padding-top:12px}.contactEmailOnly>span{display:block;margin-bottom:10px;color:var(--blue);font-size:10px;font-weight:800;text-transform:uppercase}.contactEmailOnly>a{color:var(--ink);font-size:clamp(18px,2vw,25px);font-weight:700;text-decoration:underline;text-underline-offset:6px;overflow-wrap:anywhere}.contactEmailOnly>a:hover,.contactEmailOnly>a:focus{color:var(--blue)}
@media(max-width:700px){.publicationArchive,.resourceLibrary,.blogArchive,.storeArchive{padding-top:42px}.publicationUtility{margin-bottom:10px}.publicationUtility a{font-size:10px}.publicationFilters{gap:6px;padding:6px}.publicationFilters input,.publicationFilters select{height:38px;font-size:11px}.resourceTabs{width:max-content;max-width:100%;margin-bottom:16px;overflow-x:auto}.resourceTabs button{flex:0 0 auto;padding:7px 10px;font-size:9px}.contactEmailOnly{padding:0}}

/* Cloudflare Turnstile stays aligned with the surrounding public form. */
.dashboardTableEmptyRow td{padding:0!important}.dashboardTableEmpty{min-height:210px;padding:38px 24px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:#f8fbfb;color:#536b70}.dashboardTableEmpty i{width:52px;height:52px;margin-bottom:15px;display:grid;place-items:center;background:#e1f1f1;color:#006b72;font-size:24px}.dashboardTableEmpty strong{margin-bottom:6px;color:#0b3039;font-size:17px}.dashboardTableEmpty span{max-width:470px;font-size:14px;line-height:1.6}
.turnstileField{width:100%;margin:4px 0 12px}.turnstileField .cf-turnstile{max-width:100%}.turnstileError,.turnstileConfigurationError{margin:8px 0 0;color:#a51d2d;font-size:13px;font-weight:650}.turnstileConfigurationError{padding:12px;border:1px solid #dfabb2;background:#fff4f5}

/* Student overview statistics always share the full row equally. */
.studentDashboard:not(.academicDashboard) .dashboardStats{width:100%;grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.studentDashboard:not(.academicDashboard) .dashboardStats article{width:100%;height:100%;min-width:0}.studentDashboard:not(.academicDashboard) .dashboardStats article>div:last-child{min-width:0}@media(max-width:700px){.studentDashboard:not(.academicDashboard) .dashboardStats{grid-template-columns:1fr}}
