/* Rafat Fields visual identity: a calm, welcoming frame for the lesson library. */
.story-photo{margin:24px 0 0;max-width:340px}.story-photo img{display:block;width:100%;height:auto;border-radius:18px;border:1px solid #A7E0DB}
.welcome-page{--navy:#080749;--ink:#080749;--muted:#4A7C99;--blue:#287E91;--blue-deep:#080749;--teal:#287E91;--line:#D7F0F4;--page:#fff;font-family:Poppins,ui-sans-serif,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif}
.skip-link{position:absolute;left:18px;top:-70px;z-index:60;background:#080749;color:white;padding:12px 18px;border-radius:8px}.skip-link:focus{top:10px}
.main-nav a{font-size:14px;font-weight:600;padding:10px 13px;border-radius:9px;color:#080749}.main-nav a:hover,.main-nav a[aria-current=page]{background:#D7F0F4;color:#080749}
.welcome-page .brand-mark{color:#287E91;background:#D7F0F4;border:0}.welcome-page .brand-name{font-weight:700;letter-spacing:-.7px}.welcome-page .brand-sub{color:#080749;font-weight:400}.welcome-page .btn{font-weight:600;min-height:46px;white-space:normal}.welcome-page .btn-soft{background:#fff;border-color:#287E91;color:#080749}.welcome-page .eyebrow{color:#287E91;font-weight:600;letter-spacing:1.7px}
.welcome-hero{margin:30px 0 0;padding:54px 48px;display:grid;grid-template-columns:1.1fr .9fr;gap:45px;align-items:center;background:linear-gradient(110deg,#fff 0%,#F8FCFC 35%,#DCF0F0 72%,#8CC8CC 100%);border:1px solid #D7F0F4;border-radius:26px;overflow:hidden}
.welcome-hero h1{font-size:clamp(36px,4.3vw,58px);font-weight:700;line-height:1.16;letter-spacing:-2px;margin:18px 0 22px;max-width:620px}.welcome-hero h1 span{color:#287E91}.welcome-intro{font-size:17px;line-height:1.85;max-width:510px;margin:0 0 25px}.welcome-hero .hero-actions{gap:12px}.welcome-note{font-size:12px;margin:17px 0 0;color:#080749}
.demo-wrap{padding:18px 0}.demo-sheet{background:#fff;border:1px solid #A7E0DB;border-radius:18px;box-shadow:0 16px 42px rgba(8,7,73,.08);padding:27px 28px;max-width:420px;margin:auto}.demo-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;gap:12px;margin-bottom:20px}.demo-top span{font-weight:600;color:#287E91;letter-spacing:1px;text-transform:uppercase}.demo-top small{background:#E9E2F7;color:#080749;padding:5px 8px;border-radius:6px;font-size:10px}.demo-sheet h2{font-size:16px;font-weight:500;margin:0 0 22px}.demo-math{display:flex;align-items:center;justify-content:center;gap:17px;font-size:31px;font-weight:600;margin:18px 0 24px}.demo-frac{display:inline-grid;grid-template-rows:auto auto;line-height:1.1;text-align:center}.demo-frac span:first-child{border-bottom:2px solid #080749;padding:0 8px 4px}.demo-frac span:last-child{padding:4px 8px 0}.demo-bar{display:grid;grid-template-columns:repeat(6,1fr);height:43px;border:1px solid #287E91;margin:8px 0 7px}.demo-bar span{border-right:1px solid #287E91;background:#fff}.demo-bar span:last-child{border:0}.demo-bar .filled{background:#A7E0DB}.demo-label{font-size:12px;font-weight:500;margin:0;color:#080749}.demo-group{display:grid;grid-template-columns:3fr 1fr 2fr;gap:4px;margin:8px 0 22px}.demo-group span{border-top:2px solid #287E91;padding-top:7px;font-size:11px;text-align:center}.demo-group span:nth-child(2){border-color:#080749}.demo-group span:last-child{border:0}.demo-bottom{border-top:1px solid #D7F0F4;margin:17px 0 0;padding:15px 0 0;font-size:12px;line-height:1.7}.demo-bottom strong{font-weight:600}
.welcome-section{margin:70px auto;scroll-margin-top:110px}.welcome-section h2{font-size:clamp(27px,3vw,36px);font-weight:600;letter-spacing:-1px;line-height:1.25;margin:12px 0 20px}.welcome-section p{line-height:1.9;font-size:16px}.story-layout{display:grid;grid-template-columns:.78fr 1.22fr;gap:60px;padding:0 28px}.story-heading p{max-width:290px;font-size:15px}.story-copy p:first-child{margin-top:0}.story-copy p:last-child{margin-bottom:0}.story-signature{display:flex;align-items:center;gap:14px;margin-top:24px;font-size:14px}.story-signature .signature-line{width:35px;height:2px;background:#287E91}.story-signature strong{font-weight:600}.story-signature small{display:block;font-size:12px;margin-top:3px;color:#080749}
.welcome-method{background:#D7F0F4;border-radius:22px;padding:38px}.welcome-method>p{max-width:670px;margin-bottom:27px}.method-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.method-step{border-top:1px solid #287E91;padding-top:18px}.method-step .method-num{color:#287E91;font-size:13px;font-weight:600}.method-step h3{font-size:19px;font-weight:600;margin:12px 0 9px}.method-step p{font-size:14px;margin:0;line-height:1.85}
.library-intro{max-width:700px}.grade-entry{display:grid;grid-template-columns:1fr auto;gap:30px;align-items:center;padding:30px 34px;border:1px solid #A7E0DB;border-radius:16px;margin-top:26px;box-shadow:0 6px 24px rgba(8,7,73,.035)}.available-label{display:inline-flex;font-size:11px;font-weight:600;letter-spacing:1px;text-transform:uppercase;align-items:center;gap:8px;color:#080749}.available-label:before{content:"";height:7px;width:7px;border-radius:50%;background:#287E91}.grade-entry h3{font-size:25px;font-weight:600;margin:10px 0}.grade-entry p{font-size:14px;margin:0;max-width:660px}.grade-links{display:flex;flex-direction:column;align-items:flex-start;gap:12px}.grade-links .text-link{font-size:13px;color:#080749;text-decoration:underline;text-underline-offset:4px}.growth-note{display:flex;gap:15px;align-items:flex-start;margin-top:20px;padding:20px 25px;background:#E9E2F7;border-radius:12px}.growth-note span{font-size:22px;line-height:1.5}.growth-note p{font-size:14px;margin:0;line-height:1.8}
.welcome-closing{background:#080749;border-radius:22px;color:#fff;padding:38px 42px;display:flex;align-items:center;justify-content:space-between;gap:30px}.welcome-closing h2{font-size:28px;margin:0 0 12px;max-width:600px}.welcome-closing p{font-size:15px;margin:0;max-width:650px;color:white}.welcome-closing .btn{background:#A7E0DB;border-color:#A7E0DB;color:#080749;flex-shrink:0}.welcome-closing .btn:hover{background:#D7F0F4}
.welcome-footer{border-top:1px solid #D7F0F4;padding:30px 0 35px;margin-top:65px;display:flex;align-items:center;justify-content:space-between;gap:25px}.welcome-footer p{margin:4px 0;font-size:12px;color:#080749}.brand-signature{display:flex;align-items:center;gap:17px;font-size:12px}.brand-signature img{width:38px;height:auto;margin:9px}.brand-signature strong{display:block;font-weight:600}.brand-signature span{display:block;margin-top:4px}
@media(max-width:1000px){.welcome-hero{padding:40px 32px;gap:25px}.story-layout{gap:35px;padding:0 12px}.demo-sheet{padding:24px 20px}.welcome-hero h1{font-size:43px}.welcome-intro{font-size:16px}}
@media(max-width:760px){.welcome-hero{grid-template-columns:1fr;padding:35px 25px}.welcome-hero h1{font-size:39px;max-width:600px}.welcome-intro{max-width:600px}.demo-wrap{padding:5px 0}.demo-sheet{max-width:470px}.story-layout{grid-template-columns:1fr;gap:18px}.story-heading p{max-width:none}.welcome-section{margin:48px auto}.welcome-method{padding:28px 24px}.method-grid{grid-template-columns:1fr;gap:24px}.method-step h3{margin-top:7px}.grade-entry{grid-template-columns:1fr;gap:20px;padding:25px}.grade-links{flex-direction:row;align-items:center;flex-wrap:wrap;gap:18px}.welcome-closing{flex-direction:column;align-items:flex-start;padding:30px 25px}.welcome-footer{align-items:flex-start;flex-direction:column}.welcome-page .main-nav{gap:0;flex-wrap:wrap}.welcome-page .main-nav a{font-size:12px;padding:8px 9px}.welcome-page .welcome-header-action{margin-left:auto;font-size:12px;padding:9px 12px}}
@media(max-width:390px){.welcome-hero h1{font-size:33px;letter-spacing:-1px}.welcome-header-action{width:100%}.demo-math{font-size:27px;gap:12px}}
