@charset "UTF-8";*,*:before,*:after{box-sizing:border-box}html{scroll-behavior:smooth}body{min-width:320px;margin:0;background:#fff;color:#15243a;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}img{display:block;max-width:100%}app-root{--blue-950: #073b78;--blue-900: #0b4f94;--blue-700: #1674c6;--blue-500: #2f91dd;--blue-100: #dff1ff;--ink: #15243a;--muted: #546477;--line: #c8e1f5;--paper: #ffffff;--soft: #f4fbff;display:block;min-height:100vh;color:var(--ink)}a{color:inherit;text-decoration:none}.site-shell{min-height:100vh;overflow:hidden;background:radial-gradient(circle at 5% 74%,rgba(84,173,231,.18),transparent 12rem),linear-gradient(180deg,#fff,#f7fcff 48%,#fff)}.wrap{width:min(1216px,100% - 48px);margin-inline:auto}.contact-strip{background:linear-gradient(90deg,#eaf6ff,#f7fcff);color:var(--blue-950);font-size:.83rem}.contact-content,.contact-links,.social-links,.header-content,.admissions-content{display:flex;align-items:center}.contact-content{min-height:40px;justify-content:space-between;gap:20px}.contact-links,.social-links{gap:22px}.contact-links span{display:inline-grid;width:22px;height:22px;place-items:center;margin-right:6px;border-radius:50%;background:#d7efff;color:var(--blue-700)}.social-links{gap:10px}.social-links a{display:grid;width:22px;height:22px;place-items:center;border-radius:50%;color:#fff;font-size:.72rem;font-weight:800}.main-header{position:sticky;top:0;z-index:5;background:#fffffff0;box-shadow:0 16px 36px #08457c14;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}.header-content{min-height:112px;justify-content:space-between;gap:28px}.brand{display:flex;align-items:center;gap:14px;flex:0 0 auto}.brand-mark{width:72px;height:72px;border-radius:50%;object-fit:contain;box-shadow:0 10px 20px #0856971f}.brand-copy{display:grid;line-height:1;color:var(--blue-900);text-transform:uppercase}.brand-copy strong{font-family:Georgia,Times New Roman,serif;font-size:clamp(1.9rem,3vw,2.65rem);letter-spacing:.02em}.brand-copy span{font-family:Georgia,Times New Roman,serif;font-size:1.15rem;letter-spacing:.18em}.brand-copy em{margin-top:5px;color:#4394d0;font-size:.78rem;font-style:italic;text-transform:none}.site-nav{display:flex;align-items:center;justify-content:center;gap:clamp(18px,2.5vw,34px);font-size:.86rem;font-weight:800;text-transform:uppercase}.site-nav a{position:relative;padding:12px 0;color:#152137}.site-nav a.active,.site-nav a:hover{color:var(--blue-700)}.site-nav a.active:after{position:absolute;right:0;bottom:3px;left:0;height:3px;content:"";background:var(--blue-700)}.header-actions,.auth-menu{display:flex;align-items:center;gap:12px}.header-actions{flex:0 0 auto}.auth-menu{position:relative;max-width:260px}.auth-trigger{display:flex;align-items:center;gap:10px;max-width:260px;min-height:48px;padding:5px 14px 5px 6px;border:1px solid rgba(22,116,198,.22);border-radius:999px;background:linear-gradient(180deg,#fffffff5,#f4fbffe6),radial-gradient(circle at 14% 50%,rgba(47,145,221,.18),transparent 3.5rem);box-shadow:0 12px 22px #08457c14;color:var(--blue-950);cursor:pointer;transition:border-color .2s ease,box-shadow .2s ease,transform .2s ease}.auth-trigger:hover,.auth-trigger[aria-expanded=true]{border-color:#1674c675;box-shadow:0 16px 28px #08457c24;transform:translateY(-1px)}.auth-avatar{width:40px;height:40px;flex:0 0 40px;border:2px solid white;border-radius:50%;object-fit:cover;box-shadow:0 5px 12px #08457c26}.auth-name{max-width:150px;overflow:hidden;color:var(--blue-950);font-size:.82rem;font-weight:800;line-height:1.2;text-overflow:ellipsis;white-space:nowrap}.auth-dropdown{position:absolute;top:calc(100% + 8px);right:0;z-index:10;min-width:180px;padding:10px;border:1px solid rgba(22,116,198,.18);border-radius:8px;background:var(--paper);box-shadow:0 18px 36px #08457c29}.auth-dropdown button{width:100%;min-height:40px;padding:10px 14px;border:0;border-radius:6px;background:#f4fbff;color:var(--blue-700);cursor:pointer;font:inherit;font-size:.86rem;font-weight:800;text-align:center;text-transform:uppercase}.auth-dropdown button:hover{background:var(--blue-100);color:var(--blue-950)}.btn{display:inline-flex;min-height:48px;align-items:center;justify-content:center;gap:10px;padding:0 26px;border:1px solid transparent;border-radius:999px;font-size:.84rem;font-weight:900;letter-spacing:.04em;text-transform:uppercase;transition:transform .2s ease,box-shadow .2s ease,background .2s ease}.btn:hover{transform:translateY(-1px)}.btn-primary{background:linear-gradient(180deg,#2d92dc,#1175c5);color:#fff;box-shadow:0 14px 24px #1276c638}.btn-outline{border-color:var(--blue-700);background:#ffffffb8;color:var(--blue-700)}.btn-small{min-height:42px;padding-inline:24px;font-size:.76rem}.hero{position:relative;min-height:492px;background:radial-gradient(circle at 80% 35%,rgba(92,176,232,.26),transparent 19rem),radial-gradient(circle at 18% 18%,rgba(194,230,255,.5),transparent 20rem),linear-gradient(90deg,#f7fcff,#eaf7ff 55%,#dff2ff)}.hero:before{position:absolute;inset:0;content:"";background:linear-gradient(110deg,rgba(255,255,255,.85) 0 36%,transparent 36%),repeating-radial-gradient(circle at 88% 45%,rgba(25,126,205,.1) 0 2px,transparent 2px 18px);opacity:.65}.hero-grid{position:relative;display:grid;min-height:492px;grid-template-columns:minmax(340px,.86fr) minmax(420px,1.14fr);align-items:center;gap:38px}.hero-copy{max-width:470px;padding:54px 0 74px}.eyebrow,.section-label{color:var(--blue-900);font-size:.86rem;font-weight:900;letter-spacing:.18em;text-transform:uppercase}.hero h1,.panel h2,.admissions h2{margin:0;color:var(--blue-950);font-family:Georgia,Times New Roman,serif}.hero h1{margin-top:12px;font-size:clamp(3.5rem,7vw,5.9rem);line-height:.95}.title-rule{display:flex;width:280px;align-items:center;gap:12px;margin:18px 0 20px;color:#64aee1}.title-rule:before,.title-rule:after{height:1px;flex:1;content:"";background:var(--line)}.hero-text{max-width:440px;margin:0 0 24px;color:#253349;font-size:1.03rem;line-height:1.65}.hero-art{position:relative;align-self:stretch;min-height:492px}.hero-art img{position:absolute;right:-38px;bottom:0;width:min(690px,63vw);max-height:100%;object-fit:contain;object-position:bottom right;filter:drop-shadow(0 28px 34px rgba(7,59,120,.16))}.music-staff{position:absolute;top:31%;left:4%;color:#2e8dd924;font-size:clamp(2rem,5vw,4.2rem);transform:rotate(8deg);white-space:nowrap}.treble{position:absolute;right:-18px;top:34%;color:#2184d238;font-size:clamp(8rem,15vw,15rem);line-height:1}.highlights{position:relative;z-index:2;display:grid;grid-template-columns:repeat(5,1fr);margin-top:-64px;border:1px solid var(--line);border-radius:16px;background:#ffffffe6;box-shadow:0 18px 40px #0c4e891a;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.highlight-card{display:flex;align-items:center;gap:16px;min-height:116px;padding:22px 26px}.highlight-card+.highlight-card{border-left:1px solid var(--line)}.icon-bubble{display:grid;width:58px;height:58px;flex:0 0 58px;place-items:center;border-radius:50%;background:#e7f5ff;color:var(--blue-700);font-size:1.85rem;font-weight:800}.highlight-card p{margin:0;color:#26364c;line-height:1.45}.highlight-card strong{display:block;color:var(--blue-950)}.info-grid{display:grid;grid-template-columns:.95fr 1.18fr .98fr;gap:24px;padding:22px 0 20px}.panel{min-height:316px;padding:30px 36px;border:1px solid #dcebf8;border-radius:8px;background:linear-gradient(180deg,#ffffffeb,#f9fdffeb),radial-gradient(circle at 5% 15%,rgba(133,197,238,.18),transparent 14rem);box-shadow:0 18px 38px #0e447a0f}.panel h2{margin-top:18px;font-size:clamp(1.55rem,2vw,2rem);line-height:1.12}.panel p{color:#314055;line-height:1.68}.about-panel p:nth-of-type(2){margin-top:28px}.courses-panel{text-align:center}.course-list{display:grid;grid-template-columns:repeat(4,minmax(84px,1fr));gap:18px 20px;margin:22px 0 18px}.course-item{display:grid;justify-items:center;gap:10px;color:#233349;font-size:.86rem}.course-item .icon-bubble{width:62px;height:62px;font-size:1.65rem}.reasons-panel ul{display:grid;gap:18px;padding:8px 0 0;margin:0;list-style:none}.reasons-panel li{display:flex;align-items:center;gap:14px;color:#2d3a4d}.reasons-panel li span{display:grid;width:28px;height:28px;place-items:center;border-radius:50%;background:#e3f4ff;color:var(--blue-700);font-weight:900}blockquote{margin:34px 0 0;color:#2a3c55;font-family:Georgia,Times New Roman,serif;font-size:1.1rem;line-height:1.5;text-align:center}blockquote:before{display:block;color:#72b8e7;content:"\201c";font-size:3.4rem;line-height:.65}.admissions{margin-top:0;background:linear-gradient(90deg,#d7effff2,#f4fbffd1),repeating-linear-gradient(15deg,transparent 0 34px,rgba(47,145,221,.08) 35px 36px)}.admissions-content{min-height:92px;justify-content:space-between;gap:28px}.admissions-content>div{display:flex;align-items:center;gap:22px}.admissions-content>div>span{color:var(--blue-700);font-size:2.4rem}.admissions h2{font-size:1.2rem;letter-spacing:.04em;text-transform:uppercase}.admissions p{margin:6px 0 0}.site-footer{padding:22px 0;background:#f8fcff;color:var(--muted);font-size:.9rem;text-align:center}.footer-content{display:grid;justify-items:center;gap:12px}.site-footer p{margin:0}.site-footer a{color:var(--blue-700);font-weight:800}.footer-links{display:flex;flex-wrap:wrap;justify-content:center;gap:10px 18px;font-size:.82rem;text-transform:uppercase}.page-hero{padding:clamp(52px,8vw,82px) 0;background:radial-gradient(circle at 80% 30%,rgba(92,176,232,.24),transparent 19rem),linear-gradient(90deg,#f7fcff,#e5f5ff)}.page-heading{max-width:760px;text-align:center}.page-heading h1{margin:14px 0 18px;color:var(--blue-950);font-family:Georgia,Times New Roman,serif;font-size:clamp(2.5rem,5vw,3.8rem);line-height:1.1}.page-heading>p:last-child{margin:0;color:var(--muted);font-size:1.08rem;line-height:1.7}.page-grid,.program-grid,.steps-grid,.contact-grid{display:grid;gap:24px;padding:52px 0}.page-grid,.contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.program-grid,.steps-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.content-card,.program-card{padding:34px;border:1px solid #dcebf8;border-radius:12px;background:var(--paper);box-shadow:0 14px 34px #0e447a0f}.content-card h2,.program-card h2,.enroll-panel h2{margin:0 0 14px;color:var(--blue-950);font-family:Georgia,Times New Roman,serif;font-size:1.55rem}.content-card p,.program-card p,.enroll-panel p{margin:0;color:var(--muted);line-height:1.7}.program-card span,.contact-card span{display:grid;width:60px;height:60px;place-items:center;margin-bottom:22px;border-radius:50%;background:var(--blue-100);color:var(--blue-700);font-size:1.7rem}.steps-grid strong{display:inline-block;margin-bottom:18px;color:var(--blue-500);font-size:1.1rem;letter-spacing:.16em}.gallery-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:20px;padding:52px 0}.gallery-grid div{display:grid;min-height:210px;align-content:center;justify-items:center;border-radius:14px;background:linear-gradient(140deg,#e5f4ff,#f7fcff);color:var(--blue-950)}.gallery-grid span{color:var(--blue-500);font-size:3.2rem}.gallery-grid p{font-weight:800}.page-action{padding:34px 0;background:#eaf6ff}.page-action .wrap{display:flex;align-items:center;justify-content:center;gap:34px}.page-action h2{margin:0;color:var(--blue-950);font-family:Georgia,Times New Roman,serif;font-size:clamp(1.35rem,3vw,1.8rem)}.contact-card{text-align:center}.contact-card span{margin-inline:auto}.enroll-panel{display:flex;align-items:center;justify-content:space-between;gap:36px;margin-block:56px;padding:clamp(30px,5vw,52px);border:1px solid var(--line);border-radius:16px;background:var(--soft)}.enroll-panel>div:first-child{max-width:540px}.enroll-actions{display:grid;gap:14px;text-align:center}.text-link{color:var(--blue-700);font-size:.86rem;font-weight:800;text-transform:uppercase}.legal-page{padding:48px 0 64px}.legal-document{max-width:880px;margin-inline:auto;padding:clamp(28px,5vw,48px);border:1px solid #dcebf8;border-radius:12px;background:var(--paper);box-shadow:0 14px 34px #0e447a0f}.legal-document h2{margin:30px 0 10px;color:var(--blue-950);font-family:Georgia,Times New Roman,serif;font-size:1.45rem}.legal-document h2:first-of-type{margin-top:22px}.legal-document p,.legal-document li{color:var(--muted);line-height:1.75}.legal-document p{margin:0 0 14px}.legal-document ul{display:grid;gap:8px;margin:0 0 16px;padding-left:22px}.legal-document a{color:var(--blue-700);font-weight:800}@media(max-width:1100px){.header-content{flex-wrap:wrap;padding-block:18px}.site-nav{order:3;width:100%;flex-wrap:wrap}.hero-grid{grid-template-columns:1fr 1fr}.highlights,.info-grid{grid-template-columns:repeat(2,1fr)}.highlight-card+.highlight-card{border-left:0}.reasons-panel{grid-column:1/-1}.program-grid,.gallery-grid{grid-template-columns:repeat(2,1fr)}}@media(max-width:760px){.wrap{width:min(100% - 28px,620px)}.contact-content,.contact-links,.social-links,.admissions-content{flex-direction:column;align-items:flex-start}.contact-content{padding:12px 0}.header-content{min-height:auto}.brand-mark{width:58px;height:58px}.brand-copy span{font-size:.88rem}.header-actions,.header-action{width:100%}.header-actions,.auth-menu{align-items:stretch}.header-actions{flex-direction:column}.auth-menu{max-width:none}.auth-trigger{max-width:none;width:100%}.auth-name{max-width:none;white-space:normal}.site-nav{justify-content:flex-start;gap:6px 18px;font-size:.78rem}.hero-grid{min-height:auto;grid-template-columns:1fr;gap:0}.hero-copy{padding:44px 0 18px}.hero h1{font-size:clamp(3rem,16vw,4.5rem)}.hero-art{min-height:328px}.hero-art img{right:-80px;width:min(620px,122vw)}.music-staff{left:0}.treble{right:-40px;font-size:9rem}.highlights{grid-template-columns:1fr;margin-top:-24px}.highlight-card{min-height:auto;padding:18px}.info-grid,.course-list{grid-template-columns:1fr}.panel{min-height:auto;padding:26px 22px}.course-list{gap:14px}.course-item{grid-template-columns:54px 1fr;align-items:center;justify-items:start;text-align:left}.course-item .icon-bubble{width:54px;height:54px}.admissions-content{padding:22px 0}.admissions-content>div{align-items:flex-start}.admissions .btn{width:100%}.page-grid,.program-grid,.steps-grid,.contact-grid,.gallery-grid{grid-template-columns:1fr;padding:34px 0}.page-action .wrap,.enroll-panel{flex-direction:column;align-items:stretch;text-align:center}}
