:root{--bg: #f5efe5;--bg-staff: #f1eade;--surface: #fffcf7;--surface2: #f7f1e6;--raised: #ffffff;--ink: #2a2320;--ink2: #6e6257;--ink3: #9a8b7c;--line: #e3d9ca;--line2: #efe6d8;--accent: #b4552f;--accent-hover: #9e4526;--accent-text: #8e3f20;--accent-tint: #f7e7de;--green: #4f6b52;--green-tint: #e7ede6;--amber: #b5842a;--amber-text: #8a6318;--amber-tint: #fff3df;--red: #a93b2e;--red-text: #8e2c21;--red-tint: #fbe9e5;--blue: #4a5f7a;--blue-tint: #e8eef4;--font-serif: "Newsreader", Georgia, serif;--font-sans: "IBM Plex Sans", system-ui, sans-serif;--font-mono: "IBM Plex Mono", ui-monospace, monospace;--radius-control: 10px;--radius-card: 16px;--radius-modal: 18px;--radius-pill: 999px;--shadow: 0 1px 2px rgba(42, 35, 32, .05), 0 12px 28px -20px rgba(42, 35, 32, .45);--shadow-button-hover: 0 12px 26px -10px var(--accent);--ease: cubic-bezier(.2, .8, .2, 1);--duration: .2s;--duration-page: .45s}[data-theme=dark]{--bg: #17130f;--surface: #211c18;--surface2: #2a241e;--raised: #2e2721;--ink: #f2eae0;--line: #382f27;--accent: #ce6b3e;--ink2: #b7a998;--ink3: #8a7c6c;--line2: #2f2820;--accent-text: #e0885c;--accent-tint: #3a2418;--green-tint: #22301f;--amber-tint: #3a2e14;--red-tint: #3c1f18;--blue-tint: #1e2833;--amber-text: #d9a84e;--red-text: #e07a66;--green: #8aa989;--blue: #8ba3bf}@media(prefers-reduced-motion:reduce){:root{--duration: 0ms;--duration-page: 0ms}}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}h1,h2,h3,h4{font-family:var(--font-serif);font-weight:500;letter-spacing:-.02em}@keyframes rafta-spin{to{transform:rotate(360deg)}}@keyframes rafta-pulse{0%,to{opacity:.5}50%{opacity:1}}@keyframes rafta-toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes rafta-page-in{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}@keyframes rafta-fade-up{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes rafta-row-in{0%{opacity:0;transform:translate(-14px)}to{opacity:1;transform:none}}@keyframes rafta-pop-in{0%{opacity:0;transform:translateY(8px) scale(.98)}to{opacity:1;transform:none}}@keyframes rafta-flash-ok{0%{box-shadow:0 0 #4f6b528c}60%{box-shadow:0 0 0 10px #4f6b5200}to{box-shadow:0 0 #4f6b5200}}@keyframes rafta-flash-error{0%{box-shadow:0 0 #a93b2e8c}60%{box-shadow:0 0 0 10px #a93b2e00}to{box-shadow:0 0 #a93b2e00}}@keyframes rafta-pulse-dot{0%,to{opacity:1;transform:scale(1)}50%{opacity:.45;transform:scale(.8)}}@keyframes rafta-caret-blink{0%,45%{opacity:1}50%,to{opacity:0}}.rafta-table{width:100%;border-collapse:collapse;background:var(--surface);font-size:13px;color:var(--ink)}.rafta-table thead th{background:var(--surface2);text-align:left;padding:9px 14px;font-size:12px;font-weight:600;color:var(--ink2);border-bottom:1px solid var(--line);white-space:nowrap}.rafta-table tbody td{padding:10px 14px;border-top:1px solid var(--line2);vertical-align:middle}.rafta-table tbody tr:first-child td{border-top:none}.rafta-table tbody tr[data-clickable]{cursor:pointer;transition:background var(--duration) var(--ease)}.rafta-table tbody tr[data-clickable]:hover{background:var(--surface2)}.landing{position:relative;isolation:isolate;min-height:100dvh;overflow-x:hidden;color:var(--ink);font-family:var(--font-sans)}.landing__atmosphere{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-2;background:radial-gradient(ellipse 90% 70% at 12% 18%,rgba(180,85,47,.22),transparent 55%),radial-gradient(ellipse 70% 55% at 88% 12%,rgba(74,95,122,.14),transparent 50%),linear-gradient(165deg,#ebe2d4,#f5efe5 42%,#e8dcc8);animation:landing-shift 18s var(--ease) infinite alternate}.landing__grain{position:fixed;top:0;right:0;bottom:0;left:0;z-index:-1;opacity:.35;pointer-events:none;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.45'/%3E%3C/svg%3E");background-size:180px 180px;mix-blend-mode:multiply}.landing__hero{min-height:100dvh;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.05fr);align-items:end;gap:clamp(16px,4vw,48px);width:100%;max-width:1200px;margin:0 auto;padding:clamp(48px,10vh,100px) clamp(24px,6vw,72px) clamp(56px,12vh,110px);box-sizing:border-box}.landing__hero-copy{max-width:34rem;padding-bottom:clamp(0px,2vh,24px)}.landing__hero-visual{display:flex;align-items:center;justify-content:center;align-self:center;min-height:min(52vh,420px);pointer-events:none;animation:landing-rise 1s var(--ease) .32s both}.landing__hero-illu{width:min(100%,440px);height:auto;color:var(--accent)}.landing__hero-book-fill{fill:var(--accent-tint)}.landing__hero-book-fill--light{fill:var(--surface)}.landing__hero-book{transform-box:fill-box;transform-origin:center}.landing__hero-book--a{animation:landing-book-float-a 5.5s var(--ease) infinite}.landing__hero-book--b{animation:landing-book-float-b 6.2s var(--ease) .4s infinite}.landing__hero-book--c{animation:landing-book-float-c 5.8s var(--ease) .8s infinite}.landing__hero-book--d{animation:landing-book-float-d 4.8s var(--ease) 1.1s infinite}.landing__hero-book-shadow{animation:landing-book-shadow 5.5s var(--ease) infinite}.landing__brand{margin:0 0 1.1rem;font-family:var(--font-serif);font-size:clamp(3.2rem,9vw,5.5rem);font-weight:600;letter-spacing:-.04em;line-height:.95;color:var(--accent);animation:landing-brand-bloom 1.05s var(--ease) both}.landing__headline{margin:0 0 1rem;font-family:var(--font-serif);font-size:clamp(1.35rem,3.2vw,1.85rem);font-weight:500;letter-spacing:-.02em;line-height:1.25;color:var(--ink);max-width:24ch;animation:landing-rise .78s var(--ease) .16s both}.landing__lead{margin:0 0 2rem;font-size:clamp(1rem,2vw,1.125rem);line-height:1.55;color:var(--ink2);max-width:40ch;animation:landing-rise .78s var(--ease) .26s both}.landing__cta{display:flex;flex-wrap:wrap;gap:12px}.landing__hero .landing__btn--primary{animation:landing-cta-primary .82s var(--ease) .38s both}.landing__hero .landing__btn--ghost{animation:landing-cta-ghost .82s var(--ease) .48s both}.landing__cta--section{margin-top:2rem}.landing__btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 22px;border-radius:var(--radius-control);font-family:var(--font-sans);font-size:15px;font-weight:600;text-decoration:none;transition:background var(--duration) var(--ease),color var(--duration) var(--ease),box-shadow var(--duration) var(--ease),transform var(--duration) var(--ease),border-color var(--duration) var(--ease)}.landing__btn--primary{position:relative;overflow:hidden;isolation:isolate;background:var(--accent);color:#fffaf5;box-shadow:var(--shadow)}.landing__btn--primary:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(105deg,transparent 40%,rgba(255,250,245,.28) 50%,transparent 60%);transform:translate(-140%);animation:landing-btn-sheen 5.5s var(--ease) 1.8s infinite;pointer-events:none;z-index:1}.landing__btn--primary:hover{background:var(--accent-hover);box-shadow:var(--shadow-button-hover);transform:translateY(-1px)}.landing__btn--primary:hover:after{animation-duration:3.8s}.landing__btn--ghost{background:transparent;color:var(--ink);border:1px solid var(--line)}.landing__btn--ghost:hover{background:var(--surface);border-color:var(--ink3)}.landing__reveal{opacity:0;transform:translateY(18px);transition:opacity .7s var(--ease),transform .7s var(--ease)}.landing__reveal.is-visible{opacity:1;transform:translateY(0)}.landing__section{width:min(1080px,100%);margin:0 auto;padding:clamp(56px,10vh,96px) clamp(24px,6vw,72px)}.landing__section-head{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1.25rem 2rem;margin-bottom:.25rem}.landing__section-head .landing__section-lead{margin-bottom:1.5rem}.landing__eyebrow{margin:0 0 .75rem;font-size:12px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink3)}.landing__section-title{margin:0 0 .75rem;font-family:var(--font-serif);font-size:clamp(1.75rem,3.5vw,2.35rem);font-weight:500;letter-spacing:-.025em;line-height:1.15;color:var(--ink);max-width:18ch}.landing__section-lead{margin:0 0 2rem;font-size:1.05rem;line-height:1.55;color:var(--ink2);max-width:42ch}.landing__list{margin:1.25rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:.65rem}.landing__list li{position:relative;padding-left:1.1rem;font-size:.95rem;line-height:1.45;color:var(--ink2)}.landing__list li:before{content:"";position:absolute;left:0;top:.55em;width:6px;height:6px;border-radius:50%;background:var(--accent);opacity:.75}.landing__audience{display:grid;grid-template-columns:1fr 1fr;gap:clamp(28px,5vw,56px);margin-top:2rem;padding-top:2rem;border-top:1px solid var(--line)}.landing__audience-name{margin:.35rem 0 .5rem;font-family:var(--font-serif);font-size:1.65rem;font-weight:500;letter-spacing:-.02em;color:var(--accent)}.landing__audience-lead{margin:0;font-size:1rem;line-height:1.5;color:var(--ink);max-width:32ch}.landing__modules{margin:0;padding:0;list-style:none;border-top:1px solid var(--line)}.landing__module{display:grid;grid-template-columns:minmax(140px,.38fr) 1fr;gap:16px 28px;padding:1.15rem 0;border-bottom:1px solid var(--line2);transition:opacity .7s var(--ease),transform .7s var(--ease),padding-left var(--duration) var(--ease)}.landing__module.is-visible:hover{padding-left:6px}.landing__module-label{font-family:var(--font-serif);font-size:1.15rem;font-weight:500;letter-spacing:-.015em;color:var(--ink)}.landing__module-text{font-size:.95rem;line-height:1.5;color:var(--ink2)}.landing__steps{margin:2rem 0 0;padding:0;list-style:none;display:flex;flex-direction:column;gap:0;border-top:1px solid var(--line)}.landing__step{display:grid;grid-template-columns:4.5rem 1fr;gap:16px;padding:1.35rem 0;border-bottom:1px solid var(--line2)}.landing__step-num{font-family:var(--font-mono);font-size:.9rem;font-weight:500;color:var(--accent);letter-spacing:.04em;padding-top:.2rem}.landing__step-title{display:block;font-family:var(--font-serif);font-size:1.25rem;font-weight:500;margin-bottom:.35rem;color:var(--ink)}.landing__step-text{margin:0;font-size:.95rem;line-height:1.5;color:var(--ink2);max-width:40ch}.landing__footer{width:min(1080px,100%);margin:0 auto;padding:clamp(48px,8vh,80px) clamp(24px,6vw,72px) clamp(56px,10vh,96px);border-top:1px solid var(--line)}.landing__footer-brand{margin:0 0 .5rem;font-family:var(--font-serif);font-size:1.75rem;font-weight:600;letter-spacing:-.03em;color:var(--accent)}.landing__footer-note{margin:0 0 1.5rem;font-size:.9rem;line-height:1.5;color:var(--ink3);max-width:42ch}.landing__illu{display:block;width:96px;height:auto;color:var(--accent);opacity:.72;margin-bottom:.35rem;flex-shrink:0}.landing__illu--wide{width:min(140px,36vw);margin-top:.35rem}.landing__illu--steps{width:110px;margin-top:.5rem}.landing__illu-win{opacity:.35;animation:landing-illu-breathe 3.2s var(--ease) infinite}.landing__illu-win--delay{animation-delay:1.1s}.landing__illu-page{transform-origin:64px 40px;animation:landing-illu-page 4s var(--ease) infinite}.landing__illu-scan{animation:landing-illu-scan 3.6s var(--ease) infinite}.landing__illu-dot{opacity:.28;animation:landing-illu-dot 2.8s var(--ease) infinite}.landing__illu-dot--2{animation-delay:.45s}.landing__illu-dot--3{animation-delay:.9s}@keyframes landing-rise{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}@keyframes landing-brand-bloom{0%{opacity:0;transform:translateY(18px) scale(.97);text-shadow:0 0 0 transparent}55%{opacity:1;transform:translateY(0) scale(1);text-shadow:0 0 28px rgba(180,85,47,.45),0 12px 32px rgba(42,35,32,.12)}to{opacity:1;transform:translateY(0) scale(1);text-shadow:0 4px 18px rgba(180,85,47,.18)}}@keyframes landing-cta-primary{0%{opacity:0;transform:translateY(14px);box-shadow:0 0 0 transparent}to{opacity:1;transform:translateY(0);box-shadow:var(--shadow)}}@keyframes landing-cta-ghost{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes landing-btn-sheen{0%,62%{transform:translate(-140%)}78%{transform:translate(140%)}to{transform:translate(140%)}}@keyframes landing-book-float-a{0%,to{transform:translate(0) rotate(-7deg)}50%{transform:translate(4px,-10px) rotate(-5deg)}}@keyframes landing-book-float-b{0%,to{transform:translate(0) rotate(2deg)}50%{transform:translate(-3px,-14px) rotate(0)}}@keyframes landing-book-float-c{0%,to{transform:translate(0) rotate(9deg)}50%{transform:translate(6px,-8px) rotate(11deg)}}@keyframes landing-book-float-d{0%,to{transform:translate(0) rotate(-12deg)}50%{transform:translate(-5px,-12px) rotate(-9deg)}}@keyframes landing-book-shadow{0%,to{opacity:.1;transform:scaleX(1)}50%{opacity:.06;transform:scaleX(.92)}}@keyframes landing-shift{0%{filter:hue-rotate(0deg)}to{filter:hue-rotate(-8deg)}}@keyframes landing-illu-breathe{0%,to{opacity:.28}50%{opacity:.85}}@keyframes landing-illu-page{0%,to{transform:translate(0);opacity:1}45%{transform:translate(5px);opacity:.75}}@keyframes landing-illu-scan{0%{transform:translate(4px);opacity:0}12%{opacity:.45}88%{opacity:.45}to{transform:translate(108px);opacity:0}}@keyframes landing-illu-dot{0%,to{opacity:.25;transform:scale(1)}35%{opacity:.95;transform:scale(1.12)}}@media(max-width:860px){.landing__hero{grid-template-columns:1fr;align-items:end;min-height:auto;padding-top:clamp(32px,8vh,64px)}.landing__hero-visual{order:-1;min-height:0;max-width:280px;margin:0 auto 8px;animation-delay:.2s}.landing__hero-illu{width:min(100%,280px)}.landing__hero-copy{max-width:none}}@media(max-width:720px){.landing__audience{grid-template-columns:1fr;gap:2.5rem}.landing__module{grid-template-columns:1fr;gap:6px}.landing__step{grid-template-columns:3rem 1fr}.landing__section-head{flex-direction:column}}@media(prefers-reduced-motion:reduce){.landing__atmosphere,.landing__brand,.landing__headline,.landing__lead,.landing__hero .landing__btn--primary,.landing__hero .landing__btn--ghost,.landing__hero-visual,.landing__hero-book--a,.landing__hero-book--b,.landing__hero-book--c,.landing__hero-book--d,.landing__hero-book-shadow,.landing__illu-win,.landing__illu-page,.landing__illu-scan,.landing__illu-dot{animation:none}.landing__btn--primary:after{content:none;animation:none}.landing__brand{text-shadow:none}.landing__hero-book--a{transform:rotate(-7deg)}.landing__hero-book--b{transform:rotate(2deg)}.landing__hero-book--c{transform:rotate(9deg)}.landing__hero-book--d{transform:rotate(-12deg)}.landing__reveal{opacity:1;transform:none;transition:none}.landing__module.is-visible:hover{padding-left:0}}
