@import "https://fonts.googleapis.com/css2?family=Montserrat:wght@400;500;600;700;800;900&family=Playfair+Display:wght@600;700&display=swap";
:root{--navy:#0d1b3d;--navy-2:#092354;--red:#e30613;--white:#fff;--line:#e3e6ec;--muted:#596273;--soft:#f8f9fb}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:102px}body{color:var(--navy);-webkit-font-smoothing:antialiased;background:#fff;margin:0;font-family:Montserrat,Arial,sans-serif;overflow-x:hidden}img{max-width:100%;height:auto}a{color:inherit;text-decoration:none}a,button{outline-offset:4px}a:focus-visible,button:focus-visible{outline:2px solid var(--red)}button{font:inherit}.container{width:min(88vw,1320px);margin-inline:auto}.header{z-index:30;background:#fff;border-bottom:1px solid #e9eaed;height:102px;position:sticky;top:0}.header-inner{grid-template-columns:clamp(175px,16vw,220px) 1fr auto;align-items:center;gap:clamp(12px,1.8vw,28px);height:100%;display:grid}.brand{align-items:center;width:max-content;display:inline-flex}.brand-lockup{justify-content:center;align-items:center;width:174px;height:77px;line-height:1;display:inline-flex;position:relative}.brand-lockup img{object-fit:contain;object-position:center;width:100%;height:100%;display:block}.brand-lockup.vertical{width:164px;height:164px}.brand-lockup.compact{width:174px;height:77px}.header nav{white-space:nowrap;justify-content:center;align-self:stretch;gap:27px;font-size:11px;font-weight:600;display:flex}.header nav a{align-items:center;display:flex;position:relative}.header nav a:after{content:"";background:var(--red);height:2px;transition:left .2s,right .2s;position:absolute;bottom:28px;left:50%;right:50%}.header nav a.active:after{left:0;right:0}.header-actions{justify-self:end;align-items:center;gap:9px;display:flex}.language-switch{position:relative}.language-toggle{min-width:64px;height:42px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #cfd5df;border-radius:6px;justify-content:center;align-items:center;gap:5px;padding:0 10px;font-size:11px;font-weight:800;display:inline-flex}.language-toggle span{font-size:14px;line-height:1;transform:translateY(-1px)}.language-menu{border:1px solid var(--line);z-index:40;background:#fff;border-radius:7px;min-width:140px;padding:5px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 14px 30px #0d1b3d24}.language-menu a{color:var(--navy);white-space:nowrap;border-radius:4px;padding:9px 10px;font-size:11px;font-weight:700;display:block}.language-menu a:hover,.language-menu a[aria-current=page]{color:var(--red);background:#fff1f2}.cta-top{background:var(--red);color:#fff;white-space:nowrap;border-radius:6px;align-items:center;gap:8px;min-height:42px;padding:0 17px;font-size:12px;font-weight:700;display:inline-flex;box-shadow:0 6px 16px #e306131f}.menu-toggle{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:6px;width:42px;height:42px;padding:10px;display:none}.menu-toggle i{background:var(--navy);height:2px;margin:4px 0;transition:transform .2s,opacity .2s;display:block}.menu-toggle.active i:first-child{transform:translateY(6px)rotate(45deg)}.menu-toggle.active i:nth-child(2){opacity:0}.menu-toggle.active i:nth-child(3){transform:translateY(-6px)rotate(-45deg)}.hero{background:linear-gradient(90deg,#fff 0 54%,#f6f6f7 76%,#eee 100%);position:relative;overflow:hidden}.hero-inner{grid-template-columns:52% 48%;min-height:clamp(500px,40vw,580px);display:grid}.hero-copy{z-index:4;padding:clamp(39px,3.2vw,58px) 8px clamp(25px,2.4vw,40px) 0;position:relative}.pill{letter-spacing:.02em;background:#ffffffb8;border:1px solid #d7dbe2;border-radius:999px;padding:6px 10px;font-size:10px;font-weight:700;display:inline-flex}.hero h1{letter-spacing:-.025em;margin:18px 0 16px;font-size:clamp(40px,3.25vw,58px);font-weight:800;line-height:1.12}.hero h1 em{color:var(--red);font-style:normal}.hero-copy>p{color:#2f3849;max-width:510px;margin:0;font-size:14px;line-height:1.65}.hero-actions{gap:15px;margin-top:20px;display:flex}.btn{border-radius:6px;justify-content:center;align-items:center;gap:8px;min-height:42px;padding:0 17px;font-size:12px;font-weight:700;transition:transform .18s,box-shadow .18s;display:inline-flex}.btn:hover{transform:translateY(-1px);box-shadow:0 7px 18px #0d1b3d1f}.btn.red{background:var(--red);color:#fff;border:1px solid var(--red)}.btn.outline{color:var(--navy);border:1.25px solid var(--navy);background:#fff}.btn.white{color:var(--navy);background:#fff;border:1px solid #ffffffbf}.btn.small{min-height:42px;padding-inline:18px}.hero-features{grid-template-columns:repeat(4,1fr);gap:15px;max-width:600px;margin-top:27px;display:grid}.hero-features>div{color:var(--navy);align-items:flex-start;gap:8px;display:flex}.hero-features svg{flex:none}.hero-features span{flex-direction:column;gap:3px;padding-top:1px;display:flex}.hero-features strong{font-size:10px;line-height:1.25}.hero-features small{color:#687082;font-size:9px;line-height:1.25}.hero-photo{position:absolute;inset:0 0 0 50%;overflow:hidden}.hero-photo>img{object-fit:cover;object-position:50% 43%;width:100%;height:100%;display:block}.hero-fade{pointer-events:none;background:linear-gradient(90deg,#fff 0%,#ffffffe0 7%,#fff3 24%,#fff0 42%);position:absolute;inset:0}.celta-badge{color:#fff;text-align:left;background:linear-gradient(155deg,#092354,#061536);border:1px solid #ffffff61;border-radius:16px;align-items:flex-start;gap:7px;width:145px;min-height:150px;padding:15px 14px 13px;display:flex;position:absolute;top:clamp(188px,15vw,220px);right:24px;box-shadow:0 9px 24px #04143240}.celta-badge>img{object-fit:contain;flex:none;width:28px;height:30px;margin-top:1px}.celta-badge>div{min-width:0}.celta-badge span{letter-spacing:.02em;font-size:9px;font-weight:700}.celta-badge strong{margin:2px 0 6px;font-size:27px;line-height:1;display:block}.celta-badge small{color:#ffffffe6;font-size:7px;line-height:1.45;display:block}.celta-badge p{color:#fff;margin:8px 0 0;font-size:8px;line-height:1.45}.trustbar{color:#fff;background:linear-gradient(90deg,#0b1a3c,#0d2a61)}.trustgrid{grid-template-columns:repeat(4,1fr);align-items:center;min-height:81px;display:grid}.trustgrid>div{border-right:1px solid #fff3;align-items:center;gap:15px;height:42px;padding:0 20px;display:flex}.trustgrid>div:first-child{padding-left:12px}.trustgrid>div:last-child{border-right:0}.trustgrid svg{flex:none}.trustgrid span{flex-direction:column;gap:3px;display:flex}.trustgrid strong{font-size:11px;line-height:1.2}.trustgrid small{color:#ffffffbf;font-size:9px;line-height:1.2}.section{padding:clamp(38px,3.1vw,52px) 0;scroll-margin-top:76px}.kicker{color:var(--red);letter-spacing:.04em;font-size:9px;font-weight:800;display:inline-block}.section h2{letter-spacing:-.02em;margin:9px 0 13px;font-size:clamp(25px,2vw,34px);line-height:1.2}.section p{color:#424c5e;font-size:13px;line-height:1.65}.about{padding-top:39px;padding-bottom:37px}.about-grid{grid-template-columns:.82fr 1.18fr;align-items:center;gap:55px;display:grid}.about-copy p{max-width:420px;margin:0 0 14px}.about-copy .btn{margin-top:3px}.about-card{border:1px solid var(--line);background:#fff;border-radius:10px;grid-template-columns:1fr 185px;min-height:224px;display:grid;overflow:hidden;box-shadow:0 5px 20px #0d1b3d08}.about-list{padding:20px 24px 15px}.about-list>div{align-items:flex-start;gap:12px;margin-bottom:13px;display:flex}.about-list>div:last-child{margin-bottom:0}.about-list .list-icon{width:29px;height:29px;color:var(--red);background:#fff0f1;border-radius:50%;flex:none;place-items:center;display:grid}.about-list>div>span:last-child{flex-direction:column;gap:3px;display:flex}.about-list strong{font-size:10px;line-height:1.25}.about-list small{color:#6d7584;font-size:8px;line-height:1.35}.about-logo{border-left:1px solid var(--line);justify-content:center;align-items:center;padding:20px 14px;display:flex}.about-logo .brand-lockup.vertical{width:150px;height:182px}.places-card{border:1px solid var(--line);background:#fff;border-radius:14px;grid-template-columns:minmax(250px,.72fr) minmax(0,1.28fr);align-items:stretch;margin:34px 0 0;display:grid;overflow:hidden;box-shadow:0 9px 25px #0d1b3d0d}.places-card figcaption{color:#fff;background:linear-gradient(145deg,#0d2454,#0b1a3c);flex-direction:column;justify-content:center;padding:clamp(24px,3vw,42px);display:flex}.places-card figcaption .kicker{color:#ff8c94}.places-card h3{margin:10px 0;font-size:clamp(19px,1.7vw,26px);line-height:1.2}.places-card p{color:#fffc;margin:0;font-size:13px;line-height:1.65}.places-link{justify-content:center;align-self:stretch;margin-top:22px}.places-card img{object-fit:cover;object-position:center;width:100%;height:100%;min-height:285px;display:block}.classes{background:linear-gradient(120deg,#f8fafc 0%,#fff 65%);border-top:1px solid #edf0f3;border-bottom:1px solid #edf0f3}.classes-grid{grid-template-columns:.8fr 1.2fr;align-items:center;gap:clamp(34px,6vw,82px);display:grid}.classes-copy p{max-width:440px;margin-bottom:26px}.class-carousel{min-width:0}.class-photo-frame{aspect-ratio:16/9;background:#0b1a3c;border-radius:14px;overflow:hidden;box-shadow:0 18px 35px #0d1b3d29}.class-photo-frame img{object-fit:cover;object-position:center;width:100%;height:100%;animation:.28s classFade;display:block}.class-controls{color:var(--navy);align-items:center;gap:11px;display:flex}.class-controls button{width:40px;height:40px;color:var(--navy);cursor:pointer;background:#fff;border:1px solid #cfd5df;border-radius:50%;font-size:21px;line-height:1;transition:background .18s,color .18s,transform .18s}.class-controls button:hover{background:var(--red);border-color:var(--red);color:#fff;transform:translateY(-1px)}.class-controls span{letter-spacing:.06em;text-align:center;min-width:76px;font-size:12px}.class-controls b{color:var(--red)}.class-dots{justify-content:center;gap:8px;margin-top:14px;display:flex}.class-dots button{cursor:pointer;background:#cbd1dc;border:0;border-radius:999px;width:8px;height:8px;padding:0;transition:width .2s,background .2s}.class-dots button.active{background:var(--red);width:28px}@keyframes classFade{0%{opacity:.25;transform:scale(1.015)}to{opacity:1;transform:scale(1)}}.learning-flow{position:relative;overflow:hidden}.how{border-top:1px solid #edf0f3;padding-top:16px;padding-bottom:31px}.learning-flow .how .container{padding-right:330px}.steps{grid-template-columns:repeat(4,1fr);gap:36px;margin-top:25px;display:grid;position:relative}.steps:before{content:"";border-top:1px dashed #cbd0d9;position:absolute;top:14px;left:29px;right:29px}.steps article{position:relative}.steps article>span{width:29px;height:29px;color:var(--red);z-index:1;background:#fff3f4;border:1px solid #ffc7cb;border-radius:50%;place-items:center;font-size:11px;font-weight:600;display:grid;position:relative}.steps h3{margin:15px 0 7px;font-size:12px}.steps p{max-width:180px;margin:0;font-size:10px;line-height:1.45}.content{border-top:1px solid #edf0f3;padding-top:19px;padding-bottom:22px}.content-grid{grid-template-columns:minmax(0,1fr) 330px;align-items:end;min-height:190px;display:grid}.content h2{margin-bottom:4px}.content p{margin:0}.content-cards{grid-template-columns:1fr 1fr;gap:14px;margin-top:14px;display:grid}.content-cards>a{border:1px solid var(--line);background:#fff;border-radius:9px;gap:12px;min-height:99px;padding:13px 14px;display:flex;box-shadow:0 3px 14px #0d1b3d06}.social-icon{color:#fff;border-radius:8px;flex:none;place-items:center;width:38px;height:38px;display:grid}.social-icon.youtube{background:red}.social-icon.instagram{background:linear-gradient(145deg,#6536d8,#d4268c 58%,#ff9b22)}.content-cards>a>span:last-child{flex-direction:column;align-items:flex-start;display:flex}.content-cards small{color:#697180;margin:4px 0 8px;font-size:8px;line-height:1.45}.content-cards b{color:var(--red);align-items:center;gap:3px;font-size:8px;display:inline-flex}.british-bridge{z-index:3;pointer-events:none;filter:drop-shadow(0 12px 12px #0d1b3d1a);width:clamp(270px,23vw,340px);height:auto;position:absolute;top:52px;right:max(6vw,50vw - 660px)}.cta-band{border-top:1px solid #edf0f3;padding:clamp(38px,3.1vw,52px) 0 18px;scroll-margin-top:76px}.cta-band-inner{color:#fff;background:linear-gradient(90deg,#0d2454,#08245c);border-radius:7px;grid-template-columns:155px 1fr 255px;align-items:center;min-height:92px;display:grid;overflow:hidden;box-shadow:0 7px 20px #0d1b3d14}.cta-photo{align-self:end;height:92px;overflow:hidden}.cta-photo img{object-fit:contain;object-position:center bottom;width:100%;height:145px;display:block;transform:translateY(-7px)}.cta-copy h2{margin:0 0 6px;font-size:21px;line-height:1.25}.cta-copy p{color:#fffc;margin:0;font-size:9px}.cta-buttons{flex-direction:column;gap:7px;padding-right:24px;display:flex}.cta-buttons .btn{min-height:33px;font-size:10px}footer{background:#fff}.footer-grid{grid-template-columns:210px 105px 105px 1fr 90px;align-items:start;gap:24px;padding:18px 0;display:grid}.footer-brand .brand-lockup{width:132px;height:58px}.footer-grid>div:not(.footer-brand){flex-direction:column;gap:5px;font-size:8px;display:flex}.footer-grid small{color:#111a31;margin-bottom:3px;font-size:7px;font-weight:700}.footer-grid a{color:#17305e}.footer-contact span{color:#283953}.social-footer{justify-content:flex-end;align-self:center;align-items:center;flex-direction:row!important;gap:11px!important}.social-footer a{color:var(--red)}.bottom-bar{color:#fff;background:linear-gradient(90deg,#0d1b3d,#072b65);font-size:7px}.bottom-bar .container{justify-content:space-between;align-items:center;min-height:30px;display:flex}.bottom-bar b{color:var(--red)}@media (max-width:1050px){.container{width:min(100% - 48px,1120px)}.header-inner{grid-template-columns:175px 1fr auto;gap:12px}.header nav{gap:14px;font-size:9px}.hero h1{font-size:40px}.hero-features{gap:9px}.trustgrid>div{gap:10px;padding-inline:12px}.about-grid{gap:34px}.places-card{margin-top:30px}.classes-grid{gap:34px}.learning-flow .how .container{padding-right:270px}.content-grid{grid-template-columns:minmax(0,1fr) 270px}.british-bridge{width:250px;right:24px}}@media (max-width:880px){html{scroll-padding-top:76px}.header{height:76px}.header-inner{grid-template-columns:1fr auto}.header nav{border-top:1px solid var(--line);border-bottom:1px solid var(--line);white-space:normal;background:#fff;flex-direction:column;align-items:stretch;gap:0;height:auto;padding:8px 24px 16px;display:none;position:absolute;top:76px;left:0;right:0;box-shadow:0 16px 35px #0d1b3d1f}.header nav.open{display:flex}.header nav a{border-bottom:1px solid #eff1f4;justify-content:flex-start;min-height:45px;font-size:13px}.header nav a:last-child{border-bottom:0}.header nav a:after{bottom:4px}.header nav a.active:after{left:0;right:calc(100% - 44px)}.menu-toggle{display:block}.brand-lockup.compact{width:150px;height:66px}.language-toggle{min-width:58px;height:38px;font-size:10px}.hero-inner{grid-template-columns:1fr;min-height:auto}.hero-copy{padding:42px 0 32px}.hero h1{font-size:52px}.hero-copy>p{font-size:15px}.hero-photo{width:100vw;height:560px;margin-left:calc(50% - 50vw);position:relative;inset:auto}.hero-photo>img{object-position:60% 43%}.hero-fade{background:linear-gradient(#fff 0,#fff0 18%)}.celta-badge{top:43%;right:32px}.hero-features{grid-template-columns:repeat(4,1fr);max-width:none}.trustgrid{grid-template-columns:1fr 1fr;padding:12px 0}.trustgrid>div{border-right:0;min-height:55px}.about-grid,.content-grid,.places-card{grid-template-columns:1fr}.places-card img{aspect-ratio:1.45;min-height:0}.classes-grid{grid-template-columns:1fr;gap:24px}.learning-flow .how .container{padding-right:0}.british-bridge{width:min(280px,72vw);margin:4px auto -8px;display:block;position:relative;top:auto;right:auto}.about-card{grid-template-columns:1fr 190px}.cta-band-inner{grid-template-columns:130px 1fr}.cta-buttons{flex-direction:row;grid-column:1/-1;padding:0 20px 16px}.cta-buttons .btn{flex:1}.footer-grid{grid-template-columns:1fr 1fr 1fr}.footer-brand{grid-column:1/-1}}@media (max-width:640px){.container{width:calc(100% - 32px)}.cta-top{min-height:38px;padding-inline:12px;font-size:10px}.cta-top span{display:none}.hero-copy{padding-top:34px}.hero h1{font-size:clamp(36px,11vw,46px)}.hero-actions{flex-direction:column}.hero-actions .btn{width:100%}.hero-features{grid-template-columns:1fr 1fr;gap:18px}.hero-photo{height:470px}.hero-photo>img{object-position:62% 43%}.celta-badge{width:132px;min-height:138px;top:43%;right:16px}.trustgrid{grid-template-columns:1fr 1fr}.trustgrid>div{height:auto;padding:12px 8px}.section{padding:39px 0}.section h2{font-size:25px}.about-grid{gap:28px}.places-card{margin-top:24px}.places-card figcaption{padding:26px 22px}.classes-copy p{margin-bottom:20px}.about-card{grid-template-columns:1fr}.about-logo{border-left:0;border-top:1px solid var(--line);padding-block:28px}.steps{grid-template-columns:1fr 1fr;row-gap:28px}.steps:before{display:none}.content-cards{grid-template-columns:1fr}.cta-band-inner{grid-template-columns:105px 1fr}.cta-copy{padding-right:12px}.cta-copy h2{font-size:17px}.cta-buttons{flex-direction:column}.footer-grid{grid-template-columns:1fr 1fr}.footer-brand,.footer-contact,.social-footer{grid-column:1/-1}.social-footer{justify-content:flex-start}.bottom-bar .container{text-align:center;flex-direction:column;justify-content:center;gap:4px;padding:8px 0}}@media (max-width:420px){.cta-top{padding-inline:10px}.brand-lockup.compact{width:140px;height:62px}.hero-features,.trustgrid,.steps{grid-template-columns:1fr}.hero-photo{height:420px}.trustgrid>div{padding-left:18px}.cta-band-inner{grid-template-columns:1fr;padding-top:18px}.cta-photo{display:none}.cta-copy{padding:0 18px 14px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,:before,:after{transition:none!important}}.header nav{font-size:13px}.cta-top{font-size:14px}.pill{font-size:12px}.hero-copy>p{font-size:16px}.hero-features strong{font-size:12px}.hero-features small{font-size:11px}.trustgrid strong{font-size:13px}.trustgrid small,.kicker{font-size:11px}.section p{font-size:15px}.about-list strong{font-size:12px}.about-list small{font-size:10px}.steps h3{font-size:14px}.steps p{font-size:12px}.content-cards strong{font-size:13px}.content-cards small,.content-cards b{font-size:10px}.cta-copy p{font-size:11px}.cta-buttons .btn{font-size:12px}.footer-grid>div:not(.footer-brand){font-size:10px}.footer-grid small,.bottom-bar{font-size:9px}@media (max-width:1050px){.header nav{font-size:11px}}@media (max-width:880px){.cta-top{font-size:12px}.header nav{font-size:13px}}
