.site-header{background:#fff;border-bottom:1px solid #e7ecee;color:#173247}.profile-container,.site-footer-inner,.site-header-inner{width:min(1200px,calc(100% - 48px));margin-inline:auto}.site-header-inner{min-height:88px;display:flex;align-items:center;gap:32px;justify-content:space-between}.site-wordmark{font-size:28px;font-weight:900;color:#173247;line-height:1.4}.site-wordmark span{display:block;font-size:11px;font-weight:400;color:#526575}.site-account,.site-nav{display:flex;align-items:center;gap:24px}.site-nav a{font-size:14px;font-weight:600;padding:10px 0}.site-footer a:hover,.site-nav a:hover{color:#087d91;text-decoration:underline;text-underline-offset:5px}.site-skip{position:absolute;top:-100px;right:20px;background:#fff;padding:12px;z-index:100}.site-skip:focus{top:8px}.site-footer{background:#edf4f3;color:#173247;margin-top:48px}.site-footer-inner{padding-block:42px 20px;display:grid;grid-template-columns:2fr 1fr 1fr;gap:32px}.site-footer p{max-width:390px;line-height:2;font-size:14px;margin-top:10px}.site-footer nav{display:flex;flex-direction:column;gap:12px;font-size:14px}.site-footer h2{font-weight:800;margin-bottom:8px}.site-footer-end{grid-column:1/-1;font-size:12px!important;color:#526575}.teacher-profile{color:#173247;background:#fafbf9;padding-bottom:20px;overflow-wrap:anywhere}.teacher-profile h1{font-size:clamp(28px,4vw,44px);font-weight:900;line-height:1.5}.teacher-profile h2{font-size:22px;font-weight:800;line-height:1.7;margin-bottom:16px}.teacher-profile h3{font-size:16px;font-weight:700;line-height:1.8}.teacher-profile p{line-height:2;color:#526575}.profile-eyebrow{color:#087d91!important;font-size:12px;font-weight:700;margin-bottom:8px}.profile-actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:24px}.profile-button,.profile-button-secondary{display:inline-flex;min-height:44px;align-items:center;justify-content:center;padding:12px 22px;border-radius:10px;font-size:14px;font-weight:700;text-align:center;line-height:1.6}.profile-button{background:#087d91;color:#fff!important}.profile-button:hover{background:#066577}.profile-button-secondary{background:#fff;color:#087d91;border:1px solid #b7d5dc}.profile-card{background:#fff;border:1px solid #e6ebee;border-radius:16px;padding:26px;min-width:0}.profile-section{padding-block:42px 12px}.profile-filters{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:20px}.profile-filters button{min-height:44px;padding:10px 18px;border-radius:999px;font-size:14px;background:#fff}.profile-filters button[aria-pressed=true]{background:#087d91;color:#fff}.profile-products,.profile-similar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.profile-similar .profile-card{display:flex;gap:16px;align-items:start;padding:20px}.profile-similar img{-o-object-fit:cover;object-fit:cover;border-radius:12px;width:80px;height:90px}.profile-similar p{font-size:12px}.profile-similar span{display:inline-block;margin-top:12px;color:#087d91;font-size:12px}.profile-similar h2{font-size:18px}.teacher-search{display:flex;gap:12px;align-items:center;flex-wrap:wrap;margin-block:28px}.teacher-search input{border:1px solid #cbd9dd;border-radius:10px;padding:12px;max-width:100%}.teacher-profile [id]{scroll-margin-top:24px}@media (max-width:900px){.profile-products,.profile-similar{grid-template-columns:repeat(2,minmax(0,1fr))}.site-header-inner,.site-nav{gap:16px}.profile-card{padding:20px}}@media (max-width:680px){.profile-container,.site-footer-inner,.site-header-inner{width:calc(100% - 32px)}.site-header-inner{min-height:100px;flex-wrap:wrap;padding-block:14px;gap:12px}.site-wordmark{font-size:24px}.site-nav{order:3;width:100%;justify-content:space-between}.site-nav a{font-size:13px}.site-account{gap:4px}.site-account .profile-button{font-size:12px;padding:10px 14px}.site-footer-inner{grid-template-columns:1fr 1fr;gap:28px}.site-footer-inner>div{grid-column:1/-1}.profile-actions{margin-top:18px}.profile-actions a{flex:1}.teacher-profile h2{font-size:19px}.profile-products,.profile-similar{grid-template-columns:1fr}.profile-section{padding-top:32px}.teacher-search input{flex:1;min-width:0}.teacher-search label{width:100%}}.tp{--tp-ink:#2b3550;--tp-soft:#5a6380;--tp-accent:#6b55c9;--tp-accent-dark:#5641b3;--tp-lilac:#ece6fb;--tp-mint:#dff4ea;--tp-peach:#fde9df;--tp-sky:#e1ecfb;--tp-glass:rgba(255,255,255,0.62);--tp-glass-strong:rgba(255,255,255,0.82);--tp-edge:rgba(255,255,255,0.85);--tp-shadow:0 10px 30px -12px rgba(76,64,140,0.18);--tp-radius:24px;position:relative;isolation:isolate;padding-bottom:72px;background:radial-gradient(40rem 28rem at 92% 4%,#e4dcfb 0,transparent 70%),radial-gradient(36rem 26rem at 6% 18%,#d8f1e6 0,transparent 70%),radial-gradient(34rem 24rem at 88% 52%,#fde3d6 0,transparent 70%),radial-gradient(38rem 26rem at 10% 78%,#dbe8fb 0,transparent 70%),#f8f7fc}.tp,.tp p{color:var(--tp-ink)}.tp h2{font-size:clamp(22px,2.2vw,28px);font-weight:800;line-height:1.6;margin-bottom:8px}.tp-booking-detail,.tp-cards details,.tp-column,.tp-cover,.tp-glance,.tp-records>div,.tp-reply,.tp-reply-card,.tp-reviews-side,.tp-tabs{background:var(--tp-glass);border:1px solid var(--tp-edge);border-radius:var(--tp-radius);box-shadow:var(--tp-shadow);backdrop-filter:blur(18px) saturate(150%)}@supports not ((backdrop-filter:blur(1px)) or (-webkit-backdrop-filter:blur(1px))){.tp-booking-detail,.tp-cards details,.tp-column,.tp-cover,.tp-glance,.tp-records>div,.tp-reply,.tp-reviews-side,.tp-tabs{background:var(--tp-glass-strong)}}@media (prefers-reduced-transparency:reduce){.tp-booking-detail,.tp-cards details,.tp-column,.tp-cover,.tp-glance,.tp-records>div,.tp-reply,.tp-reviews-side,.tp-tabs{background:#fff;backdrop-filter:none}}.tp-button,.tp-button-quiet{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:10px 26px;border-radius:999px;font-size:15px;font-weight:700;line-height:1.6;text-align:center;transition:transform .16s ease,background-color .16s ease}.tp-button{background:var(--tp-accent);color:#fff!important;box-shadow:0 8px 20px -8px rgba(107,85,201,.6)}.tp-button:hover{background:var(--tp-accent-dark);transform:translateY(-1px)}.tp-button-quiet{background:var(--tp-glass-strong);color:var(--tp-ink);border:1px solid var(--tp-edge)}.tp-button-quiet:hover{background:#fff}.tp-button-quiet:active,.tp-button:active,.tp-class:active{transform:scale(.98)}.tp a:focus-visible,.tp button:focus-visible,.tp summary:focus-visible{outline:3px solid #9d8cf0;outline-offset:3px}.tp-empty,.tp-note{font-size:15px;color:var(--tp-soft)!important}.tp-reviews-list .tp-empty{padding:28px 20px;border-radius:var(--tp-radius);border:2px dashed rgba(107,85,201,.2);background:rgba(255,255,255,.55);text-align:center}.tp-hero{padding-top:8px}.tp-breadcrumb{display:flex;flex-wrap:wrap;gap:8px;padding-block:18px;font-size:14px;color:var(--tp-soft)}.tp-breadcrumb a:hover{color:var(--tp-accent)}.tp-cover{display:grid;grid-template-columns:220px minmax(0,1fr);gap:40px;align-items:center;padding:36px}.tp-portrait{width:220px;aspect-ratio:1;border-radius:50%;overflow:hidden;background:var(--tp-lilac);border:6px solid #fff;box-shadow:0 12px 30px -14px rgba(76,64,140,.35);display:grid;place-items:center}.tp-portrait img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.tp-portrait>span,.tp-similar-photo>span{font-size:88px;font-weight:800;color:var(--tp-accent);line-height:1}.tp h1{font-size:clamp(30px,4vw,44px);font-weight:900;line-height:1.4}.tp-lead{font-size:18px;margin-top:4px;color:var(--tp-soft)!important;line-height:1.8}.tp-facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}.tp-facts div{display:flex;align-items:baseline;gap:8px;padding:8px 16px;border-radius:999px;background:var(--tp-lilac)}.tp-facts div:nth-child(2){background:var(--tp-peach)}.tp-facts div:nth-child(3){background:var(--tp-sky)}.tp-facts div:nth-child(4){background:var(--tp-mint)}.tp-facts dt{font-size:13px;color:var(--tp-soft)}.tp-facts dd{font-size:16px;font-weight:800}.tp-actions{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px}.tp-verified{margin-top:14px;font-size:13px;color:var(--tp-soft)!important}.tp-verified:before{content:"✓";display:inline-grid;place-items:center;width:18px;height:18px;margin-inline-end:6px;border-radius:50%;background:var(--tp-mint);color:#2f8a63;font-size:11px;font-weight:900}.tp-tabs{position:sticky;top:12px;z-index:20;display:flex;gap:4px;width:-moz-fit-content;width:fit-content;max-width:100%;margin:20px auto 0;padding:6px;border-radius:999px;overflow-x:auto;scrollbar-width:none}.tp-tabs a{flex:0 0 auto;padding:8px 18px;border-radius:999px;font-size:14px;font-weight:700;color:var(--tp-soft);transition:background-color .16s ease,color .16s ease}.tp-tabs a:hover{background:var(--tp-lilac);color:var(--tp-accent-dark)}.tp-band{padding-block:56px}.tp-band-tint{background:rgba(255,255,255,.5)}.sp-band+.tp-band,.tp-band+.sp-band,.tp-band+.tp-band{border-top:1px solid rgba(107,85,201,.1)}.tp-section-head h2:after{content:"";display:block;width:56px;height:4px;margin-top:10px;border-radius:4px;background:linear-gradient(90deg,var(--tp-accent),#b9a9f2)}.tp-section-head{margin-bottom:24px;max-width:720px}.tp-section-head h2{margin:0}.tp-section-head p{font-size:15px;color:var(--tp-soft)!important;line-height:1.9}.tp-about{display:grid;grid-template-columns:minmax(0,1.5fr) minmax(0,1fr);grid-template-areas:"letter glance";gap:24px;align-items:start}.tp-about.has-video{grid-template-areas:"letter video" "letter glance"}.tp-letter{grid-area:letter;padding:8px 4px}.tp-prose{white-space:pre-line;font-size:17px;line-height:2.1!important;max-width:68ch}.tp-signoff{margin-top:20px;font-size:17px;font-weight:800;color:var(--tp-accent)!important}.tp-video{grid-area:video;margin:0}.tp-video video{width:100%;aspect-ratio:16/9;border-radius:var(--tp-radius);background:#1f2440;box-shadow:var(--tp-shadow)}.tp-video figcaption{margin-top:8px;font-size:13px;color:var(--tp-soft)}.tp-glance{grid-area:glance;padding:24px}.tp-glance h3{font-size:17px;font-weight:800}.tp-glance>p{margin-top:14px;font-size:13px;color:var(--tp-soft)!important}.tp-chips{display:flex;flex-wrap:wrap;gap:6px;margin-top:6px}.tp-chips li{background:var(--tp-sky);padding:4px 12px;border-radius:999px;font-size:14px;font-weight:600}.tp-chips li:nth-child(3n+2){background:var(--tp-mint)}.tp-chips li:nth-child(3n){background:var(--tp-peach)}.tp-column-empty{margin:6px;padding:22px 16px;border-radius:18px;border:2px dashed rgba(107,85,201,.2);font-size:14px;text-align:center;color:var(--tp-soft)!important}.tp-class-filters{display:flex;flex-wrap:wrap;align-items:center;gap:12px 16px;margin-bottom:14px;padding:14px 16px;border-radius:var(--tp-radius);background:var(--tp-glass-strong);border:1px solid var(--tp-edge);box-shadow:var(--tp-shadow)}.tp-seg{padding:4px;background:var(--tp-lilac)}.tp-seg,.tp-seg button{display:inline-flex;border-radius:999px}.tp-seg button{align-items:center;gap:6px;min-height:38px;padding:0 16px;font-size:14px;font-weight:700;color:var(--tp-soft)}.tp-seg button small{font-size:12px;font-weight:600;opacity:.75}.tp-seg button[aria-pressed=true]{background:#fff;color:var(--tp-accent-dark);box-shadow:0 4px 12px -6px rgba(76,64,140,.4)}.tp-select{display:inline-flex;align-items:center;gap:8px;font-size:14px;font-weight:700}.tp-select select{min-height:42px;padding:0 12px;border-radius:12px;border:1px solid #ddd6f5;background:#fff;font-weight:600}.tp-subjects{display:flex;flex-wrap:wrap;gap:6px;flex-basis:100%}.tp-subjects button{min-height:34px;padding:0 14px;border-radius:999px;border:1px solid #e3ddf7;background:#fff;font-size:13px;font-weight:600;color:var(--tp-ink)}.tp-subjects button[aria-pressed=true]{border-color:var(--tp-accent);background:var(--tp-accent);color:#fff}#products .tp-subjects{margin:-8px 0 16px}.tp-count{display:flex;align-items:center;gap:12px;margin-bottom:12px;font-size:14px;font-weight:700;color:var(--tp-soft)!important}.tp-count button{font-size:13px;color:var(--tp-accent-dark);text-decoration:underline}.tp-class-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.tp-class-grid>li,.tp-more{display:flex}.tp-more{justify-content:center;margin-top:20px}.tp-more button{min-height:44px;padding:0 26px;border-radius:999px;border:1.5px solid var(--tp-accent);background:#fff;color:var(--tp-accent-dark);font-weight:700}.tp-more button:hover{background:var(--tp-lilac)}.tp-class-mode{grid-area:mode;justify-self:start;margin-bottom:6px;padding:2px 10px;border-radius:999px;font-size:11.5px;font-weight:700;background:var(--tp-sky);color:#2f5c9e}.tp-class-mode[data-mode=IN_PERSON]{background:var(--tp-peach);color:#9a4a22}.tp-class-mode[data-mode=MIXED]{background:var(--tp-mint);color:#276b4c}.tp-class{width:100%;display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"mode mode" "title price" "label price" "facts facts";align-content:start;box-shadow:0 6px 18px -14px rgba(76,64,140,.5);-moz-column-gap:12px;column-gap:12px;text-align:start;padding:14px 16px;border-radius:18px;border:2px solid transparent;background:rgba(255,255,255,.78);color:var(--tp-ink);transition:border-color .16s ease,background-color .16s ease,transform .16s ease}.tp-class:hover{border-color:#d9d0f7;background:#fff}.tp-class[aria-pressed=true]{border-color:var(--tp-accent);background:var(--tp-lilac)}.tp-class-title{grid-area:title;font-size:16px;font-weight:800;line-height:1.7}.tp-class-label{grid-area:label}.tp-class-facts,.tp-class-label{font-size:13px;color:var(--tp-soft)}.tp-class-facts{grid-area:facts;margin-top:6px}.tp-class-price{grid-area:price;font-size:16px;font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums;color:var(--tp-accent-dark)}.tp-class-price small{display:block;font-size:12px;font-weight:500;text-align:end;color:var(--tp-soft)}.tp-reply{margin-top:20px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;align-items:center;padding:24px 28px}.tp-reply h3{font-size:19px;font-weight:800}.tp-reply-text p{font-size:14px;margin-top:4px;color:var(--tp-soft)!important}.tp-reply-action{display:grid;justify-items:end;gap:10px;max-width:320px}.tp-reply-action>p{font-size:14px;text-align:end}.tp-reply-price{font-size:24px!important;font-weight:900;line-height:1.4!important;font-variant-numeric:tabular-nums}.tp-reply-price small{display:block;font-size:13px;font-weight:500;color:var(--tp-soft);text-align:end}.tp-booking-detail{margin-top:20px;padding:20px}.tp-records{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.tp-records>div{padding:24px}.tp-records h3{font-size:17px;font-weight:800;margin-bottom:16px}.tp-timeline{display:grid;gap:18px}.tp-timeline li{position:relative;padding-inline-start:24px}.tp-timeline li:before{content:"";position:absolute;inset-inline-start:0;top:9px;width:10px;height:10px;border-radius:50%;background:#b9a9f2}.tp-timeline h4{font-size:16px;font-weight:800;line-height:1.7}.tp-timeline p{font-size:14px}.tp-when{color:var(--tp-soft)!important;font-size:13px!important}.tp-reviews{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1.7fr);gap:24px;align-items:start}.tp-reviews-side{position:sticky;top:80px;display:grid;gap:12px;padding:24px}.tp-reviews-side>p{font-size:14px;color:var(--tp-soft)!important}.tp-reviews-list{display:grid;gap:12px}.tp-filter{display:flex;flex-wrap:wrap;gap:6px}.tp-filter a{padding:6px 14px;border-radius:999px;background:var(--tp-glass-strong);font-size:13px}.tp-filter a[aria-current=page]{background:var(--tp-accent);color:#fff}.tp-pager{display:flex;gap:16px;align-items:center;font-size:14px}.tp-pager a{color:var(--tp-accent);font-weight:700}.tp-faq{display:grid;gap:16px;max-width:820px}.tp-cards{display:grid;gap:10px}.tp-cards summary{list-style:none;cursor:pointer;display:flex;flex-wrap:wrap;align-items:center;gap:6px 10px;padding:16px 20px;font-size:16px;font-weight:700;line-height:1.8}.tp-cards summary::-webkit-details-marker{display:none}.tp-cards summary:after{content:"+";margin-inline-start:auto;font-size:22px;font-weight:400;color:var(--tp-accent);transition:transform .16s ease}.tp-cards details[open] summary:after{transform:rotate(45deg)}.tp-cards summary span{padding:2px 10px;border-radius:999px;background:var(--tp-lilac);font-size:12px;font-weight:700;color:var(--tp-accent-dark)}.tp-cards details:nth-child(2) summary span{background:var(--tp-peach)}.tp-cards details:nth-child(3) summary span{background:var(--tp-mint)}.tp-cards details:nth-child(4) summary span{background:var(--tp-sky)}.tp-cards details>p{padding:0 20px 18px;font-size:15px;max-width:64ch;color:var(--tp-soft)!important}.tp-similar{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.tp-similar a{display:grid;grid-template-columns:64px minmax(0,1fr);gap:14px;align-items:center;height:100%;padding:16px;border-radius:var(--tp-radius);background:var(--tp-glass);border:1px solid var(--tp-edge);box-shadow:var(--tp-shadow);transition:transform .16s ease,background-color .16s ease}.tp-similar a:hover{transform:translateY(-2px);background:var(--tp-glass-strong)}.tp-similar-photo{width:64px;height:64px;border-radius:50%;overflow:hidden;background:var(--tp-lilac);display:grid;place-items:center}.tp-similar-photo img{width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.tp-similar-photo>span{font-size:28px}.tp-similar strong{display:block;font-size:16px;font-weight:800}.tp-similar-bio{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13px;color:var(--tp-soft);line-height:1.8}.tp-closing{padding-top:56px}.tp-closing-inner{display:grid;justify-items:center}.tp-closing-inner>p{max-width:560px;text-align:center;font-size:15px;color:var(--tp-soft)!important;margin-bottom:16px}.tp-reply-card{width:min(520px,100%);padding:32px;text-align:center;background:linear-gradient(135deg,rgba(236,230,251,.85),rgba(223,244,234,.85))}.tp-reply-card p{font-size:15px;margin-bottom:18px;color:var(--tp-soft)!important}.tp-reply-card .tp-button{width:100%}#site-content:has(.tp)+.site-footer{margin-top:0}@media (prefers-reduced-motion:no-preference){.tp-cover{animation:tp-rise .48s cubic-bezier(.2,.7,.2,1) both}.tp-tabs{animation:tp-rise .48s cubic-bezier(.2,.7,.2,1) .12s both}}@keyframes tp-rise{0%{opacity:0;transform:translateY(16px)}}@media (prefers-reduced-motion:reduce){.tp *{transition:none!important}}@media (max-width:1000px){.tp-cover{grid-template-columns:160px minmax(0,1fr);gap:28px;padding:28px}.tp-portrait{width:160px}.tp-about,.tp-about.has-video{grid-template-columns:1fr;grid-template-areas:"letter" "video" "glance"}.tp-reviews{grid-template-columns:1fr}.tp-reviews-side{position:static}.tp-class-grid,.tp-similar{grid-template-columns:1fr 1fr}}@media (max-width:760px){.tp{padding-bottom:48px}.tp-band{padding-block:40px}.tp-closing{padding-top:40px}.tp-class-grid{grid-template-columns:1fr}.tp-seg{width:100%}.tp-seg button{flex:1;justify-content:center}.tp-cover{grid-template-columns:1fr;justify-items:center;text-align:center;gap:16px;padding:24px 18px}.tp-portrait{width:128px;border-width:4px}.tp-portrait>span{font-size:52px}.tp h1{font-size:28px}.tp-lead{font-size:16px}.tp-actions,.tp-facts{justify-content:center}.tp-actions .tp-button,.tp-actions .tp-button-quiet{flex:1 1 100%}.tp-tabs{top:8px;margin-top:14px}.tp-tabs a{padding:7px 14px;font-size:13px}.tp-records,.tp-reply,.tp-similar{grid-template-columns:1fr}.tp-reply{gap:14px;padding:20px}.tp-reply-action{justify-items:stretch;max-width:none}.tp-reply-action>p,.tp-reply-price,.tp-reply-price small{text-align:start!important}.tp-prose{font-size:16px}.tp-glance,.tp-records>div,.tp-reviews-side{padding:20px 18px}.tp-cards summary{padding:14px 16px;font-size:15px}.tp-cards details>p{padding:0 16px 16px}.tp-reply-card{padding:24px 18px}}.sp-page,.teacher-profile.tp{--sp-ink:#173247;--sp-muted:#526575;--sp-teal:#0b7a85;--sp-teal-dark:#075c65;--sp-mint:#eef7f6;--sp-line:#d9e6e7;--sp-card:#ffffff;--sp-orange:#e8792b}.sp-page{color:var(--sp-ink);background:#fff}.sp-page .sr-only,.tp .sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.sp-breadcrumb ol{display:flex;flex-wrap:wrap;gap:6px;padding-block:18px 6px;font-size:13px;color:var(--sp-muted)}.sp-breadcrumb li+li:before{content:"/";margin-inline-end:6px;color:#a9b8bf}.sp-breadcrumb a:hover{color:var(--sp-teal);text-decoration:underline}.sp-breadcrumb [aria-current]{color:var(--sp-ink);font-weight:700}.sp-draft-note{margin-block:8px;padding:10px 14px;border-radius:12px;background:#fff4e5;color:#8a4b0f;font-size:14px}.sp-hero{background:linear-gradient(180deg,#f3faf9,#ffffff);border-bottom:1px solid var(--sp-line)}.sp-hero-inner{display:grid;gap:32px;align-items:center;padding-block:28px 40px}.sp-hero-inner.has-image{grid-template-columns:minmax(0,1.05fr) minmax(0,1fr)}.sp-hero h1,.sp-hero h2{font-size:clamp(30px,4.4vw,46px);font-weight:900;line-height:1.35;color:var(--sp-ink)}.sp-highlight{display:block;margin-top:6px;font-size:clamp(20px,2.6vw,30px);font-weight:800;color:var(--sp-orange)}.sp-eyebrow{font-size:13px;font-weight:700;color:var(--sp-teal);margin-bottom:8px}.sp-lead{margin-top:14px;max-width:560px;font-size:16px;line-height:2;color:var(--sp-muted)}.sp-actions{display:flex;flex-wrap:wrap;align-items:center;gap:18px;margin-top:22px}.sp-hero-art img{width:100%;height:auto;border-radius:24px;box-shadow:0 18px 40px -24px rgba(11,122,133,.45)}.sp-button{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:46px;padding:10px 22px;border-radius:12px;background:var(--sp-teal);color:#fff;font-weight:700;font-size:15px;transition:background .15s ease}.sp-button:hover{background:var(--sp-teal-dark)}.sp-button-quiet,.sp-link{color:var(--sp-teal);font-weight:700;font-size:15px}.sp-button-quiet:hover,.sp-link:hover{text-decoration:underline;text-underline-offset:5px}.sp-band{padding-block:44px;border-top:1px solid var(--sp-line)}.sp-band-paper{background:#fff}.sp-band-tint{background:var(--sp-mint)}.sp-head{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;margin-bottom:24px;padding-bottom:14px;border-bottom:1px solid var(--sp-line);position:relative}.sp-head:after{content:"";position:absolute;bottom:-2px;inset-inline-start:0;width:72px;height:3px;border-radius:3px;background:var(--sp-teal)}.sp-head h2{font-size:clamp(20px,2.4vw,26px);font-weight:900;line-height:1.5}.sp-head p{margin-top:4px;color:var(--sp-muted);font-size:14px;line-height:1.9}.sp-head .sp-link{white-space:nowrap;font-size:14px}.sp-empty{padding:22px;border:1px dashed var(--sp-line);border-radius:16px;background:#fff;color:var(--sp-muted);text-align:center}.sp-rich{max-width:820px}.sp-prose{font-size:16px;line-height:2.1}.sp-plain-head{padding-block:18px 28px}.sp-plain-head h1{font-size:clamp(28px,4vw,40px);font-weight:900;line-height:1.4}.sp-meta{margin-top:6px;font-size:13px;color:var(--sp-muted)}.sp-cover{margin-top:22px;width:100%;max-height:440px;-o-object-fit:cover;object-fit:cover;border-radius:20px}.sp-steps-wrap.has-aside{display:grid;grid-template-columns:minmax(0,2.4fr) minmax(240px,1fr);gap:24px;align-items:stretch}.sp-steps{--step-t:2.4s;position:relative;display:grid;grid-template-columns:repeat(var(--n),minmax(0,1fr));gap:14px;padding-top:30px;counter-reset:step}.sp-steps:after,.sp-steps:before{content:"";position:absolute;pointer-events:none}.sp-steps:before{top:9px;inset-inline:0;height:3px;border-radius:3px;background:linear-gradient(90deg,var(--sp-mint),#9ad4d6,var(--sp-mint))}.sp-steps:after{top:4px;inset-inline-start:0;width:13px;height:13px;margin-inline-start:-6px;border-radius:50%;background:var(--sp-teal);box-shadow:0 0 0 4px rgba(154,212,214,.5),0 0 14px 2px rgba(11,122,133,.45);animation:sp-step-dot-x calc(var(--n) * var(--step-t)) linear infinite}@keyframes sp-step-dot-x{to{inset-inline-start:100%}}@keyframes sp-step-dot-y{to{top:100%}}@property --on{syntax:"<number>";inherits:true;initial-value:0}@property --sp-step-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.sp-steps li{position:relative;isolation:isolate;display:flex;flex-direction:column;gap:6px;padding:18px 16px;border:1px solid var(--sp-line);border-radius:18px;background:radial-gradient(circle calc(90px + 70px * var(--on)) at 100% 0,rgba(11,122,133,calc(.07 + .09 * var(--on))),transparent),var(--sp-card);min-height:150px;transform:translateY(calc(-4px * var(--on)));box-shadow:0 24px 45px -26px rgba(15,23,42,calc(.25 * var(--on)));animation:var(--pulse) calc(var(--n) * var(--step-t)) calc(var(--i) * var(--step-t)) ease-in-out infinite}.sp-steps li:before{content:"";position:absolute;top:-21px;inset-inline-start:50%;width:2px;height:20px;background:#9ad4d6}.sp-steps li:after{content:"";position:absolute;inset:-1px;z-index:1;padding:2px;border-radius:inherit;background:conic-gradient(from var(--sp-step-angle),transparent 0deg 245deg,#5fc4c9 290deg,var(--sp-teal) 320deg,#5fc4c9 345deg,transparent 1turn);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:var(--on);pointer-events:none;animation:sp-step-spin 4s linear infinite}@keyframes sp-step-spin{to{--sp-step-angle:360deg}}@media (prefers-reduced-motion:reduce){.sp-step-n:before,.sp-steps li,.sp-steps li:after,.sp-steps:after{animation:none}}.sp-steps strong{font-size:16px;font-weight:800}.sp-steps li>span:not(.sp-step-n):not(.sp-step-icon){font-size:13px;line-height:1.9;color:var(--sp-muted)}.sp-step-n{position:relative;display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--sp-mint);border:1px solid var(--sp-line);color:var(--sp-teal);font-weight:900;transform:scale(calc(1 + .08 * var(--on)))}.sp-step-n:before{content:"";position:absolute;inset:-5px;z-index:-1;border-radius:50%;background:conic-gradient(from var(--sp-step-angle),transparent 0deg,var(--sp-teal) 75deg,transparent 160deg,transparent 1turn);filter:blur(6px);opacity:var(--on);animation:sp-step-spin 5s linear infinite}.sp-step-icon{margin-top:auto;align-self:flex-end;font-size:26px;font-weight:900;color:var(--sp-orange)}.sp-aside{display:flex;flex-direction:column;gap:12px;padding:18px;border:1px solid var(--sp-line);border-radius:20px;background:#fff}.sp-aside img{width:120px;height:auto;align-self:center;border-radius:12px}.sp-aside h3{font-size:17px;font-weight:900}.sp-aside p{margin-block:6px 10px;font-size:13px;line-height:1.9;color:var(--sp-muted)}.sp-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:16px}.sp-card>a,.sp-card>div{display:flex;gap:14px;align-items:flex-start;height:100%;padding:20px;border-radius:20px;border:1px solid var(--sp-line);background:#fff;position:relative;overflow:hidden;transition:transform .35s cubic-bezier(.2,.8,.2,1),box-shadow .35s ease,border-color .35s ease}.sp-card-0{--accent:#3b7ddd;--accent-soft:rgba(59,125,221,0.35)}.sp-card-1{--accent:#e8792b;--accent-soft:rgba(232,121,43,0.35)}.sp-card-2{--accent:#7a5ad8;--accent-soft:rgba(122,90,216,0.35)}.sp-card-0>*{background:linear-gradient(135deg,#eef6ff,#fff)}.sp-card-1>*{background:linear-gradient(135deg,#fff3ea,#fff)}.sp-card-2>*{background:linear-gradient(135deg,#f3efff,#fff)}.sp-card>:after{content:"";position:absolute;inset:0 auto 0 -60%;width:45%;background:linear-gradient(100deg,transparent,rgba(255,255,255,.75),transparent);transform:skewX(-18deg);opacity:0;pointer-events:none}.sp-card:hover>*{transform:translateY(-6px);border-color:var(--accent);box-shadow:0 0 0 1px var(--accent),0 24px 40px -26px var(--accent-soft),0 10px 20px -16px rgba(23,50,71,.35)}.sp-card:hover>:after{opacity:1;animation:sp-card-sweep .9s ease forwards}.sp-card:hover .sp-card-body strong{color:var(--accent)}@keyframes sp-card-sweep{to{left:120%}}.sp-card .sp-icon{position:relative;animation:sp-icon-float 3.6s ease-in-out infinite;transition:background .3s ease,border-color .3s ease}.sp-card-1 .sp-icon{animation-delay:-1.2s}.sp-card-2 .sp-icon{animation-delay:-2.4s}.sp-card .sp-icon:before{content:"";position:absolute;inset:-1px;border-radius:50%;border:2px solid var(--accent);opacity:0}.sp-card:hover .sp-icon{animation:sp-icon-hop .7s cubic-bezier(.3,1.6,.5,1);border-color:var(--accent);background:#fff}.sp-card:hover .sp-icon:before{animation:sp-icon-ring 1.4s ease-out infinite}@keyframes sp-icon-float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-5px) rotate(-4deg)}}@keyframes sp-icon-hop{0%{transform:scale(1)}40%{transform:scale(1.22) rotate(-12deg)}70%{transform:scale(.95) rotate(6deg)}to{transform:scale(1.08)}}@keyframes sp-icon-ring{0%{transform:scale(1);opacity:.7}to{transform:scale(1.7);opacity:0}}.sp-icon{display:grid;place-items:center;flex:none;width:44px;height:44px;border-radius:50%;background:#fff;border:1px solid var(--sp-line);font-size:20px}.sp-card-img{width:72px;height:72px;-o-object-fit:cover;object-fit:cover;border-radius:14px;flex:none}.sp-card-body{display:flex;flex-direction:column;gap:6px}.sp-card-body strong{font-size:16px;font-weight:800}.sp-card-body span{font-size:13px;line-height:1.9;color:var(--sp-muted)}.sp-faq-wrap{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:40px;align-items:center}.sp-faq-art{width:100%;height:auto;overflow:visible}.sp-faq-art circle,.sp-faq-art g,.sp-faq-art path,.sp-faq-art text{transform-box:fill-box;transform-origin:center}.faq-b1{animation:faq-float 6s ease-in-out infinite}.faq-q{animation:faq-rock 3s ease-in-out infinite}.faq-b2{animation:faq-float 5s ease-in-out -2s infinite}.faq-b3{animation:faq-float 7s ease-in-out -4s infinite}.faq-dot{animation:faq-dot 1.4s ease-in-out infinite}.faq-dot:nth-child(3){animation-delay:.2s}.faq-dot:nth-child(4){animation-delay:.4s}.faq-spark{animation:faq-twinkle 2.6s ease-in-out infinite}.sp-faq-art g:nth-of-type(5) .faq-spark{animation-delay:-.9s}.sp-faq-art g:nth-of-type(6) .faq-spark{animation-delay:-1.7s}@keyframes faq-float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes faq-rock{0%,to{transform:rotate(-8deg)}50%{transform:rotate(8deg) scale(1.06)}}@keyframes faq-dot{0%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-4px)}}@keyframes faq-twinkle{0%,to{opacity:.2;transform:scale(.6) rotate(0)}50%{opacity:1;transform:scale(1.1) rotate(45deg)}}.sp-faq-list{display:flex;flex-direction:column;gap:10px;max-width:900px}.sp-faq-list details{border:1px solid var(--sp-line);border-radius:14px;background:#fff;transition:border-color .25s ease,box-shadow .25s ease,transform .25s ease}.sp-faq-list details:hover,.sp-faq-list details[open]{border-color:#9ad4d6;box-shadow:0 14px 28px -22px rgba(11,122,133,.6)}.sp-faq-list details:hover{transform:translateX(-3px)}.sp-faq-list summary:hover{color:var(--sp-teal-dark)}@media (max-width:860px){.sp-faq-wrap{grid-template-columns:1fr}.sp-faq-art{display:none}}@media (prefers-reduced-motion:reduce){.sp-card .sp-icon,.sp-card .sp-icon:before,.sp-card>:after,.sp-faq-art *{animation:none!important}}.sp-faq-list summary{cursor:pointer;list-style:none;padding:14px 18px;font-weight:700;display:flex;justify-content:space-between;gap:12px}.sp-faq-list summary::-webkit-details-marker{display:none}.sp-faq-list summary:after{content:"+";color:var(--sp-teal);font-weight:900}.sp-faq-list details[open] summary:after{content:"−"}.sp-faq-list details p{padding:0 18px 16px;font-size:14px;line-height:2;color:var(--sp-muted)}.sp-cta-band{padding-block:36px 8px;border-top:1px solid var(--sp-line)}.sp-cta{display:flex;align-items:center;justify-content:space-between;gap:20px;padding:26px 28px;border-radius:24px;background:linear-gradient(120deg,#def3f1,#f2faf9);border:1px solid #c6e3e0}.sp-cta h2{font-size:clamp(20px,2.6vw,28px);font-weight:900}.sp-cta p{margin-top:6px;color:var(--sp-muted);line-height:1.9}.sp-contact{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.sp-contact div{padding:18px;border:1px solid var(--sp-line);border-radius:16px;background:#fff}.sp-contact dt{font-size:13px;color:var(--sp-muted)}.sp-contact dd{margin-top:6px;font-weight:700;line-height:1.9}.lp-search-band{padding-block:0 28px;background:linear-gradient(180deg,#fff,#f6fbfb)}.lp-search{margin-top:-28px;position:relative;display:grid;grid-template-columns:minmax(0,1.6fr) auto minmax(0,1fr) auto;gap:14px;align-items:end;padding:20px;border-radius:22px;background:#fff;border:2px solid #9ad4d6;box-shadow:0 24px 48px -26px rgba(23,50,71,.55)}@property --lp-ring-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.lp-search-ring{position:absolute;inset:-2px;border-radius:24px;pointer-events:none;filter:drop-shadow(0 0 5px rgba(25,163,173,.95)) drop-shadow(0 0 14px rgba(11,122,133,.6))}.lp-search-ring span{position:absolute;inset:0;border-radius:inherit;padding:3px;background:conic-gradient(from var(--lp-ring-angle),transparent 0deg 270deg,rgba(11,122,133,.25) 290deg,#19a3ad 340deg,#7fe3e8 355deg,transparent 1turn);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;animation:lp-ring 12s linear infinite}@keyframes lp-ring{to{--lp-ring-angle:360deg}}@media (prefers-reduced-motion:reduce){.lp-search-ring{display:none}}.lp-field{display:flex;flex-direction:column;gap:6px;font-size:14px;font-weight:800;color:var(--sp-ink);min-width:0}.lp-field input,.lp-field select{min-height:48px;padding:0 14px;border:1.5px solid #b9d3d6;border-radius:12px;background:#fff;font-weight:600;width:100%}.lp-field input:focus,.lp-field select:focus{outline:2px solid #9ad4d6;outline-offset:1px}.lp-modes{border:0;padding:0;margin:0}.lp-modes legend{margin-bottom:6px}.lp-modes>div{display:flex;gap:6px}.lp-chip-radio{position:relative}.lp-chip-radio input{position:absolute;inset:0;opacity:0;margin:0}.lp-chip-radio span{display:inline-flex;align-items:center;min-height:46px;padding:0 14px;border-radius:12px;border:1px solid var(--sp-line);font-weight:600;cursor:pointer}.lp-chip-radio input:checked+span{background:var(--sp-mint);border-color:var(--sp-teal);color:var(--sp-teal-dark)}.lp-chip-radio input:focus-visible+span{outline:2px solid #9ad4d6}.lp-search-actions{display:flex;gap:10px;align-items:stretch}.lp-map-link{display:flex;flex-direction:column;justify-content:center;padding:4px 14px;border-radius:12px;border:1px solid #f2c9a8;background:#fff6ef;color:#9b4a12;font-weight:800;font-size:14px;white-space:nowrap}.lp-map-link small{font-weight:500;font-size:11px}.lp-map-link:hover{border-color:var(--sp-orange)}.lp-topics{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;margin-top:18px}.lp-topics a{display:inline-flex;gap:8px;align-items:center;padding:8px 16px;border-radius:999px;border:1px solid var(--sp-line);background:#fff;font-size:14px;font-weight:600}.lp-topics a:hover,.lp-topics a[aria-current]{border-color:var(--sp-teal);color:var(--sp-teal-dark)}.lp-anchor{scroll-margin-top:12px}.lp-filter-note{margin:-10px 0 16px;font-size:13px;color:var(--sp-muted)}.lp-filter-note a{color:var(--sp-teal);text-decoration:underline}.lp-teachers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:18px}.lp-teacher{position:relative;display:flex;flex-direction:column;border:1px solid var(--sp-line);border-radius:20px;overflow:hidden;background:#fff;transition:all .3s cubic-bezier(.4,0,.2,1)}.lp-teacher:after{content:"";position:absolute;inset:0;z-index:2;padding:2px;border-radius:inherit;background:conic-gradient(from var(--sp-step-angle),transparent 0deg 245deg,#5fc4c9 290deg,var(--sp-teal) 320deg,#5fc4c9 345deg,transparent 1turn);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;pointer-events:none;transition:opacity .35s}.lp-teacher:hover{transform:translateY(-4px);box-shadow:0 24px 45px -26px rgba(15,23,42,.3)}.lp-teacher:hover:after{opacity:1;animation:sp-step-spin 4s linear infinite}.lp-teacher-photo img{transition:transform .5s ease}.lp-teacher:hover .lp-teacher-photo img{transform:scale(1.05)}.lp-rating{position:absolute;top:10px;inset-inline-end:10px;z-index:1;display:inline-flex;align-items:center;gap:4px;padding:4px 10px;border-radius:999px;background:rgba(255,255,255,.92);box-shadow:0 4px 12px -6px rgba(15,23,42,.35);font-size:13px;font-weight:800;color:var(--sp-ink)}.lp-rating span{color:#f5a524}.lp-rating small{font-size:11px;font-weight:600;color:var(--sp-muted)}.lp-highlights{display:flex;flex-direction:column;gap:6px}.lp-highlights li{display:flex;align-items:center;gap:8px;min-width:0;padding:6px 10px;border-radius:10px;background:linear-gradient(135deg,#fff7ef,#fffdfb);border:1px solid #f6e3d2;font-size:12.5px;font-weight:700;color:#7a3f12}.lp-highlights .is-custom{background:linear-gradient(135deg,#fff8dc,#fffdf3);border-color:#f3e2a6;color:#6b5200}.lp-highlights .is-degree{background:linear-gradient(135deg,#eef7f6,#fafdfd);border-color:#d5ebea;color:var(--sp-teal-dark)}.lp-highlights li bdi{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;line-height:1.7}@media (prefers-reduced-motion:reduce){.lp-teacher:hover:after{animation:none}}.lp-teacher-photo{position:relative;aspect-ratio:21/10;background:var(--sp-mint);display:grid;place-items:center;font-size:40px;font-weight:900;color:var(--sp-teal)}.lp-teacher-photo img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.lp-badge{position:absolute;bottom:10px;inset-inline-start:10px;padding:4px 12px;border-radius:999px;background:#fff;color:var(--sp-teal-dark);border:1px solid #bfe0dc;font-size:12px;font-weight:700}.lp-teacher-body{display:flex;flex-direction:column;gap:10px;padding:14px 14px 16px;flex:1}.lp-teacher-body h3{font-size:17px;font-weight:900;text-align:center}.lp-modes-row{display:flex;justify-content:center;gap:18px;font-size:13px}.lp-modes-row .off{color:#a5b2b9;text-decoration:line-through}.lp-price{color:var(--sp-muted)}.lp-price,.lp-slot{text-align:center;font-size:13px}.lp-slot{display:block;padding:8px;border-radius:10px;background:var(--sp-mint);font-weight:700;color:var(--sp-teal-dark)}.lp-reviews{text-align:center;font-size:13px;color:var(--sp-muted)}.lp-reviews:hover,.lp-slot:hover{text-decoration:underline}.lp-teacher-cta{margin-top:auto;width:100%}.lp-more{display:flex;justify-content:center;margin-top:24px}.lp-more-link{display:inline-flex;align-items:center;min-height:44px;padding:0 26px;border-radius:999px;border:1.5px solid var(--sp-teal);color:var(--sp-teal-dark);font-weight:700;background:#fff}.lp-more-link:hover{background:var(--sp-mint)}.lp-match-band{padding-block:8px 36px;background:var(--sp-card)}.lp-match{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px 26px;border-radius:22px;border:1px solid #f2c9a8;background:#fff6ef}.lp-match h2{font-size:19px;font-weight:800}.lp-match p{margin-top:4px;font-size:14px;color:var(--sp-muted)}@media (max-width:600px){.lp-match{flex-direction:column;align-items:stretch;text-align:center}}.lp-courses{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.lp-course a{display:flex;flex-direction:column;height:100%;border:1px solid var(--sp-line);border-radius:20px;overflow:hidden;background:#fff}.lp-course a:hover{border-color:#b9dadd}.lp-course-cover{position:relative;aspect-ratio:16/7;background:var(--sp-mint);display:grid;place-items:center;font-size:40px}.lp-course-cover img{position:absolute;inset:0;width:100%;height:100%;-o-object-fit:cover;object-fit:cover}.lp-course-cover-group{background:linear-gradient(135deg,#fff3ea,#eef7f6)}.lp-course-body{display:flex;flex-direction:column;gap:6px;padding:14px 16px 16px;flex:1}.lp-course-body strong{font-size:16px;font-weight:900;line-height:1.7}.lp-course-body>span:not(.sp-button){font-size:13px;color:var(--sp-muted)}.lp-course-cta{margin-top:auto;min-height:40px;font-size:14px}.lp-related{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:20px}@property --lp-box-angle{syntax:"<angle>";inherits:false;initial-value:0deg}@property --lp-halo-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.lp-related-box{--tone:var(--sp-teal);--tone-light:#5fc4c9;--tone-chip:#eef7f6;--tone-chip-line:#cfe7e6;position:relative;overflow:hidden;padding:26px;border-radius:24px;border:1px solid rgba(226,232,240,.8);background:#fff;transition:all .3s cubic-bezier(.4,0,.2,1)}.lp-related-box.is-subject{--tone:#d4661c;--tone-light:#f5a25d;--tone-chip:#fff4ec;--tone-chip-line:#f6dcc8}.lp-related-box:before{top:-40px;inset-inline-start:-40px;width:112px;height:112px;border-radius:50%;background:var(--tone);opacity:.06;filter:blur(40px);transition:all .5s ease}.lp-related-box:after,.lp-related-box:before{content:"";position:absolute;pointer-events:none}.lp-related-box:after{inset:0;z-index:1;padding:2px;border-radius:inherit;background:conic-gradient(from var(--lp-box-angle),transparent 0deg 245deg,var(--tone-light) 290deg,var(--tone) 320deg,var(--tone-light) 345deg,transparent 1turn);-webkit-mask:linear-gradient(#000 0 0) content-box,linear-gradient(#000 0 0);-webkit-mask-composite:xor;mask-composite:exclude;opacity:0;transition:opacity .35s}.lp-related-box>*{position:relative}.lp-related-box:hover{transform:translateY(-4px);box-shadow:0 24px 45px -26px rgba(15,23,42,.25)}.lp-related-box:hover:before{transform:scale(1.5);opacity:.16}.lp-related-box:hover:after{opacity:1;animation:lp-box-spin 4s linear infinite}@keyframes lp-box-spin{to{--lp-box-angle:360deg}}.lp-related-head{display:flex;align-items:center;gap:14px;margin-bottom:18px}.lp-related-icon{position:relative;display:grid;place-items:center;flex:none;width:52px;height:52px;color:var(--tone);transition:transform .3s ease}.lp-related-icon:before{content:"";position:absolute;inset:0;border-radius:16px;background:rgba(255,255,255,.85);box-shadow:0 0 0 1px rgba(0,0,0,.05),0 1px 2px rgba(0,0,0,.05)}.lp-related-halo{position:absolute;inset:-5px;border-radius:18px;background:conic-gradient(from var(--lp-halo-angle),transparent 0deg,var(--tone) 75deg,transparent 160deg,transparent 1turn);filter:blur(7px);opacity:.6;pointer-events:none;transition:opacity .5s}.lp-related-icon svg{position:relative;animation:lp-icon-float 3.4s ease-in-out infinite}.lp-related-box:hover .lp-related-icon{transform:scale(1.05)}.lp-related-box:hover .lp-related-halo{opacity:1;animation:lp-halo-spin 5s linear infinite}@keyframes lp-halo-spin{to{--lp-halo-angle:360deg}}@keyframes lp-icon-float{0%,to{transform:translateY(0)}50%{transform:translateY(-2.5px)}}@media (prefers-reduced-motion:reduce){.lp-related-box:hover .lp-related-halo,.lp-related-box:hover:after,.lp-related-icon svg{animation:none}}.lp-related h2{font-size:19px;font-weight:900}.lp-related-label{margin-top:4px;font-size:12px;font-weight:700;letter-spacing:.08em;color:var(--sp-muted)}.lp-related .lp-related-box a{border-color:var(--tone-chip-line);background:var(--tone-chip);font-weight:600;transition:background .2s ease,color .2s ease,border-color .2s ease}.lp-related .lp-related-box a:hover{background:var(--tone);border-color:var(--tone);color:#fff}.lp-related ul,.lx-grade ul{display:flex;flex-wrap:wrap;gap:8px}.lp-related a,.lx-grade a{display:inline-block;padding:7px 14px;border:1px solid var(--sp-line);border-radius:999px;background:#fff;font-size:14px}.lp-related a:hover,.lx-grade a:hover{border-color:var(--sp-teal);color:var(--sp-teal-dark)}.lx-grades{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:16px}.lx-grade{padding:18px;border:1px solid var(--sp-line);border-radius:18px;background:#fff;scroll-margin-top:12px}.lx-grade h3{font-size:17px;font-weight:900;margin-bottom:12px}.ax-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}.ax-list a{display:flex;flex-direction:column;height:100%;border:1px solid var(--sp-line);border-radius:18px;overflow:hidden;background:#fff}.ax-list img,.ax-placeholder{width:100%;aspect-ratio:16/9;-o-object-fit:cover;object-fit:cover;background:var(--sp-mint);display:grid;place-items:center;font-size:36px}.ax-body{display:flex;flex-direction:column;gap:6px;padding:14px 16px}.ax-body strong{font-size:17px;font-weight:900;line-height:1.7}.ax-body span,.ax-body time{font-size:13px;color:var(--sp-muted);line-height:1.9}@media (max-width:1080px){.lp-teachers{grid-template-columns:repeat(2,minmax(0,1fr))}.lp-search{grid-template-columns:1fr 1fr}.lp-field-q,.lp-search-actions{grid-column:1/-1}.lp-search-actions .sp-button{flex:1}}@media (max-width:860px){.sp-hero-inner.has-image{grid-template-columns:1fr}.sp-hero-art{order:-1}.sp-steps-wrap.has-aside{grid-template-columns:1fr}.lp-courses{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:600px){.sp-band{padding-block:32px}.sp-head{flex-direction:column;align-items:flex-start}.lp-search{grid-template-columns:1fr;margin-top:-16px;padding:14px}.lp-search-actions{flex-direction:column}.lp-map-link{align-items:center;padding:10px}.lp-modes>div{display:grid;grid-template-columns:repeat(3,1fr)}.lp-chip-radio span{justify-content:center}.lp-courses,.lp-teachers{grid-template-columns:1fr}.lp-topics{flex-wrap:nowrap;overflow-x:auto;justify-content:flex-start;padding-bottom:4px}.lp-topics a{white-space:nowrap}.sp-steps{grid-template-columns:1fr;padding-top:0;padding-inline-start:30px}.sp-steps:before{top:0;bottom:0;inset-inline:9px auto;width:3px;height:auto;background:linear-gradient(180deg,var(--sp-mint),#9ad4d6,var(--sp-mint))}.sp-steps:after{top:0;inset-inline-start:4px;margin:-6px 0 0;animation-name:sp-step-dot-y}.sp-steps li{min-height:0}.sp-steps li:before{top:50%;inset-inline-start:-21px;width:20px;height:2px}.sp-cta{flex-direction:column;align-items:stretch;text-align:center}}