:root{--magenta-50:#fdf2f8;--magenta-100:#fce7f3;--magenta-200:#fbcfe8;--magenta-300:#f9a8d4;--magenta-400:#f472b6;--magenta-500:#ec4899;--magenta-600:#db2777;--magenta-700:#be185d;--magenta-800:#9d174d;--magenta-900:#831843;--ink:#1a1420;--muted:#5c5560;--line:#ece8ee;--surface:#ffffff;--bg:#ffffff;--bg-soft:#faf7fb;--radius:14px;--shadow-sm:0 1px 3px rgba(26,20,32,0.06);--shadow-md:0 12px 32px rgba(157,23,77,0.12);--max-width:1080px}*{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth}body{font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,Helvetica,Arial,sans-serif;color:var(--ink);background:var(--bg);line-height:1.6;-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}.skip-link{position:absolute;left:12px;top:-60px;z-index:200;background:var(--magenta-600);color:#fff;font-weight:600;padding:10px 16px;border-radius:0 0 10px 10px;transition:top .18s ease}.skip-link:focus{top:0;outline:2px solid #fff;outline-offset:2px}.container{width:100%;max-width:var(--max-width);margin-inline:auto;padding-inline:24px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;font-weight:600;font-size:.98rem;padding:12px 22px;border-radius:10px;border:1px solid transparent;cursor:pointer;transition:transform .14s ease,box-shadow .14s ease,background .14s ease,border-color .14s ease,color .14s ease}.btn-primary{background:var(--magenta-700);color:#fff}.btn-primary:hover{background:var(--magenta-800);transform:translateY(-1px)}.btn-ghost{background:#fff;color:var(--ink);border-color:var(--line)}.btn-ghost:hover{border-color:var(--magenta-300);color:var(--magenta-600)}.btn-sm{padding:9px 16px;font-size:.9rem}.section{padding-block:72px;border-top:1px solid var(--line)}.section-head{max-width:620px;margin-bottom:40px}.eyebrow{display:inline-block;font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--magenta-500);margin-bottom:12px}.section h2{font-size:clamp(1.7rem,3.4vw,2.2rem);line-height:1.15;letter-spacing:-.02em}.section-head p{margin-top:12px;color:var(--muted);font-size:1.05rem}.site-header{position:-webkit-sticky;position:sticky;top:0;z-index:50;background:rgba(255,255,255,.97);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.site-header{background:#ffffff}}.nav{justify-content:space-between;height:66px}.brand,.nav{display:flex;align-items:center}.brand{gap:9px;font-weight:700;font-size:1.05rem;letter-spacing:-.01em}.brand-mark{width:32px;height:32px;display:grid;place-items:center;border-radius:9px;background:var(--magenta-400);color:#fff;font-weight:700;font-size:.95rem}.nav-links{display:flex;align-items:center;gap:26px;list-style:none}.nav-links a{font-weight:500;font-size:.95rem;color:var(--muted);transition:color .14s ease}.nav-links a:hover{color:var(--ink)}.nav-cta{display:flex;align-items:center;gap:12px}.nav-login{font-weight:500;font-size:.95rem;color:var(--muted)}.menu-toggle,.nav-login:hover{color:var(--ink)}.menu-toggle{display:none;background:none;border:none;cursor:pointer;font-size:1.5rem}.hero{padding-block:76px 64px;background:radial-gradient(900px 380px at 78% -20%,var(--magenta-50),transparent 65%)}.hero-inner{max-width:720px}.hero .pill{display:inline-flex;align-items:center;gap:8px;font-size:.85rem;font-weight:500;color:var(--magenta-600);background:var(--magenta-50);border:1px solid var(--magenta-100);padding:6px 14px;border-radius:999px;margin-bottom:24px}.hero .dot{width:8px;height:8px;border-radius:50%;background:var(--magenta-500)}.hero h1{font-size:clamp(2.3rem,6vw,3.6rem);line-height:1.05;letter-spacing:-.035em}.hero h1 .accent{color:var(--magenta-500)}.hero p.lead{margin-top:20px;font-size:1.2rem;color:var(--muted);max-width:560px}.hero-actions{gap:12px}.hero-actions,.hero-meta{display:flex;flex-wrap:wrap;margin-top:30px}.hero-meta{gap:22px;color:var(--muted);font-size:.94rem}.hero-meta span{display:inline-flex;align-items:center;gap:7px}.hero-meta b{color:var(--magenta-500)}.sessions{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}.session-card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease;position:relative}.session-card:hover{border-color:var(--magenta-300);box-shadow:var(--shadow-md);transform:translateY(-3px)}.session-card.pick{border-color:var(--magenta-500);box-shadow:var(--shadow-md)}.session-card .tag{position:absolute;top:18px;right:18px;font-size:.72rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--magenta-600);background:var(--magenta-50);border:1px solid var(--magenta-100);padding:3px 9px;border-radius:999px}.session-card .len{font-size:2.4rem;font-weight:800;letter-spacing:-.03em}.session-card .len small{font-size:1rem;font-weight:600;color:var(--muted);margin-left:4px}.session-card h3{margin-top:6px;font-size:1.1rem}.session-card p{margin-top:8px;color:var(--muted);font-size:.96rem}.availability{background:var(--bg-soft)}.week{display:grid;grid-template-columns:repeat(5,1fr);grid-gap:12px;gap:12px}.day{background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:18px 16px;text-align:center}.day .dow{font-weight:700;font-size:.95rem}.day .slots{margin-top:10px;display:grid;grid-gap:7px;gap:7px}.slot{display:block;width:100%;font-family:inherit;font-size:.85rem;font-weight:500;text-align:center;color:var(--magenta-600);background:var(--magenta-50);border:1px solid var(--magenta-100);border-radius:8px;padding:6px 4px;cursor:pointer}.slot.none{color:var(--muted);background:transparent;cursor:not-allowed;border-color:var(--line)}.availability .note{margin-top:20px;color:var(--muted);font-size:.94rem}.steps{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px;counter-reset:step}.step{padding:26px;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface)}.step:before{counter-increment:step;content:counter(step);display:grid;place-items:center;width:38px;height:38px;border-radius:10px;background:var(--magenta-500);color:#fff;font-weight:700;margin-bottom:16px}.step h3{font-size:1.12rem;margin-bottom:6px}.step p{color:var(--muted);font-size:.96rem}.about-grid{display:grid;grid-template-columns:300px 1fr;grid-gap:44px;gap:44px;align-items:center}.tutor-card{border:1px solid var(--line);border-radius:18px;padding:24px;background:var(--surface);box-shadow:var(--shadow-sm)}.tutor-avatar{width:100%;aspect-ratio:1;border-radius:14px;background:linear-gradient(135deg,var(--magenta-300),var(--magenta-500));display:grid;place-items:center;color:#fff;font-size:3.4rem;font-weight:800}.tutor-card h3{margin-top:18px;font-size:1.25rem}.tutor-card .role{color:var(--magenta-500);font-weight:600;font-size:.92rem}.tutor-card ul{list-style:none;margin-top:14px;display:grid;grid-gap:8px;gap:8px}.tutor-card li{display:flex;align-items:center;gap:9px;color:var(--muted);font-size:.94rem}.about-copy h2{font-size:clamp(1.7rem,3.4vw,2.2rem);letter-spacing:-.02em}.about-copy p{margin-top:14px;color:var(--muted);font-size:1.05rem}.tick{width:20px;height:20px;flex:none;display:grid;place-items:center;border-radius:50%;background:var(--magenta-100);color:var(--magenta-600);font-size:.7rem;font-weight:800}.pricing-card{border:1px solid var(--magenta-200);border-radius:18px;padding:40px;background:linear-gradient(180deg,var(--magenta-50),var(--surface));text-align:center;max-width:620px;margin:0 auto}.pricing-card .price{font-size:3.2rem;font-weight:800;letter-spacing:-.03em;color:var(--magenta-600)}.pricing-card h2{margin-top:6px;font-size:1.4rem}.pricing-card p{margin-top:12px;color:var(--muted);font-size:1.05rem}.pricing-card .btn{margin-top:24px}.booking-grid{display:grid;grid-template-columns:1fr 1fr;grid-gap:44px;gap:44px;align-items:start}.booking-info h2{font-size:clamp(1.7rem,3.4vw,2.2rem);letter-spacing:-.02em}.booking-info p{color:var(--muted);margin-top:12px;font-size:1.05rem}.booking-info ul{margin-top:22px;display:grid;grid-gap:14px;gap:14px;list-style:none}.booking-info li{display:flex;align-items:center;gap:12px;font-weight:500}.booking-info .icon{width:40px;height:40px;border-radius:10px;background:var(--magenta-50);border:1px solid var(--magenta-100);color:var(--magenta-600);display:grid;place-items:center;font-size:1.1rem;flex:none}.form{background:var(--surface);border:1px solid var(--line);border-radius:16px;padding:28px;box-shadow:var(--shadow-sm);display:grid;grid-gap:15px;gap:15px}.field{display:grid;grid-gap:6px;gap:6px}.field label{font-size:.88rem;font-weight:600}.field .req{color:var(--magenta-600);font-weight:700}.field .opt{font-weight:500}.field .opt,.req-legend{color:var(--muted);font-size:.82rem}.req-legend{margin-top:-4px}.req-legend .req{color:var(--magenta-600);font-weight:700}.field input,.field select,.field textarea{font:inherit;padding:11px 13px;border:1px solid var(--line);border-radius:10px;background:#fff;color:var(--ink);outline:none;transition:border-color .14s ease,box-shadow .14s ease}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--magenta-500);box-shadow:0 0 0 3px var(--magenta-100)}.seg{display:flex;gap:8px}.seg button{flex:1 1;font:inherit;font-weight:600;padding:10px;border-radius:10px;border:1px solid var(--line);background:#fff;color:var(--muted);cursor:pointer;transition:all .14s ease}.seg button.active{border-color:var(--magenta-500)}.form-note,.seg button.active{background:var(--magenta-50);color:var(--magenta-600)}.form-note{font-size:.9rem;border:1px solid var(--magenta-100);padding:11px 13px;border-radius:10px}.site-footer{border-top:1px solid var(--line);padding-block:40px 28px;background:var(--bg-soft)}.footer-top{display:flex;justify-content:space-between;align-items:flex-start;gap:24px;flex-wrap:wrap}.footer-contact{list-style:none;margin-top:14px;display:grid;grid-gap:8px;gap:8px}.footer-contact li{display:flex;align-items:center;gap:8px;color:var(--muted);font-size:.92rem}.footer-contact a:hover{color:var(--magenta-700)}.footer-links{display:flex;gap:24px;list-style:none;flex-wrap:wrap}.footer-links a{color:var(--muted);font-size:.94rem}.footer-links a:hover{color:var(--ink)}.footer-bottom{margin-top:26px;padding-top:22px;border-top:1px solid var(--line);font-size:.88rem;color:var(--muted);display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap}.footer-bottom a{color:var(--magenta-600)}@media (max-width:860px){.sessions,.steps{grid-template-columns:1fr}.week{grid-template-columns:repeat(2,1fr)}.about-grid,.booking-grid{grid-template-columns:1fr}.tutor-card{max-width:340px}}.nav-cta-mobile{display:none}@media (max-width:680px){.nav-links{position:absolute;top:66px;left:0;right:0;flex-direction:column;align-items:stretch;gap:0;background:#fff;border-bottom:1px solid var(--line);box-shadow:var(--shadow-md);padding:10px 0 16px;display:none;max-height:calc(100vh - 66px);overflow-y:auto}.nav-links.open{display:flex}.nav-links li{padding:2px 22px}.nav-links a{display:block;padding:12px 0}.menu-toggle{display:grid;place-items:center;width:42px;height:42px;margin-right:-8px}.nav-get-started,.nav-login{display:none}.nav-cta-mobile{display:block;margin-top:4px;border-top:1px solid var(--line);padding-top:10px}.nav-cta-mobile .btn{width:100%;margin-top:8px;padding:13px 26px}.nav-links .btn-primary,.nav-links .btn-primary:hover{color:#fff}.section{padding-block:56px}}@media (max-width:400px){.container{padding-inline:16px}.brand{font-size:.98rem}}.statband{background:linear-gradient(120deg,var(--magenta-600),var(--magenta-700),var(--magenta-600));background-size:200% auto;animation:gradientShift 8s ease infinite;color:#fff;padding-block:34px}.statband-grid{display:grid;grid-template-columns:repeat(4,1fr);grid-gap:20px;gap:20px;text-align:center}.statband-item strong{display:block;font-size:2.2rem;font-weight:800;letter-spacing:-.03em}.statband-item span{font-size:.9rem;opacity:.9}.dash-showcase{background:var(--bg-soft)}.dash-grid{display:grid;grid-template-columns:repeat(3,1fr);grid-gap:18px;gap:18px}.dash-card{display:block;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:26px;transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease,border-color .22s ease}.dash-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-md);border-color:var(--magenta-300)}.dash-emoji{display:grid;place-items:center;width:52px;height:52px;border-radius:14px;background:var(--magenta-50);border:1px solid var(--magenta-100);color:var(--magenta-600);font-size:1.5rem;margin-bottom:16px;transition:transform .3s ease}.dash-card:hover .dash-emoji{transform:scale(1.12) rotate(-6deg)}.dash-card h3{font-size:1.1rem}.dash-card p{margin-top:7px;color:var(--muted);font-size:.94rem}.dash-open{display:inline-flex;align-items:center;gap:5px;margin-top:14px;font-weight:600;font-size:.9rem;color:var(--magenta-600);transition:transform .2s ease}.dash-card:hover .dash-open{transform:translateX(4px)}@media (max-width:860px){.statband-grid{grid-template-columns:repeat(2,1fr)}.dash-grid{grid-template-columns:1fr}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-36px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(36px)}to{opacity:1;transform:translateX(0)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-12px)}}@keyframes floatSlow{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-18px) rotate(4deg)}}@keyframes pulseGlow{0%,to{box-shadow:0 0 0 0 rgba(236,72,153,.5)}50%{box-shadow:0 0 0 12px rgba(236,72,153,0)}}@keyframes pulseDot{0%,to{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}}@keyframes shimmer{0%{background-position:-400px 0}to{background-position:400px 0}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes spin{to{transform:rotate(1turn)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.6)}60%{opacity:1;transform:scale(1.08)}to{transform:scale(1)}}@keyframes growWidth{0%{width:0}}@keyframes blobMorph{0%,to{border-radius:42% 58% 63% 37%/42% 45% 55% 58%}33%{border-radius:63% 37% 41% 59%/58% 63% 37% 42%}66%{border-radius:37% 63% 58% 42%/63% 42% 58% 37%}}@keyframes drawRing{0%{stroke-dashoffset:var(--ring-circ,339)}}@keyframes marqueeStars{0%{transform:translateY(0) scale(1)}50%{transform:translateY(-3px) scale(1.15)}to{transform:translateY(0) scale(1)}}.reveal{opacity:0;transform:translateY(16px);transition:opacity .55s cubic-bezier(.22,1,.36,1),transform .55s cubic-bezier(.22,1,.36,1);will-change:opacity,transform}.reveal.is-visible{opacity:1;transform:translateY(0)}.reveal.from-left{transform:translateX(-40px)}.reveal.from-right{transform:translateX(40px)}.reveal.from-left.is-visible,.reveal.from-right.is-visible{transform:translateX(0)}.reveal.zoom{transform:scale(.92)}.reveal.zoom.is-visible{transform:scale(1)}.stagger.is-visible>*{opacity:0;animation:fadeInUp .6s cubic-bezier(.22,1,.36,1) forwards}.stagger.is-visible>:first-child{animation-delay:.05s}.stagger.is-visible>:nth-child(2){animation-delay:.13s}.stagger.is-visible>:nth-child(3){animation-delay:.21s}.stagger.is-visible>:nth-child(4){animation-delay:.29s}.stagger.is-visible>:nth-child(5){animation-delay:.37s}.stagger.is-visible>:nth-child(6){animation-delay:.45s}.anim-fade-up{animation:fadeInUp .8s cubic-bezier(.22,1,.36,1) both}.anim-fade{animation:fadeIn 1s ease both}.anim-scale{animation:scaleIn .7s cubic-bezier(.22,1,.36,1) both}.anim-slide-right{animation:slideInRight .8s cubic-bezier(.22,1,.36,1) both}.d1{animation-delay:.1s}.d2{animation-delay:.25s}.d3{animation-delay:.4s}.d4{animation-delay:.55s}.d5{animation-delay:.7s}.float{animation:float 5s ease-in-out infinite}.float-slow{animation:floatSlow 8s ease-in-out infinite}.spin-slow{animation:spin 18s linear infinite}.hero{position:relative;overflow:hidden}.blob{position:absolute;z-index:0;filter:blur(6px);opacity:.55;pointer-events:none;animation:blobMorph 14s ease-in-out infinite,floatSlow 10s ease-in-out infinite}.blob-1{width:260px;height:260px;right:-40px;top:20px;background:radial-gradient(circle at 30% 30%,var(--magenta-200),var(--magenta-400))}.blob-2{width:180px;height:180px;right:220px;top:180px;animation-delay:-4s;opacity:.4}.blob-2,.blob-3{background:radial-gradient(circle at 30% 30%,var(--magenta-100),var(--magenta-300))}.blob-3{width:120px;height:120px;left:-30px;bottom:-20px;animation-delay:-8s;opacity:.35}.hero-inner{position:relative;z-index:1}.hero .dot{animation:pulseDot 1.8s ease-in-out infinite}.hero h1 .accent{background:linear-gradient(90deg,var(--magenta-400),var(--magenta-600),var(--magenta-400));background-size:200% auto;-webkit-background-clip:text;background-clip:text;color:transparent;animation:gradientShift 5s ease infinite}.btn-primary{position:relative;overflow:hidden}.btn-primary:after{content:"";position:absolute;inset:0;background:linear-gradient(120deg,transparent 20%,rgba(255,255,255,.35) 50%,transparent 80%);transform:translateX(-120%);transition:transform .6s ease}.btn-primary:hover:after{transform:translateX(120%)}.day,.session-card,.step,.tutor-card{transition:transform .22s cubic-bezier(.22,1,.36,1),box-shadow .22s ease,border-color .22s ease}.day:hover,.step:hover{transform:translateY(-4px);box-shadow:var(--shadow-md);border-color:var(--magenta-200)}.slot{transition:transform .16s ease,background .16s ease,color .16s ease}.slot:hover:not(:disabled){transform:scale(1.06);background:var(--magenta-100)}.slot:disabled{opacity:.7}.hero-meta b{display:inline-flex;align-items:center;animation:marqueeStars 2.4s ease-in-out infinite}.section-head h2{position:relative}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.reveal{opacity:1!important;transform:none!important}}