:root{
  --primary:#2563eb;
  --primary-2:#4f46e5;
  --cyan:#06b6d4;
  --ink:#0f172a;
  --text:#526078;
  --muted:#64748b;
  --surface:#ffffff;
  --surface-2:#f6f9fd;
  --surface-3:#eef4ff;
  --border:rgba(15,23,42,.10);
  --header:rgba(255,255,255,.90);
  --shadow:0 24px 70px rgba(37,99,235,.14);
  --container:1200px;
}
html[data-theme=dark]{
  --ink:#f8fafc;
  --text:#cbd5e1;
  --muted:#94a3b8;
  --surface:#09111f;
  --surface-2:#0e192b;
  --surface-3:#13223a;
  --border:rgba(255,255,255,.10);
  --header:rgba(9,17,31,.90);
  --shadow:0 24px 70px rgba(0,0,0,.32);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{
  margin:0;
  background:var(--surface);
  color:var(--text);
  font-family:Inter,Arial,sans-serif;
  line-height:1.65;
  overflow-x:hidden;
}
h1,h2,h3,h4{
  margin-top:0;
  color:var(--ink);
  font-family:Manrope,Inter,sans-serif;
  line-height:1.12;
}
a{text-decoration:none;color:inherit}
button,input,select,textarea{font:inherit}
.container{width:min(calc(100% - 40px),var(--container));margin-inline:auto}
.section{padding:104px 0}
.section-soft{background:var(--surface-2)}
.btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:44px;
  padding:11px 20px;
  border:1px solid transparent;
  border-radius:999px;
  font-weight:800;
  transition:.22s ease;
}
.btn:hover{transform:translateY(-2px)}
.btn-primary{
  color:#fff;
  background:linear-gradient(135deg,var(--primary),var(--primary-2));
  box-shadow:0 14px 32px rgba(37,99,235,.24);
}
.btn-outline,.btn-soft{
  color:var(--ink);
  background:var(--surface);
  border-color:var(--border);
}
.btn-light{background:#fff;color:#1d4ed8}
.btn-lg{min-height:52px;padding:14px 24px}
.block{width:100%}
.pwa-nav-install{display:inline-flex;align-items:center;gap:8px;min-height:42px;padding:9px 14px;border:1px solid color-mix(in srgb,var(--primary) 35%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--primary) 9%,var(--surface));color:var(--primary);font-weight:800;cursor:pointer}.pwa-nav-install svg{width:18px;height:18px;flex:0 0 18px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.pwa-nav-install b{font-size:.76rem;white-space:nowrap}
[data-pwa-install][hidden]{display:none!important}
.pwa-install-dialog{position:fixed;inset:0;z-index:3000;display:grid;place-items:center;padding:20px}.pwa-install-dialog[hidden]{display:none}.pwa-install-backdrop{position:absolute;inset:0;background:rgba(2,6,23,.68);backdrop-filter:blur(5px)}.pwa-install-dialog section{position:relative;width:min(100%,420px);padding:32px;border:1px solid var(--border);border-radius:24px;background:var(--surface);color:var(--text);box-shadow:0 28px 80px rgba(2,6,23,.32);text-align:center}.pwa-install-dialog h2{margin:16px 0 8px;color:var(--ink)}.pwa-install-dialog p{margin:0 0 20px;line-height:1.65}.pwa-install-close{position:absolute;right:12px;top:10px;width:36px;height:36px;border:0;background:transparent;color:var(--muted);font-size:1.5rem;cursor:pointer}.pwa-install-icon{width:62px;height:62px;margin:auto;display:grid;place-items:center;border-radius:18px;background:linear-gradient(135deg,#0b2a66,#2563eb);color:#fff;font-weight:900}

.site-header{
  position:fixed;
  inset:0 0 auto;
  z-index:100;
  height:78px;
  display:flex;
  align-items:center;
  transition:.2s ease;
}
.site-header.scrolled{
  background:var(--header);
  border-bottom:1px solid var(--border);
  backdrop-filter:blur(18px);
}
.nav-wrap{display:flex;align-items:center;justify-content:space-between;gap:22px}
.brand{
  display:flex;
  align-items:center;
  gap:10px;
  color:var(--ink);
  font:800 1.18rem Manrope,sans-serif;
}
.brand>span:last-child>span{color:var(--primary)}
.brand-orbit{position:relative;width:42px;height:42px;flex:none}
.brand-orbit i{
  position:absolute;
  width:25px;height:25px;
  left:8px;top:8px;
  border-radius:50%;
  background:linear-gradient(135deg,#38bdf8,#2563eb);
}
.brand-orbit b{
  position:absolute;
  width:41px;height:18px;
  left:0;top:12px;
  border:2px solid #60a5fa;
  border-radius:50%;
  transform:rotate(-20deg);
}
nav{display:flex;align-items:center;gap:22px}
nav a{color:var(--ink);font-size:.88rem;font-weight:700}
.nav-actions{display:flex;align-items:center;gap:9px}
.theme-btn{
  width:42px;height:42px;
  border:1px solid var(--border);
  border-radius:50%;
  background:var(--surface);
  color:var(--ink);
  cursor:pointer;
}
.menu-btn{
  display:none;
  border:0;
  background:transparent;
  color:var(--ink);
  font-size:1.4rem;
}

.hero{
  position:relative;
  padding:150px 0 38px;
  overflow:hidden;
  background:
    radial-gradient(circle at 82% 18%,rgba(37,99,235,.16),transparent 28%),
    radial-gradient(circle at 15% 42%,rgba(6,182,212,.10),transparent 28%),
    linear-gradient(180deg,#f6f9ff 0%,var(--surface) 82%);
}
html[data-theme=dark] .hero{
  background:
    radial-gradient(circle at 82% 18%,rgba(37,99,235,.22),transparent 28%),
    radial-gradient(circle at 15% 42%,rgba(6,182,212,.12),transparent 28%),
    linear-gradient(180deg,#0a1426 0%,var(--surface) 82%);
}
.hero-orb{position:absolute;border-radius:50%;filter:blur(2px);pointer-events:none}
.hero-orb-a{width:330px;height:330px;right:-160px;top:150px;border:1px solid rgba(37,99,235,.18)}
.hero-orb-b{width:220px;height:220px;left:-120px;top:340px;border:1px solid rgba(6,182,212,.18)}
.hero-grid{
  position:relative;
  display:grid;
  grid-template-columns:.92fr 1.08fr;
  gap:62px;
  align-items:center;
}
.eyebrow{
  display:inline-flex;
  padding:8px 13px;
  border:1px solid rgba(37,99,235,.20);
  border-radius:999px;
  color:var(--primary);
  background:rgba(37,99,235,.05);
  font-size:.76rem;
  font-weight:800;
  letter-spacing:.09em;
}
.hero h1{
  margin:22px 0;
  max-width:700px;
  font-size:clamp(3rem,5.7vw,5.15rem);
  letter-spacing:-.06em;
}
.hero h1 span{
  background:linear-gradient(135deg,#2563eb,#06b6d4);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
.hero-lead{max-width:680px;font-size:1.08rem}
.hero-actions{display:flex;gap:12px;flex-wrap:wrap;margin:30px 0 24px}
.hero-points{display:flex;gap:10px 18px;flex-wrap:wrap}
.hero-points span{font-size:.79rem;font-weight:700;color:var(--ink)}

.product-preview{position:relative}
.preview-window{
  overflow:hidden;
  border:1px solid rgba(255,255,255,.8);
  border-radius:26px;
  background:rgba(255,255,255,.82);
  box-shadow:var(--shadow);
  backdrop-filter:blur(18px);
}
html[data-theme=dark] .preview-window{
  border-color:rgba(255,255,255,.10);
  background:rgba(15,23,42,.86);
}
.preview-top{
  height:56px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  padding:0 18px;
  border-bottom:1px solid var(--border);
}
.preview-brand,.preview-user{display:flex;align-items:center;gap:9px}
.preview-brand span,.preview-user span{
  width:31px;height:31px;
  display:grid;place-items:center;
  border-radius:9px;
  background:#dbeafe;
  color:#1d4ed8;
  font-size:.68rem;
  font-weight:800;
}
.preview-brand b{color:var(--ink);font-size:.75rem}
.preview-user i{color:var(--muted);font-size:.65rem;font-style:normal}
.preview-layout{display:grid;grid-template-columns:64px 1fr;min-height:450px}
.preview-sidebar{
  padding:17px 12px;
  background:linear-gradient(180deg,#172554,#111827);
  display:flex;
  flex-direction:column;
  align-items:center;
  gap:17px;
}
.preview-sidebar strong{
  width:38px;height:38px;
  display:grid;place-items:center;
  border-radius:11px;
  background:#2563eb;color:#fff;
}
.preview-sidebar i{
  width:28px;height:28px;
  border:1px solid rgba(255,255,255,.15);
  border-radius:8px;
}
.preview-sidebar i.active{background:rgba(96,165,250,.35);border-color:#60a5fa}
.preview-main{padding:22px;background:var(--surface-2)}
.preview-welcome{display:flex;justify-content:space-between;align-items:center;gap:10px}
.preview-welcome small{font-size:.57rem;color:var(--primary);font-weight:800}
.preview-welcome h3{margin:4px 0 0;font-size:1.12rem}
.preview-welcome button{
  border:0;border-radius:9px;padding:8px 10px;
  background:#22c55e;color:#fff;font-size:.65rem;font-weight:800;
}
.preview-metrics{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:17px 0}
.preview-metrics article{
  padding:13px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface);
}
.preview-metrics span,.preview-metrics small{display:block;font-size:.58rem}
.preview-metrics strong{display:block;color:var(--ink);font-size:1.2rem}
.preview-metrics small{color:var(--muted)}
.preview-panels{display:grid;grid-template-columns:1.25fr .75fr;gap:10px}
.preview-panels article{
  min-height:195px;padding:15px;
  border:1px solid var(--border);
  border-radius:14px;
  background:var(--surface);
}
.preview-chart>div:first-child{display:flex;justify-content:space-between;gap:10px}
.preview-chart b,.preview-list b{color:var(--ink);font-size:.7rem}
.preview-chart small{font-size:.58rem}
.workflow-bars{height:140px;display:flex;align-items:flex-end;gap:8px;padding-top:18px}
.workflow-bars i{
  flex:1;height:var(--h);
  border-radius:5px 5px 0 0;
  background:linear-gradient(#60a5fa,#2563eb);
}
.preview-list p{display:flex;align-items:center;gap:8px;font-size:.63rem;margin:15px 0}
.preview-list p span{
  width:24px;height:24px;display:grid;place-items:center;
  border-radius:7px;background:#eef4ff;color:#2563eb;font-weight:800;
}
.floating-chip{
  position:absolute;z-index:3;
  min-width:180px;padding:11px 14px;
  border-radius:14px;background:#fff;
  box-shadow:0 18px 45px rgba(15,23,42,.16);
  animation:float 4.5s ease-in-out infinite;
}
.floating-chip b,.floating-chip small{display:block;color:#0f172a}
.floating-chip b{font-size:.76rem}
.floating-chip small{font-size:.6rem}
.chip-one{left:-28px;top:-24px}
.chip-two{right:-24px;bottom:25px;animation-delay:1.3s}
.promise-strip{
  display:grid;
  grid-template-columns:repeat(4,1fr);
  margin-top:72px;
  border:1px solid var(--border);
  border-radius:18px;
  background:var(--surface);
  box-shadow:0 12px 35px rgba(15,23,42,.05);
}
.promise-strip div{padding:18px 20px;border-right:1px solid var(--border)}
.promise-strip div:last-child{border-right:0}
.promise-strip strong,.promise-strip span{display:block}
.promise-strip strong{color:var(--ink);font-size:.84rem}
.promise-strip span{font-size:.69rem}

.section-head{max-width:720px;margin-bottom:48px}
.section-head.center{text-align:center;margin-inline:auto}
.section-head>span,.pricing-copy>span,.light-kicker{
  color:var(--primary);
  font-size:.73rem;
  font-weight:800;
  letter-spacing:.12em;
}
.section-head h2{
  margin:13px 0;
  font-size:clamp(2.1rem,4vw,3.35rem);
  letter-spacing:-.045em;
}
.value-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}
.value-card{
  padding:28px;
  border:1px solid var(--border);
  border-radius:20px;
  background:var(--surface);
  box-shadow:0 10px 30px rgba(15,23,42,.05);
  transition:.22s ease;
}
.value-card:hover{transform:translateY(-5px);box-shadow:var(--shadow)}
.value-icon{
  width:48px;height:48px;display:grid;place-items:center;
  border-radius:14px;background:#eaf2ff;color:#2563eb;font-weight:800;
}
.value-card h3{margin:18px 0 9px}
.value-card p{margin:0;font-size:.88rem}

.module-groups{display:grid;grid-template-columns:repeat(2,1fr);gap:20px}
.module-group{
  overflow:hidden;
  border:1px solid var(--border);
  border-radius:22px;
  background:var(--surface);
}
.module-group-head{padding:24px 25px 19px;border-bottom:1px solid var(--border)}
.module-group-head>span{color:var(--primary);font-weight:800}
.module-group-head p{margin:7px 0 0;font-size:.83rem}
.module-list{padding:8px 24px 18px}
.module-list>div{display:flex;gap:11px;padding:14px 0;border-bottom:1px solid var(--border)}
.module-list>div:last-child{border-bottom:0}
.module-list i{
  width:26px;height:26px;flex:none;display:grid;place-items:center;
  border-radius:8px;background:#dcfce7;color:#15803d;font-style:normal;font-size:.7rem;
}
.module-list p{margin:0}
.module-list b,.module-list small{display:block}
.module-list b{color:var(--ink);font-size:.84rem}
.module-list small{margin-top:3px;font-size:.72rem}

.portals-section{overflow:hidden}
.portal-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.portal-card{
  position:relative;
  overflow:hidden;
  min-height:430px;
  padding:28px;
  border:1px solid var(--border);
  border-radius:24px;
  background:var(--surface);
  box-shadow:0 12px 35px rgba(15,23,42,.06);
}
.portal-label{
  display:inline-block;padding:6px 9px;border-radius:999px;
  background:#eaf2ff;color:#2563eb;font-size:.65rem;font-weight:800;
}
.portal-card h3{margin:18px 0 10px;font-size:1.45rem}
.portal-card p{font-size:.85rem}
.portal-screen{
  position:absolute;left:26px;right:26px;bottom:-20px;
  min-height:160px;padding:17px;
  border:1px solid var(--border);border-radius:18px 18px 0 0;
  background:var(--surface-2);box-shadow:0 -12px 35px rgba(15,23,42,.08);
}
.portal-screen>i{
  display:inline-block;width:9px;height:9px;margin-right:4px;
  border-radius:50%;background:#cbd5e1;
}
.portal-screen>div{margin-top:34px;padding:16px;border-radius:12px;background:var(--surface)}
.portal-screen b,.portal-screen span{display:block}
.portal-screen b{color:var(--ink);font-size:.85rem}
.portal-screen span{font-size:.68rem}
.portal-card.teacher .portal-label{background:#ecfdf5;color:#15803d}
.portal-card.parent .portal-label{background:#f5f3ff;color:#6d28d9}

.white-label-section{
  background:
    radial-gradient(circle at 85% 20%,rgba(6,182,212,.18),transparent 30%),
    linear-gradient(135deg,#0f172a,#172554 62%,#0c4a6e);
  color:#cbd5e1;
}
.white-label-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}
.white-label-section h2{
  margin:12px 0 16px;color:#fff;
  font-size:clamp(2.2rem,4vw,3.6rem);letter-spacing:-.045em;
}
.white-label-list{display:grid;gap:14px;margin-top:28px}
.white-label-list>div{display:flex;gap:13px}
.white-label-list i{
  width:39px;height:39px;flex:none;display:grid;place-items:center;
  border-radius:11px;background:rgba(96,165,250,.15);
  color:#bfdbfe;font-style:normal;font-size:.68rem;font-weight:800;
}
.white-label-list p{margin:0}
.white-label-list b,.white-label-list small{display:block}
.white-label-list b{color:#fff}
.white-label-list small{font-size:.75rem}
.domain-demo{
  overflow:hidden;border:1px solid rgba(255,255,255,.13);
  border-radius:24px;background:#fff;box-shadow:0 30px 80px rgba(0,0,0,.3);
}
.browser-bar{
  height:50px;display:flex;align-items:center;gap:18px;padding:0 17px;
  background:#eaf0f7;color:#64748b;font-size:.68rem;
}
.browser-bar b{color:#334155}
.domain-body{padding:45px 55px;text-align:center;color:#475569}
.domain-logo{
  width:70px;height:70px;margin:0 auto 15px;display:grid;place-items:center;
  border-radius:18px;background:linear-gradient(135deg,#0ea5e9,#2563eb);
  color:#fff;font-weight:800;font-size:1.3rem;
}
.domain-body small{color:#2563eb;font-weight:800;letter-spacing:.12em}
.domain-body h3{margin:7px 0 3px;color:#0f172a;font-size:1.9rem}
.domain-body p{margin:0 0 24px}
.domain-login{display:grid;gap:10px}
.domain-login span{
  padding:11px 13px;border:1px solid #dbe3ef;border-radius:9px;
  text-align:left;color:#94a3b8;font-size:.7rem;
}
.domain-login button{
  border:0;border-radius:9px;padding:11px;background:#2563eb;color:#fff;font-weight:800;
}
.domain-body em{display:block;margin-top:20px;color:#94a3b8;font-size:.62rem}

.pricing-panel{
  display:grid;grid-template-columns:.95fr 1.05fr;gap:45px;
  padding:48px;border:1px solid var(--border);border-radius:28px;
  background:linear-gradient(135deg,var(--surface),var(--surface-2));
  box-shadow:var(--shadow);
}
.pricing-copy h2{margin:12px 0 15px;font-size:clamp(2.1rem,4vw,3.2rem)}
.price-range{margin:28px 0 12px}
.price-range strong{display:block;color:var(--ink);font:800 clamp(2.5rem,5vw,4.4rem) Manrope}
.price-range span{font-weight:700}
.pricing-copy>small{display:block;font-size:.72rem}
.pricing-includes{
  padding:28px;border-radius:20px;background:#0f172a;color:#cbd5e1;
}
.pricing-includes h3{color:#fff}
.include-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px 14px;margin:20px 0 25px}
.include-grid span{font-size:.76rem}

.faq-grid{display:grid;grid-template-columns:.82fr 1.18fr;gap:65px}
.faq-list{display:grid;gap:11px}
.faq-item{
  overflow:hidden;border:1px solid var(--border);
  border-radius:17px;background:var(--surface);
}
.faq-item button{
  width:100%;display:flex;justify-content:space-between;gap:20px;
  padding:19px 20px;border:0;background:transparent;
  color:var(--ink);font-weight:800;text-align:left;cursor:pointer;
}
.faq-item button i{font-size:1.15rem;transition:.2s}
.faq-item>div{max-height:0;overflow:hidden;transition:.3s ease}
.faq-item p{padding:0 20px 20px;margin:0;font-size:.84rem}
.faq-item.open>div{max-height:260px}
.faq-item.open button i{transform:rotate(45deg)}

.contact-box{
  display:grid;grid-template-columns:.9fr 1.1fr;gap:55px;
  padding:55px;border-radius:30px;
  background:linear-gradient(135deg,#1d4ed8,#4338ca 62%,#0e7490);
  box-shadow:var(--shadow);
}
.contact-copy h2{color:#fff;margin:12px 0 16px;font-size:clamp(2.2rem,4vw,3.4rem)}
.contact-copy p{color:#dbeafe}
.contact-benefits{display:grid;gap:8px;margin-top:24px}
.contact-benefits span{color:#e0f2fe;font-size:.82rem;font-weight:700}
.demo-form{
  display:grid;gap:13px;padding:26px;border-radius:20px;background:#fff;
}
.form-row{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.demo-form label{display:grid;gap:6px;color:#334155;font-size:.73rem;font-weight:800}
.demo-form input,.demo-form select,.demo-form textarea{
  width:100%;padding:11px 12px;border:1px solid #dbe3ef;border-radius:9px;
  background:#fff;color:#0f172a;outline:none;
}
.demo-form input:focus,.demo-form select:focus,.demo-form textarea:focus{
  border-color:#60a5fa;box-shadow:0 0 0 3px rgba(59,130,246,.10);
}
.demo-form>small{text-align:center;color:#64748b;font-size:.68rem}
.demo-form>small.success-note{color:#15803d;font-weight:700}

footer{padding:70px 0 22px;background:#07101f;color:#94a3b8}
.footer-grid{display:grid;grid-template-columns:1.6fr repeat(3,1fr);gap:45px}
.footer-about p{max-width:340px}
.footer-brand>span:last-child{color:#fff}
.footer-grid h4{color:#fff}
.footer-grid>div>a:not(.brand){display:block;margin:8px 0;font-size:.82rem}
.copyright{
  display:flex;justify-content:space-between;gap:20px;
  margin-top:45px;padding-top:18px;border-top:1px solid rgba(255,255,255,.10);
  font-size:.72rem;
}
.back-to-top{
  position:fixed;right:22px;bottom:22px;z-index:50;
  width:44px;height:44px;border:0;border-radius:50%;
  background:#2563eb;color:#fff;opacity:0;pointer-events:none;transition:.22s;cursor:pointer;
}
.back-to-top.show{opacity:1;pointer-events:auto}
.reveal{opacity:0;transform:translateY(22px);transition:.65s ease}
.reveal.visible{opacity:1;transform:none}
@keyframes float{50%{transform:translateY(-9px)}}

@media(max-width:1020px){
  .hero-grid{grid-template-columns:1fr}
  .hero-copy{text-align:center}
  .hero-lead{margin-inline:auto}
  .hero-actions,.hero-points{justify-content:center}
  .product-preview{max-width:760px;margin:20px auto 0}
  .value-grid{grid-template-columns:repeat(2,1fr)}
  .portal-grid{grid-template-columns:1fr}
  .portal-card{min-height:330px}
  .white-label-grid{gap:35px}
}
@media(max-width:880px){
  .section{padding:80px 0}
  .menu-btn{display:block}
  .nav-actions .btn{display:none}
  .pwa-nav-install{width:42px;height:42px;padding:0;justify-content:center}.pwa-nav-install b{display:none}
  nav{
    display:none;position:fixed;top:78px;left:18px;right:18px;
    flex-direction:column;align-items:stretch;padding:20px;
    border:1px solid var(--border);border-radius:18px;background:var(--surface);
    box-shadow:var(--shadow);
  }
  nav.open{display:flex}
  .promise-strip{grid-template-columns:repeat(2,1fr)}
  .promise-strip div:nth-child(2){border-right:0}
  .promise-strip div:nth-child(-n+2){border-bottom:1px solid var(--border)}
  .module-groups,.white-label-grid,.pricing-panel,.faq-grid,.contact-box{grid-template-columns:1fr}
  .pricing-panel{padding:32px}
  .footer-grid{grid-template-columns:repeat(2,1fr)}
}
@media(max-width:600px){
  .container{width:min(calc(100% - 24px),var(--container))}
  .hero{padding-top:125px}
  .hero h1{font-size:2.7rem}
  .hero-actions{flex-direction:column}
  .preview-layout{grid-template-columns:45px 1fr}
  .preview-sidebar{padding-inline:8px}
  .preview-main{padding:12px}
  .preview-metrics{grid-template-columns:1fr}
  .preview-metrics article:nth-child(n+2){display:none}
  .preview-panels{grid-template-columns:1fr}
  .preview-list{display:none}
  .floating-chip{display:none}
  .promise-strip,.value-grid,.footer-grid{grid-template-columns:1fr}
  .promise-strip div{border-right:0;border-bottom:1px solid var(--border)}
  .promise-strip div:last-child{border-bottom:0}
  .module-groups{grid-template-columns:1fr}
  .domain-body{padding:35px 22px}
  .pricing-panel{padding:22px}
  .include-grid,.form-row{grid-template-columns:1fr}
  .contact-box{padding:28px 18px}
  .copyright{flex-direction:column}
}
@media(prefers-reduced-motion:reduce){
  *{animation:none!important;transition:none!important}
  .reveal{opacity:1;transform:none}
}


/* Demo request email integration */
.demo-honeypot{
  position:absolute!important;
  left:-100000px!important;
  width:1px!important;
  height:1px!important;
  overflow:hidden!important;
}
.demo-form-status{
  min-height:18px;
  text-align:center;
  font-size:.74rem;
  font-weight:700;
}
.demo-form-status.success{
  padding:10px 12px;
  border:1px solid #bbf7d0;
  border-radius:9px;
  background:#f0fdf4;
  color:#166534;
}
.demo-form-status.error{
  padding:10px 12px;
  border:1px solid #fecaca;
  border-radius:9px;
  background:#fef2f2;
  color:#991b1b;
}
#demoSubmitButton:disabled{
  opacity:.7;
  cursor:wait;
  transform:none;
}

/* StudentsOrbit SEO Phase 2 landing pages */
.seo-page{padding-top:78px}.seo-hero{padding:92px 0 76px;background:linear-gradient(135deg,var(--surface) 0%,var(--surface-2) 100%)}
.seo-hero-grid,.seo-value-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:54px;align-items:center}.seo-hero h1{font-size:clamp(2.5rem,5vw,4.6rem);line-height:1.02;margin:14px 0 22px;letter-spacing:-.045em}.seo-lead{font-size:1.13rem;line-height:1.8;color:var(--muted);max-width:760px}.eyebrow{font-size:.76rem;letter-spacing:.14em;font-weight:800;color:var(--primary);text-transform:uppercase}.seo-visual{min-height:390px;position:relative;border:1px solid var(--border);border-radius:32px;background:var(--surface);box-shadow:var(--shadow);display:grid;place-items:center;overflow:hidden}.seo-orbit-core{width:145px;height:145px;border-radius:50%;display:grid;place-items:center;text-align:center;background:linear-gradient(135deg,#2563eb,#14b8a6);color:white;font-size:1.05rem;box-shadow:0 20px 55px rgba(37,99,235,.25)}.seo-visual span{position:absolute;padding:10px 14px;border:1px solid var(--border);border-radius:999px;background:var(--surface);font-size:.78rem;font-weight:800}.seo-visual span:nth-of-type(1){top:12%;left:12%}.seo-visual span:nth-of-type(2){top:12%;right:10%}.seo-visual span:nth-of-type(3){top:45%;left:5%}.seo-visual span:nth-of-type(4){top:45%;right:7%}.seo-visual span:nth-of-type(5){bottom:12%;left:14%}.seo-visual span:nth-of-type(6){bottom:12%;right:12%}.seo-soft{background:var(--surface-2)}.seo-card-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.seo-card{padding:28px;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:var(--shadow-sm)}.seo-card h3{margin:0 0 10px;font-size:1.08rem}.seo-card p{margin:0;color:var(--muted);line-height:1.7}.seo-check-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:14px}.seo-check-grid>div{display:flex;gap:12px;align-items:flex-start;padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.seo-check-grid b{color:#14b8a6}.seo-flow{display:grid;grid-template-columns:repeat(6,1fr);gap:12px}.seo-flow>div{padding:20px 14px;border:1px solid var(--border);border-radius:16px;background:var(--surface);text-align:center}.seo-flow small{display:block;color:var(--primary);font-weight:800;margin-bottom:7px}.seo-flow strong{font-size:.86rem}.seo-value{background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(20,184,166,.08))}.seo-value-box{padding:30px;border-radius:24px;background:#0b2a66;color:white}.seo-value-box strong{font-size:1.35rem}.seo-value-box p{color:rgba(255,255,255,.82);line-height:1.7}.seo-value-box a{color:#5eead4;font-weight:800}.seo-faq{display:grid;gap:12px;max-width:900px;margin:auto}.seo-faq details{border:1px solid var(--border);border-radius:14px;padding:18px 20px;background:var(--surface)}.seo-faq summary{font-weight:800;cursor:pointer}.seo-faq p{color:var(--muted);line-height:1.7}.seo-cta{text-align:center}.seo-cta p{max-width:760px;margin:0 auto 24px;color:var(--muted);line-height:1.75}.seo-cta h2{font-size:2.2rem;margin-bottom:12px}
@media(max-width:880px){.seo-hero-grid,.seo-value-grid{grid-template-columns:1fr}.seo-card-grid{grid-template-columns:1fr}.seo-flow{grid-template-columns:repeat(2,1fr)}.seo-check-grid{grid-template-columns:1fr}.seo-visual{min-height:330px}}


/* SEO Phase 3 - Resource hub and article authority content */
.resource-page{padding-top:78px}.resource-hero{padding:84px 0 58px;background:linear-gradient(135deg,var(--surface) 0%,var(--surface-2) 100%);border-bottom:1px solid var(--border)}
.resource-hero-inner{max-width:980px}.resource-hero h1{font-size:clamp(2.35rem,4.7vw,4.4rem);line-height:1.04;letter-spacing:-.04em;margin:14px 0 20px}.resource-lead{font-size:1.12rem;line-height:1.8;color:var(--muted);max-width:900px}
.resource-meta,.breadcrumbs{display:flex;gap:12px;flex-wrap:wrap;color:var(--muted);font-size:.8rem}.breadcrumbs{margin-bottom:20px}.breadcrumbs a{color:var(--primary);font-weight:700}
.resource-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:52px;padding-top:64px;padding-bottom:80px}.resource-article{min-width:0}.resource-section{margin:0 0 42px}.resource-section h2{font-size:1.72rem;margin:0 0 14px}.resource-section p,.resource-section li{color:var(--muted);line-height:1.85}.resource-section ul,.resource-section ol{padding-left:24px;display:grid;gap:8px}
.takeaway-box{padding:26px 28px;border-radius:22px;background:linear-gradient(135deg,rgba(37,99,235,.09),rgba(20,184,166,.09));border:1px solid var(--border);margin-bottom:42px}.takeaway-box h2{margin:0 0 12px;font-size:1.25rem}.takeaway-box ul{margin:0;padding-left:22px;display:grid;gap:8px}.takeaway-box li{line-height:1.65}
.resource-sidebar{display:grid;align-content:start;gap:18px;position:sticky;top:105px;height:max-content}.resource-side-card{display:grid;gap:9px;padding:22px;border:1px solid var(--border);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-sm)}.resource-side-card strong{margin-bottom:4px}.resource-side-card a{padding:8px 0;border-bottom:1px solid var(--border);color:var(--muted);font-size:.9rem}.resource-side-card a:last-child{border-bottom:0}.resource-side-card a:hover{color:var(--primary)}
.resource-cta-inline{margin-top:50px;padding:34px;border-radius:24px;background:#0b2a66;color:white}.resource-cta-inline h2{margin:0 0 10px;color:white}.resource-cta-inline p{color:rgba(255,255,255,.82);line-height:1.7;max-width:760px}
.resource-index-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}.resource-index-card{padding:28px;border:1px solid var(--border);border-radius:22px;background:var(--surface);box-shadow:var(--shadow-sm)}.resource-index-card>span{font-size:.72rem;letter-spacing:.12em;color:var(--primary);font-weight:800}.resource-index-card h2{font-size:1.28rem;margin:10px 0}.resource-index-card h2 a{color:var(--text)}.resource-index-card p{color:var(--muted);line-height:1.7}.resource-read{font-weight:800;color:var(--primary)}
@media(max-width:920px){.resource-layout{grid-template-columns:1fr}.resource-sidebar{position:static}.resource-index-grid{grid-template-columns:1fr}}


/* SEO Phase 4 - Conversion optimization */
.conversion-section{background:var(--surface-2)}
.conversion-compare{display:grid;grid-template-columns:1fr 64px 1fr;gap:18px;align-items:stretch;margin-top:34px}
.compare-card{padding:30px;border:1px solid var(--border);border-radius:24px;background:var(--surface);box-shadow:var(--shadow-sm)}
.compare-card h3{font-size:1.35rem;margin:10px 0 16px}.compare-card ul{margin:0;padding-left:20px;display:grid;gap:10px;color:var(--muted);line-height:1.65}
.compare-label{display:inline-flex;padding:7px 10px;border-radius:999px;font-size:.7rem;letter-spacing:.08em;font-weight:800}
.compare-manual .compare-label{background:rgba(239,68,68,.1);color:#dc2626}.compare-digital .compare-label{background:rgba(20,184,166,.12);color:#0f8d83}
.compare-arrow{display:grid;place-items:center;font-size:2rem;color:var(--primary);font-weight:800}
.conversion-trust-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-top:22px}.conversion-trust-grid article{padding:22px;border:1px solid var(--border);border-radius:18px;background:var(--surface)}.conversion-trust-grid strong{display:block;color:var(--text);margin-bottom:8px}.conversion-trust-grid p{margin:0;color:var(--muted);line-height:1.6;font-size:.9rem}
.conversion-reassurance{margin-top:24px;padding:30px 32px;border-radius:24px;background:linear-gradient(135deg,#0b2a66,#123f8f);color:white;display:grid;grid-template-columns:1fr auto;gap:24px;align-items:center}.conversion-reassurance h3{color:white;font-size:1.45rem;margin:7px 0 10px}.conversion-reassurance p{color:rgba(255,255,255,.8);line-height:1.7;margin:0;max-width:760px}.conversion-reassurance-actions{display:flex;gap:10px;flex-wrap:wrap}.conversion-reassurance .btn-outline{background:#fff;border-color:#fff;color:#0b2a66}.conversion-reassurance .btn-outline:hover,.conversion-reassurance .btn-outline:focus-visible{background:#eff6ff;border-color:#eff6ff;color:#071f4d}
.demo-success-panel{margin-top:14px;padding:18px;border-radius:16px;background:rgba(16,185,129,.10);border:1px solid rgba(16,185,129,.28)}.demo-success-panel strong{display:block;margin-bottom:6px}.demo-success-panel p{margin:0 0 10px;color:inherit;line-height:1.55}.demo-success-actions{display:flex;gap:14px;flex-wrap:wrap}.demo-success-actions a{font-size:.85rem;font-weight:800;text-decoration:underline}
.seo-conversion-proof{background:var(--surface-2)}.seo-conversion-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:34px;align-items:center}.seo-conversion-grid h2{font-size:2rem;margin:8px 0 10px}.seo-conversion-grid p{color:var(--muted);line-height:1.75}.seo-proof-list{display:grid;grid-template-columns:1fr 1fr;gap:12px}.seo-proof-list span{padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface);font-weight:700}
.resource-conversion-strip{margin:36px 0 0;padding:20px 22px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(135deg,rgba(37,99,235,.07),rgba(20,184,166,.07));display:grid;gap:6px}.resource-conversion-strip strong{font-size:1rem}.resource-conversion-strip span{color:var(--muted);line-height:1.6}.resource-conversion-strip a{color:var(--primary);font-weight:800}
.mobile-demo-bar{display:none}
@media(max-width:980px){
  .conversion-compare{grid-template-columns:1fr}.compare-arrow{transform:rotate(90deg);min-height:34px}.conversion-trust-grid{grid-template-columns:repeat(2,1fr)}.conversion-reassurance{grid-template-columns:1fr}.seo-conversion-grid{grid-template-columns:1fr}
}
@media(max-width:720px){
  body{padding-bottom:78px}.conversion-trust-grid{grid-template-columns:1fr}.seo-proof-list{grid-template-columns:1fr}.mobile-demo-bar{position:fixed;left:10px;right:10px;bottom:10px;z-index:1200;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 11px 10px 14px;border:1px solid rgba(255,255,255,.18);border-radius:18px;background:rgba(8,42,102,.96);box-shadow:0 18px 45px rgba(2,12,35,.28);backdrop-filter:blur(12px);color:white}.mobile-demo-bar div{display:grid;gap:2px}.mobile-demo-bar strong{font-size:.8rem}.mobile-demo-bar span{font-size:.68rem;color:rgba(255,255,255,.72)}.mobile-demo-bar .btn{padding:.68rem .85rem;font-size:.75rem;white-space:nowrap}
}


/* ==========================================================
   StudentsOrbit SEO Phase 4.2
   Demo confirmation readability + duplicate-success fix
   ========================================================== */

#demoSuccessPanel.demo-success-panel,
#demoSuccessPanel.demo-success-panel-readable {
    display: block;
    margin-top: 14px;
    padding: 18px 20px;
    border-radius: 16px;
    background: #ecfdf5 !important;
    border: 1px solid #86efac !important;
    color: #334155 !important;
    opacity: 1 !important;
    visibility: visible !important;
    filter: none !important;
    -webkit-filter: none !important;
    mix-blend-mode: normal !important;
    text-shadow: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

#demoSuccessPanel[hidden] {
    display: none !important;
}

#demoSuccessPanel.demo-success-panel strong,
#demoSuccessPanel.demo-success-panel-readable strong {
    display: block;
    margin-bottom: 7px;
    color: #065f46 !important;
    -webkit-text-fill-color: #065f46 !important;
    opacity: 1 !important;
    filter: none !important;
    text-shadow: none !important;
    font-weight: 800 !important;
}

#demoSuccessPanel.demo-success-panel p,
#demoSuccessPanel.demo-success-panel-readable p {
    margin: 0 0 12px;
    color: #334155 !important;
    -webkit-text-fill-color: #334155 !important;
    opacity: 1 !important;
    filter: none !important;
    text-shadow: none !important;
    line-height: 1.6;
}

#demoSuccessPanel .demo-success-actions {
    display: flex;
    gap: 14px;
    flex-wrap: wrap;
}

#demoSuccessPanel .demo-success-actions a,
#demoSuccessPanel.demo-success-panel a {
    color: #1d4ed8 !important;
    -webkit-text-fill-color: #1d4ed8 !important;
    opacity: 1 !important;
    filter: none !important;
    text-decoration: underline !important;
    font-weight: 800 !important;
}

#demoSuccessPanel .demo-success-actions a:hover {
    color: #1e40af !important;
    -webkit-text-fill-color: #1e40af !important;
}

/* Do not show the small first success alert after a successful submission.
   It remains available for validation/errors and is controlled by main.js. */
#demoFormStatus:empty {
    display: none !important;
}

/* Dark mode */
[data-theme="dark"] #demoSuccessPanel.demo-success-panel,
[data-theme="dark"] #demoSuccessPanel.demo-success-panel-readable {
    background: #073b34 !important;
    border-color: #2dd4bf !important;
    color: #ecfdf5 !important;
}

[data-theme="dark"] #demoSuccessPanel strong {
    color: #6ee7b7 !important;
    -webkit-text-fill-color: #6ee7b7 !important;
}

[data-theme="dark"] #demoSuccessPanel p {
    color: #d1fae5 !important;
    -webkit-text-fill-color: #d1fae5 !important;
}

[data-theme="dark"] #demoSuccessPanel a {
    color: #93c5fd !important;
    -webkit-text-fill-color: #93c5fd !important;
}


/* SEO Phase 5 - analytics/search console setup helper styles */
.measurement-note{
  padding:18px 20px;
  border:1px solid var(--border);
  border-radius:16px;
  background:var(--surface-2);
  color:var(--muted);
  line-height:1.65;
}


/* ==========================================================
   StudentsOrbit SEO Phase 5.1 - Cookie consent banner
   ========================================================== */
.cookie-consent {
    position: fixed;
    left: 18px;
    right: 18px;
    bottom: 18px;
    z-index: 1500;
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 18px;
    align-items: center;
    padding: 18px 20px;
    border: 1px solid rgba(255,255,255,.18);
    border-radius: 22px;
    background: rgba(8, 42, 102, .97);
    color: #fff;
    box-shadow: 0 22px 60px rgba(2, 12, 35, .35);
    backdrop-filter: blur(14px);
    -webkit-backdrop-filter: blur(14px);
}

.cookie-consent[hidden],
.cookie-modal[hidden],
.cookie-settings-link[hidden] {
    display: none !important;
}

.cookie-consent__content strong {
    display: block;
    margin-bottom: 5px;
    font-size: 1rem;
    color: #fff;
}

.cookie-consent__content p {
    margin: 0;
    max-width: 760px;
    color: rgba(255,255,255,.78);
    font-size: .9rem;
    line-height: 1.6;
}

.cookie-consent__actions {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    justify-content: flex-end;
}

.cookie-btn {
    white-space: nowrap;
    padding: .72rem .95rem;
    font-size: .82rem;
}

.cookie-consent .btn-outline {
    border-color: rgba(255,255,255,.35);
    color: #fff;
    background: rgba(255,255,255,.08);
}

.cookie-consent .btn-outline:hover,
.cookie-consent .btn-outline:focus-visible {
    border-color: rgba(255,255,255,.72);
    background: rgba(255,255,255,.18);
    color: #fff;
}

.cookie-modal {
    position: fixed;
    inset: 0;
    z-index: 1600;
    display: grid;
    place-items: center;
    padding: 20px;
    background: rgba(2, 12, 35, .58);
}

.cookie-modal__panel {
    position: relative;
    width: min(640px, 100%);
    padding: 30px;
    border-radius: 24px;
    background: var(--surface);
    color: var(--text);
    border: 1px solid var(--border);
    box-shadow: 0 30px 80px rgba(2, 12, 35, .35);
}

.cookie-modal__panel h2 {
    margin: 0 0 10px;
    font-size: 1.65rem;
}

.cookie-modal__panel p {
    margin: 0 0 18px;
    color: var(--muted);
    line-height: 1.65;
}

.cookie-modal__close {
    position: absolute;
    top: 14px;
    right: 16px;
    border: 0;
    background: transparent;
    color: var(--muted);
    font-size: 1.7rem;
    cursor: pointer;
}

.cookie-option {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 18px;
    padding: 16px;
    border: 1px solid var(--border);
    border-radius: 16px;
    background: var(--surface-2);
    margin-top: 12px;
}

.cookie-option strong {
    display: block;
    margin-bottom: 4px;
}

.cookie-option span {
    color: var(--muted);
    font-size: .88rem;
    line-height: 1.5;
}

.cookie-badge {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    min-width: 90px;
    padding: 6px 10px;
    border-radius: 999px;
    background: rgba(20,184,166,.12);
    color: var(--secondary) !important;
    font-weight: 800;
    font-size: .78rem !important;
}

.cookie-toggle-row {
    cursor: pointer;
}

.cookie-toggle-row input {
    width: 22px;
    height: 22px;
    accent-color: #2563eb;
    flex: 0 0 auto;
}

.cookie-modal__actions {
    display: flex;
    justify-content: flex-end;
    gap: 12px;
    margin-top: 20px;
    flex-wrap: wrap;
}

.cookie-settings-link {
    position: fixed;
    left: 18px;
    bottom: 92px;
    z-index: 1400;
    border: 1px solid var(--border);
    border-radius: 999px;
    background: var(--surface);
    color: var(--muted);
    padding: 8px 12px;
    font-size: .76rem;
    box-shadow: var(--shadow-sm);
    cursor: pointer;
}

.cookie-settings-link:hover {
    color: var(--primary);
}

@media (max-width: 760px) {
    .cookie-consent {
        grid-template-columns: 1fr;
        left: 10px;
        right: 10px;
        bottom: 86px;
        padding: 16px;
    }

    .cookie-consent__actions {
        justify-content: stretch;
    }

    .cookie-consent__actions .btn {
        flex: 1 1 auto;
        text-align: center;
    }

    .cookie-settings-link {
        bottom: 156px;
        left: 12px;
    }

    .cookie-modal__panel {
        padding: 24px 18px;
    }

    .cookie-option {
        align-items: flex-start;
    }
}


/* ==========================================================
   StudentsOrbit SEO Phase 5.2
   Cookie Preferences UI fix
   - removes the floating left-side tab
   - keeps preferences accessible from the footer
   ========================================================== */

.cookie-settings-link {
    display: none !important;
}

.footer-cookie-link {
    display: block;
    width: max-content;
    padding: 0;
    margin: 0;
    border: 0;
    background: transparent;
    color: var(--muted);
    font: inherit;
    font-size: inherit;
    line-height: inherit;
    text-align: left;
    cursor: pointer;
}

.footer-cookie-link:hover,
.footer-cookie-link:focus-visible {
    color: var(--primary);
    text-decoration: underline;
    outline: none;
}


/* ==========================================================
   StudentsOrbit SEO Phase 6.0B - On-page keyword optimization
   ========================================================== */
.seo-topic-intro {
    padding-top: 34px;
    padding-bottom: 34px;
}
.seo-topic-intro-inner {
    max-width: 920px;
}
.seo-topic-intro p {
    margin: 0 0 12px;
    color: var(--muted);
    line-height: 1.8;
    font-size: 1rem;
}
.seo-topic-intro p:last-child {
    margin-bottom: 0;
}
.seo-related-section {
    background: var(--surface-2);
}
.seo-related-links {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 16px;
}
.seo-related-links a {
    display: flex;
    min-height: 110px;
    flex-direction: column;
    justify-content: space-between;
    gap: 12px;
    padding: 20px;
    border: 1px solid var(--border);
    border-radius: 18px;
    background: var(--surface);
    color: var(--text);
    box-shadow: var(--shadow-sm);
}
.seo-related-links a:hover {
    border-color: var(--primary);
    transform: translateY(-2px);
}
.seo-related-links span {
    color: var(--primary);
    font-size: .86rem;
    font-weight: 800;
}
.module-list b a {
    color: inherit;
    text-decoration: none;
}
.module-list b a:hover {
    color: var(--primary);
    text-decoration: underline;
}
@media (max-width: 860px) {
    .seo-related-links {
        grid-template-columns: 1fr;
    }
}


/* SEO Phase 6.0C — Internal linking architecture */
.seo-pathway-grid,
.resource-next-links {
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:16px;
}
.seo-pathway-grid a,
.resource-next-links a {
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:112px;
  padding:20px;
  border:1px solid var(--border);
  border-radius:18px;
  background:var(--surface);
  color:var(--text);
  box-shadow:var(--shadow-sm);
}
.seo-pathway-grid a:hover,
.resource-next-links a:hover {
  border-color:var(--primary);
  transform:translateY(-2px);
}
.seo-pathway-grid span,
.resource-next-links span {
  margin-top:10px;
  color:var(--primary);
  font-size:.86rem;
  font-weight:800;
  line-height:1.5;
}
.resource-next-section,
.comparison-next-links {
  background:var(--surface-2);
}
.seo-related-section .section-heading p {
  color:var(--muted);
}
@media(max-width:1000px){
  .seo-pathway-grid,.resource-next-links{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:620px){
  .seo-pathway-grid,.resource-next-links{grid-template-columns:1fr}
}


/* ==========================================================
   StudentsOrbit SEO Phase 6.0E.1 — Resource SEO Foundation
   ========================================================== */
.resource-foundation-head {
  padding: 18px 0 0;
}
.resource-article-meta {
  display:flex;
  flex-wrap:wrap;
  gap:8px 16px;
  margin-top:12px;
  color:var(--muted);
  font-size:.82rem;
}
.resource-article-meta span {
  display:inline-flex;
  align-items:center;
}
.resource-article-meta span:not(:last-child)::after {
  content:"•";
  margin-left:16px;
  opacity:.5;
}
.related-resource-section {
  background:var(--surface-2);
}
.related-resource-cards,
.resource-topic-grid {
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:16px;
}
.related-resource-cards a,
.resource-topic-grid a {
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  min-height:112px;
  padding:20px;
  border:1px solid var(--border);
  border-radius:18px;
  background:var(--surface);
  color:var(--text);
  box-shadow:var(--shadow-sm);
}
.related-resource-cards a:hover,
.resource-topic-grid a:hover {
  border-color:var(--primary);
  transform:translateY(-2px);
}
.related-resource-cards span,
.resource-topic-grid span {
  margin-top:12px;
  color:var(--primary);
  font-size:.86rem;
  font-weight:800;
}
@media(max-width:860px){
  .related-resource-cards,.resource-topic-grid{grid-template-columns:1fr}
  .resource-article-meta span:not(:last-child)::after{display:none}
}


/* ==========================================================
   StudentsOrbit SEO Phase 6.0E.2 — First Content Batch
   ========================================================== */
.resource-longform-hero { padding-bottom:42px; }
.resource-longform-hero h1 { max-width:900px; }
.resource-lead { max-width:880px; font-size:1.08rem; line-height:1.8; color:var(--muted); }
.resource-longform-layout {
  display:grid;
  grid-template-columns:minmax(0, 1fr) 300px;
  gap:42px;
  align-items:start;
}
.resource-longform-content { max-width:820px; }
.resource-content-section {
  padding:0 0 28px;
  margin:0 0 30px;
  border-bottom:1px solid var(--border);
}
.resource-content-section:last-child { border-bottom:0; }
.resource-content-section h2 { margin:0 0 14px; font-size:1.55rem; line-height:1.3; }
.resource-content-section p { margin:0 0 14px; color:var(--muted); line-height:1.85; }
.resource-faq .faq-item {
  padding:18px 0;
  border-bottom:1px solid var(--border);
}
.resource-faq .faq-item h3 { margin:0 0 8px; font-size:1.05rem; }
.resource-sticky-card {
  position:sticky;
  top:100px;
  padding:22px;
  border:1px solid var(--border);
  border-radius:20px;
  background:var(--surface);
  box-shadow:var(--shadow-sm);
}
.resource-sticky-card strong { display:block; font-size:1.08rem; margin-bottom:8px; }
.resource-sticky-card p { color:var(--muted); line-height:1.6; margin:0 0 16px; }
.resource-sticky-card .btn { width:100%; text-align:center; }
.resource-aside-link { display:block; margin-top:14px; text-align:center; color:var(--primary); font-weight:800; font-size:.86rem; }
.resource-featured-grid {
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px;
}
.resource-featured-grid a {
  min-height:130px;
  padding:22px;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  border:1px solid var(--border);
  border-radius:18px;
  background:var(--surface);
  color:var(--text);
  box-shadow:var(--shadow-sm);
}
.resource-featured-grid a:hover { border-color:var(--primary); transform:translateY(-2px); }
.resource-featured-grid span { color:var(--primary); font-size:.86rem; font-weight:800; margin-top:14px; }
@media(max-width:900px){
  .resource-longform-layout{grid-template-columns:1fr}
  .resource-longform-aside{order:-1}
  .resource-sticky-card{position:static}
}
@media(max-width:680px){
  .resource-featured-grid{grid-template-columns:1fr}
}
