/* Sessional landing v4 — landing only. Clean, full-bleed and legible. */
body:has(.lp2){background:#f7f7f5!important}
.lp2{
  --ink:#111419;
  --ink-2:#26313b;
  --muted:#66727d;
  --line:rgba(17,20,25,.08);
  --line-strong:rgba(17,20,25,.14);
  --paper:#f7f7f5;
  --surface:#fff;
  --soft:#f1f2ef;
  --blue:#6fa7d1;
  --blue-deep:#173650;
  --blue-soft:#e3eef6;
  --lilac:#eee9fb;
  --sand:#f3ead4;
  --mint:#e5f0e9;
  --lime:#d9ef61;
  width:100%;min-height:100vh;overflow:visible;background:var(--paper);color:var(--ink);
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  -webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;
}
.lp2,.lp2 *{box-sizing:border-box;cursor:auto!important}
.lp2 a,.lp2 button{font:inherit;color:inherit}
.lp2 a{text-decoration:none}.lp2 button,.lp2 a{cursor:pointer!important}
.lp2 button{border:0}.lp2 em{font:inherit;font-style:normal}.lp2 strong{font-weight:700}
.lp2 main{display:block;width:100%}

/* ICON SYSTEM */
.lp2-ui-icon{display:inline-block;width:18px;height:18px;flex:0 0 auto;background:currentColor;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center;-webkit-mask-size:contain;mask-repeat:no-repeat;mask-position:center;mask-size:contain}
.lp2-icon-arrow-right{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M5 12h14M13 6l6 6-6 6' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.lp2-icon-arrow-up-right{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 17 17 7M8 7h9v9' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M7 17 17 7M8 7h9v9' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E")}
.lp2-icon-plus{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M12 5v14M5 12h14' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}
.lp2-icon-eye{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 12s3.5-6 10-6 10 6 10 6-3.5 6-10 6S2 12 2 12Z' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='2.5' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M2 12s3.5-6 10-6 10 6 10 6-3.5 6-10 6S2 12 2 12Z' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'/%3E%3Ccircle cx='12' cy='12' r='2.5' fill='none' stroke='%23000' stroke-width='2'/%3E%3C/svg%3E")}
.lp2-icon-link{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 13a5 5 0 0 0 7.1.1l2-2a5 5 0 0 0-7.1-7.1l-1.1 1.1M14 11a5 5 0 0 0-7.1-.1l-2 2A5 5 0 0 0 12 20l1.1-1.1' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M10 13a5 5 0 0 0 7.1.1l2-2a5 5 0 0 0-7.1-7.1l-1.1 1.1M14 11a5 5 0 0 0-7.1-.1l-2 2A5 5 0 0 0 12 20l1.1-1.1' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}
.lp2-icon-more{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='5' cy='12' r='1.8'/%3E%3Ccircle cx='12' cy='12' r='1.8'/%3E%3Ccircle cx='19' cy='12' r='1.8'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Ccircle cx='5' cy='12' r='1.8'/%3E%3Ccircle cx='12' cy='12' r='1.8'/%3E%3Ccircle cx='19' cy='12' r='1.8'/%3E%3C/svg%3E")}
.lp2-icon-send{-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m3 11 18-8-8 18-2-7-8-3Z' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='m11 14 5-5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E");mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='m3 11 18-8-8 18-2-7-8-3Z' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'/%3E%3Cpath d='m11 14 5-5' fill='none' stroke='%23000' stroke-width='2' stroke-linecap='round'/%3E%3C/svg%3E")}

/* SHARED */
.lp2-nav,.lp2-section,.lp2-after-inner,.lp2-footer{width:min(1180px,calc(100% - 56px));margin-inline:auto}
.lp2-section{padding:124px 0}
.lp2-section-title{max-width:780px;margin:0 auto 48px;text-align:center}
.lp2-section-title h2,.lp2-after-copy h2,.lp2-final h2{font-family:"Inter Tight",Inter,sans-serif;font-weight:750;letter-spacing:-.055em;line-height:.94;margin:16px 0 0;font-size:clamp(46px,5vw,70px)}
.lp2-section-title h2 strong{font-weight:750}
.lp2-section-title p,.lp2-after-copy p,.lp2-final p,.lp2-feature-copy p,.lp2-moment p,.lp2-footer-brand p,.lp2-hero p{font-size:16px;line-height:1.72;color:var(--muted)}
.lp2-eyebrow,.lp2-tag{display:inline-flex;align-items:center;padding:8px 11px;border-radius:999px;border:1px solid var(--line);background:#fff;font-size:11px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:#65717c}
.lp2-pill{display:inline-flex;align-items:center;gap:9px;padding:9px 12px;border:1px solid rgba(17,20,25,.08);border-radius:999px;background:rgba(255,255,255,.78);backdrop-filter:blur(12px);font-size:12px;font-weight:650;color:#334555}
.lp2-pill i{width:8px;height:8px;border-radius:50%;background:var(--lime);box-shadow:0 0 0 4px rgba(217,239,97,.22)}
.lp2-btn{border-radius:999px;min-height:48px;padding:0 19px;font-weight:700;font-size:13px;display:inline-flex;align-items:center;justify-content:center;gap:10px;transition:transform .18s ease,box-shadow .18s ease}
.lp2-btn:hover,.lp2-nav-cta:hover{transform:translateY(-1px)}
.lp2-btn-light{background:#fff;color:var(--ink);box-shadow:0 12px 28px rgba(17,24,39,.09)}
.lp2-btn-dark{background:var(--ink);color:#fff;box-shadow:0 14px 34px rgba(17,24,39,.16)}
.lp2-text-link{font-size:13px;font-weight:650;color:#314151;padding:10px 0}

/* NAV — text-only brand */
.lp2-nav-wrap{position:absolute;left:0;right:0;top:0;z-index:40;padding:20px 0}
.lp2-nav{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:26px}
.lp2-wordmark{display:inline-flex;align-items:center;font-family:"Inter Tight",Inter,sans-serif;font-weight:750;letter-spacing:-.035em;font-size:20px;width:max-content;color:var(--ink)}
.lp2-nav-links{display:flex;align-items:center;gap:26px;padding:10px 15px;border-radius:999px;background:rgba(17,20,25,.88);color:#fff;font-size:12px;box-shadow:0 10px 26px rgba(17,20,25,.10);backdrop-filter:blur(16px)}
.lp2-nav-links a{color:#fff;opacity:.78;font-weight:600}.lp2-nav-links a:hover{opacity:1}
.lp2-nav-cta{justify-self:end;border-radius:999px;background:#fff;color:var(--ink);padding:11px 15px;font-size:12px;font-weight:700;display:flex;align-items:center;gap:8px;box-shadow:0 10px 24px rgba(17,24,39,.08);transition:transform .18s ease}
.lp2-nav-cta .lp2-ui-icon{width:14px;height:14px}

/* HERO — full bleed, no page frame */
.lp2-hero{position:relative;width:100%;min-height:850px;margin:0;padding:126px 24px 0;overflow:hidden;background:linear-gradient(180deg,#89c2e9 0%,#91c5e7 50%,#d7e7f2 76%,var(--paper) 100%)}
.lp2-hero:after{content:"";position:absolute;left:-5%;right:-5%;bottom:-95px;height:205px;background:var(--paper);filter:blur(20px)}
.lp2-hero-copy{text-align:center;position:relative;z-index:10;max-width:900px;margin:0 auto}
.lp2-hero h1{font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(58px,6.8vw,96px);line-height:.92;letter-spacing:-.06em;font-weight:750;margin:20px 0 18px;color:#fff;text-wrap:balance;text-shadow:0 2px 20px rgba(39,72,98,.08)}
.lp2-hero h1 em{font:inherit;font-style:normal;color:#173c5a}
.lp2-hero p{font-size:16px;max-width:620px;margin:0 auto;color:#24445d;font-weight:500}
.lp2-hero-actions{display:flex;justify-content:center;align-items:center;gap:16px;margin-top:26px}
.lp2-avatar{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;font-size:8px;font-weight:800;font-style:normal;flex:0 0 auto;color:#15181c}.lp2-a2{background:#bde0ff}.lp2-a4{background:#ffd4a5}.lp2-a5{background:#c9e8d4}.lp2-a6{background:#dacbff}

/* FLOW */
.lp2-three{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}
.lp2-step{min-height:270px;border-radius:26px;padding:28px;display:flex;flex-direction:column;border:1px solid rgba(17,20,25,.05);box-shadow:0 10px 30px rgba(17,24,39,.035)}.lp2-step-lilac{background:#f0e8ff}.lp2-step-yellow{background:#f7efce}.lp2-step-blue{background:#e4edf8}
.lp2-num{font-size:10px;font-weight:800;color:#63707a}.lp2-step-icon{width:50px;height:50px;border-radius:15px;background:rgba(255,255,255,.88);display:grid;place-items:center;margin:24px 0 18px;box-shadow:0 8px 20px rgba(17,24,39,.05)}.lp2-step-icon .lp2-ui-icon{width:19px;height:19px;color:#111419}.lp2-step h3{font-family:"Inter Tight",Inter,sans-serif;font-size:29px;letter-spacing:-.045em;line-height:1;margin:0 0 9px}.lp2-step p{font-size:14px;line-height:1.68;color:#5b6872;margin:0;max-width:310px}

/* FEATURES */
.lp2-features{padding-top:108px}
.lp2-feature-row{display:grid;grid-template-columns:1fr 1fr;gap:20px;align-items:stretch;margin-bottom:20px}.lp2-feature-row.lp2-reverse .lp2-feature-copy{order:2}.lp2-feature-copy,.lp2-feature-art{border-radius:28px;overflow:hidden}.lp2-feature-copy{background:#fff;padding:44px 46px;display:flex;flex-direction:column;justify-content:center}.lp2-feature-copy h3{font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(36px,3.4vw,50px);line-height:.98;letter-spacing:-.05em;margin:17px 0 14px;max-width:470px}.lp2-feature-copy p{font-size:15px;max-width:470px;margin:0}.lp2-inline-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:24px}.lp2-inline-chips span{padding:8px 11px;border-radius:999px;background:#f4f4f1;font-size:11px;font-weight:650;color:#4f5d67}
.lp2-feature-art{min-height:500px;padding:24px;display:grid;place-items:center}.lp2-art-blue{background:linear-gradient(180deg,#cae5f8,#e5f0f8)}.lp2-art-cream{background:linear-gradient(180deg,#f2ead4,#f7f3e8)}.lp2-art-lilac{background:linear-gradient(180deg,#eae3ff,#f2effb)}.lp2-art-mint{background:linear-gradient(180deg,#dfefe5,#edf4ef)}
.lp2-remote-card,.lp2-insight-window,.lp2-gradebook,.lp2-chat{width:min(400px,94%);background:rgba(255,255,255,.94);border:1px solid rgba(17,20,25,.07);box-shadow:0 28px 68px rgba(27,39,50,.11);border-radius:24px}.lp2-remote-card{padding:22px;transform:rotate(-2deg)}.lp2-remote-top,.lp2-window-head{display:flex;justify-content:space-between;align-items:center;font-size:10px;color:#6d7881}.lp2-remote-top b{font-size:8px;color:#111419;background:var(--lime);border-radius:999px;padding:5px 7px}.lp2-remote-card h4{font-family:"Inter Tight",Inter,sans-serif;font-size:30px;letter-spacing:-.05em;margin:30px 0 6px}.lp2-remote-card>p{font-size:11px;color:#68747d}.lp2-remote-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:7px;margin:22px 0}.lp2-remote-actions button{height:48px;border-radius:12px;background:#f2f3f0;font-size:9px;font-weight:750}.lp2-now-playing{background:#111419;color:#fff;border-radius:14px;padding:11px 12px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:10px}.lp2-now-playing i{width:8px;height:8px;border-radius:50%;background:var(--lime)}.lp2-now-playing small,.lp2-now-playing strong{display:block}.lp2-now-playing small{font-size:6px;color:#aeb6bc}.lp2-now-playing strong{font-size:9px;margin-top:2px}.lp2-now-playing .lp2-ui-icon{width:13px;height:13px}
.lp2-insight-window,.lp2-gradebook{padding:22px}.lp2-big-metric{display:flex;align-items:end;gap:10px;margin:34px 0 24px}.lp2-big-metric strong{font-family:"Inter Tight",Inter,sans-serif;font-size:60px;letter-spacing:-.07em;line-height:.8}.lp2-big-metric span{font-size:10px;color:#66737d;max-width:100px}.lp2-participation-list{display:grid;gap:7px}.lp2-participation-list>div{display:flex;align-items:center;justify-content:space-between;background:#f5f5f2;border-radius:11px;padding:9px 10px}.lp2-participation-list span{display:flex;align-items:center;gap:8px;font-size:9px;font-weight:650}.lp2-participation-list .lp2-avatar{width:26px;height:26px;font-size:7px}.lp2-participation-list b{font-size:7px;background:#fff;border-radius:999px;padding:5px 7px}
.lp2-grade-row{display:grid;grid-template-columns:1.6fr .6fr .6fr .6fr;align-items:center;min-height:45px;border-bottom:1px solid #e8e8e4;font-size:9px}.lp2-grade-row.head{font-size:7px;color:#737e86;margin-top:22px}.lp2-grade-row strong{font-size:11px}.lp2-grade-note{margin-top:16px;background:#f6edc9;border-radius:11px;padding:9px 10px;display:flex;justify-content:space-between;align-items:center;font-size:8px}.lp2-grade-note button{border-radius:999px;background:#111419;color:#fff;font-size:7px;padding:6px 8px}
.lp2-chat{padding:17px}.lp2-chat-head{display:grid;grid-template-columns:auto 1fr auto;gap:10px;align-items:center;border-bottom:1px solid #e8e8e4;padding-bottom:12px}.lp2-chat-head strong,.lp2-chat-head small{display:block}.lp2-chat-head strong{font-size:10px}.lp2-chat-head small{font-size:7px;color:#737e86;margin-top:2px}.lp2-chat-head>.lp2-ui-icon{width:15px;height:15px;color:#64717a}.lp2-bubble{max-width:78%;padding:11px 12px;border-radius:14px;font-size:9px;line-height:1.55;margin:18px 0}.lp2-bubble.student{margin-left:auto;background:#111419;color:#fff;border-bottom-right-radius:5px}.lp2-bubble.prof{background:#f0f1ee;border-bottom-left-radius:5px}.lp2-chat-compose{margin-top:23px;border:1px solid #e2e3df;border-radius:999px;padding:9px 9px 9px 14px;color:#7f898f;font-size:8px;display:flex;align-items:center;justify-content:space-between}.lp2-chat-compose>span{width:27px;height:27px;border-radius:50%;background:#111419;color:#fff;display:grid;place-items:center}.lp2-chat-compose .lp2-ui-icon{width:12px;height:12px}

/* CLASSROOM */
.lp2-classroom{padding-top:100px}.lp2-moment-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.lp2-moment{min-height:440px;border-radius:26px;padding:28px;display:flex;flex-direction:column;overflow:hidden}.lp2-moment-before{background:#dce9f5}.lp2-moment-during{background:#111419;color:#fff}.lp2-moment-after{background:#f4dfb8}.lp2-moment>span{font-size:9px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;opacity:.64}.lp2-moment h3{font-family:"Inter Tight",Inter,sans-serif;font-size:34px;line-height:1;letter-spacing:-.05em;margin:12px 0 9px}.lp2-moment p{font-size:13px;line-height:1.65;opacity:.78;margin:0;max-width:280px}.lp2-moment-ui{margin:auto 0 0;background:#fff;border-radius:17px;padding:15px;box-shadow:0 18px 40px rgba(30,42,55,.08)}.lp2-moment-ui b{font-size:10px}.lp2-moment-ui i{height:10px;background:#efefec;border-radius:999px;margin-top:9px;display:block}.lp2-moment-ui i:nth-of-type(2){width:82%}.lp2-moment-ui i:nth-of-type(3){width:63%}
/* explicitly no circular/orbit motif */
.lp2-orbit{margin:auto 0 0;display:grid;grid-template-columns:repeat(2,1fr);gap:8px;align-content:end}.lp2-orbit:before,.lp2-orbit:after{display:none!important}.lp2-orbit b{grid-column:1/-1;height:48px;border-radius:13px;background:var(--lime);color:#111419;display:flex;align-items:center;justify-content:center;gap:8px;font-size:10px}.lp2-orbit b:before{content:"";width:7px;height:7px;border-radius:50%;background:#111419}.lp2-orbit i{position:static;font-style:normal;font-size:9px;font-weight:650;padding:12px;border:1px solid rgba(255,255,255,.12);border-radius:12px;background:rgba(255,255,255,.06);text-align:center}.lp2-thread{margin:auto 0 0;background:#fff;border-radius:17px;padding:14px;display:flex;align-items:center;gap:10px;box-shadow:0 18px 40px rgba(30,42,55,.08)}.lp2-thread i{width:34px;height:34px;border-radius:10px;background:#f0d2a6;position:relative}.lp2-thread i:after{content:"";position:absolute;inset:8px;background:#111419;-webkit-mask-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M20 15a3 3 0 0 1-3 3H8l-5 3V6a3 3 0 0 1 3-3h11a3 3 0 0 1 3 3v9Z' fill='none' stroke='%23000' stroke-width='2' stroke-linejoin='round'/%3E%3C/svg%3E");-webkit-mask-size:contain;-webkit-mask-repeat:no-repeat;-webkit-mask-position:center}.lp2-thread p{font-size:9px!important;color:#68747d!important}.lp2-thread b{color:#111419}

/* AFTER CLASS */
.lp2-after{background:#fff;padding:126px 0}.lp2-after-inner{display:grid;grid-template-columns:.9fr 1.1fr;gap:84px;align-items:center}.lp2-after-copy h2{margin:15px 0 18px}.lp2-after-copy p{font-size:15px;max-width:480px;margin:0 0 28px}.lp2-after-art{height:430px;position:relative}.lp2-history-card{position:absolute;width:260px;min-height:130px;padding:18px;border-radius:19px;background:#fff;box-shadow:0 24px 55px rgba(34,38,52,.10);display:flex;flex-direction:column}.lp2-history-card small{font-size:7px;color:#7e878e}.lp2-history-card strong{font-family:"Inter Tight",Inter,sans-serif;font-size:20px;letter-spacing:-.04em;margin-top:auto}.lp2-history-card span{font-size:9px;color:#5f6a72;margin-top:4px}.lp2-history-card.h1{left:5%;top:25%;transform:rotate(-7deg);background:#e5efff}.lp2-history-card.h2{left:39%;top:2%;transform:rotate(5deg);background:#f6efcd}.lp2-history-card.h3{right:3%;top:33%;transform:rotate(-3deg);background:#ece5ff}.lp2-history-card.h4{left:31%;bottom:2%;transform:rotate(2deg);background:#e4f0e8}

/* FINAL — clean, no circle graphics */
.lp2-final{padding:116px 28px}.lp2-final-card{width:min(1180px,100%);margin:0 auto;min-height:500px;border-radius:28px;background:linear-gradient(135deg,#16354e 0%,#1f5d8b 100%);color:#fff;text-align:center;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:68px 24px;position:relative;overflow:hidden}.lp2-final-card:before,.lp2-final-card:after{display:none!important}.lp2-pill-dark{background:rgba(255,255,255,.08);border-color:rgba(255,255,255,.14);color:#fff}.lp2-final h2{font-size:clamp(52px,5.7vw,80px);margin:22px 0 14px;position:relative;z-index:2}.lp2-final h2 em{font:inherit;color:#bcdff7}.lp2-final p{font-size:15px;color:rgba(255,255,255,.72);margin:0 0 26px;position:relative;z-index:2;max-width:560px}.lp2-final .lp2-btn{position:relative;z-index:2}

/* FOOTER */
.lp2-footer{padding:70px 0 34px;display:grid;grid-template-columns:1.3fr 1fr;gap:70px;border-top:1px solid var(--line)}.lp2-footer-brand p{font-size:13px;color:#69747c;max-width:310px;line-height:1.6;margin-top:14px}.lp2-footer-links{display:grid;grid-template-columns:repeat(3,1fr);gap:25px}.lp2-footer-links div{display:flex;flex-direction:column;gap:9px}.lp2-footer-links strong{font-size:11px;margin-bottom:5px;letter-spacing:.05em;text-transform:uppercase;color:#6b757d}.lp2-footer-links a{font-size:12px;color:#5d6870}.lp2-footer-bottom{grid-column:1/-1;border-top:1px solid var(--line);padding-top:20px;margin-top:24px;display:flex;justify-content:space-between;color:#8d9499;font-size:10px}

@media(max-width:900px){
  .lp2-nav{grid-template-columns:1fr auto}.lp2-nav-links{display:none}
  .lp2-hero{min-height:760px}
  .lp2-three,.lp2-moment-grid{grid-template-columns:1fr}.lp2-step{min-height:230px}
  .lp2-feature-row,.lp2-feature-row.lp2-reverse{grid-template-columns:1fr}.lp2-feature-row.lp2-reverse .lp2-feature-copy{order:0}.lp2-feature-art{min-height:390px}
  .lp2-after-inner{grid-template-columns:1fr;gap:30px}.lp2-after-art{max-width:650px;width:100%;margin:0 auto}
  .lp2-footer{grid-template-columns:1fr}.lp2-footer-links{max-width:600px}
}
@media(max-width:640px){
  .lp2-nav-wrap{padding:14px 0}.lp2-nav{width:calc(100% - 28px)}.lp2-wordmark{font-size:18px}.lp2-nav-cta{font-size:10px;padding:9px 11px}
  .lp2-hero{min-height:735px;padding:100px 14px 0}.lp2-hero h1{font-size:50px;line-height:.94}.lp2-hero p{font-size:13px;max-width:340px}.lp2-hero-actions{gap:12px}.lp2-btn{min-height:45px;font-size:11px;padding:0 16px}.lp2-text-link{font-size:10px}
  .lp2-section,.lp2-after-inner,.lp2-footer{width:calc(100% - 28px)}.lp2-section{padding:88px 0}.lp2-section-title{margin-bottom:34px}.lp2-section-title h2,.lp2-after-copy h2,.lp2-final h2{font-size:44px}.lp2-section-title p{font-size:13px}
  .lp2-step{min-height:235px;padding:24px}.lp2-step h3{font-size:27px}
  .lp2-feature-copy{padding:34px 28px}.lp2-feature-copy h3{font-size:36px}.lp2-feature-copy p{font-size:14px}.lp2-feature-art{min-height:350px;padding:16px}.lp2-remote-card,.lp2-insight-window,.lp2-gradebook,.lp2-chat{width:92%}
  .lp2-moment{min-height:390px}.lp2-after{padding:88px 0}.lp2-after-art{height:365px;transform:scale(.86);transform-origin:center}.lp2-final{padding:88px 14px}.lp2-final-card{min-height:450px;border-radius:24px}
  .lp2-footer{width:calc(100% - 30px);padding-top:54px;gap:36px}.lp2-footer-links{grid-template-columns:1fr 1fr}.lp2-footer-bottom{flex-direction:column;gap:7px}
}


/* ===== Landing hero simplification + interaction polish ===== */
.lp2-wordmark{
  font-weight:850!important;
  font-size:22px!important;
  letter-spacing:-.045em!important;
}
.lp2-nav-links button{
  appearance:none;
  border:0;
  background:transparent;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:.78;
  font-size:12px;
  font-weight:650;
  padding:0;
  cursor:pointer!important;
  transition:opacity .18s ease;
}
.lp2-nav-links button:hover,.lp2-nav-links button:focus-visible{opacity:1}
.lp2-nav-cta,
.lp2-btn-light,
.lp2-final .lp2-btn-light{
  color:#111419!important;
  -webkit-text-fill-color:#111419!important;
}
.lp2-btn-dark,
.lp2-after .lp2-btn-dark{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
}
.lp2-text-link{
  appearance:none;
  border:0;
  background:transparent;
  color:#173650!important;
  -webkit-text-fill-color:#173650!important;
  font-weight:650;
  padding:10px 4px;
  cursor:pointer!important;
}
.lp2-hero{
  min-height:760px!important;
  padding:148px 24px 108px!important;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(180deg,#86bfe7 0%,#95c9e9 62%,#dbeaf3 88%,var(--paper) 100%)!important;
}
.lp2-hero:after{bottom:-130px!important;height:240px!important}
.lp2-hero-copy{
  max-width:1180px!important;
  width:min(1180px,100%);
}
.lp2-hero h1{
  font-size:clamp(78px,8.6vw,132px)!important;
  line-height:.86!important;
  letter-spacing:-.072em!important;
  margin:28px auto 24px!important;
  max-width:1120px;
}
.lp2-hero p{
  font-size:clamp(17px,1.4vw,21px)!important;
  line-height:1.55!important;
  max-width:740px!important;
}
.lp2-hero-actions{margin-top:34px!important;gap:20px!important}
.lp2-hero .lp2-btn{min-height:56px!important;padding:0 24px!important;font-size:14px!important}
.lp2-hero .lp2-text-link{font-size:14px!important}

@media (max-width:900px){
  .lp2-wordmark{font-size:20px!important}
  .lp2-hero{
    min-height:690px!important;
    padding:122px 24px 82px!important;
  }
  .lp2-hero-copy{max-width:760px!important}
  .lp2-hero h1{
    font-size:clamp(62px,11vw,88px)!important;
    line-height:.88!important;
    max-width:760px;
  }
  .lp2-hero p{font-size:16px!important;max-width:580px!important}
}

@media (max-width:700px){
  .lp2-nav{width:calc(100% - 30px)!important}
  .lp2-wordmark{font-size:20px!important}
  .lp2-nav-cta{font-size:12px!important;padding:11px 14px!important;min-height:42px}
  .lp2-hero{
    min-height:650px!important;
    padding:110px 18px 72px!important;
  }
  .lp2-hero-copy{width:100%;max-width:100%!important}
  .lp2-hero .lp2-pill{font-size:11px!important;padding:9px 12px!important}
  .lp2-hero h1{
    font-size:clamp(55px,16vw,76px)!important;
    line-height:.88!important;
    letter-spacing:-.068em!important;
    margin:24px auto 20px!important;
  }
  .lp2-hero p{font-size:15px!important;line-height:1.55!important;max-width:390px!important}
  .lp2-hero-actions{margin-top:28px!important;gap:12px!important;flex-wrap:wrap}
  .lp2-hero .lp2-btn{min-height:50px!important;font-size:13px!important;padding:0 20px!important}
  .lp2-hero .lp2-text-link{font-size:13px!important;padding:10px 6px!important}
  .lp2-final .lp2-btn-light,.lp2-after .lp2-btn-dark{min-width:170px}
}

@media (max-width:430px){
  .lp2-nav-cta span{display:inline-block}
  .lp2-hero{min-height:620px!important;padding-left:14px!important;padding-right:14px!important}
  .lp2-hero h1{font-size:clamp(50px,15vw,66px)!important}
  .lp2-hero-actions{flex-direction:column}
  .lp2-hero .lp2-btn{width:min(280px,92%)}
}

/* ===== Landing anchor navigation reliability ===== */
.lp2 #how,.lp2 #features,.lp2 #classroom,.lp2 #after{scroll-margin-top:108px}
.lp2-nav-links a{display:inline-flex;align-items:center;color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:.78;font-size:12px;font-weight:650;line-height:1;padding:4px 0;cursor:pointer;text-decoration:none;transition:opacity .18s ease}
.lp2-nav-links a:hover,.lp2-nav-links a:focus-visible{opacity:1;outline:none}
.lp2-text-link{display:inline-flex;align-items:center;cursor:pointer;text-decoration:none}
@media(max-width:900px){.lp2 #how,.lp2 #features,.lp2 #classroom,.lp2 #after{scroll-margin-top:82px}}

/* landing nav reliability */
.lp2-nav-wrap{pointer-events:auto!important;z-index:100!important}
.lp2-nav,.lp2-nav-links,.lp2-nav-links a{pointer-events:auto!important}
.lp2 #how,.lp2 #features,.lp2 #classroom,.lp2 #after{scroll-margin-top:112px}
body:has(.lp2){overflow-x:hidden!important}


/* ===== Landing section placement refinement ===== */
.lp2 #how,.lp2 #features,.lp2 #classroom,.lp2 #after{scroll-margin-top:24px!important}
@media(max-width:640px){.lp2 #how,.lp2 #features,.lp2 #classroom,.lp2 #after{scroll-margin-top:16px!important}}

/* ===== FINAL landing navigation + responsive correction ===== */
.lp2-wordmark{
  font-weight:900!important;
  font-size:23px!important;
  letter-spacing:-.05em!important;
}
.lp2-nav-links a{
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:.78!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  text-decoration:none!important;
}
.lp2-nav-links a:hover,.lp2-nav-links a:focus-visible{opacity:1!important}
.lp2-scroll-anchor{scroll-margin-top:34px!important}
.lp2-nav-cta,.lp2-btn-light,.lp2-final .lp2-btn-light{
  background:#fff!important;
  color:#111419!important;
  -webkit-text-fill-color:#111419!important;
}
.lp2-nav-cta *, .lp2-btn-light *{color:#111419!important;-webkit-text-fill-color:#111419!important}
.lp2-hero{min-height:760px!important;padding-bottom:90px!important}
.lp2-hero-copy{max-width:1240px!important}
.lp2-hero h1{font-size:clamp(82px,9vw,142px)!important;max-width:1180px!important}
.lp2-hero p{max-width:760px!important}

@media(max-width:900px){
  .lp2-scroll-anchor{scroll-margin-top:26px!important}
  .lp2-hero{min-height:650px!important;padding:118px 20px 74px!important}
  .lp2-hero h1{font-size:clamp(60px,12vw,88px)!important;line-height:.88!important}
  .lp2-nav-links{display:none!important}
  .lp2-nav{grid-template-columns:1fr auto!important}
}
@media(max-width:640px){
  .lp2-scroll-anchor{scroll-margin-top:18px!important}
  .lp2-nav-wrap{padding:12px 0!important}
  .lp2-nav{width:calc(100% - 24px)!important}
  .lp2-wordmark{font-size:21px!important}
  .lp2-nav-cta{min-height:42px!important;padding:10px 13px!important;font-size:12px!important}
  .lp2-hero{min-height:620px!important;padding:104px 14px 60px!important}
  .lp2-hero h1{font-size:clamp(52px,15vw,70px)!important;line-height:.89!important;margin:22px auto 18px!important}
  .lp2-hero p{font-size:15px!important;line-height:1.5!important;max-width:410px!important}
  .lp2-hero-actions{gap:10px!important;margin-top:24px!important}
  .lp2-hero .lp2-btn{width:min(290px,92%)!important}
}


/* ===== Controlled landing navigation — no hash state ===== */
.lp2-nav-links button{
  appearance:none!important;
  border:0!important;
  background:transparent!important;
  color:#fff!important;
  -webkit-text-fill-color:#fff!important;
  opacity:.78!important;
  font:inherit!important;
  font-weight:650!important;
  line-height:1!important;
  padding:4px 0!important;
  cursor:pointer!important;
  pointer-events:auto!important;
}
.lp2-nav-links button:hover,.lp2-nav-links button:focus-visible{opacity:1!important;outline:none!important}
.lp2 .lp2-text-link[data-landing-scroll]{font-family:inherit;border:0;background:transparent;cursor:pointer}
.lp2-scroll-anchor{scroll-margin-top:0!important}


/* ===== Landing in-page scroll final behavior ===== */
.lp2-scroll-anchor{scroll-margin-top:96px!important}
@media(max-width:900px){.lp2-scroll-anchor{scroll-margin-top:74px!important}}

/* ===== v11.37: the landing page uses the app's own colours and shows the product ===== */
.lp2{--ink:#14151a;--paper:#f4f5f7;--line:#e8e9ee;--lp-accent:#2f66f6;--lp-grad:linear-gradient(135deg,#2f66f6 0%,#3b74f7 55%,#4a55f5 100%);background:var(--paper)!important;color:var(--ink)}
/* type: tight, but letters no longer collide */
.lp2 .lp2-hero h1{font-size:clamp(46px,6.2vw,88px)!important;line-height:.98!important;letter-spacing:-.045em!important;max-width:1000px!important;margin:18px auto 18px!important;text-shadow:none!important}
.lp2 .lp2-section-title h2,.lp2 .lp2-after-copy h2,.lp2 .lp2-final h2{letter-spacing:-.04em!important;line-height:1!important;font-size:clamp(36px,4.4vw,60px)!important}
.lp2 .lp2-feature-copy h3{letter-spacing:-.03em!important;line-height:1.08!important}
.lp2 .lp2-step h3,.lp2 .lp2-moment h3{letter-spacing:-.025em!important}
/* brand */
.lp2 .lp2-wordmark{color:var(--lp-accent)!important;-webkit-text-fill-color:var(--lp-accent)!important;font-weight:800!important}
.lp2 .lp2-nav-links{background:rgba(15,17,24,.86)!important}
.lp2 .lp2-nav-cta{color:var(--lp-accent)!important}
.lp2 .lp2-btn-dark{background:var(--lp-grad)!important;color:#fff!important;box-shadow:0 14px 30px -12px rgba(47,102,246,.7)!important}
.lp2 .lp2-btn-light{color:var(--lp-accent)!important}
.lp2 .lp2-eyebrow,.lp2 .lp2-tag{color:var(--lp-accent)!important;border-color:#c5d7ff!important;background:#fff!important}
.lp2 .lp2-tag{width:max-content!important}
.lp2 .lp2-inline-chips span{background:#eaf1ff!important;color:#1e3a8a!important}
/* hero: violet wash, copy, then the product itself */
.lp2 .lp2-hero{min-height:0!important;padding:118px 24px 64px!important;background:radial-gradient(900px 520px at 88% -8%,rgba(82,87,255,.55),transparent 62%),linear-gradient(180deg,#2ea0ff 0%,#3b82ff 38%,#9db8ff 78%,var(--paper) 100%)!important}
.lp2 .lp2-hero h1{color:#fff!important}
.lp2 .lp2-hero h1 em{color:#0f1b4d!important}
.lp2 .lp2-hero-copy>p{color:rgba(255,255,255,.92)!important;max-width:680px!important;margin-left:auto!important;margin-right:auto!important;font-size:18px!important;line-height:1.55!important}
.lp2 .lp2-pill{color:#1e3a8a!important;background:rgba(255,255,255,.9)!important}
.lp2 .lp2-pill i{background:#2f66f6!important}
.lp2 .lp2-hero .lp2-text-link{color:#fff!important}
.lp2-hero-facts{list-style:none;display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;margin:22px 0 0;padding:0;font-size:13.5px;font-weight:600;color:rgba(255,255,255,.92)}
.lp2-hero-facts li{display:flex;align-items:center;gap:8px}
.lp2-hero-facts li:before{content:'';width:7px;height:7px;border-radius:50%;background:#fff;opacity:.9}
.lp2-hero-show{position:relative;width:min(980px,100%);margin:54px auto 0;display:grid;grid-template-columns:minmax(0,1fr) 230px;gap:22px;align-items:end;text-align:left}
.lp2-show-projector{background:#fff;border-radius:24px;padding:22px 26px 26px;box-shadow:0 40px 80px -30px rgba(12,18,40,.55),0 0 0 1px rgba(231,228,246,.9);min-width:0}
.lp2-show-bar{display:flex;justify-content:space-between;align-items:center;gap:12px;padding-bottom:14px;margin-bottom:18px;border-bottom:1px solid #e8e9ee;font-size:13px;color:#5b6270}
.lp2-show-bar b{font-family:"Inter Tight",Inter,sans-serif;font-size:15px;font-weight:700;color:#14151a}
.lp2-show-bar span{display:flex;align-items:center;gap:7px;font-weight:600;white-space:nowrap}
.lp2-show-bar span i{width:8px;height:8px;border-radius:50%;background:#12b76a}
.lp2-show-projector small,.lp2-show-phone small{display:block;font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:#2f66f6}
.lp2-show-projector h4{margin:8px 0 18px;font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(22px,3vw,34px);line-height:1.08;letter-spacing:-.03em;font-weight:800;color:#14151a}
.lp2-show-rows{display:grid;gap:10px}
.lp2-show-rows>div{display:grid;grid-template-columns:110px minmax(0,1fr) 46px;align-items:center;gap:14px;padding:12px 16px;border:1px solid #e8e9ee;border-radius:14px;font-size:15px;font-weight:500;color:#14151a}
.lp2-show-rows u{display:block;height:12px;border-radius:999px;background:#eef0f4;overflow:hidden;text-decoration:none}
.lp2-show-rows u i{display:block;height:100%;border-radius:999px;background:linear-gradient(135deg,#2f66f6,#4a55f5)}
.lp2-show-rows b{font-family:"Inter Tight",Inter,sans-serif;font-weight:750;text-align:right}
.lp2-show-phone{background:#fff;border-radius:30px;padding:14px 16px 18px;box-shadow:0 40px 80px -30px rgba(12,18,40,.6),0 0 0 6px rgba(15,17,24,.92);margin-bottom:-18px}
.lp2-show-notch{width:64px;height:6px;border-radius:999px;background:#14151a;opacity:.85;margin:0 auto 14px}
.lp2-show-phone h5{margin:6px 0 12px;font-family:"Inter Tight",Inter,sans-serif;font-size:16px;line-height:1.15;letter-spacing:-.02em;font-weight:750;color:#14151a}
.lp2-show-opt{padding:11px 12px;border:1.5px solid #d6d9e2;border-radius:12px;font-size:13.5px;font-weight:500;color:#14151a;margin-bottom:8px}
.lp2-show-opt.on{border-color:#2f66f6;background:linear-gradient(135deg,#eaf1ff,#eef1ff);font-weight:650}
.lp2-show-submit{margin-top:10px;padding:12px;border-radius:12px;background:linear-gradient(135deg,#2f66f6,#3b74f7 55%,#4a55f5);color:#fff;font-size:13.5px;font-weight:700;text-align:center}
/* feature art: one family of tints, plus the two new mock-ups */
.lp2 .lp2-art-blue{background:linear-gradient(180deg,#e3edff,#f2f6ff)!important}
.lp2 .lp2-art-cream{background:linear-gradient(180deg,#eef0f4,#f6f7f9)!important}
.lp2 .lp2-art-rose{background:linear-gradient(180deg,#e8f3ff,#f4f9ff)}
.lp2 .lp2-art-ink{background:linear-gradient(160deg,#0f1b4d,#2540b3)}
.lp2-test,.lp2-code{width:min(400px,100%);border-radius:22px;padding:20px;box-shadow:0 30px 60px -28px rgba(12,18,40,.45)}
.lp2-test{background:#fff}
.lp2-test h4{margin:14px 0 12px;font-family:"Inter Tight",Inter,sans-serif;font-size:19px;line-height:1.2;letter-spacing:-.02em;font-weight:750;color:#14151a}
.lp2-test-opt{padding:12px 14px;border:1.5px solid #d6d9e2;border-radius:13px;font-size:14px;color:#14151a;margin-bottom:8px}
.lp2-test-opt.on{border-color:#2f66f6;background:linear-gradient(135deg,#eaf1ff,#eef1ff);font-weight:650}
.lp2-test-grid{display:grid;grid-template-columns:repeat(10,1fr);gap:6px;margin-top:14px}
.lp2-test-grid i{height:8px;border-radius:999px;background:#e8e9ee}
.lp2-test-grid i.done{background:#2f66f6}
.lp2-test-grid i.now{background:#4a55f5}
.lp2-code{background:#0b1230;color:#e6ecff;border:1px solid rgba(255,255,255,.12)}
.lp2-code-head{display:flex;justify-content:space-between;align-items:center;font-size:12.5px;font-weight:600;color:#a9b8dc;margin-bottom:12px}
.lp2-code-head b{padding:6px 12px;border-radius:999px;background:linear-gradient(135deg,#2f66f6,#4a55f5);color:#fff;font-weight:700}
.lp2-code pre{margin:0;font:13px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;white-space:pre-wrap;color:#e6ecff}
.lp2-code pre em{font-style:normal;color:#9cc2ff}
.lp2-code-result{display:flex;flex-wrap:wrap;align-items:center;gap:8px 14px;margin-top:16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.12);font-size:12.5px;color:#c9d4f0}
.lp2-code-result span{display:flex;align-items:center;gap:6px}
.lp2-code-result i{width:8px;height:8px;border-radius:50%;background:#32d583}
.lp2-code-result strong{margin-left:auto;font-family:"Inter Tight",Inter,sans-serif;font-size:14px;color:#fff}
/* institution band and closing card */
.lp2 .lp2-institution .lp2-step{min-height:0}
.lp2 .lp2-institution .lp2-step h3{margin-top:0}
.lp2 .lp2-final-card{background:radial-gradient(700px 420px at 90% 0%,rgba(82,87,255,.6),transparent 62%),linear-gradient(135deg,#16308f,#2f66f6 60%,#3b74f7)!important}
.lp2 .lp2-final-card h2 em{color:#cfe3ff!important}
@media(max-width:900px){
  .lp2-hero-show{grid-template-columns:minmax(0,1fr) 190px;gap:14px}
  .lp2-show-rows>div{grid-template-columns:86px minmax(0,1fr) 40px;gap:10px;padding:10px 12px;font-size:14px}
}
@media(max-width:640px){
  .lp2 .lp2-hero{padding:104px 16px 48px!important}
  .lp2 .lp2-hero-copy>p{font-size:16px!important}
  .lp2-hero-facts{flex-direction:column;align-items:center;gap:6px}
  .lp2-hero-show{grid-template-columns:minmax(0,1fr);margin-top:36px}
  .lp2-show-phone{display:none}
  .lp2-show-projector{padding:18px}
  .lp2-show-bar span{font-size:12px}
}
/* hero stacks: copy, then the product; the nav sits on the violet, so the wordmark is white there */
.lp2 .lp2-hero{display:block!important;height:auto!important;overflow:visible!important;padding:128px 24px 72px!important;background:radial-gradient(900px 520px at 88% -8%,rgba(82,87,255,.55),transparent 62%),linear-gradient(180deg,#2ea0ff 0%,#3b82ff 46%,#4c63ff 70%,#cfdcff 90%,var(--paper) 100%)!important}
.lp2 .lp2-hero:after{display:none!important}
.lp2 .lp2-hero-copy{max-width:900px!important;width:auto!important;margin:0 auto!important}
.lp2 .lp2-nav .lp2-wordmark{color:#fff!important;-webkit-text-fill-color:#fff!important}
.lp2 .lp2-footer .lp2-wordmark{color:var(--lp-accent)!important;-webkit-text-fill-color:var(--lp-accent)!important}
.lp2-hero-show{margin-top:48px}
.lp2-show-rows>div{grid-template-columns:130px minmax(0,1fr) 52px}
@media(max-width:640px){.lp2 .lp2-hero{padding:104px 16px 48px!important}.lp2-show-rows>div{grid-template-columns:92px minmax(0,1fr) 42px}}
.lp2 .lp2-hero .lp2-text-link{color:#fff!important;-webkit-text-fill-color:#fff!important;opacity:.95}

/* ===== v11.38: premium blue landing, after the reference boards ===== */
.lp2,.lp2 *{font-family:"Plus Jakarta Sans",Inter,ui-sans-serif,system-ui,sans-serif!important}
.lp2 pre,.lp2 pre *{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important}
.lp2{background:#f4f5f7!important}
.lp2 .lp2-hero h1{letter-spacing:-.04em!important;font-weight:800!important}
.lp2 .lp2-section-title h2,.lp2 .lp2-after-copy h2,.lp2 .lp2-final h2{letter-spacing:-.035em!important;font-weight:800!important}
.lp2 .lp2-feature-copy h3,.lp2 .lp2-step h3,.lp2 .lp2-moment h3{font-weight:700!important;letter-spacing:-.025em!important}
/* hero: a rounded blue panel inset from the page edge, with soft rings like the reference */
.lp2 .lp2-hero{margin:12px!important;width:auto!important;border-radius:36px!important;padding:132px 24px 0!important;overflow:hidden!important;background:radial-gradient(520px 520px at 12% 18%,rgba(255,255,255,.14),transparent 62%),radial-gradient(640px 640px at 92% 8%,rgba(255,255,255,.12),transparent 60%),linear-gradient(170deg,#2f9dff 0%,#2f74f8 46%,#4f58fb 100%)!important}
.lp2 .lp2-hero:before{content:''!important;position:absolute!important;inset:auto -120px -260px auto!important;width:620px!important;height:620px!important;border-radius:50%!important;border:70px solid rgba(255,255,255,.07)!important;background:none!important;pointer-events:none}
.lp2 .lp2-hero h1 em{color:#0b1b4d!important}
.lp2-hero-show{margin:52px auto -4px!important;align-items:end}
.lp2-show-projector{border-radius:26px 26px 0 0!important;padding-bottom:34px!important}
.lp2-show-phone{margin-bottom:0!important;border-radius:30px 30px 0 0!important;box-shadow:0 40px 80px -30px rgba(12,18,40,.6),0 0 0 6px #14151a!important}
/* nav: one white pill bar */
.lp2 .lp2-nav-wrap{padding:26px 0!important}
.lp2 .lp2-nav{background:rgba(255,255,255,.96)!important;border-radius:999px!important;padding:8px 8px 8px 22px!important;box-shadow:0 14px 34px -18px rgba(12,18,40,.45)!important;width:min(1120px,calc(100% - 56px))!important}
.lp2 .lp2-nav .lp2-wordmark{color:#14151a!important;-webkit-text-fill-color:#14151a!important}
.lp2 .lp2-wordmark:before{content:'';display:inline-block;width:20px;height:20px;margin-right:8px;border-radius:7px;background:linear-gradient(160deg,#2b8bff,#4a55f5);box-shadow:inset 0 0 0 5px rgba(255,255,255,.28)}
.lp2 .lp2-nav-links{background:transparent!important;box-shadow:none!important;backdrop-filter:none!important;padding:0!important;gap:6px!important}
.lp2 .lp2-nav-links button{color:#454854!important;-webkit-text-fill-color:#454854!important;opacity:1!important;padding:9px 14px!important;border-radius:999px!important;font-size:13.5px!important;font-weight:600!important}
.lp2 .lp2-nav-links button:hover{background:#eef0f4!important;color:#14151a!important;-webkit-text-fill-color:#14151a!important}
.lp2 .lp2-nav-cta{background:linear-gradient(180deg,#2a2c36,#14151a)!important;color:#fff!important;-webkit-text-fill-color:#fff!important;padding:12px 18px!important;font-size:13.5px!important;box-shadow:none!important}
/* buttons: near-black pill is the primary everywhere on light; white pill on the blue */
.lp2 .lp2-btn{border-radius:999px!important}
.lp2 .lp2-btn-dark{background:linear-gradient(180deg,#2a2c36,#14151a)!important;box-shadow:0 14px 28px -14px rgba(12,18,40,.6)!important}
.lp2 .lp2-btn-light{color:#14151a!important;-webkit-text-fill-color:#14151a!important;box-shadow:0 14px 30px -14px rgba(12,18,40,.5)!important}
.lp2 .lp2-eyebrow,.lp2 .lp2-tag{color:#2458e6!important;border-color:#c5d7ff!important}
.lp2 .lp2-inline-chips span{background:#eef0f4!important;color:#454854!important}
/* cards on the grey page: white, no outline; art panels stay calm */
.lp2 .lp2-step,.lp2 .lp2-feature-copy,.lp2 .lp2-moment{border:0!important;box-shadow:0 1px 2px rgba(20,24,40,.04),0 16px 36px -28px rgba(20,24,40,.25)!important}
.lp2 .lp2-step-lilac,.lp2 .lp2-step-yellow,.lp2 .lp2-step-blue{background:#fff!important}
.lp2 .lp2-step-icon{background:#eaf1ff!important;box-shadow:none!important;border-radius:50%!important}
.lp2 .lp2-feature-copy,.lp2 .lp2-feature-art{border-radius:32px!important}
.lp2 .lp2-art-lilac{background:linear-gradient(180deg,#e3edff,#f2f6ff)!important}
.lp2 .lp2-art-mint{background:linear-gradient(180deg,#e6f6ec,#f3faf5)!important}
.lp2 .lp2-art-ink{background:linear-gradient(160deg,#0f1b4d,#2540b3)!important}
.lp2 .lp2-after{background:#fff!important;border-radius:36px!important;margin:0 12px!important}
/* closing panel: the blue gradient card with floating icon tiles */
.lp2 .lp2-final-card{position:relative!important;overflow:hidden!important;border-radius:36px!important;background:radial-gradient(520px 520px at 10% 0%,rgba(255,255,255,.14),transparent 60%),linear-gradient(170deg,#2f9dff 0%,#2f74f8 46%,#4f58fb 100%)!important;box-shadow:0 40px 80px -40px rgba(47,102,246,.8)!important}
.lp2 .lp2-final-card:before,.lp2 .lp2-final-card:after{content:'';position:absolute;width:64px;height:64px;border-radius:22px;background:#fff center/30px no-repeat;box-shadow:0 18px 36px -16px rgba(12,18,40,.5)}
.lp2 .lp2-final-card:before{left:9%;top:20%;transform:rotate(-10deg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f66f6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='4' y='13' width='4' height='7' rx='1.2' fill='%23c5d7ff'/%3E%3Crect x='10' y='8' width='4' height='12' rx='1.2' fill='%23c5d7ff'/%3E%3Crect x='16' y='4' width='4' height='16' rx='1.2' fill='%23c5d7ff'/%3E%3C/svg%3E")}
.lp2 .lp2-final-card:after{right:9%;bottom:20%;transform:rotate(9deg);background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%232f66f6' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Crect x='3' y='4.5' width='18' height='15' rx='3' fill='%23c5d7ff'/%3E%3Cpath d='m9.5 9.5-2.5 2.5 2.5 2.5M14.5 9.5l2.5 2.5-2.5 2.5'/%3E%3C/svg%3E")}
.lp2 .lp2-final-card h2 em{color:#0b1b4d!important}
.lp2 .lp2-pill-dark{background:rgba(255,255,255,.18)!important;color:#fff!important;border-color:rgba(255,255,255,.3)!important}
/* footer: giant faded wordmark */
.lp2 .lp2-footer{position:relative!important;overflow:hidden!important;padding-bottom:150px!important}
.lp2 .lp2-footer:after{content:'Sessional';position:absolute;left:50%;bottom:-46px;transform:translateX(-50%);font-size:clamp(90px,17vw,230px);font-weight:800;letter-spacing:-.06em;line-height:1;white-space:nowrap;background:linear-gradient(180deg,#e2e5ec,rgba(226,229,236,0));-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent;pointer-events:none}
.lp2 .lp2-footer .lp2-wordmark{color:#14151a!important;-webkit-text-fill-color:#14151a!important}
@media(max-width:900px){.lp2 .lp2-nav-links{display:none!important}.lp2 .lp2-nav{width:calc(100% - 28px)!important}}
@media(max-width:640px){
  .lp2 .lp2-hero{margin:8px!important;border-radius:28px!important;padding:112px 16px 0!important}
  .lp2 .lp2-nav-wrap{padding:18px 0!important}
  .lp2 .lp2-final-card:before,.lp2 .lp2-final-card:after{width:48px;height:48px;border-radius:16px;background-size:24px}
  .lp2 .lp2-final-card:before{left:5%;top:7%}.lp2 .lp2-final-card:after{right:5%;bottom:7%}
  .lp2 .lp2-after{margin:0 8px!important;border-radius:28px!important}
  .lp2 .lp2-footer{padding-bottom:90px!important}
  .lp2-show-projector{border-radius:22px 22px 0 0!important}
}
.lp2 .lp2-final-card:before,.lp2 .lp2-final-card:after{display:block!important;z-index:1}

/* ===== v11.38: landing sections rebuilt (lpx-*). Rule for every graphic: nothing under 13px, dark text on white,
   blue as the only accent, green only for "passed". ===== */
.lp2 p{color:#454854}
.lp2 .lp2-hero-copy>p{color:#fff!important;font-weight:500!important}
.lp2 .lp2-final p{color:rgba(255,255,255,.94)!important;font-size:17px!important;font-weight:500!important}
.lp2 .lp2-footer p,.lp2 .lp2-footer a,.lp2 .lp2-footer span{color:#454854!important}
.lp2 .lp2-footer strong{color:#14151a!important}
.lpx-section{width:min(1120px,calc(100% - 48px));margin:0 auto;padding:104px 0 0}
.lpx-head{max-width:720px;margin:0 auto 44px;text-align:center}
.lpx-eyebrow{display:inline-block;padding:7px 14px;border-radius:999px;background:#eaf1ff;font-size:13px;font-weight:700;letter-spacing:.02em;color:#2458e6}
.lpx-head h2,.lpx-split h2{margin:18px 0 0;font-size:clamp(32px,4vw,52px);line-height:1.06;letter-spacing:-.035em;font-weight:800;color:#14151a;text-wrap:balance}
.lpx-head p,.lpx-split .lpx-copy p{margin:16px auto 0;font-size:18px;line-height:1.6;color:#454854;max-width:620px}
.lpx-steps{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.lpx-steps article{background:#fff;border-radius:28px;padding:28px;box-shadow:0 1px 2px rgba(20,24,40,.04),0 16px 36px -28px rgba(20,24,40,.22)}
.lpx-steps article>b{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:#14151a;color:#fff;font-size:16px;font-weight:800;margin-bottom:18px}
.lpx-steps article>span{display:inline-block;padding:6px 12px;border-radius:999px;background:#eef0f4;font-size:13px;font-weight:700;color:#454854;margin-bottom:16px}
.lpx-steps h3{margin:0 0 8px;font-size:21px;line-height:1.2;letter-spacing:-.02em;font-weight:700;color:#14151a}
.lpx-steps p{margin:0;font-size:16px;line-height:1.6;color:#454854}
.lpx-phases article.on{background:linear-gradient(170deg,#2f9dff 0%,#2f74f8 46%,#4f58fb 100%);box-shadow:0 30px 56px -30px rgba(47,102,246,.8)}
.lpx-phases article.on h3,.lpx-phases article.on p{color:#fff}
.lpx-phases article.on>span{background:rgba(255,255,255,.2);color:#fff}
.lpx-bento{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}
.lpx-card{display:flex;flex-direction:column;gap:22px;background:#fff;border-radius:32px;padding:28px;box-shadow:0 1px 2px rgba(20,24,40,.04),0 16px 36px -28px rgba(20,24,40,.22);min-width:0}
.lpx-wide{grid-column:1 / -1;flex-direction:row;align-items:center;gap:36px}
.lpx-wide>*{flex:1;min-width:0}
.lpx-copy h3{margin:0 0 8px;font-size:24px;line-height:1.15;letter-spacing:-.025em;font-weight:700;color:#14151a}
.lpx-copy p{margin:0;font-size:16.5px;line-height:1.6;color:#454854}
.lpx-graphic{background:#f4f6fa;border-radius:22px;padding:22px;min-width:0;color:#14151a}
.lpx-graphic small{display:block;font-size:13px;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:#5b6270}
.lpx-graphic strong{display:block;font-size:19px;line-height:1.25;letter-spacing:-.02em;font-weight:700;margin:6px 0 14px}
.lpx-g-poll>div{display:grid;grid-template-columns:104px minmax(0,1fr) 48px;align-items:center;gap:12px;background:#fff;border-radius:14px;padding:12px 16px;margin-bottom:8px;font-size:15px;font-weight:600}
.lpx-g-poll u{display:block;height:12px;border-radius:999px;background:#e8ecf4;overflow:hidden;text-decoration:none}
.lpx-g-poll u i{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#2b8bff,#4a55f5)}
.lpx-g-poll>div>b{text-align:right;font-size:16px;font-weight:800}
.lpx-g-poll>p{margin:12px 2px 0;font-size:14px;color:#454854}
.lpx-g-poll>p b{color:#14151a;font-size:16px}
.lpx-g-test span,.lpx-g-remote>div span{display:block;background:#fff;border:1.5px solid #dfe3ec;border-radius:14px;padding:12px 14px;font-size:15px;font-weight:500;margin-bottom:8px}
.lpx-g-test span.on,.lpx-g-remote>div span.on{border-color:#2f66f6;background:#eaf1ff;font-weight:700;color:#1b47c4}
.lpx-g-code{background:#0f1730;color:#e6ecff}
.lpx-g-code pre{margin:0 0 16px;font:15px/1.7 ui-monospace,SFMono-Regular,Menlo,Consolas,monospace!important;white-space:pre-wrap;color:#e6ecff}
.lpx-g-code pre em{font-style:normal;color:#9cc2ff}
.lpx-g-code>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px 16px;padding-top:14px;border-top:1px solid rgba(255,255,255,.16);font-size:14px;color:#d5def7}
.lpx-g-code>div span{display:flex;align-items:center;gap:7px}
.lpx-g-code>div i{width:9px;height:9px;border-radius:50%;background:#34d399}
.lpx-g-code>div b{margin-left:auto;font-size:15px;font-weight:800;color:#fff}
.lpx-g-remote>div{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.lpx-g-remote>div span{text-align:center;margin-bottom:8px;font-weight:600}
.lpx-g-marks>div{display:grid;grid-template-columns:1.4fr 1fr .8fr .8fr;gap:8px;align-items:center;padding:11px 4px;border-bottom:1px solid #e3e7ef;font-size:15px}
.lpx-g-marks>div:last-child{border-bottom:0}
.lpx-g-marks .h{font-size:13px;font-weight:700;color:#5b6270;padding-top:0}
.lpx-g-marks b{font-weight:800}
.lpx-g-marks .flag{justify-self:start;padding:3px 9px;border-radius:999px;background:#eaf1ff;color:#1b47c4;font-size:13px;font-weight:700}
.lpx-g-chat{display:flex;flex-direction:column;gap:10px}
.lpx-g-chat p{margin:0;max-width:86%;padding:14px 16px;border-radius:18px;font-size:15.5px;line-height:1.45}
.lpx-g-chat .them{background:#fff;color:#14151a;border-bottom-left-radius:6px}
.lpx-g-chat .me{align-self:flex-end;background:#2458e6;color:#fff;border-bottom-right-radius:6px}
.lpx-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:48px;align-items:center;background:#fff;border-radius:36px;padding:56px;width:min(1120px,calc(100% - 48px));margin-top:104px;box-shadow:0 1px 2px rgba(20,24,40,.04),0 16px 36px -28px rgba(20,24,40,.22)}
.lpx-split .lpx-copy p{margin:16px 0 26px;max-width:none}
.lpx-g-student{display:grid;gap:10px}
.lpx-g-student .live{background:linear-gradient(170deg,#2f9dff,#2f74f8 46%,#4f58fb);border-radius:18px;padding:18px;color:#fff;display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 12px}
.lpx-g-student .live small{color:#fff;grid-column:1}
.lpx-g-student .live strong{margin:0;grid-column:1;color:#fff}
.lpx-g-student .live span{grid-column:2;grid-row:1 / 3;background:#fff;color:#14151a;border-radius:999px;padding:9px 18px;font-size:14px;font-weight:700}
.lpx-g-student .row{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.lpx-g-student .row>div,.lpx-g-student .next{background:#fff;border-radius:18px;padding:16px}
.lpx-g-student .row b{display:block;font-size:26px;font-weight:800;letter-spacing:-.03em}
.lpx-g-student .row span{font-size:14px;color:#454854}
.lpx-g-student .next{display:grid;grid-template-columns:1fr auto;align-items:center;gap:2px 12px}
.lpx-g-student .next strong{margin:0;grid-column:1}
.lpx-g-student .next span{grid-column:2;grid-row:1 / 3;font-size:14px;font-weight:700;color:#454854}
.lp2 .lp2-final{padding-top:104px!important}
@media(max-width:900px){
  .lpx-steps{grid-template-columns:minmax(0,1fr)}
  .lpx-bento{grid-template-columns:minmax(0,1fr)}
  .lpx-wide{flex-direction:column;align-items:stretch;gap:22px}
  .lpx-split{grid-template-columns:minmax(0,1fr);padding:32px;gap:28px}
}
@media(max-width:640px){
  .lpx-section,.lpx-split{width:calc(100% - 24px);padding-top:72px}
  .lpx-split{padding:24px;margin-top:72px}
  .lpx-card{padding:20px;border-radius:26px}
  .lpx-head{margin-bottom:28px}
  .lpx-head p,.lpx-split .lpx-copy p{font-size:16.5px}
  .lpx-g-poll>div{grid-template-columns:88px minmax(0,1fr) 44px;padding:11px 12px}
  .lp2 .lp2-final{padding-top:72px!important}
}
.lp2 p,.lpx-steps p,.lpx-copy p,.lpx-head p{font-weight:500}
/* button icons always take the button's own text colour */
.lp2 .lp2-nav-cta .lp2-ui-icon,.lp2 .lp2-btn .lp2-ui-icon{background:currentColor!important;color:inherit!important}
/* hero: a plain blue gradient, no rings or spotlights */
.lp2 .lp2-hero{background:linear-gradient(170deg,#2f9dff 0%,#2f74f8 46%,#4f58fb 100%)!important}
.lp2 .lp2-hero:before{display:none!important}
.lp2-show-rows>div{grid-template-columns:170px minmax(0,1fr) 52px}
.lpx-g-poll>div{grid-template-columns:150px minmax(0,1fr) 48px}
@media(max-width:640px){.lp2-show-rows>div{grid-template-columns:124px minmax(0,1fr) 42px}.lpx-g-poll>div{grid-template-columns:124px minmax(0,1fr) 44px}}

/* ===== landing: legibility pass. The blue is a shade deeper so white text on it passes contrast everywhere. ===== */
.lp2 .lp2-hero,.lp2 .lp2-final-card,.lpx-phases article.on,.lpx-g-student .live{background:linear-gradient(170deg,#1a6fe0 0%,#2458e6 48%,#3f45e0 100%)!important}
.lp2 .lp2-hero h1 em,.lp2 .lp2-final-card h2 em{color:#081640!important}
.lp2 .lp2-pill{background:#fff!important;color:#1b47c4!important;font-size:13px!important;padding:8px 14px!important}
.lp2 .lp2-pill-dark{background:rgba(8,22,64,.32)!important;color:#fff!important;border-color:rgba(255,255,255,.35)!important}
.lp2 .lp2-hero .lp2-text-link{font-size:15px!important;font-weight:600!important;text-decoration:underline;text-underline-offset:5px;text-decoration-color:rgba(255,255,255,.6);min-height:44px;display:inline-flex;align-items:center}
.lp2-hero-facts{font-size:14.5px}
.lp2 .lp2-footer strong{font-size:13px!important;letter-spacing:.06em!important}
.lp2 .lp2-footer a{font-size:14.5px!important;padding:6px 0!important;display:block}
.lp2 .lp2-footer-bottom span{font-size:13px!important}
.lp2 .lp2-footer-brand p{font-size:14.5px!important}
.lp2 .lp2-nav .lp2-wordmark{min-height:44px}
@media(max-width:640px){.lp2 .lp2-footer a{padding:10px 0!important}.lp2 .lp2-pill{font-size:13px!important}}
@media(max-width:640px){.lp2 .lp2-footer a{min-height:44px;display:flex!important;align-items:center;padding:0!important}}
/* landing on a phone */
@media(max-width:640px){
  .lp2 .lp2-hero h1{font-size:clamp(34px,10.4vw,44px)!important;line-height:1.04!important}
  .lp2 .lp2-hero h1 br{display:none}
  .lp2 .lp2-hero-copy>p{font-size:16px!important;max-width:34ch!important}
  .lpx-head{padding:0 12px;box-sizing:border-box}
  .lpx-head h2,.lpx-split h2{font-size:clamp(28px,8vw,34px)}
  .lpx-g-marks>div{grid-template-columns:1.3fr 1.1fr .7fr .7fr;font-size:14px}
  .lpx-g-marks .flag{white-space:nowrap;padding:3px 7px;font-size:12px}
  .lpx-g-poll>div{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) 44px}
  .lp2-show-rows>div{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) 42px}
  .lp2 .lp2-final-card{min-height:0!important;padding:84px 22px 84px!important}
  .lp2 .lp2-final-card h2{font-size:clamp(30px,8.6vw,38px)!important}
  .lp2 .lp2-footer{grid-template-columns:minmax(0,1fr)!important;gap:28px!important;padding-left:20px!important;padding-right:20px!important}
  .lp2 .lp2-footer-links{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:20px!important}
  .lp2 .lp2-footer-bottom{flex-direction:column;gap:6px;align-items:flex-start}
}
@media(max-width:640px){.lp2 .lp2-hero h1 br{display:inline}.lp2 .lp2-hero h1{font-size:clamp(28px,8.4vw,38px)!important;letter-spacing:-.045em!important;white-space:nowrap}}

/* hero: full-bleed blue from edge to edge, no inset card; the product preview sits fully inside it */
.lp2 .lp2-hero{margin:0!important;width:100%!important;border-radius:0!important;padding:132px 24px 84px!important;overflow:hidden!important}
.lp2-hero-show{margin:52px auto 0!important;align-items:end}
.lp2-show-projector{border-radius:26px!important;padding-bottom:26px!important}
.lp2-show-phone{border-radius:30px!important;margin-bottom:0!important}
@media(max-width:640px){.lp2 .lp2-hero{margin:0!important;border-radius:0!important;padding:112px 16px 56px!important}.lp2-show-projector{border-radius:22px!important}}

/* ===== landing motion (lpk-*) ===== */
/* headline: each line rises from behind a mask; the last word rotates through what a class produces */
.lpk-line{display:inline-block;overflow:hidden;vertical-align:bottom;padding-bottom:.12em;margin-bottom:-.12em}
.lpk-line>span{display:inline-block;animation:lpk-rise .9s cubic-bezier(.2,.8,.2,1) both}
.lpk-line:nth-of-type(2)>span,.lp2-hero h1 br+.lpk-line>span{animation-delay:.14s}
.lpk-rotate{display:inline-grid;vertical-align:bottom;text-align:left;font:inherit;font-style:normal;overflow:hidden;height:1.16em;line-height:1.16}
.lpk-rotate b{grid-area:1/1;font:inherit;color:inherit;white-space:nowrap;animation:lpk-word 10s cubic-bezier(.7,0,.2,1) infinite both}
.lpk-rotate b:nth-child(2){animation-delay:2.5s}.lpk-rotate b:nth-child(3){animation-delay:5s}.lpk-rotate b:nth-child(4){animation-delay:7.5s}
@keyframes lpk-rise{from{transform:translateY(110%)}to{transform:none}}
@keyframes lpk-word{0%{transform:translateY(105%);opacity:0}4%,22%{transform:none;opacity:1}26%,100%{transform:translateY(-105%);opacity:0}}
.lp2-hero .lp2-pill,.lp2-hero-copy>p,.lp2-hero-actions,.lp2-hero-facts{animation:lpk-fade .8s ease both}
.lp2-hero-copy>p{animation-delay:.3s}.lp2-hero-actions{animation-delay:.42s}.lp2-hero-facts{animation-delay:.54s}
@keyframes lpk-fade{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}
/* hero preview: bars grow, the live dot pulses, the chosen option breathes, the phone floats */
.lp2-show-rows u i{transform-origin:left;animation:lpk-grow 1.3s cubic-bezier(.2,.8,.2,1) .7s both}
.lp2-show-rows>div:nth-child(2) u i{animation-delay:.85s}.lp2-show-rows>div:nth-child(3) u i{animation-delay:1s}
@keyframes lpk-grow{from{transform:scaleX(0)}to{transform:scaleX(1)}}
.lp2-show-bar span i{animation:lpk-pulse 1.6s ease-in-out infinite}
@keyframes lpk-pulse{0%,100%{box-shadow:0 0 0 0 rgba(18,183,106,.5)}60%{box-shadow:0 0 0 7px rgba(18,183,106,0)}}
.lp2-show-phone{animation:lpk-float 6s ease-in-out infinite}
@keyframes lpk-float{50%{transform:translateY(-10px)}}
.lp2-show-opt.on{animation:lpk-pick 2.8s ease-in-out infinite}
@keyframes lpk-pick{50%{box-shadow:0 0 0 5px rgba(47,102,246,.16)}}
/* strip of what you can run */
.lpk-marquee{overflow:hidden;padding:22px 0;border-bottom:1px solid #e8e9ee;background:#fff;-webkit-mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent);mask-image:linear-gradient(90deg,transparent,#000 12%,#000 88%,transparent)}
.lpk-marquee>div{display:flex;gap:14px;width:max-content;animation:lpk-scroll 38s linear infinite}
.lpk-marquee span{flex:none;padding:10px 18px;border-radius:999px;background:#f4f5f7;font-size:15px;font-weight:700;letter-spacing:-.01em;color:#14151a}
.lpk-marquee span:nth-child(3n+1){background:#eaf1ff;color:#1b47c4}
.lpk-marquee:hover>div{animation-play-state:paused}
@keyframes lpk-scroll{to{transform:translateX(calc(-50% - 7px))}}
/* sections rise in when scrolled to (only once the script has marked the page ready) */
.lpk-ready .lpk-reveal{opacity:0;transform:translateY(26px);transition:opacity .7s ease var(--d,0ms),transform .8s cubic-bezier(.2,.8,.2,1) var(--d,0ms)}
.lpk-ready .lpk-reveal.is-in{opacity:1;transform:none}
/* graphics play when their card arrives */
.lpk-ready .lpx-g-poll u i{transform-origin:left;transform:scaleX(0);transition:transform 1.1s cubic-bezier(.2,.8,.2,1) .35s}
.lpk-ready .is-in .lpx-g-poll u i{transform:scaleX(1)}
.lpk-ready .lpx-g-chat p{opacity:0;transform:translateY(10px) scale(.96);transition:opacity .45s ease,transform .5s cubic-bezier(.2,.8,.2,1)}
.lpk-ready .is-in .lpx-g-chat p{opacity:1;transform:none;transition-delay:.4s}
.lpk-ready .is-in .lpx-g-chat p.me{transition-delay:1.1s}
.lpk-ready .lpx-g-code>div span,.lpk-ready .lpx-g-code>div b{opacity:0;transition:opacity .4s ease}
.lpk-ready .is-in .lpx-g-code>div span{opacity:1;transition-delay:.7s}
.lpk-ready .is-in .lpx-g-code>div span:nth-child(2){transition-delay:1.05s}
.lpk-ready .is-in .lpx-g-code>div b{opacity:1;transition-delay:1.4s}
.lpx-g-code pre:after{content:'';display:inline-block;width:8px;height:1.05em;margin-left:3px;vertical-align:-2px;background:#9cc2ff;animation:lpk-caret 1s steps(1) infinite}
@keyframes lpk-caret{50%{opacity:0}}
.lpk-ready .lpx-g-test span.on,.lpk-ready .lpx-g-remote span.on{transition:background .4s ease 1s,border-color .4s ease 1s,color .4s ease 1s}
.lpk-ready :not(.is-in)>.lpx-g-test span.on,.lpk-ready :not(.is-in)>.lpx-g-remote span.on{background:#fff;border-color:#dfe3ec;color:#14151a}
.lpx-g-student .live span{animation:lpk-pick 2.4s ease-in-out infinite}
.lpx-card,.lpx-steps article{transition:transform .25s ease,box-shadow .25s ease}
.lpk-ready .lpx-card.is-in:hover,.lpk-ready .lpx-steps article.is-in:hover{transform:translateY(-4px);box-shadow:0 1px 2px rgba(20,24,40,.04),0 28px 48px -30px rgba(20,24,40,.35)}
/* closing panel: the two icon tiles drift */
.lp2 .lp2-final-card:before{animation:lpk-drift-a 7s ease-in-out infinite}
.lp2 .lp2-final-card:after{animation:lpk-drift-b 8s ease-in-out infinite}
@keyframes lpk-drift-a{50%{transform:rotate(-4deg) translateY(-12px)}}
@keyframes lpk-drift-b{50%{transform:rotate(14deg) translateY(10px)}}
@media(max-width:640px){.lpk-marquee{padding:16px 0}.lpk-marquee span{font-size:14px;padding:9px 15px}.lp2 .lp2-hero h1{white-space:normal}.lpk-line{white-space:nowrap}}
@media(prefers-reduced-motion:reduce){
  .lpk-line>span,.lpk-rotate b,.lp2-hero .lp2-pill,.lp2-hero-copy>p,.lp2-hero-actions,.lp2-hero-facts,.lp2-show-rows u i,.lp2-show-bar span i,.lp2-show-phone,.lp2-show-opt.on,.lpk-marquee>div,.lpx-g-code pre:after,.lpx-g-student .live span,.lp2 .lp2-final-card:before,.lp2 .lp2-final-card:after{animation:none!important}
  .lpk-rotate b:not(:first-child){display:none}
}

/* rotating word: the next word arrives as the last one leaves, so the line is never empty */
@keyframes lpk-word{0%{transform:translateY(105%);opacity:0}3%,24%{transform:none;opacity:1}27%,100%{transform:translateY(-105%);opacity:0}}
/* pill dots are blue, with no green halo */
.lp2 .lp2-pill i,.lp2 .lp2-pill-dark i{background:#2458e6!important;box-shadow:0 0 0 4px rgba(36,88,230,.16)!important}
.lp2 .lp2-pill-dark i{background:#fff!important;box-shadow:0 0 0 4px rgba(255,255,255,.22)!important}
.lp2-show-bar span i{background:#12b76a}
/* capitalisation: labels are written in sentence case, never forced to capitals */
.lp2 *,.lpx-graphic small,.lp2-show-projector small,.lp2-show-phone small{text-transform:none!important}
.lp2 .lp2-footer strong,.lpx-graphic small,.lp2-show-projector small,.lp2-show-phone small,.lpx-g-marks .h{letter-spacing:0!important}
.lp2 .lp2-footer strong{font-size:14px!important;font-weight:700!important}
.lpx-graphic small,.lp2-show-projector small,.lp2-show-phone small{font-size:13px;font-weight:700}

/* hero type: one centred column. Line one is the sentence, line two is the rotating word on its own line, so every
   word is centred and shares one baseline. Button and link text are the same size. */
.lp2 .lp2-hero h1{display:flex!important;flex-direction:column;align-items:center;gap:.04em;white-space:normal!important;line-height:1.02!important;font-size:clamp(34px,6vw,84px)!important;letter-spacing:-.04em!important;margin:18px auto 20px!important}
.lp2 .lp2-hero h1 .lpk-line{display:block;overflow:hidden;padding:0 .06em .14em;margin:0 0 -.14em;white-space:nowrap}
.lp2 .lp2-hero h1 .lpk-rotate{display:grid;justify-items:center;align-items:start;width:100%;height:1.24em;line-height:1.2;overflow:hidden;text-align:center;color:#081640}
.lp2 .lp2-hero h1 .lpk-rotate b{grid-area:1/1;display:block;font:inherit;line-height:1.2;color:inherit;white-space:nowrap}
.lp2 .lp2-hero-copy>p{margin-top:0!important}
.lp2 .lp2-hero-actions{align-items:center!important;justify-content:center!important;gap:18px!important}
.lp2 .lp2-hero-actions .lp2-btn{font-size:16px!important;font-weight:600!important;min-height:52px!important;padding:0 26px!important}
.lp2 .lp2-hero .lp2-text-link{font-size:16px!important}
.lp2-hero-facts{font-size:15px;line-height:1.4}
@media(max-width:640px){
  .lp2 .lp2-hero h1{font-size:clamp(28px,8.6vw,38px)!important;letter-spacing:-.04em!important}
  .lp2 .lp2-hero-actions{flex-direction:column;gap:6px!important}
  .lp2 .lp2-hero-actions .lp2-btn{width:100%;max-width:320px;justify-content:center}
}
@media(prefers-reduced-motion:reduce){.lp2 .lp2-hero h1 .lpk-rotate b:not(:first-child){display:none!important}.lp2 .lp2-hero h1 .lpk-rotate b{animation:none!important;transform:none!important;opacity:1!important}}

/* hero: optical tidy-up. Even vertical rhythm, a balanced paragraph with no orphaned last word, and the live count
   reads as one phrase. */
.lp2 .lp2-hero .lp2-pill{margin:0!important}
.lp2 .lp2-hero h1{margin:26px auto 22px!important;gap:0;line-height:1.04!important}
.lp2 .lp2-hero h1 .lpk-rotate{height:1.22em;line-height:1.18;margin-top:-.02em}
.lp2 .lp2-hero h1 .lpk-rotate b{line-height:1.18}
.lp2 .lp2-hero-copy>p{max-width:600px!important;margin:0 auto!important;text-wrap:balance;line-height:1.5!important}
.lp2 .lp2-hero-actions{margin:30px 0 0!important}
.lp2-hero-facts{margin:24px 0 0!important}
.lp2-hero-show{margin:56px auto 0!important}
.lp2-show-bar>span>span{display:inline;white-space:nowrap}
.lp2-show-bar>span>span b{font-weight:700;color:#14151a;font-variant-numeric:tabular-nums}
@media(max-width:640px){.lp2 .lp2-hero h1{margin:22px auto 16px!important}.lp2 .lp2-hero-actions{margin-top:24px!important}.lp2-hero-facts{margin-top:18px!important;gap:8px}.lp2-hero-show{margin-top:40px!important}}

/* a landing page that had to be redrawn after it was first shown does not replay its entrance */
.lpk-static .lpk-line>span,.lpk-static .lp2-hero .lp2-pill,.lpk-static .lp2-hero-copy>p,.lpk-static .lp2-hero-actions,.lpk-static .lp2-hero-facts,.lpk-static .lp2-show-rows u i{animation:none!important}

/* Interactive tour: the player and the questions that jump into it */
.lpt-wrap{display:block;width:min(1240px,calc(100vw - 48px),calc((100vh - 140px) * 16 / 9));margin:0 auto;position:relative;left:50%;transform:translateX(-50%)}
.lpt-frame{position:relative;aspect-ratio:16/9;border-radius:26px;overflow:hidden;background:#0e1015;box-shadow:0 30px 70px -30px rgba(20,21,26,.55)}
.lpt-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
.lpt-qs{display:flex;flex-direction:column;gap:4px;background:#fff;border:1px solid #e4e7ec;border-radius:22px;padding:14px}
.lpt-qs>b{font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:#2458e6;padding:6px 10px 8px}
.lpt-qs button{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;text-align:left;padding:11px 10px;border:0;border-radius:12px;background:none;font:500 15px/1.35 inherit;color:#14151a;cursor:pointer;transition:background-color .2s}
.lpt-qs button:hover{background:#eef2ff}
.lpt-qs button i{font-style:normal;font-size:20px;color:#2458e6;line-height:1}
.lpt-full{margin-top:6px;padding:10px;font-size:14px;font-weight:600;color:#2458e6;text-decoration:underline;text-underline-offset:3px}
@media(max-width:900px){.lpt-wrap{width:100%;left:0;transform:none}.lpt-frame{border-radius:18px}}
/* On a phone the walkthrough's frame is tall, so the walkthrough switches to its upright layout with large screens. */
@media(max-width:640px){.lpt-frame{aspect-ratio:9/15}}

/* The walkthrough's full screen: the frame itself goes full screen, or fills the window where the browser has no full screen (iPhone). */
.lpt-frame:fullscreen{border-radius:0;aspect-ratio:auto;width:100vw;height:100vh;box-shadow:none}
.lpt-frame:-webkit-full-screen{border-radius:0;width:100vw;height:100vh}
.lpt-frame.is-expanded{position:fixed;inset:0;z-index:10000;width:100vw;height:100vh;height:100dvh;aspect-ratio:auto;border-radius:0;box-shadow:none}
body.tour-expanded{overflow:hidden}
body.tour-expanded .lpt-wrap{transform:none!important;left:0!important}
/* rewards */
.lpx-coins{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.lpx-g-coins{display:grid;gap:10px}
.lpx-g-coins .w{display:grid;gap:8px;padding:20px;border-radius:18px;background:#0b0b15;color:#fff}
.lpx-g-coins .w small{font-size:12px;color:rgba(255,255,255,.6)}
.lpx-g-coins .w strong{display:flex;align-items:center;gap:12px;font-size:44px;font-weight:800;letter-spacing:-.04em;line-height:1}
.lpx-g-coins .w i{display:block;height:6px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden}.lpx-g-coins .w em{display:block;width:62%;height:100%;border-radius:99px;background:#c6f432}
.lpx-g-coins .w .to{font-size:12.5px;color:rgba(255,255,255,.6)}
.lpx-g-coins .perks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.lpx-g-coins .perks>div{display:grid;gap:10px;padding:14px;border-radius:16px;font-size:13.5px;font-weight:700;line-height:1.25}
.lpx-g-coins .perks b{justify-self:start;display:inline-flex;align-items:center;justify-content:center;height:24px;min-width:38px;padding:0 10px;border-radius:999px;background:#0b0b15;color:#fff;font-size:12px;line-height:1;font-variant-numeric:tabular-nums}
.lpx-g-coins .p1{background:#ffd3e6}.lpx-g-coins .p2{background:#ffe27a}.lpx-g-coins .p3{background:#bdf3d4}
.lpx-g-coins .ch{display:flex;align-items:center;gap:10px;padding:14px 16px;border-radius:16px;background:#fff;font-size:14px;font-weight:600}
.lpx-g-coins .ch i{width:20px;height:20px;border-radius:6px;background:#16a34a;box-shadow:inset 0 0 0 5px #16a34a,inset 0 0 0 7px #fff}
.lpx-g-coins .ch b{margin-left:auto;color:#16a34a}
@media (max-width:900px){.lpx-coins{grid-template-columns:minmax(0,1fr)}.lpx-coins .lpx-copy{order:-1}}
@media (max-width:480px){.lpx-g-coins .perks{grid-template-columns:1fr}}
/* ===== Pricing: the landing page's own sky, navy, paper and lime ===== */
.pr{--navy:#173c5a;--navy-2:#1f5d8b}
.pr main{padding:0 0 40px}
.pr .lp2-nav-links button.active{position:relative;opacity:1;font-weight:700;color:#173c5a}.pr .lp2-nav-links button.active::after{content:"";position:absolute;left:50%;bottom:-7px;width:5px;height:5px;margin-left:-2.5px;border-radius:50%;background:#173c5a}
.pr .pr-hero{display:flex;flex-direction:column;align-items:center;text-align:center;gap:16px;padding:150px 20px 190px;background:linear-gradient(180deg,#89c2e9 0%,#91c5e7 52%,#d7e7f2 80%,var(--paper) 100%)}
.pr .pr-hero .lp2-pill{background:rgba(255,255,255,.78)}
.pr .pr-hero h1{margin:4px 0 0;font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(46px,6.4vw,92px);line-height:.94;letter-spacing:-.06em;font-weight:750;color:#fff;text-wrap:balance;text-shadow:0 2px 20px rgba(39,72,98,.08)}
.pr .pr-hero h1 em{font:inherit;font-style:normal;color:var(--navy)}
.pr .pr-hero p{margin:6px 0 0;max-width:560px;font-size:18px;line-height:1.55;color:#24445e}
.pr .pr-plans{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;width:min(1040px,calc(100% - 32px));margin:-130px auto 0;position:relative}
.pr .pr-plan{display:flex;flex-direction:column;gap:22px;padding:36px;border-radius:28px;background:#fff;color:var(--ink);border:1px solid var(--line);box-shadow:0 1px 2px rgba(20,24,40,.04),0 26px 56px -36px rgba(23,60,90,.4)}
.pr .pr-plan header{display:flex;flex-direction:column;gap:8px}
.pr .pr-tag{align-self:flex-start;padding:7px 12px;border-radius:999px;background:var(--blue-soft);font-size:12px;font-weight:700;color:var(--navy)}
.pr .pr-tag.light{background:rgba(255,255,255,.14);color:#fff}
.pr .pr-plan h2{margin:4px 0 0;font-family:"Inter Tight",Inter,sans-serif;font-size:32px;font-weight:750;letter-spacing:-.04em}
.pr .pr-plan header p{margin:0;font-size:15px;color:var(--muted)}
.pr .pr-price{display:flex;align-items:baseline;gap:10px}
.pr .pr-price b{font-family:"Inter Tight",Inter,sans-serif;font-size:66px;font-weight:750;letter-spacing:-.06em;line-height:1}
.pr .pr-price span{font-size:15px;color:var(--muted)}
.pr .pr-btn{display:inline-flex;align-items:center;justify-content:center;gap:10px;width:100%;min-height:54px;padding:0 22px;border:0;border-radius:999px;font:inherit;font-size:15px;font-weight:700;cursor:pointer;transition:transform .18s ease,box-shadow .18s ease}
.pr .pr-dark{background:var(--ink);color:#fff;box-shadow:0 14px 34px rgba(17,24,39,.16)}.pr .pr-light{background:#fff;color:var(--ink);box-shadow:0 12px 28px rgba(17,24,39,.09)}
.pr .pr-btn:hover{transform:translateY(-1px)}.pr .pr-btn:disabled{opacity:.6;cursor:default;transform:none}
.pr .pr-btn-lime{background:var(--lime);color:var(--ink);box-shadow:0 14px 30px rgba(10,30,50,.18)}
.pr .pr-plan ul{list-style:none;margin:0;padding:22px 0 0;border-top:1px solid var(--line);display:flex;flex-direction:column;gap:13px}
.pr .pr-plan li{display:flex;align-items:flex-start;gap:12px;font-size:15px;line-height:1.4}
.pr .pr-plan li i{position:relative;flex:0 0 22px;height:22px;margin-top:-1px;border-radius:50%;background:var(--blue-soft)}
.pr .pr-plan li i::after{content:"";position:absolute;left:8px;top:5px;width:5px;height:10px;border:solid var(--navy);border-width:0 2.2px 2.2px 0;transform:rotate(45deg)}
.pr .pr-plan-inst{background:linear-gradient(135deg,#16354e 0%,#1f5d8b 100%);color:#fff;border-color:transparent;box-shadow:0 26px 56px -30px rgba(23,60,90,.6)}
.pr .pr-plan-inst .pr-tag{background:rgba(255,255,255,.14);color:#fff}
.pr .pr-plan-inst header p,.pr .pr-plan-inst .pr-price span{color:rgba(255,255,255,.7)}
.pr .pr-plan-inst ul{border-top-color:rgba(255,255,255,.16)}
.pr .pr-plan-inst li i{background:var(--lime)}.pr .pr-plan-inst li i::after{border-color:var(--navy)}
.pr .pr-free{width:min(1040px,calc(100% - 32px));margin:24px auto 0;text-align:center;font-size:15px;color:var(--muted)}.pr .pr-free b{color:var(--ink)}
/* the two forms */
.pr .pr-start{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:44px;align-items:center;width:min(1120px,calc(100% - 32px));margin:96px auto 0;padding:52px;border-radius:36px;background:#fff;box-shadow:0 1px 2px rgba(20,24,40,.04),0 16px 36px -28px rgba(20,24,40,.22);scroll-margin-top:110px}
.pr .pr-start-copy{display:flex;flex-direction:column;gap:14px}
.pr .pr-start-copy h2,.pr .pr-contact-copy h2{margin:0;font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(32px,3.8vw,50px);font-weight:750;letter-spacing:-.05em;line-height:1}
.pr .pr-start-copy p{margin:0;font-size:16px;line-height:1.6;color:var(--muted)}
.pr .pr-contact{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:44px;align-items:start;width:min(1120px,calc(100% - 32px));margin:24px auto 0;padding:52px;border-radius:36px;background:linear-gradient(135deg,#16354e 0%,#1f5d8b 100%);color:#fff;scroll-margin-top:110px}
.pr .pr-contact-copy{display:flex;flex-direction:column;gap:16px;padding-top:6px}
.pr .pr-contact-copy p{margin:0;font-size:16px;line-height:1.6;color:rgba(255,255,255,.75)}
.pr .pr-steps{list-style:none;margin:10px 0 0;padding:0;display:flex;flex-direction:column;gap:14px}
.pr .pr-steps li{display:flex;align-items:center;gap:14px;font-size:15px;color:rgba(255,255,255,.88)}
.pr .pr-steps b{display:grid;place-items:center;flex:0 0 34px;height:34px;border-radius:50%;background:var(--lime);color:var(--navy);font-size:14px}
.pr .pr-form{display:flex;flex-direction:column;gap:16px;padding:30px;border-radius:24px;background:#fff;color:var(--ink)}
.pr .pr-form-pro{background:var(--paper);border:1px solid var(--line)}
.pr .pr-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}
.pr .pr-form label{display:flex;flex-direction:column;gap:7px;min-width:0}
.pr .pr-form label>span{font-size:13px;font-weight:700;color:var(--ink-2)}.pr .pr-form label>span i{font-style:normal;font-weight:500;color:#94a0aa}
.pr .pr-form input,.pr .pr-form select,.pr .pr-form textarea{width:100%;min-width:0;padding:13px 15px;border:1px solid var(--line-strong);border-radius:14px;background:#fff;font:inherit;font-size:15px;color:var(--ink);transition:border-color .15s,box-shadow .15s}
.pr .pr-form textarea{resize:vertical;min-height:90px}
.pr .pr-form input:focus,.pr .pr-form select:focus,.pr .pr-form textarea:focus{outline:0;border-color:var(--navy-2);box-shadow:0 0 0 4px rgba(111,167,209,.3)}
.pr .pr-chips{display:flex;flex-wrap:wrap;gap:8px}
.pr .pr-chips label{position:relative;display:block}.pr .pr-chips input{position:absolute;opacity:0;pointer-events:none}
.pr .pr-chips span{display:inline-flex;align-items:center;height:40px;padding:0 15px;border-radius:999px;border:1px solid var(--line-strong);background:#fff;font-size:14px;font-weight:600;color:var(--ink-2);cursor:pointer}
.pr .pr-chips input:checked+span{background:var(--navy);border-color:var(--navy);color:#fff}.pr .pr-chips input:focus-visible+span{box-shadow:0 0 0 4px rgba(111,167,209,.4)}
.pr .pr-hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.pr .pr-err{margin:0;font-size:14px;font-weight:600;color:#c2410c}.pr .pr-err:empty{display:none}
.pr .pr-fine{font-size:12.5px;color:var(--muted)}.pr .pr-fine a{color:inherit;text-decoration:underline}
.pr .pr-sent{align-items:flex-start;gap:12px;min-height:360px;justify-content:center;background:linear-gradient(160deg,#fff,var(--blue-soft))}
.pr .pr-sent-light{background:linear-gradient(160deg,var(--paper),var(--mint))}
.pr .pr-sent h3{margin:0;font-family:"Inter Tight",Inter,sans-serif;font-size:32px;font-weight:750;letter-spacing:-.04em}.pr .pr-sent p{margin:0;font-size:16px;color:var(--muted)}
.pr .pr-sent .pr-btn{width:auto;margin-top:8px}
.pr .pr-check{position:relative;display:grid;place-items:center;width:62px;height:62px;border-radius:50%;background:var(--lime)}
.pr .pr-check::after{content:"";width:13px;height:25px;margin-top:-6px;border:solid var(--navy);border-width:0 4px 4px 0;transform:rotate(45deg)}
/* questions and footer */
.pr .pr-faq{width:min(800px,calc(100% - 32px));margin:96px auto 0}
.pr .pr-faq h2{margin:0 0 18px;font-family:"Inter Tight",Inter,sans-serif;font-size:40px;font-weight:750;letter-spacing:-.05em;color:var(--ink)}
.pr .pr-faq details{border-top:1px solid var(--line-strong);padding:20px 4px}.pr .pr-faq details:last-child{border-bottom:1px solid var(--line-strong)}
.pr .pr-faq summary{display:flex;justify-content:space-between;gap:16px;cursor:pointer;list-style:none;font-size:17px;font-weight:700;color:var(--ink)}
.pr .pr-faq summary::-webkit-details-marker{display:none}.pr .pr-faq summary::after{content:"+";font-size:22px;font-weight:400;color:var(--muted);line-height:1}.pr .pr-faq details[open] summary::after{content:"−"}
.pr .pr-faq details p{margin:12px 0 0;font-size:15.5px;line-height:1.6;color:var(--muted)}
.pr .pr-foot{display:flex;gap:22px;justify-content:center;align-items:center;padding:64px 16px 48px;font-size:14px;color:var(--muted)}.pr .pr-foot span{font-family:"Inter Tight",Inter,sans-serif;font-weight:750;letter-spacing:-.03em;color:var(--ink)}.pr .pr-foot a{color:inherit}
@media (max-width:900px){.pr .pr-plans{grid-template-columns:1fr}.pr .pr-start,.pr .pr-contact{grid-template-columns:1fr;padding:30px;gap:26px;border-radius:28px}}
@media (max-width:560px){.pr .pr-hero{padding:118px 16px 150px}.pr .pr-hero p{font-size:16px}.pr .pr-plans{margin-top:-110px}.pr .pr-plan{padding:24px;border-radius:24px}.pr .pr-price b{font-size:54px}.pr .pr-row{grid-template-columns:1fr}.pr .pr-form{padding:20px}.pr .pr-start,.pr .pr-contact{width:calc(100% - 24px);padding:22px 16px}}
/* pricing: three plans, a solid nav, drawn ticks */
.pr .pr-plans{grid-template-columns:repeat(3,minmax(0,1fr));width:min(1180px,calc(100% - 32px))}
.pr .pr-plan{position:relative;padding:32px}
.pr .pr-plan li{align-items:center}
.pr .pr-tick{flex:0 0 22px;width:22px;height:22px;display:block}
.pr .pr-tick circle{fill:var(--blue-soft)}.pr .pr-tick path{fill:none;stroke:var(--navy);stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.pr .pr-plan-inst .pr-tick circle{fill:var(--lime)}
.pr .pr-plan li i{display:none}
.pr .pr-outline{border:1px solid var(--line-strong);box-shadow:none}
.pr .pr-plan-pop{border:2px solid var(--navy);box-shadow:0 30px 60px -34px rgba(23,60,90,.55)}
.pr .pr-pop{position:absolute;top:22px;right:22px;padding:6px 12px;border-radius:999px;background:var(--lime);color:var(--navy);font-style:normal;font-size:12px;font-weight:800}
@media (max-width:1100px){.pr .pr-plans{grid-template-columns:repeat(2,minmax(0,1fr))}.pr .pr-plan-inst{grid-column:1 / -1}}
@media (max-width:760px){.pr .pr-plans{grid-template-columns:1fr}.pr .pr-plan-inst{grid-column:auto}}
.pr .pr-price b{font-size:58px}.pr .pr-price span{white-space:nowrap}
.pr .pr-plan li{align-items:flex-start}.pr .pr-tick{margin-top:-1px}

/* the sign-in button never wraps onto two lines */
.lp2-nav-cta{white-space:nowrap}
.lp2-nav-links button{white-space:nowrap}
@media (max-width:1040px){.lp2-nav-links{gap:16px!important;padding:10px 14px!important}}
@media (max-width:860px){.lp2-nav-links{display:none!important}.lp2-nav{grid-template-columns:1fr auto!important}}
/* the Professor plan's own page: plan on the left, the form on the right, then sign in */
.pr.gs main{padding:132px 0 40px;background:linear-gradient(180deg,#89c2e9 0,#c9e0f0 360px,var(--paper) 640px)}
.pr .gs-wrap{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);gap:56px;align-items:start;width:min(1100px,calc(100% - 32px));margin:0 auto}
.pr .gs-copy{display:flex;flex-direction:column;gap:16px;padding-top:12px}
.pr .gs-back{align-self:flex-start;padding:0;border:0;background:none;font:inherit;font-size:14px;font-weight:600;color:#24445e;cursor:pointer}
.pr .gs-back:hover{text-decoration:underline}
.pr .gs-copy h1{margin:0;font-family:"Inter Tight",Inter,sans-serif;font-size:clamp(40px,5vw,64px);line-height:.98;letter-spacing:-.055em;font-weight:750;color:var(--navy);text-wrap:balance}
.pr .gs-copy p{margin:0;max-width:460px;font-size:16px;line-height:1.6;color:#2e4a60}
.pr .gs-copy ul{list-style:none;margin:6px 0 0;padding:0;display:flex;flex-direction:column;gap:12px}
.pr .gs-copy li{display:flex;align-items:flex-start;gap:12px;font-size:15px;line-height:1.4;color:var(--ink)}
.pr .gs-copy .pr-tick circle{fill:#fff}
.pr .gs-form{padding:32px;border-radius:28px;box-shadow:0 1px 2px rgba(20,24,40,.04),0 26px 56px -36px rgba(23,60,90,.4)}
.pr .gs-form h2{margin:0 0 4px;font-family:"Inter Tight",Inter,sans-serif;font-size:26px;font-weight:750;letter-spacing:-.04em}
@media (max-width:860px){.pr .gs-wrap{grid-template-columns:1fr;gap:28px}}
@media (max-width:560px){.pr.gs main{padding-top:104px}.pr .gs-form{padding:22px;border-radius:22px}}
