:root{--ink:#16243b;--muted:#617087;--blue:#2858d5;--pale:#f3f6ff;--orange:#ed7657;--cream:#fffbf5;--line:#dce3f0}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--cream);color:var(--ink);font:400 16px/1.6 Onest,Arial,sans-serif}.container{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:10;background:rgba(255,251,245,.86);backdrop-filter:blur(14px);border-bottom:1px solid rgba(22,36,59,.06)}.nav{height:76px;display:flex;align-items:center;justify-content:space-between}.logo{color:var(--ink);font-weight:800;font-size:18px;text-decoration:none;letter-spacing:-.7px}.logo span{color:var(--blue)}.menu{display:flex;align-items:center;gap:27px}.menu>a{color:var(--muted);font-size:14px;font-weight:700;text-decoration:none}.menu>a:not(.button):hover,.text-link:hover{color:var(--blue)}.button{border:0;display:inline-flex;align-items:center;justify-content:center;gap:14px;padding:15px 23px;border-radius:50px;background:var(--orange);box-shadow:0 12px 22px rgba(237,118,87,.22);color:#fff;font:700 14px Onest;cursor:pointer;text-decoration:none;transition:.25s transform,.25s box-shadow}.button:hover{transform:translateY(-2px);box-shadow:0 16px 27px rgba(237,118,87,.3)}.button span{font-size:20px;line-height:10px}.button-small{padding:10px 17px!important;color:#fff!important}.menu-button{display:none}.hero{position:relative;overflow:hidden;padding:84px 0 106px;background:linear-gradient(115deg,#f3f6ff 0%,#f8faff 56%,#fff7f0 100%)}.hero-grid{display:grid;grid-template-columns:1.03fr .97fr;gap:74px;align-items:center}.eyebrow{margin:0 0 13px;color:var(--blue);font-size:12px;letter-spacing:1.4px;text-transform:uppercase;font-weight:800}.hero h1,.section h2{margin:0;font:600 clamp(34px,4.3vw,58px)/1.23 Unbounded,Arial,sans-serif;letter-spacing:-2.8px}.hero h1 em{color:var(--blue);font-style:normal}.hero-text{max-width:570px;margin:24px 0 30px;color:var(--muted);font-size:18px}.hero-actions{display:flex;align-items:center;gap:25px}.text-link{color:var(--ink);font-weight:800;font-size:14px;text-decoration:none}.hero-note{display:flex;align-items:center;gap:9px;margin-top:35px;color:var(--muted);font-size:13px}.note-icon{display:grid;place-items:center;width:21px;height:21px;border-radius:50%;background:#dbe5ff;color:var(--blue);font-weight:800}.hero-visual{position:relative;min-height:490px}.photo-card{position:absolute;inset:0 15px 0 0;padding:14px;border-radius:150px 150px 24px 24px;background:#fff;box-shadow:0 24px 70px rgba(38,71,145,.13)}.teacher-photo{width:100%;height:100%;display:block;object-fit:cover;object-position:center;border-radius:138px 138px 15px 15px}.floating-card{position:absolute;left:-34px;bottom:35px;display:flex;align-items:center;gap:12px;padding:15px 19px;background:#fff;border-radius:13px;box-shadow:0 15px 35px rgba(29,50,91,.14)}.card-mark{display:grid;place-items:center;width:42px;height:42px;background:#edf2ff;color:var(--blue);border-radius:11px;font-weight:800}.floating-card b,.floating-card small{display:block}.floating-card b{font-size:13px}.floating-card small{color:var(--muted);font-size:11px}.hero-shape{position:absolute;border-radius:50%;filter:blur(1px)}.shape-one{left:-70px;bottom:-100px;width:250px;height:250px;background:#ffdfce;opacity:.55}.shape-two{right:5%;top:-80px;width:170px;height:170px;border:20px solid #dbe5ff}.section{padding:112px 0}.section-heading{text-align:center;max-width:670px;margin:0 auto 52px}.section-heading h2,.about h2,.process h2,.reviews h2,.contact h2{font-size:35px;line-height:1.35}.section-heading>p:last-child{color:var(--muted);margin:18px auto 0}.cards{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.card{padding:32px;border:1px solid transparent;background:#fff;border-radius:20px;box-shadow:0 7px 28px rgba(34,56,95,.05);transition:.28s}.card:hover{transform:translateY(-6px);border-color:#d6e0fa;box-shadow:0 15px 38px rgba(34,56,95,.1)}.card-icon{display:grid;place-items:center;width:48px;height:48px;background:#e9efff;border-radius:13px;color:var(--blue);font-size:13px;font-weight:800}.card:nth-child(2) .card-icon{background:#fff0ea;color:var(--orange)}.card h3{margin:24px 0 10px;font-size:20px;letter-spacing:-.5px}.card p{color:var(--muted);font-size:14px;margin:0 0 18px}.price{display:block;margin:0 0 20px;color:var(--blue);font-size:20px;letter-spacing:-.7px}.price small{font-size:11px;color:var(--muted);font-weight:500;letter-spacing:0}.card a{color:var(--blue);font-size:13px;font-weight:800;text-decoration:none}.card a span{margin-left:5px;font-size:17px}.about{background:var(--pale)}.about-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:106px;align-items:center}.about-image{height:436px;position:relative}.abstract-photo{position:absolute;inset:0 50px 0 0;overflow:hidden;border-radius:24px;background:linear-gradient(145deg,#335fcb,#92b6f7)}.about-photo{width:100%;height:100%;display:block;object-fit:cover;object-position:center}.location-badge{position:absolute;right:0;bottom:33px;padding:18px 23px;border-radius:14px;background:#fff;font-size:14px;font-weight:800;box-shadow:0 14px 25px rgba(30,54,99,.13)}.location-badge small{font-size:12px;color:var(--muted);font-weight:500}.about-copy>p:not(.eyebrow){color:var(--muted);margin:19px 0}.principles{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:27px;padding-top:25px;border-top:1px solid #d5deed}.principles b,.principles span{display:block}.principles b{font-size:14px}.principles span{font-size:12px;color:var(--muted)}.process-top{display:flex;align-items:end;justify-content:space-between;margin-bottom:53px}.process-top>p{max-width:360px;margin:0;color:var(--muted);font-size:14px}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:61px;margin:0;padding:0;list-style:none;counter-reset:steps}.steps li{position:relative}.steps li:not(:last-child):after{position:absolute;top:28px;left:72px;width:calc(100% + 6px);border-top:1px dashed #aebbd4;content:""}.steps span{display:grid;place-items:center;position:relative;z-index:1;width:57px;height:57px;border-radius:50%;background:var(--blue);color:#fff;font-weight:800}.steps h3{margin:21px 0 8px;font-size:18px}.steps p{max-width:290px;margin:0;color:var(--muted);font-size:14px}.reviews{background:var(--pale)}.reviews-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.review-card{display:flex;flex-direction:column;gap:18px;padding:32px;background:#fff;border-radius:20px;box-shadow:0 7px 28px rgba(34,56,95,.05)}.review-card>p{margin:0;color:var(--ink);font-size:15px;line-height:1.65;flex-grow:1}.review-stars{color:var(--orange);font-size:15px;letter-spacing:2px}.review-author{display:flex;align-items:center;gap:12px;margin-top:auto;padding-top:18px;border-top:1px solid var(--line)}.review-avatar{display:grid;place-items:center;width:42px;height:42px;border-radius:50%;background:#e9efff;color:var(--blue);font-size:12px;font-weight:800}.review-author b,.review-author small{display:block}.review-author b{font-size:14px}.review-author small{color:var(--muted);font-size:12px}.contact{padding-top:36px}.contact-box{display:grid;grid-template-columns:1fr .8fr;gap:84px;padding:69px 76px;border-radius:27px;background:var(--ink);color:#fff}.contact h2{max-width:550px}.contact .eyebrow{color:#aac2ff}.contact-box>div>p:last-child{max-width:500px;color:#c4cfdf}.social-links{display:grid;gap:10px}.social-links a{display:flex;align-items:center;gap:13px;padding:12px 15px;border:1px solid #45536b;border-radius:11px;color:#fff;text-decoration:none;transition:.2s background,.2s transform}.social-links a:hover{transform:translateX(4px);background:#22344f}.social-icon{display:grid;place-items:center;width:37px;height:37px;border-radius:10px;background:#315bd0;color:#fff;font-size:11px;font-weight:800}.social-links a:nth-child(2) .social-icon{background:#2b82df}.social-links a:nth-child(3) .social-icon{background:#ef7658}.social-links b,.social-links small{display:block}.social-links b{font-size:13px}.social-links small{color:#b8c5d7;font-size:11px}.social-links i{margin-left:auto;font-style:normal;color:#9caeca}.form-message{min-height:19px;margin:0;color:#b9d1ff;font-size:12px}footer{padding:35px 0 28px}.footer-content{display:flex;align-items:center;justify-content:space-between;gap:25px}.legal-info{max-width:650px}.legal-info p{margin:2px 0;text-align:center}.footer-content p,.footer-content>a:last-child{color:var(--muted);font-size:12px}.footer-content>a:last-child{font-weight:800;text-decoration:none}.reveal{opacity:0;transform:translateY(22px);transition:opacity .7s ease,transform .7s ease}.reveal.visible{opacity:1;transform:none}
@media(max-width:800px){.menu-button{display:grid;gap:4px;width:38px;padding:8px;background:none;border:0}.menu-button span{display:block;height:2px;background:var(--ink)}.menu{display:none;position:absolute;top:76px;left:0;right:0;padding:22px 20px;flex-direction:column;align-items:stretch;background:#fff;border-bottom:1px solid var(--line)}.menu.open{display:flex}.menu .button{text-align:center}.hero{padding:59px 0 70px}.hero-grid,.about-grid,.contact-box{grid-template-columns:1fr;gap:45px}.hero-visual{width:min(460px,100%);height:420px;min-height:0;margin:auto}.photo-card{inset:0 20px 0 0}.teacher-photo{border-radius:110px 110px 15px 15px}.floating-card{left:0;bottom:18px}.section{padding:75px 0}.cards,.reviews-grid{grid-template-columns:1fr}.section-heading h2,.about h2,.process h2,.reviews h2,.contact h2{font-size:35px}.about-image{height:370px;max-width:460px}.about-grid{gap:52px}.process-top{align-items:start;flex-direction:column;gap:16px}.steps{grid-template-columns:1fr;gap:26px}.steps li{padding-left:75px}.steps span{position:absolute;top:0;left:0}.steps li:not(:last-child):after{top:67px;left:28px;width:0;height:calc(100% - 15px);border-top:0;border-left:1px dashed #aebbd4}.contact{padding-top:15px}.contact-box{padding:43px 28px;gap:31px}.footer-content{align-items:flex-start;flex-direction:column;gap:9px}}@media(max-width:430px){.container{width:min(100% - 32px,1160px)}.hero h1{font-size:31px;letter-spacing:-1.8px}.hero-text{font-size:16px}.hero-actions{align-items:flex-start;flex-direction:column;gap:17px}.hero-visual{height:355px}.section-heading h2,.about h2,.process h2,.reviews h2,.contact h2{font-size:27px}.abstract-photo{right:25px}.location-badge{padding:13px 17px}.principles{grid-template-columns:1fr}.contact-box{padding:37px 22px}}
