@font-face{font-family:Instrument;src:url("./instrument-regular.woff2") format("woff2");font-weight:400;font-display:swap}
@font-face{font-family:Instrument;src:url("./instrument-semibold.woff2") format("woff2");font-weight:600 900;font-display:swap}
@font-face{font-family:Caveat;src:url("./caveat.woff2") format("woff2");font-weight:600;font-display:swap}
:root{color-scheme:light;--bg:#fafafa;--ink:#18181b;--muted:#62616c;--violet:#7c3aed;--line:#ddd6fe;--panel:#ede9fe;--deep:#2e1065}
*{box-sizing:border-box}
body{margin:0;background:radial-gradient(ellipse at 42% -20%,#e9ddff 0,transparent 55%),radial-gradient(ellipse at 110% 65%,#ece9ff 0,transparent 42%),var(--bg);color:var(--ink);font-family:Instrument,system-ui,sans-serif;-webkit-font-smoothing:antialiased}
body:before{content:"";position:absolute;inset:0 0 auto;height:680px;pointer-events:none;background-image:radial-gradient(#8b5cf61c 1px,transparent 1px);background-size:24px 24px;mask-image:linear-gradient(#000,transparent)}
::selection{background:#ddd6fe;color:#2e1065}
.page{position:relative;max-width:1280px;padding:36px 40px 0;margin:auto;min-height:100svh;display:flex;flex-direction:column}
.header{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:19px 25px;border:1px solid var(--line);border-radius:32px 16px 32px 16px;background:#ede9fe99}
.brand{display:flex;align-items:center;gap:17px;text-decoration:none;color:var(--deep)}
.brand strong{display:block;font-size:25px;letter-spacing:-1.1px;font-weight:600}
.logo{display:grid;place-items:center;position:relative;width:58px;height:58px;flex-shrink:0;border:1px solid var(--line);border-radius:17px;background:#fff;box-shadow:3px 3px 0 #ddd6fe;transform:rotate(-6deg)}
.logo img{object-fit:contain}
.spark{position:absolute;right:-10px;top:-17px;font-size:29px;color:var(--violet)}
.handwritten{font-family:Caveat,cursive;font-weight:600}
.tagline{display:block;color:var(--violet);font-size:23px;line-height:1.1}
.status{display:flex;align-items:center;gap:9px;font-size:13px;color:var(--deep);font-weight:600;white-space:nowrap}
.status>span{width:7px;height:7px;background:var(--violet);border-radius:50%;box-shadow:0 0 0 5px #8b5cf612}
main{flex:1;display:flex;align-items:center;padding:82px 0 80px}
.hero{display:grid;grid-template-columns:1fr 1.05fr;align-items:center;gap:64px;width:100%}
.eyebrow{display:flex;align-items:center;gap:10px;color:var(--violet);font-size:13px;font-weight:600;margin:0 0 24px}
.eyebrow span{font-size:22px}
h1{font-size:clamp(46px,5.1vw,67px);line-height:1.02;letter-spacing:-.055em;font-weight:600;margin:0;max-width:570px}
h1>span{color:var(--violet)}
.intro{font-size:18px;line-height:1.75;color:var(--muted);margin:27px 0 30px;max-width:470px}
.access{display:flex;flex-direction:column;align-items:flex-start;gap:13px}
.access p{font-size:14px;font-weight:600;margin:0}
.button{display:inline-flex;align-items:center;justify-content:center;gap:30px;min-height:53px;border-radius:16px;padding:14px 25px;background:var(--deep);color:white;text-decoration:none;font-size:15px;font-weight:600;box-shadow:4px 4px 0 #c4b5fd;transition:transform .2s,background .2s}
.button:hover{background:#5b21b6;transform:translateY(-2px)}
a:focus-visible{outline:3px solid var(--violet);outline-offset:7px}
.visual{position:relative;min-width:0;padding:0 0 40px}
.visual:before{content:"";position:absolute;inset:-17px -15px 55px;border:1px solid var(--line);background:var(--panel);border-radius:45px;transform:rotate(3deg)}
.image-frame{position:relative;overflow:hidden;border-radius:36px;border:4px solid #fff;box-shadow:0 30px 65px -35px #30204266;aspect-ratio:1.1}
.classroom{display:block;width:100%;height:100%;object-fit:cover;object-position:53% center}
.image-spark{position:absolute;right:-13px;top:-39px;font-size:68px;line-height:1;color:var(--violet);transform:rotate(12deg);text-shadow:3px 3px 0 var(--bg)}
.note{position:absolute;display:flex;align-items:center;gap:13px;bottom:52px;left:-29px;padding:17px 22px;background:var(--bg);border:1px solid var(--line);border-radius:18px;box-shadow:5px 5px 0 #ddd6fe;transform:rotate(-3deg)}
.note-icon{display:grid;place-items:center;width:42px;height:42px;background:var(--panel);border-radius:13px;color:var(--violet);font-size:35px}
.note .handwritten{font-size:25px;color:var(--deep)}
.note p{font-size:12px;margin:3px 0 0;color:var(--muted)}
.image-caption{position:relative;text-align:right;color:var(--violet);font-size:22px;margin:24px 0 -30px;transform:rotate(-2deg)}
footer{display:flex;justify-content:space-between;align-items:center;gap:12px;border-top:1px solid var(--line);padding:23px 0 25px;color:var(--muted);font-size:12px}
footer>span{font-weight:600}footer p{margin:0}footer p span{color:var(--violet);padding-left:8px}
@media(min-width:1400px){main{padding-top:100px;padding-bottom:100px}}
@media(max-width:959px){.page{padding:24px 26px 0;max-width:720px}.hero{grid-template-columns:1fr;gap:60px}main{padding:55px 0 48px}h1{font-size:62px;max-width:590px}.intro{max-width:550px}.visual{margin:0 15px}.image-frame{aspect-ratio:1.35}.image-caption{text-align:center}}
@media(max-width:540px){.page{padding:17px 20px 0}.header{padding:15px;gap:12px}.brand{gap:12px}.brand strong{font-size:21px}.logo{width:46px;height:46px;border-radius:14px}.logo img{width:42px;height:42px}.tagline{font-size:20px}.status{font-size:0;gap:0;padding:7px}.status>span{width:7px;height:7px}.eyebrow{font-size:11px;gap:7px;margin-bottom:19px}main{padding:43px 0 35px}h1{font-size:clamp(39px,10.8vw,57px)}.intro{font-size:16px;line-height:1.7;margin-top:22px}.hero{gap:48px}.visual{margin:0 6px;padding-bottom:36px}.visual:before{inset:-10px -6px 46px;border-radius:30px}.image-frame{border-radius:26px;aspect-ratio:1.13}.note{left:-8px;right:0;bottom:48px;padding:12px;gap:9px;width:max-content;max-width:100%;box-shadow:3px 3px 0 #ddd6fe}.note .handwritten{font-size:21px}.note-icon{width:32px;height:32px;font-size:28px;flex-shrink:0}.note p{font-size:11px}.image-spark{font-size:47px;right:-7px;top:-28px}.image-caption{font-size:19px;margin-top:27px}footer{flex-direction:column;align-items:flex-start;gap:7px;padding:20px 0}}
@media(prefers-color-scheme:dark){:root{color-scheme:dark;--bg:#15121c;--ink:#fafafa;--muted:#bcb5c9;--violet:#b69afa;--line:#45345e;--panel:#292036;--deep:#e5d9ff}body{background:radial-gradient(ellipse at 40% -20%,#35204c 0,transparent 60%),var(--bg)}.header{background:#29203699}.logo{background:#fafafa;box-shadow:3px 3px 0 #594174}.status>span{box-shadow:0 0 0 5px #b69afa15}.button{background:#d9c5fc;color:#2e1065;box-shadow:4px 4px 0 #684799}.button:hover{background:#ede2ff}.image-frame{border-color:#45345e}.note{box-shadow:4px 4px 0 #45345e}}
@media(prefers-reduced-motion:reduce){.button{transition:none}.button:hover{transform:none}}
