@import url('/assets/fonts.css');
:root{--blue:#0754ae;--navy:#102c49;--ink:#172f49;--muted:#52667a;--pale:#edf5fc;--line:#d7e2ed;--yellow:#f9d56a;--white:#fff;--radius:16px;font-family:Montserrat,Arial,sans-serif;color:var(--ink);font-size:16px;line-height:1.7;font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:#fff}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #e8ad11;outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin-top:0}h1,h2,h3{line-height:1.15;letter-spacing:-.045em}h1{font-size:clamp(2.5rem,4.3vw,4.5rem);font-weight:600;margin-bottom:26px}h2{font-size:clamp(2rem,3.1vw,3.25rem);font-weight:600;margin-bottom:25px}h3{font-size:1.65rem;font-weight:600}p{color:var(--muted)}.wrap,.section{width:min(1240px,calc(100% - 96px));margin-inline:auto}.section{padding-block:90px}.eyebrow{display:block;font-size:.875rem;letter-spacing:.13em;font-weight:700;color:var(--blue);text-transform:uppercase;margin-bottom:22px;line-height:1.7}.skip{position:fixed;top:-100px;left:20px;z-index:99;background:white;padding:12px}.skip:focus{top:12px}.site-header{border-bottom:1px solid #e5edf3;background:white}.header-inner{display:flex;align-items:center;justify-content:space-between;min-height:112px;gap:30px}.brand{display:flex;align-items:center;gap:13px;flex-shrink:0}.brand img{width:68px;height:68px;object-fit:contain}.brand>span{font-weight:600;font-size:1.6rem;letter-spacing:-.05em;line-height:1.25}.brand small{display:block;font-size:.75rem;letter-spacing:.16em;color:var(--muted);font-weight:500;margin-top:7px}nav{display:flex;align-items:center;gap:27px;font-size:.875rem;font-weight:500}nav>a:not(.nav-cta){padding-block:12px;position:relative}nav>a[aria-current=page]{color:var(--blue)}nav>a[aria-current=page]:after{content:'';position:absolute;width:5px;height:5px;border-radius:50%;background:var(--blue);left:50%;bottom:2px}nav a:hover{color:var(--blue)}.language-switch{display:flex;gap:6px;border-left:1px solid var(--line);padding-left:22px;font-size:.875rem;color:var(--muted)}.language-switch a[aria-current]{color:var(--blue);font-weight:700}.nav-cta{border:1px solid var(--blue);padding:11px 16px;border-radius:7px;color:var(--blue);white-space:nowrap}.nav-cta span{margin-left:9px}.menu-toggle{display:none}.hero{display:grid;grid-template-columns:1.12fr 1fr;gap:60px;padding-top:74px;padding-bottom:70px;align-items:center}.hero-copy{padding-block:10px}.hero h1 em{color:var(--blue);font-style:normal}.hero-intro{font-size:1.06rem;max-width:520px;line-height:1.9;margin-bottom:30px}.hero-actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;gap:28px;align-items:center;justify-content:space-between;background:var(--blue);color:white;border:1px solid var(--blue);border-radius:7px;padding:15px 22px;font-size:.9rem;font-weight:600;cursor:pointer;transition:background .2s,transform .2s;line-height:1.5}.button:hover{background:#003d83;transform:translateY(-2px)}.button.secondary{background:transparent;color:var(--blue);border-color:#bed1e4}.button.secondary:hover{background:white}.button span{font-size:1.3rem;font-weight:400}.text-link{font-weight:600;color:var(--blue);font-size:.9rem;border-bottom:1px solid #b6cee3;padding-bottom:3px}.hero-foot{display:flex;align-items:center;gap:12px;color:var(--muted);font-size:.875rem;margin-top:36px}.tiny-line{width:28px;height:1px;background:var(--blue)}.hero-visual{height:500px;position:relative;padding-bottom:33px}.hero-visual>img{width:100%;height:100%;object-fit:cover;object-position:63% center;border-radius:120px 16px 16px 16px}.hello-label{position:absolute;right:-16px;top:32px;background:var(--yellow);padding:20px 28px;transform:rotate(5deg);border-radius:7px;font-size:1.6rem;line-height:1.25;font-weight:600;letter-spacing:-.04em;box-shadow:0 8px 25px #122c4920}.hello-label span{display:block}.hello-label span:nth-child(2){color:#0754ae}.location-label{position:absolute;left:25px;bottom:8px;padding:18px 24px;background:white;box-shadow:0 10px 45px #173e6520;display:flex;align-items:center;gap:17px;border:1px solid var(--line);border-radius:9px;font-size:.9rem;font-weight:600}.location-label>span{font-size:1.7rem;color:var(--blue)}.location-label small{display:block;font-size:.75rem;color:var(--muted);font-weight:400;margin-top:3px}.intro-strip{background:var(--pale);border-block:1px solid #ddeaf6}.intro-strip .wrap{display:flex;justify-content:space-between;padding-block:20px;gap:20px;font-size:.875rem;font-weight:500;color:#345877}.intro-strip span:before{content:'✓';color:var(--blue);margin-right:12px}.section-heading{display:flex;justify-content:space-between;align-items:end;gap:70px;margin-bottom:34px}.section-heading>p{max-width:410px;font-size:1rem}.section-heading h2{margin-bottom:10px}.course-grid{display:grid;grid-template-columns:1fr 1fr;gap:26px}.course-card{padding:36px 38px;border:1px solid #cbdceb;border-radius:var(--radius);background:#f2f7fc;scroll-margin-top:30px}.course-card.portuguese{background:#f9faf6}.course-top{display:flex;justify-content:space-between;align-items:start;margin-bottom:28px}.language-code{font-size:2.7rem;line-height:1;font-weight:600;letter-spacing:-.06em;color:var(--blue)}.course-mark{display:grid;place-items:center;border:1px solid #bdd2e6;border-radius:50%;width:40px;height:40px;color:var(--blue);font-size:1.35rem}.course-card p{min-height:82px}.course-card h3{margin-bottom:15px}.check-list{list-style:none;padding:0;margin:25px 0;color:#425b72;font-size:.875rem}.check-list li{margin:6px 0}.check-list li:before{content:'✓';color:var(--blue);margin-right:10px}.story{display:grid;grid-template-columns:1fr 1fr;gap:90px;align-items:center;border-top:1px solid var(--line)}.story-visual{position:relative}.story-visual img{aspect-ratio:1.18;object-fit:cover;border-radius:14px}.photo-label{position:absolute;bottom:22px;left:22px;background:white;padding:9px 14px;font-size:.75rem;letter-spacing:.1em;font-weight:600;border-radius:4px}.story-copy p{line-height:1.9}.story-copy .button{margin-top:12px}.voices{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;border-top:1px solid var(--line);align-items:center}.voices blockquote{margin:0;padding:35px 45px;background:var(--pale);border-radius:14px}.voices blockquote>span{font-family:Georgia,serif;font-size:5rem;color:var(--blue);height:60px;display:block;line-height:1}.voices blockquote p{font-size:1.25rem;color:var(--ink);line-height:1.7}.voices cite{font-style:normal;font-weight:600;font-size:.875rem}.voices cite small{display:block;color:var(--muted);font-size:.75rem;font-weight:400;margin-top:5px}.visit{padding:52px 58px;background:var(--blue);color:white;border-radius:16px;display:flex;align-items:center;justify-content:space-between;gap:65px;margin-bottom:90px}.visit .eyebrow{color:#c7e0ff}.visit h2{font-size:2.35rem}.visit p{color:#e1edff;max-width:680px}.visit .button{background:var(--yellow);border-color:var(--yellow);color:#17334f;flex-shrink:0}.visit .button:hover{background:#fbe198}footer{background:#102c49;color:#fff;padding:65px 0 20px}.footer-main{display:grid;grid-template-columns:1.15fr 1fr 1.3fr .8fr;gap:40px}.footer-wordmark{font-size:2.3rem;letter-spacing:-.06em;font-weight:500}.footer-wordmark span{font-size:.75rem;vertical-align:top;margin-left:4px}footer h2{font-size:.875rem;letter-spacing:0;font-weight:600;margin:12px 0 20px}footer p,footer address,footer a:not(.footer-wordmark){font-size:.875rem;color:#c4d3e2;font-style:normal;line-height:1.9}footer a{display:block}footer a:hover{color:white}footer .footer-main>div:first-child p{margin-top:12px}.footer-bottom{border-top:1px solid #35516a;margin-top:45px;padding-top:24px;display:flex;justify-content:space-between;gap:30px;font-size:.75rem;color:#b9cede}.footer-bottom p{max-width:700px;font-size:.75rem;margin:0}.page-hero{padding-block:80px 55px;max-width:1240px}.page-hero h1{font-size:clamp(2.5rem,4vw,4.25rem);max-width:950px}.page-hero>p:last-child{max-width:740px;font-size:1.1rem}.page-hero+.section{padding-top:25px}.principles{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.principles article{border-top:1px solid var(--line);padding-top:24px}.index{font-size:.875rem;color:var(--blue)}.principles h3{margin-top:25px}.class-details{margin-top:40px;padding:35px 40px;border-left:3px solid var(--blue);background:#f8fafc}.class-details h3{font-size:1.3rem}.class-details ul{padding-left:20px;color:var(--muted)}.class-details p{margin-bottom:0;font-size:.9rem}.faq{display:grid;grid-template-columns:.8fr 1.2fr;gap:70px;border-top:1px solid var(--line)}details{border-bottom:1px solid var(--line)}summary{cursor:pointer;display:flex;justify-content:space-between;gap:25px;list-style:none;padding:21px 0;font-weight:600;line-height:1.6;font-size:.95rem}summary::-webkit-details-marker{display:none}summary span{color:var(--blue);font-size:1.4rem}details[open] summary span{transform:rotate(45deg)}details p{padding:0 28px 12px 0;font-size:.95rem}.contact-grid{display:grid;grid-template-columns:1fr 1.1fr;gap:85px}.contact-details>div{margin-bottom:32px}.contact-details .eyebrow{margin-bottom:10px}.large-link{display:block;font-size:1.6rem;font-weight:500;color:var(--navy);line-height:1.6}.email-link{color:var(--blue);font-size:1.1rem}.contact-details address{font-style:normal;color:var(--muted);margin-bottom:13px}.contact-form{border:1px solid var(--line);background:var(--pale);padding:36px;border-radius:14px}.contact-form h2{font-size:2rem}.contact-form label{display:block;font-size:.875rem;font-weight:600;margin:17px 0 6px}.contact-form input,.contact-form textarea{width:100%;border:1px solid #bdcedf;border-radius:5px;background:#fff;padding:12px;color:var(--ink);min-height:48px}.contact-form textarea{resize:vertical}.contact-form input:focus,.contact-form textarea:focus{outline:2px solid var(--blue);outline-offset:2px}.contact-form .button{margin-top:20px}.form-note{font-size:.875rem;margin:16px 0 0}.contact-form [role=status]{font-size:.875rem;background:white;padding:15px;margin-top:15px;border-left:3px solid var(--blue)}
@media(min-width:1600px){.hero{gap:80px}.hero h1{font-size:4.35rem}}
@media(max-width:1100px){.wrap,.section{width:calc(100% - 60px)}nav{gap:18px}.nav-cta{display:none}.hero{gap:35px}.hero-visual{height:460px}.story{gap:45px}.footer-main{gap:25px}.hero h1{font-size:3.25rem}}
@media(max-width:760px){.wrap,.section{width:calc(100% - 40px)}.header-inner{min-height:88px}.brand img{width:52px;height:52px}.brand>span{font-size:1.35rem}.brand small{font-size:.75rem}.menu-toggle{display:flex;flex-direction:column;justify-content:center;gap:6px;background:none;border:1px solid var(--line);border-radius:5px;width:44px;height:44px;padding:11px}.menu-toggle span{display:block;height:2px;background:var(--blue);width:100%}.site-header{position:relative;z-index:5}nav{display:none;position:absolute;top:100%;left:0;right:0;background:white;padding:20px;box-shadow:0 15px 25px #102c4912;border-bottom:1px solid var(--line);align-items:stretch;font-size:1rem}nav.open{display:flex;flex-direction:column;gap:6px}nav>a[aria-current=page]:after{display:none}nav a{padding:10px!important}.language-switch{border-left:0;padding:0;align-items:center;font-size:.875rem}.nav-cta{display:block}.hero{grid-template-columns:1fr;padding-top:40px;gap:35px;padding-bottom:45px}.hero h1{font-size:clamp(2.5rem,10vw,3.5rem)}.hero .eyebrow{font-size:.66rem}.hero-intro{font-size:1rem}.hero-actions{gap:20px}.hero-foot{margin-top:25px}.hero-visual{height:345px;margin-right:8px}.hero-visual>img{border-radius:75px 12px 12px 12px;object-position:center}.hello-label{top:20px;right:-8px;font-size:1.3rem;padding:16px 24px}.location-label{left:16px;bottom:0;padding:14px 18px}.intro-strip .wrap{flex-direction:column;gap:8px;font-size:.78rem;padding-block:17px}.section{padding-block:55px}.section-heading{display:block;margin-bottom:25px}.section-heading>p{margin-top:20px}.course-grid{grid-template-columns:1fr;gap:18px}.course-card{padding:28px}.course-card p{min-height:0}.course-card h3{font-size:1.5rem}.story,.voices,.faq,.contact-grid{grid-template-columns:1fr;gap:32px}.story-copy h2{font-size:2.2rem}.story-visual img{aspect-ratio:1.35}.voices blockquote{padding:28px}.voices blockquote p{font-size:1.1rem}.visit{flex-direction:column;align-items:start;padding:30px;gap:12px;margin-bottom:55px}.visit h2{font-size:2rem}.footer-main{grid-template-columns:1fr 1fr;gap:32px}footer{padding-top:45px}.footer-main>div:first-child{grid-column:1/-1}.footer-bottom{display:block;margin-top:30px}.footer-bottom p{margin-top:16px}.page-hero{padding-block:48px 30px}.page-hero h1{font-size:2.5rem}.page-hero>p:last-child{font-size:1rem}.principles{grid-template-columns:1fr;gap:25px}.principles h3{margin-top:12px}.class-details{padding:25px}.contact-form{padding:25px}.contact-grid{gap:20px}.large-link{font-size:1.45rem}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}

.carousel{min-width:0}.carousel-stage{position:relative}.carousel-slide[hidden]{display:none!important}.photo-carousel .carousel-stage{aspect-ratio:1.18;background:var(--pale);border:1px solid var(--line);border-radius:14px;overflow:hidden}.photo-carousel .carousel-slide{width:100%;height:100%}.story-visual .photo-carousel img{width:100%;height:100%;aspect-ratio:auto;object-fit:contain;border-radius:0}.carousel-controls:not([hidden]){display:flex;align-items:center;justify-content:center;gap:12px;margin-top:16px}.carousel-controls button{min-width:44px;min-height:44px;border:1px solid #bed1e4;border-radius:7px;background:white;color:var(--blue);cursor:pointer;font:inherit;font-size:.875rem;padding:8px 12px}.carousel-controls button:hover{background:var(--pale)}.carousel-controls button:focus-visible{outline:3px solid var(--blue);outline-offset:3px}.carousel-controls [data-pause-toggle]{min-width:100px;margin-left:8px}.carousel-count{font-size:.875rem;color:var(--muted);min-width:48px;text-align:center}.testimonial-carousel .carousel-stage{background:var(--pale);border-radius:14px;min-height:330px;display:grid;align-items:center}.testimonial-carousel .carousel-slide{grid-area:1/1}.voices .testimonial-carousel blockquote{background:transparent}.testimonial-carousel cite small{margin-top:7px}@media(max-width:760px){.photo-carousel .carousel-stage{aspect-ratio:1.18}.testimonial-carousel .carousel-stage{min-height:340px}.carousel-controls:not([hidden]){gap:8px}}
.form-trap{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.button:disabled{opacity:.65;cursor:wait;transform:none}
