:root{--navy:#17243f;--blue:#4866ea;--purple:#8e5ee8;--cream:#fffaf2;--mint:#dff6ed;--coral:#ff8d72;--text:#26334d;--muted:#68738a;--white:#fff;--shadow:0 20px 60px rgba(30,43,80,.12)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Manrope,sans-serif;color:var(--text);background:#fff;line-height:1.65}a{text-decoration:none;color:inherit}.container{width:min(1160px,calc(100% - 40px));margin:auto}.site-header{position:sticky;top:0;z-index:50;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);border-bottom:1px solid rgba(30,40,70,.07)}.nav-wrap{min-height:78px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:12px;align-items:center}.brand-mark{display:grid;place-items:center;width:43px;height:43px;border-radius:14px;background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff;font:800 24px Playfair Display}.brand strong,.brand small{display:block}.brand strong{font-size:14px}.brand small{font-size:10px;color:var(--muted);letter-spacing:.06em;text-transform:uppercase}.main-nav{display:flex;align-items:center;gap:30px;font-size:14px;font-weight:700}.main-nav a:hover{color:var(--blue)}.nav-cta{background:var(--navy);color:#fff!important;padding:12px 20px;border-radius:14px}.menu-toggle{display:none;border:0;background:none;font-size:25px}.hero{position:relative;overflow:hidden;background:linear-gradient(140deg,#fbf8ff 0%,#f2f5ff 54%,#fffaf2 100%);padding:90px 0 85px}.hero-grid,.split-grid,.benefits-grid{display:grid;grid-template-columns:1.08fr .92fr;gap:75px;align-items:center}.eyebrow{display:inline-flex;font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;color:var(--blue);margin-bottom:16px}.hero h1,.section h2{font-family:Playfair Display,serif;color:var(--navy);line-height:1.08;margin:0}.hero h1{font-size:clamp(45px,5.2vw,72px);letter-spacing:-.03em}.hero h1 em{color:var(--purple);font-style:normal}.hero-copy>p{font-size:18px;color:var(--muted);max-width:620px;margin:25px 0 30px}.hero-actions{display:flex;gap:14px;flex-wrap:wrap}.btn{display:inline-flex;justify-content:center;align-items:center;border:0;border-radius:15px;padding:15px 23px;font-weight:800;font-family:inherit;cursor:pointer}.btn-primary{background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff;box-shadow:0 12px 30px rgba(82,91,224,.28)}.btn-secondary{background:#fff;color:var(--navy);border:1px solid #e6e9f1}.hero-trust{display:flex;gap:29px;margin-top:38px}.hero-trust div{display:flex;flex-direction:column}.hero-trust strong{font-size:14px;color:var(--navy)}.hero-trust span{font-size:11px;color:var(--muted)}.hero-visual{position:relative;min-height:500px}.main-card{position:absolute;inset:25px 25px 35px 35px;background:#fff;border-radius:42% 58% 45% 55%/42% 42% 58% 58%;box-shadow:var(--shadow);overflow:hidden}.illustration{position:absolute;inset:0;background:linear-gradient(160deg,#e9e4ff,#dff5fa)}.sun{position:absolute;width:90px;height:90px;border-radius:50%;background:#ffd175;right:65px;top:55px}.desk{position:absolute;width:290px;height:90px;border-radius:30px;background:#d59968;bottom:80px;left:80px;transform:rotate(-3deg)}.student{position:absolute;width:150px;height:210px;border-radius:70px 70px 40px 40px;background:var(--purple);bottom:118px;left:140px}.student:before{content:"";position:absolute;width:88px;height:88px;border-radius:50%;background:#e9b18d;left:30px;top:-65px;box-shadow:0 -15px 0 7px #27334a}.book{position:absolute;width:55px;height:18px;border-radius:5px;bottom:183px;z-index:4}.b1{background:#ff8d72;left:80px}.b2{background:#4f68df;left:92px;bottom:203px}.b3{background:#e7bd49;left:104px;bottom:223px}.floating-card{position:absolute;display:flex;gap:12px;align-items:center;background:#fff;border-radius:18px;padding:15px 18px;box-shadow:var(--shadow);z-index:3}.floating-card>span{display:grid;place-items:center;width:38px;height:38px;border-radius:12px;background:var(--mint);color:#34886d;font-weight:800}.floating-card strong,.floating-card small{display:block}.floating-card strong{font-size:13px}.floating-card small{font-size:10px;color:var(--muted)}.card-top{right:-15px;top:55px}.card-bottom{left:-20px;bottom:35px}.hero-orb{position:absolute;border-radius:50%;filter:blur(1px)}.orb-one{width:330px;height:330px;background:rgba(139,91,230,.08);left:-120px;top:30px}.orb-two{width:220px;height:220px;background:rgba(255,164,110,.1);right:-70px;bottom:-60px}.section{padding:105px 0}.section h2{font-size:clamp(35px,4vw,53px);letter-spacing:-.02em}.section-copy>p,.section-heading>p{color:var(--muted);font-size:16px}.check-list{list-style:none;padding:0;margin:28px 0}.check-list li{margin:13px 0;padding-left:30px;position:relative}.check-list li:before{content:"✓";position:absolute;left:0;color:var(--blue);font-weight:800}.about-cards{display:grid;grid-template-columns:1fr 1fr;gap:17px}.value-card{padding:27px;border:1px solid #e7eaf1;border-radius:22px;background:#fff}.value-card.featured{background:var(--navy);color:#fff;grid-row:span 2;align-content:center}.value-card span{font-size:12px;font-weight:800;color:var(--purple)}.value-card h3{font-size:21px;margin:13px 0 6px}.value-card p{font-size:13px;color:var(--muted);margin:0}.value-card.featured p{color:#bfc8da}.programs{background:var(--cream)}.section-heading{text-align:center;max-width:700px;margin:0 auto 50px}.program-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.program-card{background:#fff;padding:30px;border-radius:22px;border:1px solid #f1e8dc;transition:.3s}.program-card:hover{transform:translateY(-7px);box-shadow:var(--shadow)}.program-icon{width:54px;height:54px;display:grid;place-items:center;border-radius:17px;background:#edf0ff;color:var(--blue);font-weight:800;font-size:17px}.program-card>span{display:block;margin-top:21px;font-size:10px;letter-spacing:.12em;text-transform:uppercase;color:var(--purple);font-weight:800}.program-card h3{font-size:20px;margin:8px 0}.program-card p{font-size:13px;color:var(--muted)}.program-card a{font-size:13px;font-weight:800;color:var(--blue)}.benefits{overflow:hidden}.benefits-visual{min-height:460px;position:relative;display:grid;place-items:center}.circle-big{width:350px;height:350px;border-radius:50%;background:linear-gradient(135deg,#dfe4ff,#f3e4ff);display:grid;place-items:center;border:25px solid #f7f8ff}.circle-inner{width:220px;height:220px;display:grid;place-content:center;text-align:center;border-radius:50%;background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff;font-size:27px}.mini-tag{position:absolute;background:#fff;padding:12px 17px;border-radius:14px;box-shadow:var(--shadow);font-size:12px;font-weight:800}.tag-a{top:45px;left:10px}.tag-b{right:5px;top:180px}.tag-c{bottom:40px;left:50px}.benefit-list article{display:flex;gap:19px;padding:21px 0;border-bottom:1px solid #e7eaf1}.benefit-list b{color:var(--purple)}.benefit-list h3{margin:0;font-size:18px}.benefit-list p{margin:4px 0 0;color:var(--muted);font-size:13px}.testimonials{background:#f6f8fd}.testimonial-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.testimonial-grid blockquote{margin:0;background:#fff;border-radius:23px;padding:30px;box-shadow:0 10px 30px rgba(35,48,80,.06)}.stars{color:#f2b84a;letter-spacing:3px}.testimonial-grid p{font-size:14px;color:#58637a}.testimonial-grid footer{display:flex;align-items:center;gap:12px;margin-top:22px}.testimonial-grid footer>span{display:grid;place-items:center;width:43px;height:43px;background:#eaeefe;color:var(--blue);border-radius:50%;font-weight:800}.testimonial-grid strong,.testimonial-grid small{display:block}.testimonial-grid strong{font-size:12px}.testimonial-grid small{font-size:10px;color:var(--muted)}.contact{padding-bottom:70px}.contact-box{background:linear-gradient(135deg,#1b2949,#313d79);color:#fff;border-radius:34px;padding:60px;display:grid;grid-template-columns:1fr .85fr;gap:60px;box-shadow:var(--shadow)}.contact-box h2{color:#fff}.contact-box p{color:#c8d0e2}.eyebrow.light{color:#b8c5ff}.contact-details{display:flex;flex-direction:column;gap:11px;margin-top:27px;font-size:13px}.contact-form{background:#fff;color:var(--text);padding:27px;border-radius:22px;display:grid;gap:13px}.contact-form label{font-size:11px;font-weight:800}.contact-form input,.contact-form select,.contact-form textarea{width:100%;margin-top:5px;border:1px solid #dfe3eb;border-radius:10px;padding:11px;font:inherit;font-size:12px}.contact-form small{font-size:9px;color:var(--muted)}.footer{padding:50px 0 25px;background:#fff}.footer-grid{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:30px}.footer-grid p{font-size:13px;color:var(--muted)}.socials{display:flex;gap:18px;font-size:12px;font-weight:700}.footer-bottom{border-top:1px solid #eaedf2;margin-top:30px;padding-top:20px;display:flex;justify-content:space-between;font-size:10px;color:var(--muted)}.whatsapp{position:fixed;right:20px;bottom:20px;width:54px;height:54px;border-radius:50%;display:grid;place-items:center;background:#25d366;color:#fff;font-weight:800;box-shadow:0 10px 28px rgba(0,0,0,.2);z-index:40}.reveal{opacity:0;transform:translateY(25px);transition:.7s ease}.reveal.visible{opacity:1;transform:none}.delay-1{transition-delay:.12s}.delay-2{transition-delay:.22s}@media(max-width:900px){.main-nav{position:absolute;top:78px;left:0;right:0;background:#fff;flex-direction:column;align-items:stretch;padding:22px 30px;display:none;box-shadow:var(--shadow)}.main-nav.open{display:flex}.menu-toggle{display:block}.hero-grid,.split-grid,.benefits-grid,.contact-box{grid-template-columns:1fr}.hero-visual{min-height:440px}.program-grid,.testimonial-grid{grid-template-columns:repeat(2,1fr)}.hero{padding-top:65px}.contact-box{padding:40px}}@media(max-width:620px){.container{width:min(100% - 26px,1160px)}.hero h1{font-size:42px}.hero-trust{display:grid;grid-template-columns:1fr 1fr}.hero-visual{min-height:365px}.main-card{inset:25px 0}.student{left:110px}.desk{left:45px}.card-top{right:-7px}.card-bottom{left:-7px}.program-grid,.testimonial-grid{grid-template-columns:1fr}.about-cards{grid-template-columns:1fr}.value-card.featured{grid-row:auto}.section{padding:75px 0}.circle-big{width:290px;height:290px}.circle-inner{width:185px;height:185px}.contact-box{padding:29px 20px}.footer-grid{grid-template-columns:1fr}.footer-bottom{gap:13px;flex-direction:column}.footer-brand{margin-bottom:5px}}

/* Photographic layout */
.photo-card img,.about-media>img,.benefits-photo>img,.gallery-item img{width:100%;height:100%;object-fit:cover;display:block}.photo-card img{object-position:center}.about-media{display:grid;gap:18px}.about-media>img{height:340px;border-radius:26px;box-shadow:var(--shadow);object-position:center}.about-media .about-cards{grid-template-columns:1fr 1fr}.about-media .value-card.featured{grid-row:auto}.benefits-photo{min-height:480px;position:relative}.benefits-photo>img{position:absolute;inset:20px;width:calc(100% - 40px);height:calc(100% - 40px);border-radius:32px;box-shadow:var(--shadow);object-position:center}.gallery{background:var(--cream)}.gallery-grid{display:grid;grid-template-columns:1.25fr 1fr 1fr;gap:20px}.gallery-item{height:360px;margin:0;position:relative;border-radius:24px;overflow:hidden;box-shadow:0 16px 40px rgba(30,43,80,.12)}.gallery-item img{transition:transform .5s ease}.gallery-item:hover img{transform:scale(1.04)}.gallery-item figcaption{position:absolute;left:16px;bottom:16px;background:rgba(23,36,63,.88);color:#fff;border-radius:12px;padding:9px 13px;font-size:12px;font-weight:800;backdrop-filter:blur(8px)}.gallery-large{height:360px}.contact-details a{word-break:break-word}.socials{flex-wrap:wrap}
@media(max-width:900px){.gallery-grid{grid-template-columns:1fr 1fr}.gallery-large{grid-column:1/-1}.about-media>img{height:380px}}
@media(max-width:620px){.about-media .about-cards,.gallery-grid{grid-template-columns:1fr}.gallery-large{grid-column:auto}.gallery-item,.gallery-large{height:300px}.about-media>img{height:300px}.benefits-photo{min-height:390px}.benefits-photo>img{inset:0;width:100%;height:100%}}

/* Mobile-first refinements */
.mobile-cta{display:none}
@media(max-width:620px){
  html{scroll-padding-top:68px}
  body{padding-bottom:70px;overflow-x:hidden}
  .container{width:calc(100% - 32px)}
  .site-header{background:rgba(255,255,255,.97)}
  .nav-wrap{min-height:68px}
  .brand{gap:9px;min-width:0}
  .brand-mark{width:38px;height:38px;border-radius:12px;font-size:21px;flex:0 0 auto}
  .brand>span:last-child{min-width:0}
  .brand strong{font-size:13px;line-height:1.2}
  .brand small{font-size:8px;letter-spacing:.025em;white-space:nowrap}
  .menu-toggle{width:42px;height:42px;padding:0;border-radius:12px;background:#f1f3fb;color:var(--navy);font-size:0;position:relative;flex:0 0 auto}
  .menu-toggle:before,.menu-toggle:after,.menu-toggle{transition:.2s ease}
  .menu-toggle:before{content:"☰";font-size:23px;position:absolute;inset:0;display:grid;place-items:center}
  .menu-toggle[aria-expanded="true"]:before{content:"×";font-size:29px}
  .main-nav{top:68px;padding:14px 16px 20px;gap:4px;border-top:1px solid #edf0f6;max-height:calc(100vh - 68px);overflow-y:auto}
  .main-nav a{padding:13px 14px;border-radius:11px;font-size:15px}
  .main-nav a:not(.nav-cta):hover{background:#f5f6fb}
  .nav-cta{text-align:center;margin-top:5px;padding:13px 16px}

  .hero{padding:42px 0 50px}
  .hero-grid{gap:30px}
  .eyebrow{font-size:10px;letter-spacing:.1em;margin-bottom:12px}
  .hero h1{font-size:clamp(37px,11.2vw,48px);line-height:1.04}
  .hero-copy>p{font-size:16px;line-height:1.6;margin:20px 0 24px}
  .hero-actions{display:grid;grid-template-columns:1fr;gap:10px}
  .btn{width:100%;min-height:51px;padding:14px 18px;border-radius:14px;font-size:14px}
  .hero-trust{grid-template-columns:repeat(3,1fr);gap:7px;margin-top:24px}
  .hero-trust div{padding:12px 7px;text-align:center;background:rgba(255,255,255,.7);border:1px solid rgba(72,102,234,.08);border-radius:13px}
  .hero-trust strong{font-size:12px;line-height:1.25}
  .hero-trust span{font-size:8.5px;line-height:1.35;margin-top:3px}
  .hero-visual{min-height:315px}
  .main-card{inset:0 0 15px;border-radius:28px}
  .photo-card img{object-position:center 35%}
  .floating-card{padding:10px 12px;border-radius:13px;gap:8px;max-width:205px}
  .floating-card>span{width:31px;height:31px;border-radius:9px;font-size:12px}
  .floating-card strong{font-size:10px;line-height:1.25}
  .floating-card small{font-size:8px;line-height:1.3}
  .card-top{top:13px;right:-5px}
  .card-bottom{left:-5px;bottom:0}

  .section{padding:62px 0}
  .section h2{font-size:clamp(31px,9.3vw,41px);line-height:1.1}
  .section-copy>p,.section-heading>p{font-size:15px;line-height:1.65}
  .section-heading{margin-bottom:30px;text-align:left}
  .split-grid,.benefits-grid{gap:32px}
  .check-list{margin:22px 0 0}
  .check-list li{padding-left:26px;margin:11px 0;font-size:14px;line-height:1.55}
  .about-media{gap:12px}
  .about-media>img{height:270px;border-radius:20px}
  .about-media .about-cards{gap:10px}
  .value-card{padding:19px;border-radius:17px}
  .value-card h3{font-size:18px;margin:8px 0 5px}
  .value-card p{font-size:12px;line-height:1.5}

  .program-grid{gap:13px}
  .program-card{padding:22px;border-radius:19px}
  .program-card:hover{transform:none}
  .program-icon{width:48px;height:48px;border-radius:14px;font-size:15px}
  .program-card>span{margin-top:16px}
  .program-card h3{font-size:19px;line-height:1.3}
  .program-card p{font-size:13px;line-height:1.6}
  .program-card a{display:inline-flex;padding:9px 0;font-size:13px}

  .benefits-photo{min-height:310px}
  .benefits-photo>img{border-radius:22px}
  .mini-tag{padding:8px 11px;font-size:10px;border-radius:10px}
  .tag-a{top:12px;left:8px}.tag-b{top:auto;right:8px;bottom:58px}.tag-c{bottom:9px;left:20px}
  .benefit-list article{gap:13px;padding:16px 0}
  .benefit-list h3{font-size:16px}
  .benefit-list p{font-size:12.5px;line-height:1.55}

  .gallery-grid{gap:13px}
  .gallery-item,.gallery-large{height:245px;border-radius:19px}
  .gallery-item figcaption{left:11px;bottom:11px;padding:8px 10px;font-size:10px}
  .gallery-item:hover img{transform:none}
  .testimonial-grid{gap:13px}
  .testimonial-grid blockquote{padding:22px;border-radius:19px}
  .testimonial-grid p{font-size:13px;line-height:1.6}

  .contact{padding-bottom:38px}
  .contact-box{padding:26px 16px;border-radius:24px;gap:26px}
  .contact-box h2{font-size:34px}
  .contact-box p{font-size:14px;line-height:1.6}
  .contact-details{gap:8px;margin-top:20px;font-size:12px}
  .contact-details a{padding:10px 12px;background:rgba(255,255,255,.08);border-radius:11px}
  .contact-form{padding:18px;border-radius:17px;gap:11px}
  .contact-form label{font-size:11px}
  .contact-form input,.contact-form select,.contact-form textarea{font-size:16px;padding:12px;border-radius:11px}
  .contact-form small{font-size:9px;line-height:1.4}

  .footer{padding:34px 0 20px;text-align:center}
  .footer-grid{gap:17px;justify-items:center}
  .footer-grid p{margin:0}
  .socials{justify-content:center;gap:10px}
  .socials a{padding:9px 11px;background:#f3f5fa;border-radius:10px}
  .footer-bottom{align-items:center;margin-top:22px;padding-top:18px}
  .whatsapp{display:none}
  .mobile-cta{position:fixed;left:0;right:0;bottom:0;z-index:100;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:9px 12px max(9px,env(safe-area-inset-bottom));background:rgba(255,255,255,.97);border-top:1px solid #e7eaf1;box-shadow:0 -8px 25px rgba(20,30,55,.1);backdrop-filter:blur(12px)}
  .mobile-cta a{min-height:46px;display:flex;align-items:center;justify-content:center;border-radius:13px;font-size:13px;font-weight:800}
  .mobile-cta-call{background:linear-gradient(135deg,var(--blue),var(--purple));color:#fff}
  .mobile-cta-whatsapp{background:#25d366;color:#fff}
}
@media(max-width:380px){
  .brand small{display:none}
  .hero h1{font-size:36px}
  .hero-trust{grid-template-columns:1fr}
  .hero-trust div{flex-direction:row;justify-content:center;gap:7px;align-items:center}
  .hero-visual{min-height:285px}
  .floating-card{max-width:180px}
}
@media(prefers-reduced-motion:reduce){
  html{scroll-behavior:auto}
  .reveal{opacity:1;transform:none;transition:none}
  .program-card,.gallery-item img{transition:none}
}


/* Language selector with visible country flags */
.nav-actions{display:flex;align-items:center;gap:10px}
.language-selector{position:relative;flex:0 0 auto}
.language-button{height:42px;display:flex;align-items:center;gap:7px;padding:0 12px;border:1px solid #e1e5ef;border-radius:13px;background:#fff;color:var(--navy);font:800 12px Manrope,sans-serif;cursor:pointer;box-shadow:0 6px 18px rgba(30,43,80,.06)}
.language-button:hover{border-color:#cbd3e5;background:#fafbff}
.language-flag{width:25px;height:17px;display:block;object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px rgba(23,36,63,.12)}
.language-arrow{font-size:10px;color:var(--muted);transition:transform .2s ease}
.language-button[aria-expanded="true"] .language-arrow{transform:rotate(180deg)}
.language-menu{position:absolute;top:calc(100% + 9px);right:0;min-width:166px;max-height:min(70vh,430px);overflow-y:auto;padding:7px;background:#fff;border:1px solid #e3e7f0;border-radius:14px;box-shadow:0 18px 45px rgba(30,43,80,.16);display:none;z-index:90}
.language-selector.open .language-menu{display:grid;gap:3px}
.language-option{width:100%;display:flex;align-items:center;gap:10px;padding:10px 11px;border:0;border-radius:10px;background:transparent;color:var(--text);font:700 12px Manrope,sans-serif;text-align:left;cursor:pointer}
.language-option>img{width:25px;height:17px;display:block;object-fit:cover;border-radius:3px;box-shadow:0 0 0 1px rgba(23,36,63,.12);flex:0 0 auto}
.language-option:hover,.language-option.active{background:#f1f3ff;color:var(--blue)}
@media(max-width:900px){
  .nav-wrap{position:relative}
  .nav-actions{margin-left:auto}
}
@media(max-width:620px){
  .nav-actions{gap:7px}
  .language-button{height:42px;min-width:66px;padding:0 9px;border-radius:12px;background:#f7f8fc;box-shadow:none}
  .language-flag{width:25px;height:17px}
  .language-code{font-size:11px}
  .language-menu{right:0;min-width:145px}
}
@media(max-width:380px){
  .language-button{min-width:45px;padding:0 9px}
  .language-code,.language-arrow{display:none}
}
