@font-face{font-family:Hardine;src:url(/fonts/Hardine-Bold.otf) format("opentype");font-weight:700;font-style:normal;font-display:swap}*{box-sizing:border-box;margin:0;padding:0}body,html{font-family:Inter,system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100%;overflow-x:hidden;background-color:#ede9e3;color-scheme:light dark;--bg:#ede9e3;--bg-card:#FDFCFA;--bg-elevated:#f5f3ed;--bg-hover:#eae9e4;--text-primary:#1A1A1A;--text-muted:#5C5C5C;--text-faint:#9A9A9A;--border:#E5E0D8;--accent:#1A1A1A;--accent-muted:rgba(26,26,26,0.12);--shadow:rgba(50,45,40,0.12);--success:#22c55e}@media (prefers-color-scheme:dark){body,html{background-color:#0a0a0a;--bg:#0a0a0a;--bg-card:#1a1a1a;--bg-elevated:#141414;--bg-hover:#2a2a2a;--text-primary:#f5f3ed;--text-muted:#9a9a9a;--text-faint:#666666;--border:#2a2a2a;--accent:#f5f2e8;--accent-muted:rgba(245,242,232,0.12);--shadow:rgba(0,0,0,0.3);--success:#4ade80}}.font-hardine{font-family:Hardine,Georgia,serif;font-weight:700}.font-serif{font-family:Merriweather,Georgia,Times New Roman,serif}@keyframes fadeInUp{0%{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes float{0%,to{transform:translateY(0) rotate(var(--rotate,0deg))}50%{transform:translateY(-12px) rotate(calc(var(--rotate, 0deg) + 2deg))}}@keyframes floatSlow{0%,to{transform:translateY(0) rotate(var(--rotate,0deg))}50%{transform:translateY(-8px) rotate(calc(var(--rotate, 0deg) - 1deg))}}@keyframes gentlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.02)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes revealRight{0%{-webkit-clip-path:inset(0 100% 0 0);clip-path:inset(0 100% 0 0)}to{-webkit-clip-path:inset(0 0 0 0);clip-path:inset(0 0 0 0)}}.animate-fade-in-up{animation:fadeInUp .9s cubic-bezier(.16,1,.3,1) forwards;opacity:0}.animate-fade-in{animation:fadeIn .7s ease-out forwards;opacity:0}.animate-float{animation:float 6s ease-in-out infinite}.animate-float-slow{animation:floatSlow 8s ease-in-out infinite}.delay-1{animation-delay:.1s}.delay-2{animation-delay:.2s}.delay-3{animation-delay:.35s}.delay-4{animation-delay:.5s}.delay-5{animation-delay:.65s}.delay-6{animation-delay:.8s}.delay-7{animation-delay:.95s}.rg-monogram{display:flex;align-items:center;justify-content:center;background:var(--bg);border:1.5px solid var(--text-primary);border-radius:22%;position:relative;overflow:hidden}.rg-monogram:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,transparent 40%,rgba(255,255,255,.1) 50%,transparent 60%);opacity:0;transition:opacity .3s}.rg-monogram:hover:before{opacity:1}.rg-text{font-family:Hardine,Georgia,serif;font-weight:700;font-style:normal;color:var(--text-primary);display:flex;letter-spacing:-.06em;position:relative;margin-left:-4%}.rg-text .r{transform:translateY(-25%)}.rg-text .g{transform:translateY(20%);margin-left:-.18em}.course-tag{position:relative;display:flex;align-items:center;justify-content:center;border-radius:22%;overflow:visible;box-shadow:0 4px 12px var(--shadow),0 1px 3px rgba(0,0,0,.08);transition:transform .3s ease,box-shadow .3s ease}.course-tag:hover{transform:scale(1.05) rotate(2deg);box-shadow:0 8px 24px var(--shadow),0 2px 6px rgba(0,0,0,.1)}.course-tag:before{width:12%;height:12%;background:var(--bg);box-shadow:inset 0 1px 2px rgba(0,0,0,.15);z-index:2}.course-tag:after,.course-tag:before{content:"";position:absolute;top:8%;left:50%;transform:translateX(-50%);border-radius:50%}.course-tag:after{width:14%;height:14%;background:linear-gradient(135deg,#d4d4d4,#8a8a8a 50%,#b8b8b8);z-index:1}.course-tag-inner{position:absolute;inset:0;border-radius:inherit;background:linear-gradient(135deg,rgba(255,255,255,.25),transparent 50%,rgba(0,0,0,.05));pointer-events:none}.course-tag-initials{font-family:Hardine,Georgia,serif;font-weight:700;font-style:normal;padding-top:8%;margin-left:-4%;text-shadow:0 1px 1px rgba(0,0,0,.1)}.tag-cream{background:#e5d5b8}.tag-cream .course-tag-initials{color:#6c0d2a}.tag-coral{background:#ef4b15}.tag-coral .course-tag-initials{color:#16161b}.tag-sky{background:#bfe3f5}.tag-sky .course-tag-initials{color:#082b53}.tag-sage{background:#91a175}.tag-sage .course-tag-initials{color:#f8ec50}.tag-tan{background:#e3d4b7}.tag-tan .course-tag-initials{color:#563e1c}.tag-brown{background:#563e1c}.tag-brown .course-tag-initials{color:#e3d4b7}.tag-offwhite{background:#e8e8de}.tag-offwhite .course-tag-initials{color:#26470c}.tag-kelly{background:#179356}.tag-kelly .course-tag-initials{color:#f2f5e8}.tag-crimson{background:#9d251e}.tag-crimson .course-tag-initials{color:#b1b7bd}.tag-teal{background:#347a72}.tag-teal .course-tag-initials{color:#ffef59}.tag-yellow{background:#f5e64d}.tag-yellow .course-tag-initials{color:#181d19}.tag-navy{background:#062d4d}.tag-navy .course-tag-initials{color:#cbf2fd}.tag-red{background:#b5272d}.tag-red .course-tag-initials{color:#b6966f}.tag-pale{background:#cbebfc}.tag-pale .course-tag-initials{color:#601229}.tag-silver{background:#c0c9d1}.tag-silver .course-tag-initials{color:#330470}.tag-darknavy{background:#0b2c50}.tag-darknavy .course-tag-initials{color:#f6f2ea}.tag-purple{background:#5b3e96}.tag-purple .course-tag-initials{color:#e8e0f5}.card{background:var(--bg-card);border:1px solid var(--border);border-radius:16px;box-shadow:0 4px 16px var(--shadow)}.card-glow{position:relative}.card-glow:before{content:"";position:absolute;inset:-1px;border-radius:17px;background:linear-gradient(135deg,var(--accent-muted) 0,transparent 50%);z-index:-1;opacity:0;transition:opacity .4s ease}.card-glow:hover:before{opacity:1}.btn-primary{background:var(--text-primary);color:var(--bg);border:none;border-radius:8px;padding:14px 28px;font-weight:600;font-size:15px;cursor:pointer;transition:all .2s ease;position:relative;overflow:hidden}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 12px var(--shadow)}.btn-primary:active{transform:scale(.98)}.btn-ghost{background:transparent;color:var(--text-primary);border:1px solid var(--border);border-radius:8px;padding:10px 20px;font-weight:500;font-size:14px;cursor:pointer;transition:all .2s ease}.btn-ghost:hover{background:var(--bg-hover);border-color:var(--text-muted)}.input{background:var(--bg-card);border:1px solid var(--border);border-radius:8px;padding:14px 16px;font-size:15px;color:var(--text-primary);width:100%;transition:all .2s ease}.input::placeholder{color:var(--text-muted)}.input:focus{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-muted)}.section-label{font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase;color:var(--text-faint)}.noise-overlay{z-index:9999;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%' height='100%' filter='url(%23noise)'/%3E%3C/svg%3E")}.gradient-bg,.noise-overlay{position:fixed;inset:0;pointer-events:none}.gradient-bg{z-index:-1;background:radial-gradient(ellipse 80% 50% at 50% -20%,var(--accent-muted) 0,transparent 50%),radial-gradient(ellipse 60% 40% at 100% 100%,rgba(145,161,117,.08) 0,transparent 50%)}@media (prefers-color-scheme:dark){.gradient-bg{background:radial-gradient(ellipse 80% 50% at 50% -20%,rgba(245,242,232,.04) 0,transparent 50%),radial-gradient(ellipse 60% 40% at 100% 100%,rgba(23,147,86,.06) 0,transparent 50%)}}button:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.alert-card{background:var(--bg-card);border:1px solid var(--border);border-radius:12px;padding:16px;display:flex;align-items:center;gap:16px}.status-dot{width:8px;height:8px;border-radius:50%;background:var(--success);box-shadow:0 0 8px var(--success)}.status-dot.paused{background:var(--text-faint);box-shadow:none}.mono{font-family:SF Mono,Monaco,Inconsolata,monospace;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.iphone-mockup{position:relative;width:285px;height:600px;background:#1a1a1a;border-radius:52px;padding:8px;box-shadow:0 30px 60px -15px rgba(0,0,0,.35),inset 0 0 0 1px rgba(255,255,255,.1),inset 0 0 0 3px #2a2a2a}.iphone-mockup:before{content:"";position:absolute;inset:3px;border-radius:49px;background:linear-gradient(145deg,#3a3a3a,#1a1a1a 50%,#0a0a0a);z-index:0}.iphone-notch{display:none}.iphone-screen{position:absolute;inset:8px;border-radius:44px;overflow:hidden;background:#000;z-index:1}.iphone-screen img{width:100%;height:100%;object-fit:cover;object-position:top}.iphone-screen video{width:100%;height:100%;object-fit:cover;object-position:top center;background:#000}.screenshot-light{display:block}.screenshot-dark{display:none}@media (prefers-color-scheme:dark){.screenshot-light{display:none}.screenshot-dark{display:block}}.phone-showcase{position:relative;display:flex;align-items:center;justify-content:center;min-height:600px}.phone-showcase .iphone-mockup{position:absolute;transition:transform .4s cubic-bezier(.16,1,.3,1)}.phone-showcase .iphone-mockup:hover{z-index:10}.phone-backdrop{position:relative;display:flex;align-items:center;justify-content:center;padding:100px 80px}.phone-backdrop .backdrop-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:24px;box-shadow:0 25px 50px -12px rgba(0,0,0,.25),0 0 0 1px rgba(0,0,0,.05)}.phone-backdrop .iphone-mockup{position:relative;z-index:2;transform:scale(1.6)}@media (max-width:1100px){.phone-backdrop{padding:30px}.phone-backdrop .backdrop-image{border-radius:20px}}@media (max-width:900px){.phone-backdrop{padding:24px}.phone-backdrop .backdrop-image{border-radius:16px}}.hero-split{display:flex;align-items:center;justify-content:center;gap:60px;max-width:1100px;width:100%;padding:40px 40px 60px;margin:0 auto;flex-wrap:wrap}.hero-content{display:flex;flex-direction:column;align-items:flex-start;text-align:left;flex:1 1 400px;max-width:480px;min-width:320px}.hero-phones{display:flex;align-items:center;justify-content:center;flex:0 0 auto}@media (max-width:1100px){.hero-split{gap:40px;padding:40px 24px 60px}.hero-phones .iphone-mockup{transform:scale(1)!important}}@media (max-width:900px){.hero-split{flex-direction:column-reverse;gap:32px;padding:24px 24px 40px}.hero-content{align-items:center;text-align:center;max-width:100%;min-width:auto}.hero-phones{width:100%;justify-content:center;max-width:100%;overflow:hidden}.phone-backdrop{padding:40px 30px;width:calc(100vw - 48px);max-width:380px;aspect-ratio:4/5}.phone-backdrop .iphone-mockup{transform:scale(1)!important}.iphone-mockup{width:200px;height:420px;border-radius:40px}.iphone-screen{border-radius:34px}.course-tags-row{justify-content:center!important;margin-top:8px}}@media (max-width:480px){.course-tags-row{gap:8px!important}.course-tags-row .course-tag{width:40px!important;height:40px!important}.course-tags-row .course-tag-initials{font-size:15px!important}.hero-split{gap:24px;padding:16px 16px 32px}.phone-backdrop{padding:30px 24px;width:calc(100vw - 32px);max-width:340px}.phone-backdrop .iphone-mockup{transform:scale(.9)!important}.iphone-mockup{width:180px;height:380px;border-radius:36px}.iphone-screen{border-radius:30px}}.feature-row{display:flex;align-items:center;gap:40px;width:100%;max-width:900px}.feature-row-reverse{flex-direction:row-reverse}.feature-text{flex:1 1;min-width:280px}.feature-header{display:flex;align-items:center;gap:14px;margin-bottom:12px}.feature-preview{flex-shrink:0;min-width:400px}.feature-number{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:8px;background:var(--accent-muted);font-size:15px;flex-shrink:0}.feature-number,.feature-title{font-weight:600;color:var(--text-primary)}.feature-title{font-size:22px;margin:0;letter-spacing:-.3px}.feature-description{font-size:15px;color:var(--text-muted);line-height:1.7;max-width:420px}@media (max-width:768px){.feature-row,.feature-row-reverse{flex-direction:column;gap:28px;text-align:left;align-items:flex-start}.feature-text{order:1;min-width:0;width:100%}.feature-header{gap:12px}.feature-preview{order:2;min-width:0;width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.feature-preview>div{transform:scale(.85);transform-origin:left top}.feature-description{max-width:100%}.feature-title{font-size:20px}.feature-number{width:28px;height:28px;font-size:14px}}@media (max-width:900px){.features-section{padding-left:24px!important;padding-right:24px!important}}