:root{--brand-blue:#1473e6;--brand-blue-dark:#1473e6;--brand-accent:#1473e6;--brand-accent-soft:#eaf3ff;--bg-page:#fff;--bg-card:#fff;--bg-blue-soft:#f1f7ff;--bg-accent-soft:#f4f8ff;--text-primary:#1f2937;--text-secondary:#526070;--text-muted:#8491a3;--border:#d8e5f4;--divider:#e6edf6;--primary-hover:#0e61c8;--accent-hover:#0e61c8;--shadow-card:0 6px 24px rgba(20,115,230,.06);--shadow-hover:0 10px 32px rgba(20,115,230,.1);--container:1220px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--text-primary);background:var(--bg-page);font-family:"Noto Sans SC Variable","Noto Sans SC",sans-serif;font-size:16px;line-height:1.75;-webkit-font-smoothing:antialiased}button,input,textarea{font-family:inherit}a{color:inherit;text-decoration:none}img,svg{display:block;max-width:100%}button{color:inherit}address{font-style:normal}h1,h2,h3,p,ul,ol,blockquote{margin-top:0}h1,h2,h3,strong{line-height:1.25}h1,h2,h3{font-family:inherit}::selection{color:#fff;background:var(--brand-blue)}.container{width:min(calc(100% - 48px),var(--container));margin-inline:auto}.section-pad{padding:104px 0}.section-white{background:#fff}.section-blue,.section-muted{background:var(--bg-blue-soft)}.section-accent{background:var(--bg-accent-soft)}.skip-link{position:fixed;z-index:1000;top:12px;left:12px;padding:10px 16px;color:#fff;background:var(--brand-blue);transform:translateY(-150%)}.skip-link:focus{transform:none}[data-reveal]{opacity:0;transform:translateY(18px);transition:opacity .65s ease,transform .65s ease}[data-reveal].is-visible{opacity:1;transform:none}
.eyebrow{display:flex;align-items:center;gap:10px;margin-bottom:16px;color:var(--brand-blue);font-size:11px;font-weight:700;letter-spacing:.16em}.eyebrow>span{width:28px;height:2px;background:var(--brand-accent)}.eyebrow--light,.section-heading--light .eyebrow{color:#d8eefb}.section-heading{max-width:700px}.section-heading--center{margin-inline:auto;text-align:center}.section-heading--center .eyebrow{justify-content:center}.section-heading h2{margin-bottom:20px;font-size:clamp(34px,4vw,54px);font-weight:600;letter-spacing:-.025em}.section-heading>p{margin:0;color:var(--text-secondary);font-size:17px}.section-heading--light h2{color:#fff}.section-heading--light>p{color:#c9deea}.section-intro-row{display:flex;align-items:end;justify-content:space-between;gap:50px;margin-bottom:48px}.text-link{color:var(--brand-blue);font-weight:600;white-space:nowrap}.text-link span{color:var(--brand-accent)}.text-link--light{color:#fff}
.button{display:inline-flex;align-items:center;justify-content:center;gap:12px;min-height:52px;padding:0 25px;border:1px solid var(--brand-blue);border-radius:9px;color:#fff;background:var(--brand-blue);font-size:14px;font-weight:600;letter-spacing:.02em;transition:background .2s,border-color .2s,transform .2s}.button:hover{border-color:var(--primary-hover);background:var(--primary-hover);transform:translateY(-2px)}.button--small{min-height:42px;padding:0 18px;font-size:13px}.button--accent{border-color:var(--brand-accent);color:var(--text-primary);background:var(--brand-accent)}.button--accent:hover{border-color:var(--accent-hover);background:var(--accent-hover)}.button--outline{color:var(--brand-blue);background:#fff}.button--outline:hover{color:#fff}.button--ghost{border-color:rgba(255,255,255,.55);background:transparent}.button--white{border-color:#fff;color:var(--brand-blue-dark);background:#fff}.hero__actions{display:flex;flex-wrap:wrap;gap:12px}
.site-header{position:sticky;z-index:100;top:0;height:76px;border-bottom:1px solid rgba(220,232,239,.8);background:rgba(252,253,252,.96);transition:box-shadow .25s}.site-header.is-scrolled{box-shadow:0 8px 24px rgba(7,59,131,.08)}.site-header__inner{display:flex;align-items:center;height:100%;gap:24px}.brand{width:132px;height:62px;overflow:hidden}.brand img{width:100%;height:100%;object-fit:cover;object-position:center}.desktop-nav{margin-left:auto}.desktop-nav>ul{display:flex;margin:0;padding:0;list-style:none}.nav-item{position:relative}.nav-link{position:relative;display:block;padding:27px 13px 24px;color:#304957;font-size:14px;font-weight:650}.nav-link::after{position:absolute;right:13px;bottom:16px;left:13px;height:2px;content:"";background:var(--brand-accent);transform:scaleX(0);transition:transform .25s}.nav-link:hover,.nav-link[aria-current=page]{color:var(--brand-blue)}.nav-link:hover::after,.nav-link[aria-current=page]::after{transform:scaleX(1)}.nav-dropdown{position:absolute;top:calc(100% - 4px);left:50%;visibility:hidden;width:220px;padding-top:10px;opacity:0;transform:translate(-50%,8px);transition:.2s}.nav-item:hover .nav-dropdown,.nav-item:focus-within .nav-dropdown{visibility:visible;opacity:1;transform:translate(-50%,0)}.nav-dropdown ul{margin:0;padding:8px;border:1px solid var(--border);border-radius:10px;background:#fff;box-shadow:var(--shadow-hover);list-style:none}.nav-dropdown a{display:flex;justify-content:space-between;padding:10px 12px;border-radius:7px;font-size:13px}.nav-dropdown a:hover{color:var(--brand-blue);background:var(--bg-blue-soft)}.mobile-nav{display:none;margin-left:auto}.mobile-nav summary{display:grid;width:40px;height:40px;padding:10px;cursor:pointer;list-style:none}.mobile-nav summary span{height:2px;background:var(--brand-blue-dark)}
.home-hero{overflow:hidden;padding:56px 0 0;background:#fff}.home-hero__grid{display:grid;grid-template-columns:1.08fr .92fr;align-items:center;gap:20px}.hero-label{display:flex;align-items:center;margin-bottom:20px;color:var(--brand-blue);font-size:14px;font-weight:600}.home-hero h1{margin-bottom:25px;font-size:clamp(30px,2.65vw,40px);line-height:1.32;letter-spacing:-.03em}.home-hero h1 span,.home-hero h1 em{display:block;white-space:nowrap}.home-hero h1 em,.page-hero h1 em{color:var(--brand-blue);font-style:normal}.home-hero__copy{position:relative;z-index:2}.home-hero__copy>p{max-width:600px;margin-bottom:32px;color:var(--text-secondary);font-size:18px}.hero__proof{display:flex;flex-wrap:wrap;gap:16px;margin-top:30px}.hero__proof span{display:flex;align-items:center;gap:8px;color:var(--text-secondary);font-size:13px}.hero__proof span::before{width:6px;height:6px;border-radius:50%;content:"";background:var(--brand-accent)}.home-hero__visual{position:relative;margin-left:-36px}.image-frame{position:relative;overflow:hidden;background:#fff}.image-frame img{width:100%;aspect-ratio:1.22;object-fit:cover;mix-blend-mode:multiply;-webkit-mask-image:radial-gradient(ellipse 83% 86% at 55% 50%,#000 58%,rgba(0,0,0,.9) 72%,transparent 100%);mask-image:radial-gradient(ellipse 83% 86% at 55% 50%,#000 58%,rgba(0,0,0,.9) 72%,transparent 100%)}.stage-ruler{display:flex;align-items:center;justify-content:center;gap:25px;margin-top:32px;padding:20px 0;border-top:1px solid var(--divider);color:var(--brand-blue-dark);font-size:14px;font-weight:750}.stage-ruler i{width:5px;height:5px;border-radius:50%;background:var(--brand-accent)}
.stat-band{padding:46px 0;background:#eaf4ff}.stat-grid{display:grid;grid-template-columns:repeat(4,1fr)}.stat-grid>div{padding:0 30px;border-right:1px solid #c8def5;text-align:center}.stat-grid>div:last-child{border:0}.stat-grid strong{display:block;color:var(--brand-blue);font-size:clamp(30px,4vw,48px);font-weight:700;letter-spacing:-.03em}.stat-grid p{margin:8px 0 0;color:#315575;font-size:13px}.data-note{max-width:900px;margin:24px auto 0;color:#67819a;font-size:11px;text-align:center}.need-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.need-card{display:flex;min-height:280px;padding:28px;flex-direction:column;border:1px solid var(--border);border-radius:16px;background:#fff;box-shadow:var(--shadow-card);transition:.25s}.need-card:hover{border-color:#b9d7fa;box-shadow:var(--shadow-hover);transform:translateY(-3px)}.need-card h3{margin:12px 0 14px;font-size:27px}.need-card p{color:var(--text-secondary)}.need-card>strong{margin-top:auto;color:var(--brand-blue);font-size:13px}.learning-map{display:grid;grid-template-columns:.9fr 1.1fr;gap:90px}.learning-map__copy{position:sticky;top:120px;align-self:start}.learning-map__copy .button{margin-top:30px}.learning-map__steps article{padding:26px 0;border-bottom:1px solid var(--divider)}.learning-map__steps h3{margin:0 0 8px;font-size:24px}.learning-map__steps p{margin:0;color:var(--text-secondary)}.teacher-section{background:#eaf4ff}.teacher-layout{display:grid;grid-template-columns:1fr .9fr;gap:80px;align-items:center}.teacher-layout h2{margin-bottom:22px;font-size:clamp(38px,4.6vw,60px);letter-spacing:-.04em}.teacher-layout h2 em{color:var(--brand-blue);font-style:normal}.teacher-layout>div>p{color:var(--text-secondary);font-size:17px}.teacher-tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:26px}.teacher-tags span{padding:7px 11px;border:1px solid #bfd8f3;border-radius:6px;color:#315575;background:#fff;font-size:12px}.teacher-ledger{padding:26px;border:1px solid #c8def5;border-radius:18px;background:#fff;color:var(--text-primary);box-shadow:var(--shadow-card)}.ledger-head{padding-bottom:20px;border-bottom:2px solid var(--brand-blue)}.teacher-ledger>div:not(:first-child){padding:16px 0;border-bottom:1px solid var(--divider)}.feedback-layout{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center}.feedback-board{overflow:hidden;border:1px solid #cfe3fb;border-radius:16px;background:#fff;box-shadow:var(--shadow-card)}.feedback-board__head{display:flex;align-items:center;justify-content:space-between;padding:20px 24px;color:#fff;background:#1473e6}.feedback-board__head span{font-size:12px}.feedback-score{display:flex;align-items:center;justify-content:space-between;padding:18px 24px;border-bottom:1px solid var(--divider)}.feedback-score strong{color:var(--brand-blue)}.feedback-board ul{margin:0;padding:8px 24px 20px;list-style:none}.feedback-board li{padding:16px 0;border-bottom:1px solid var(--divider)}.feedback-board li:last-child{border:0}.feedback-board li p{margin:4px 0 0;color:var(--text-secondary);font-size:13px}.feedback-points{display:flex;flex-wrap:wrap;gap:9px;margin-top:26px}.feedback-points span{padding:8px 12px;border:1px solid #cfe3fb;border-radius:8px;background:#fff;color:var(--brand-blue-dark);font-size:12px;font-weight:750}.faq-preview,.faq-layout{display:grid;grid-template-columns:.65fr 1.35fr;gap:80px}.faq-preview>div:first-child{position:sticky;top:110px;align-self:start}.faq-list details{border-bottom:1px solid var(--border)}.faq-list summary{display:grid;grid-template-columns:1fr 24px;gap:14px;align-items:center;padding:23px 0;cursor:pointer;list-style:none}.faq-list summary>strong{font-size:17px}.faq-list summary>i{position:relative;width:18px;height:18px}.faq-list summary>i::before,.faq-list summary>i::after{position:absolute;top:8px;left:3px;width:12px;height:2px;content:"";background:var(--brand-blue)}.faq-list summary>i::after{transform:rotate(90deg);transition:.2s}.faq-list details[open] summary>i::after{transform:none}.faq-list details>div{padding:0 38px 20px 0;color:var(--text-secondary)}
.page-hero{min-height:430px;padding:92px 0 78px;background:var(--bg-blue-soft)}.page-hero__inner{max-width:930px}.breadcrumb{margin-bottom:34px;color:var(--text-muted);font-size:12px}.breadcrumb a:hover{color:var(--brand-blue)}.page-hero h1{margin-bottom:24px;font-size:clamp(45px,6vw,72px);line-height:1.12;letter-spacing:-.055em}.page-hero p{max-width:760px;margin:0;color:var(--text-secondary);font-size:18px}.anchor-nav{position:sticky;z-index:20;top:76px;border-block:1px solid var(--border);background:rgba(255,255,255,.96)}.anchor-nav .container{display:grid;grid-template-columns:repeat(4,1fr)}.anchor-nav a{padding:18px;border-right:1px solid var(--border);color:var(--text-secondary);font-size:13px;text-align:center}.anchor-nav a span{margin-right:8px;color:var(--brand-blue)}.service-list{display:grid;gap:18px}.service-detail{scroll-margin-top:150px;border:1px solid var(--border);border-radius:16px;background:#fff}.service-detail__content{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;padding:46px}.service-detail__summary h2{margin-bottom:16px;font-size:40px}.service-detail__summary .lead{color:var(--text-secondary);font-size:17px}.service-detail__delivery ul{margin:0 0 24px;padding:0;list-style:none}.service-detail__delivery li{display:flex;gap:12px;padding:12px 0;border-bottom:1px solid var(--divider);color:var(--text-secondary)}.service-detail__delivery li span{color:var(--brand-blue);font-weight:900}.capability-pills{display:flex;flex-wrap:wrap;gap:8px}.capability-pills span{padding:7px 11px;border-radius:6px;background:var(--bg-blue-soft);color:var(--brand-blue);font-size:12px}.stage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:45px}.stage-grid article{padding:32px;border-top:4px solid var(--brand-accent);background:var(--bg-blue-soft)}.stage-grid span{color:var(--brand-blue);font-size:12px}.stage-grid h3{margin:18px 0 9px;font-size:32px}.stage-grid p{margin:0;color:var(--text-secondary)}
.service-hero{padding:86px 0;background:#fff}.service-hero__inner{display:grid;grid-template-columns:1fr .85fr;gap:75px;align-items:center}.service-hero h1{font-size:clamp(44px,5vw,68px);letter-spacing:-.04em}.service-hero h1 em{display:block;margin-top:16px;color:var(--text-secondary);font-size:18px;font-style:normal;font-weight:400;letter-spacing:0;line-height:1.7}.plan-sheet{padding:26px;border:1px solid var(--border);border-radius:16px;background:var(--bg-blue-soft);box-shadow:var(--shadow-card)}.plan-sheet>div:first-child{padding-bottom:18px;border-bottom:2px solid var(--brand-blue)}.plan-sheet article{padding:14px 0;border-bottom:1px solid var(--border)}.plan-sheet article small{color:var(--brand-blue)}.plan-sheet article p{margin:2px 0 0}.plan-sheet>p{margin:15px 0 0;color:var(--text-muted);font-size:10px}.service-cap-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px}.service-cap-layout>div:first-child>h2{font-size:43px}.service-cap-layout>div:first-child>p{color:var(--text-secondary)}.service-cap-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.service-cap-grid article{padding:25px;border:1px solid var(--border);border-radius:12px;background:#fff}.service-cap-grid h3{margin:0 0 9px}.service-cap-grid p{margin:0;color:var(--text-secondary)}.service-feature-layout{max-width:900px}.large-check-list{margin:0;padding:0;list-style:none}.large-check-list li{padding:22px 0;border-bottom:1px solid var(--divider)}.large-check-list p{margin:0;font-size:18px}.process-section,.delivery-section,.principle-section{color:#fff;background:#1473e6}.process-grid,.method-flow{display:grid;grid-template-columns:repeat(4,1fr);margin-top:48px}.process-grid article{padding:25px;border-right:1px solid rgba(255,255,255,.24)}.process-grid h3{margin:0;font-size:23px}.related-services{background:var(--bg-blue-soft)}.related-services .container{display:grid;grid-template-columns:repeat(3,1fr)}.related-services a{padding:25px;border-right:1px solid var(--border);text-align:center}
.about-intro-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.story-column p{padding:0 0 26px;border-bottom:1px solid var(--divider);color:var(--text-secondary);font-size:17px}.advantage-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-top:45px}.advantage-grid article{padding:28px;border:1px solid var(--border);border-radius:14px;background:#fff}.advantage-grid h3{margin:0 0 10px;font-size:21px}.advantage-grid p{margin:0;color:var(--text-secondary)}.principle-layout{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.principle-layout h2{font-size:46px}.principle-layout>div:first-child>p{color:#eef7ff}.principle-layout article{padding:19px 0;border-bottom:1px solid rgba(255,255,255,.24)}.principle-layout article h3{margin:0 0 6px}.principle-layout article p{margin:0;color:#eef7ff}.vision-section{background:var(--bg-accent-soft)}.vision-card{padding:58px;border:1px solid #cfe3fb;border-radius:18px;background:#fff}.vision-card blockquote{max-width:950px;margin:0 0 25px;font-size:clamp(28px,4vw,48px);font-weight:700;line-height:1.35}.vision-card p{margin:0;color:var(--text-secondary)}.method-flow article{padding:25px;border-right:1px solid var(--border)}.method-flow h2{margin:0 0 12px;font-size:26px}.method-flow p{color:var(--text-secondary)}.delivery-layout{display:grid;grid-template-columns:.7fr 1.3fr;gap:75px}.delivery-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.delivery-grid article{padding:25px;border:1px solid rgba(255,255,255,.25);border-radius:12px}.delivery-grid h3{margin:0 0 8px}.delivery-grid p{margin:0;color:#eef7ff}.principle-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:40px}.principle-grid article{padding:30px;border:1px solid var(--border);border-radius:14px;background:#fff}.principle-grid h3{margin:0 0 10px}.principle-grid p{margin:0;color:var(--text-secondary)}.faq-layout aside{position:sticky;top:120px;align-self:start}.faq-layout aside h2{font-size:38px}.faq-layout aside p{color:var(--text-secondary)}
.contact-hero{padding:95px 0;color:#fff;background:#1473e6}.contact-hero__grid{display:grid;grid-template-columns:1fr auto;gap:60px;align-items:center}.contact-hero__grid>div:first-child{max-width:760px}.contact-hero h1{font-size:clamp(46px,6vw,72px);letter-spacing:-.04em}.contact-hero p{color:#eef7ff;font-size:18px}.contact-hours{display:grid;place-items:center;width:190px;aspect-ratio:1;border:1px solid rgba(255,255,255,.35);border-radius:50%}.contact-hours span{color:#fff;font-size:48px;font-weight:700}.contact-hours strong{margin-top:-35px}.contact-hours p{margin:-35px 0 0;font-size:13px}.contact-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.contact-grid article{min-height:250px;padding:30px;border:1px solid var(--border);border-radius:14px;background:#fff}.contact-grid h2{margin:0 0 15px}.contact-big-link{display:block;color:var(--brand-blue-dark);font-size:30px;font-weight:700}.contact-big-link--small{font-size:20px}.contact-grid article>p{margin-top:12px;color:var(--text-muted)}.visit-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:90px}.visit-grid h2{font-size:46px}.visit-grid>div>p{color:var(--text-secondary)}.visit-grid ol{margin:0;padding:0;list-style:none}.visit-grid li{padding:18px 0;border-bottom:1px solid var(--divider)}.visit-grid li p{margin:5px 0 0;color:var(--text-secondary)}.contact-bottom{padding:90px 0;color:#fff;background:#1473e6;text-align:center}.contact-bottom h2{font-size:52px}.article-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.article-card{border:1px solid var(--border);border-radius:14px;background:#fff}.article-card>a{display:flex;min-height:300px;padding:26px;flex-direction:column}.article-card__meta{display:flex;justify-content:space-between;color:var(--text-muted);font-size:11px}.article-card__meta span{color:var(--brand-blue)}.article-card h2{margin-top:38px;font-size:21px}.article-card p{color:var(--text-secondary)}.article-card>a>strong{margin-top:auto;color:var(--brand-blue);font-size:12px}
.article-layout{display:grid;grid-template-columns:250px 1fr;gap:40px}.article-sidebar{align-self:start;padding:24px;border:1px solid var(--border);border-radius:12px;background:#fff}.article-sidebar h2{font-size:18px}.article-sidebar a{display:flex;justify-content:space-between;padding:8px 0;color:var(--text-secondary);font-size:13px}.article-sidebar a:hover,.article-sidebar a.is-active{color:var(--brand-blue)}.article-list-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.pagination{display:flex;justify-content:center;gap:8px;margin-top:40px}.pagination a,.pagination span{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--border);border-radius:6px;background:#fff}.pagination [aria-current=page]{color:#fff;background:var(--brand-blue)}.article-detail-head{padding:90px 0;color:#fff;background:#1473e6}.article-detail-head__inner{max-width:960px}.article-detail-category{display:inline-block;margin-bottom:20px;padding:6px 10px;border-radius:5px;color:var(--text-primary);background:var(--brand-accent);font-size:11px}.article-detail-head h1{font-size:clamp(40px,5vw,64px)}.article-detail-head__inner>p{color:#eef7ff;font-size:18px}.article-detail-meta{display:flex;gap:20px;color:#e5f3ff;font-size:12px}.article-detail-layout{display:grid;grid-template-columns:220px minmax(0,760px);justify-content:center;gap:70px;padding:70px 0}.article-detail-layout aside{color:var(--text-muted);font-size:13px}.article-detail-layout aside a{color:var(--brand-blue);font-weight:750}.article-prose{font-size:17px}.article-prose h2{margin-top:45px;font-size:30px}.article-prose h3{margin-top:30px}.article-prose p,.article-prose li{color:var(--text-secondary)}.article-prose img{border-radius:12px}.article-prose a{color:var(--brand-blue);text-decoration:underline}.article-prose blockquote{margin:25px 0;padding:20px;border-left:4px solid var(--brand-accent);background:var(--bg-accent-soft)}
.cta-band{padding:78px 0;color:#fff;background:var(--brand-blue)}.cta-band__inner{display:flex;align-items:center;justify-content:space-between;gap:60px}.cta-band h2{margin-bottom:14px;font-size:clamp(34px,4vw,52px)}.cta-band p{max-width:720px;margin:0;color:#edf7ff}.cta-band__actions{display:flex;align-items:center;gap:22px;flex-shrink:0}.site-footer{padding:70px 0 0;color:#fff;background:#000}.site-footer a{color:#fff}.footer-grid{display:grid;grid-template-columns:1.4fr .7fr .8fr 1fr;gap:50px}.footer-logo{display:block;width:150px;height:74px;overflow:hidden;border-radius:4px}.footer-logo img{width:100%;height:100%;object-fit:cover}.footer-brand>p{max-width:330px;margin-top:18px}.footer-grid h2{margin:0 0 18px;color:#fff;font-size:15px}.footer-grid>div:not(:first-child)>a{display:block;margin:9px 0;color:#fff;font-size:13px}.footer-grid a:hover{color:#fff}.footer-phone{color:#fff!important;font-size:23px!important;font-weight:700}.footer-contact p{font-size:12px}.footer-arrow{margin-top:22px!important;color:#fff!important}.footer-bottom{display:flex;justify-content:space-between;gap:30px;margin-top:55px;padding:22px 0;border-top:1px solid rgba(255,255,255,.3);font-size:11px}.footer-bottom p{margin:0}.contact-dialog{width:min(920px,calc(100% - 32px));padding:0;border:0;border-radius:18px;background:transparent}.contact-dialog::backdrop{background:rgba(31,64,96,.55)}.contact-dialog__panel{position:relative;padding:38px;border:1px solid var(--border);border-radius:18px;background:#fff}.contact-dialog__close{position:absolute;top:14px;right:15px;width:38px;height:38px;border:0;border-radius:50%;background:var(--bg-blue-soft);font-size:24px;cursor:pointer}.contact-dialog__heading{max-width:640px}.contact-dialog__heading h2{margin-bottom:10px;font-size:36px}.contact-dialog__heading p{color:var(--text-secondary)}.contact-dialog__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:28px}.contact-dialog__grid article{padding:22px;border:1px solid var(--border);border-radius:12px;background:var(--bg-blue-soft)}.contact-dialog__grid h3{margin:0 0 8px}.contact-dialog__grid p{margin:6px 0 0;color:var(--text-muted);font-size:12px}.contact-dialog__primary{color:var(--brand-blue-dark);font-size:21px;font-weight:700}.contact-dialog__email,.contact-dialog__website{font-size:15px}.not-found{display:grid;place-items:center;min-height:70vh;padding:80px 0;background:var(--bg-blue-soft);text-align:center}.not-found>div>span{display:block;color:var(--brand-blue);font-size:100px;font-weight:700}
@media(max-width:1080px){.desktop-nav,.header-cta{display:none}.mobile-nav{display:block}.mobile-nav[open]>nav{position:absolute;top:76px;right:0;left:0;max-height:calc(100vh - 76px);padding:20px 24px 28px;overflow:auto;border-bottom:1px solid var(--border);background:#fff;box-shadow:var(--shadow-hover)}.mobile-nav__group{padding:12px 0;border-bottom:1px solid var(--divider)}.mobile-nav__primary{font-weight:800}.mobile-subnav{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.mobile-subnav a{padding:5px 8px;border-radius:5px;background:var(--bg-blue-soft);font-size:12px}.mobile-nav nav>.button{width:100%;margin-top:18px}.brand{margin-right:auto}.home-hero__grid{gap:25px}.need-grid{grid-template-columns:1fr 1fr}.teacher-layout,.feedback-layout{gap:50px}.footer-grid{grid-template-columns:1.2fr 1fr 1fr}.footer-contact{grid-column:2/4}}
@media(max-width:760px){.container{width:min(calc(100% - 32px),var(--container))}.section-pad{padding:72px 0}.section-intro-row{display:block;margin-bottom:34px}.section-intro-row>.text-link{display:inline-block;margin-top:18px}.section-heading h2{font-size:36px}.home-hero{padding-top:38px}.home-hero__grid,.learning-map,.teacher-layout,.feedback-layout,.faq-preview,.faq-layout,.service-hero__inner,.service-cap-layout,.service-feature-layout,.about-intro-layout,.principle-layout,.delivery-layout,.contact-hero__grid,.visit-grid{grid-template-columns:1fr;gap:40px}.home-hero h1{font-size:34px;line-height:1.32}.home-hero h1 span,.home-hero h1 em{white-space:normal}.home-hero__copy>p{font-size:16px}.home-hero__visual{margin-top:10px;margin-left:0}.stage-ruler{gap:10px;font-size:11px}.stat-grid{grid-template-columns:1fr 1fr;row-gap:28px}.stat-grid>div:nth-child(2){border:0}.stat-grid strong{font-size:34px}.need-grid,.service-cap-grid,.stage-grid,.advantage-grid,.delivery-grid,.principle-grid,.article-grid,.article-list-grid,.contact-grid,.contact-dialog__grid{grid-template-columns:1fr}.need-card{min-height:260px}.need-card h3{margin-top:0}.learning-map__copy,.faq-preview>div:first-child,.faq-layout aside{position:static}.teacher-layout h2{font-size:40px}.feedback-layout .feedback-board{order:2}.faq-list details>div{padding-left:0}.page-hero{min-height:auto;padding:68px 0}.page-hero h1{font-size:43px}.anchor-nav{top:76px;overflow:auto}.anchor-nav .container{width:max-content;grid-template-columns:repeat(4,150px)}.service-detail__content{grid-template-columns:1fr;gap:25px;padding:28px}.service-hero{padding:62px 0}.process-grid,.method-flow{grid-template-columns:1fr 1fr}.process-grid article,.method-flow article{border-bottom:1px solid rgba(255,255,255,.24)}.related-services .container{display:block}.related-services a{border-bottom:1px solid var(--border)}.principle-layout h2,.visit-grid h2{font-size:38px}.contact-hours{display:none}.contact-grid article{min-height:auto}.contact-big-link{font-size:25px}.article-layout,.article-detail-layout{grid-template-columns:1fr}.article-sidebar{display:none}.article-detail-layout{padding:48px 16px}.cta-band__inner,.cta-band__actions{align-items:flex-start;flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/3}.footer-contact{grid-column:1/3}.footer-bottom{flex-direction:column}.contact-dialog__panel{padding:26px 20px}.contact-dialog__heading h2{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}[data-reveal]{opacity:1;transform:none}}
@media print{.site-header,.site-footer,.cta-band,.mobile-nav{display:none}[data-reveal]{opacity:1;transform:none}}
.brand{display:flex;width:108px;height:68px;align-items:center;overflow:visible}.brand img{width:100%;height:auto;max-height:66px;object-fit:contain}.footer-logo{display:flex;width:148px;height:100px;align-items:center;overflow:visible;border-radius:0}.footer-logo img{width:100%;height:auto;max-height:96px;object-fit:contain}
.image-frame{aspect-ratio:1.22}.image-frame img{height:100%;aspect-ratio:auto}.article-tabs{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:32px}.article-tab{display:flex;align-items:center;gap:8px;padding:8px 13px;border:1px solid var(--border);border-radius:7px;background:#fff;color:var(--text-secondary);font-size:13px}.article-tab span{color:var(--text-muted);font-size:11px}.article-tab:hover,.article-tab.active{border-color:var(--brand-blue);color:var(--brand-blue)}.article-tab.active{background:var(--brand-accent-soft)}.article-empty{padding:60px;border:1px dashed var(--border);background:#fff;color:var(--text-muted);text-align:center}.article-pagination{display:flex;justify-content:center;gap:7px;margin-top:36px}.article-pagination>a,.article-pagination>span{display:grid;place-items:center;width:38px;height:38px;border:1px solid var(--border);border-radius:6px;background:#fff}.article-pagination .active{border-color:var(--brand-blue);color:#fff;background:var(--brand-blue)}
.home-hero h1,.page-hero h1,.teacher-layout h2{font-weight:600;letter-spacing:-.025em}.stage-ruler{font-weight:600}.stat-grid strong{font-weight:600}.nav-link{font-weight:500}.mobile-nav__primary{font-weight:600}.need-card>strong,.footer-phone{font-weight:600}
