.landing{--landing-blue:#155ee9;--landing-navy:#0b2d78;--landing-pale:#eef5ff;--landing-line:#b8d0f7;color:var(--landing-navy);font-family:var(--font-body), sans-serif;background:#fff;overflow:hidden}.landing :where(h1,h2,h3,p){margin:0}.landing :where(h1,h2,h3){font-family:var(--font-display), sans-serif}.landing :where(a,summary):focus-visible{outline-offset:4px;outline:3px solid #ffbf2f}.landing-header{z-index:10;background:#fff;grid-template-columns:220px 1fr auto;align-items:center;max-width:1500px;min-height:104px;margin:0 auto;padding:22px 48px;display:grid;position:relative}.landing-logo,.landing-logo img{width:200px;height:auto;display:block}.landing-nav{justify-content:center;gap:clamp(28px,4vw,72px);font-weight:800;display:flex}.landing-nav a,.landing-signin,.landing-footer a,.landing-text-link{text-underline-offset:5px}.landing-nav a:hover,.landing-signin:hover,.landing-footer a:hover,.landing-text-link:hover{text-decoration:underline}.landing-actions{align-items:center;gap:26px;font-weight:800;display:flex}.landing-button{border:2px solid var(--landing-blue);color:#fff;background:var(--landing-blue);min-height:64px;box-shadow:0 7px 0 var(--landing-navy);border-radius:12px;justify-content:center;align-items:center;padding:16px 30px;font-size:18px;font-weight:850;transition:transform .16s,box-shadow .16s;display:inline-flex}.landing-button:hover{box-shadow:0 5px 0 var(--landing-navy);transform:translateY(2px)}.landing-button--small{min-height:50px;box-shadow:none;padding:10px 22px;font-size:15px}.landing-button--small:hover{box-shadow:none}.landing-button--secondary{color:var(--landing-blue);box-shadow:none;background:#fff}.landing-button--secondary:hover{box-shadow:none}.landing-menu{display:none}.landing-hero{grid-template-columns:minmax(360px,.8fr) minmax(520px,1.2fr);align-items:center;gap:clamp(42px,6vw,96px);max-width:1500px;min-height:720px;margin:0 auto;padding:54px 48px 90px;display:grid}.landing-hero-copy{z-index:2;position:relative}.landing-hero h1{letter-spacing:-.045em;max-width:670px;font-size:clamp(62px,5.5vw,92px);line-height:.93}.landing :where(h1,h2) span{color:var(--landing-blue)}.landing-hero-copy>p{color:#34507f;max-width:580px;margin-top:32px;font-size:clamp(20px,1.65vw,27px);line-height:1.5}.landing-hero-actions{align-items:center;gap:22px;margin-top:42px;display:flex}.landing-hero-proof{min-width:0;position:relative;transform:rotate(-1.5deg)}.landing-screen{border:3px solid var(--landing-navy);box-shadow:10px 12px 0 var(--landing-navy);background:#fff;border-radius:22px;overflow:hidden}.landing-screen img{width:100%;height:auto;display:block}.landing-screen--hero{max-height:650px}.landing-screen--hero img{transform:translateY(-1px)}.landing-hero-mascot{filter:drop-shadow(0 12px 12px #0b2d782e);width:clamp(150px,18vw,250px);height:auto;position:absolute;bottom:-5%;right:-7%;transform:rotate(1.5deg)}.landing-roles{background:linear-gradient(#eef5ff 0 28%,#fff 28% 100%);padding:120px 48px 130px}.landing-section-copy,.landing-role-layout,.landing-workflow-inner,.landing-cta,.landing-footer{max-width:1400px;margin:0 auto}.landing-section-copy{grid-template-columns:.9fr 1.1fr;align-items:end;gap:60px;margin-bottom:74px;display:grid}.landing h2{letter-spacing:-.035em;font-size:clamp(48px,4.2vw,72px);line-height:1}.landing-section-copy>p{color:#34507f;max-width:720px;font-size:clamp(19px,1.6vw,25px);line-height:1.55}.landing-role-layout{grid-template-columns:1.1fr .9fr;align-items:center;gap:64px;display:grid}.landing-role{gap:26px;display:grid}.landing-role>div:last-child{border-left:4px solid var(--landing-blue);padding-left:18px}.landing-role h3{font-size:28px}.landing-role p{color:#34507f;max-width:440px;margin-top:6px;font-size:17px;line-height:1.55}.landing-role--student{transform:rotate(.8deg)}.landing-role-stack{gap:66px;display:grid}.landing-role--tutor{transform:rotate(-.6deg)}.landing-role--admin{width:86%;margin-left:auto;transform:rotate(.8deg)}.landing-workflow{background:var(--landing-pale);border-block:1px solid #d8e7ff;padding:104px 48px}.landing-workflow-inner{grid-template-columns:150px 1fr;align-items:end;gap:42px;display:grid}.landing-workflow-mascot{filter:drop-shadow(0 8px 9px #0b2d7824);width:150px;height:auto}.landing-workflow h2{margin-bottom:58px;font-size:clamp(44px,3.6vw,64px)}.landing-workflow ol{counter-reset:workflow;grid-template-columns:repeat(4,1fr);gap:28px;margin:0;padding:0;list-style:none;display:grid}.landing-workflow li{grid-template-columns:54px 34px 1fr;align-items:start;gap:16px;display:grid;position:relative}.landing-workflow li:not(:last-child):after{color:var(--landing-blue);content:"→";font-size:28px;position:absolute;top:25px;right:-18px}.landing-step-number{border:2px solid var(--landing-navy);width:54px;height:54px;font-family:var(--font-display), sans-serif;background:#fff;border-radius:50%;place-items:center;font-size:23px;font-weight:850;display:grid}.landing-workflow li>svg{width:34px;height:34px;color:var(--landing-blue);stroke-width:2.2px;margin-top:10px}.landing-workflow h3{font-size:24px}.landing-workflow li p{color:#34507f;margin-top:5px;font-size:15px;line-height:1.5}.landing-cta{grid-template-columns:1.1fr .9fr;align-items:center;min-height:650px;padding:90px 48px 0;display:grid;position:relative}.landing-cta>div{z-index:1;padding-bottom:90px;position:relative}.landing-cta h2{max-width:780px;font-size:clamp(56px,5.4vw,90px)}.landing-cta p{color:#34507f;max-width:680px;margin-top:34px;font-size:clamp(20px,1.7vw,26px);line-height:1.5}.landing-text-link{color:var(--landing-blue);font-size:20px;font-weight:850;text-decoration:underline}.landing-cta-mascot{z-index:1;width:min(100%,470px);height:auto;filter:drop-shadow(12px 16px 0 var(--landing-navy));place-self:end;position:relative}.landing-footer{color:#fff;background:var(--landing-navy);grid-template-columns:1fr auto;align-items:center;gap:46px 80px;max-width:none;padding:68px max(48px,50vw - 700px);display:grid}.landing-footer-brand img{background:#fff;border-radius:8px;width:190px;height:auto;padding:6px;display:block}.landing-footer-brand p{color:#d8e7ff;margin-top:20px;font-size:16px}.landing-footer nav{gap:42px;font-weight:800;display:flex}.landing-footer small{color:#b8d0f7;grid-column:1/-1}@media (max-width:1100px){.landing-header{grid-template-columns:180px 1fr auto;padding-inline:28px}.landing-logo,.landing-logo img{width:170px}.landing-nav{gap:20px}.landing-actions{gap:14px}.landing-hero{grid-template-columns:.85fr 1.15fr;gap:34px;padding-inline:32px}.landing-hero h1{font-size:clamp(52px,6vw,68px)}.landing-workflow-inner{grid-template-columns:1fr}.landing-workflow-mascot{display:none}.landing-workflow ol{grid-template-columns:repeat(2,1fr);gap:42px}.landing-workflow li:nth-child(2):after{display:none}}@media (max-width:820px){.landing-header{grid-template-columns:1fr auto;min-height:82px}.landing-nav,.landing-actions{display:none}.landing-menu{display:block;position:relative}.landing-menu summary{border:2px solid var(--landing-navy);color:var(--landing-navy);cursor:pointer;background:#fff;border-radius:10px;padding:10px 14px;font-weight:850;list-style:none}.landing-menu summary::-webkit-details-marker{display:none}.landing-menu nav{border:2px solid var(--landing-navy);min-width:210px;box-shadow:7px 7px 0 var(--landing-navy);background:#fff;border-radius:12px;padding:12px;display:grid;position:absolute;top:calc(100% + 10px);right:0}.landing-menu nav a{border-radius:7px;padding:11px 12px;font-weight:800}.landing-menu nav a:hover{background:var(--landing-pale)}.landing-hero{text-align:center;grid-template-columns:1fr;min-height:auto;padding:58px 28px 94px}.landing-hero-copy>p{margin-inline:auto}.landing-hero-actions{justify-content:center}.landing-hero-proof{margin-top:26px}.landing-hero-mascot{right:-3%}.landing-roles{background:linear-gradient(#eef5ff 0 18%,#fff 18% 100%);padding:88px 28px 96px}.landing-section-copy,.landing-role-layout{grid-template-columns:1fr}.landing-section-copy{gap:28px;margin-bottom:58px}.landing-role-layout,.landing-role-stack{gap:56px}.landing-role--student,.landing-role--tutor,.landing-role--admin{width:100%;margin:0;transform:none}.landing-workflow{padding-inline:28px}.landing-cta{text-align:center;grid-template-columns:1fr;padding-inline:28px}.landing-cta>div{padding-bottom:20px}.landing-cta p{margin-inline:auto}.landing-cta-mascot{justify-self:center;width:min(70vw,390px)}.landing-footer{text-align:center;grid-template-columns:1fr;padding:56px 28px}.landing-footer-brand img{margin:0 auto}.landing-footer nav{flex-wrap:wrap;justify-content:center}}@media (max-width:540px){.landing-header{padding-inline:18px}.landing-logo,.landing-logo img{width:150px}.landing-hero{padding:42px 18px 76px}.landing-hero h1{font-size:clamp(45px,14vw,58px)}.landing-hero-copy>p{margin-top:24px;font-size:18px}.landing-hero-actions{gap:14px;margin-top:32px;display:grid}.landing-button{width:100%;min-height:58px}.landing-screen{box-shadow:6px 7px 0 var(--landing-navy);border-width:2px;border-radius:13px}.landing-hero-mascot{width:112px}.landing-roles{padding-inline:18px}.landing h2{font-size:44px}.landing-section-copy>p{font-size:18px}.landing-workflow{padding:76px 18px}.landing-workflow h2{margin-bottom:42px;font-size:42px}.landing-workflow ol{grid-template-columns:1fr}.landing-workflow li{grid-template-columns:50px 30px 1fr}.landing-workflow li:not(:last-child):after{content:"↓";inset:auto auto -34px 21px}.landing-cta{min-height:auto;padding:80px 18px 0}.landing-cta h2{font-size:50px}.landing-cta p{font-size:18px}.landing-footer nav{gap:22px;display:grid}}@media (prefers-reduced-motion:reduce){.landing-button{transition:none}}