*{box-sizing:border-box}body{margin:0;font-family:Arial,'Malgun Gothic',sans-serif;color:#203632;background:#f5f7f4;line-height:1.7}a{color:#287763}header,main,footer{max-width:1160px;margin:auto;padding:24px}header{display:flex;justify-content:space-between;align-items:center}nav{display:flex;gap:20px;flex-wrap:wrap}.hero{display:grid;grid-template-columns:1.5fr 1fr;gap:40px;align-items:center;min-height:65vh}h1{font-size:clamp(34px,4vw,60px);line-height:1.2;letter-spacing:-2px}h2{line-height:1.4}.muted{color:#63776e}.card{padding:24px;background:white;border:1px solid #dce6de;border-radius:16px}.start{display:inline-block;padding:12px 24px;background:#287763;color:white;border-radius:8px;text-decoration:none}.demo{display:grid;grid-template-columns:1fr 1fr;gap:20px}.dates{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;align-content:start}button{font:inherit;border:1px solid #cddbd1;border-radius:8px;background:white;color:#203632;padding:14px;cursor:pointer}button[aria-pressed=true]{background:#e5f2e9;border-color:#287763}.mail,.event{padding:12px;border-radius:8px;background:#edf6f0;margin-top:12px}.event{background:#faf2e2}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}section{margin:30px 0}small{color:#63776e}footer{border-top:1px solid #dce6de;font-size:13px}article{max-width:800px;margin:auto}article h2{margin-top:32px}@media(max-width:700px){.hero,.grid,.demo{grid-template-columns:1fr}.hero{gap:16px;min-height:0}header{align-items:flex-start;gap:14px;flex-direction:column}nav{gap:12px}h1{letter-spacing:-1px}}

.dates button{font-size:12px;padding:12px 6px;word-break:keep-all}.hero h1{margin:20px 0}.hero{padding-bottom:20px}

/* Public home: only the introduction pane scrolls on desktop. */
.home{height:100dvh;overflow:hidden;background:radial-gradient(ellipse at 12% 20%,#e6f2eb,transparent 60%),#f5f7f4}
.home>header{height:76px;max-width:1440px;padding:20px 40px;font-size:12px}.home>header strong{letter-spacing:1.5px;color:#287763}.home>header nav a{text-decoration:none;color:#657b70}
.home-layout{height:calc(100dvh - 76px);max-width:1360px;margin:auto;display:grid;grid-template-columns:minmax(0,1.65fr) minmax(340px,1fr);gap:32px;padding:0 32px 24px}
.home-scroll{min-height:0;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;scrollbar-color:#c6d9cc transparent;padding-right:20px;border-radius:16px;scroll-behavior:smooth}
.home-scroll:focus-visible{outline:2px solid #287763;outline-offset:2px}.home main{padding:30px 8px 16px}.home .hero{display:block;min-height:0;margin:0;padding:0}.intro-brand{font-size:12px;letter-spacing:2px;font-weight:700;color:#287763;margin:8px 0 28px}.intro-brand small{letter-spacing:0;font-weight:400;margin-left:8px}.home .hero>.muted,.home .hero>div>.muted{display:none}.home h1{font-size:clamp(40px,4.4vw,64px);font-weight:750;letter-spacing:-2px;margin:0 0 20px}.home .hero>div>p:not(.intro-brand):not(.muted){font-size:15px;color:#637b6e;max-width:620px;margin-bottom:24px}.home .demo{padding:20px;border-radius:18px;border-color:#d6e3da;background:#ffffffb3;box-shadow:0 12px 40px #29483708;grid-template-columns:1fr 1fr}.home .demo strong{font-size:13px}.home .demo p{font-size:12px}.home .dates button{min-height:90px;text-align:left;font-size:13px;background:#ffffffb3}.home .dates button[aria-pressed=true]{background:#e5f2e9}.home .dates small{font-size:10px;display:block;margin-top:6px}.home .hero>div>small{display:block;font-size:10px;margin:12px 0;color:#809286}.home .grid{grid-template-columns:1fr;gap:12px}.home .grid article{max-width:none;width:100%;padding:18px 22px}.home .grid h3{font-size:15px;margin:0 0 8px}.home .grid p,.home section.card p{font-size:13px;color:#657a70;margin:8px 0}.home h2{font-size:21px;letter-spacing:-.5px}.scroll-hint{font-size:11px;color:#72897b;padding:12px 0 24px;border-bottom:1px solid #dae5dd}.home footer{padding:20px 8px;font-size:11px}.home-right{display:flex;align-items:center;justify-content:center;min-height:0}
.home-login{width:100%;max-width:400px;background:#fff;border:1px solid #dce7df;border-radius:22px;padding:36px 28px;text-align:center;box-shadow:0 22px 64px #2c483b0a}.login-mark{width:64px;height:70px;margin:0 auto 24px;background:#e6f1ea;border-top:9px solid #287763;border-radius:10px;font-size:30px;font-weight:700;color:#287763;line-height:1.5}.login-mark span{display:block;font-size:5px;letter-spacing:1px}.home-login h2{font-size:23px;margin:0 0 12px}.home-login>p{font-size:14px;color:#61786b;line-height:1.65}.google-start{margin:28px 0 14px;display:flex;justify-content:center;align-items:center;gap:12px;border:1px solid #cdd9d0;border-radius:9px;min-height:48px;text-decoration:none;font-size:14px;font-weight:600;color:#203632}.google-start:hover{background:#edf5ef}.google-start svg{width:20px;height:20px}.home-login .permissions,.home-login .login-note{font-size:11px;color:#819188}.login-footer{border-top:1px solid #edf2ee;margin-top:26px;padding-top:20px;font-size:10px;color:#97a299}.feedback-link{display:inline-block;margin-top:12px;font-size:12px;text-underline-offset:3px}
@media(min-width:701px) and (max-height:750px){.home-login{padding:24px}.login-mark{margin-bottom:16px}.google-start{margin-top:20px}.home main{padding-top:12px}.home h1{font-size:44px}}
@media(max-width:700px){.home>header{height:88px;padding:16px 20px;gap:8px}.home-layout{height:calc(100dvh - 88px);grid-template-columns:minmax(0,1fr);gap:0;padding:0 16px 16px;overflow:auto}.home-right{grid-row:1;display:block;padding:12px 0 20px}.home-login{max-width:none;padding:20px}.home-login .login-mark,.home-login .login-footer,.home-login .permissions{display:none}.home-login h2{font-size:20px}.google-start{margin:16px 0 10px}.home-login .login-note{margin:6px 0}.home-scroll{overflow:visible;padding:0}.home main{padding:12px 4px}.home h1{font-size:38px}.home .demo{grid-template-columns:1fr;padding:16px}.intro-brand{margin-bottom:18px}.home .dates button{min-height:68px}.home footer nav{gap:10px}}
 .home-login .feedback-link{display:flex;align-items:center;justify-content:center;width:100%;min-height:48px;margin-top:18px;padding:12px 18px;border:1px solid #b9d3c4;border-radius:9px;background:#eaf4ee;color:#24664f;font-size:14px;font-weight:700;text-decoration:none}.home-login .feedback-link:hover{background:#dfede4;border-color:#287763}.home-login .feedback-link:focus-visible{outline:2px solid #287763;outline-offset:3px}

.home main{display:block}.home .google-start{width:100%;padding:0 12px;background:white}.home-layout{flex:none}.home-scroll .card p{margin:8px 0}.home-login>p{margin:12px 0}.home-login .login-note{min-height:28px}
