@font-face{font-family:Inter;src:local('Aptos'),local('Segoe UI')}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:110px}body{margin:0;color:#173a4c;background:#fff;font-family:Inter,'Segoe UI',sans-serif;font-size:16px;line-height:1.7} :root{--navy:#073f6f;--green:#78a942;--ink:#123f50;--muted:#60737c;--paper:#f4f7f0;--line:#dce5dd}a{color:inherit;text-decoration:none}a:hover{color:#427c2d}button,input,select,textarea{font:inherit}button,a,input,select,canvas{touch-action:manipulation}button{cursor:pointer}img{max-width:100%;display:block;height:auto}h1,h2,h3,p,figure{margin:0}p+p{margin-top:1em}h1,h2,h3{line-height:1.15;letter-spacing:-.035em;font-weight:650;color:var(--navy)}h2{font-size:clamp(28px,3vw,42px);margin-bottom:24px}h3{font-size:23px;margin-bottom:16px;letter-spacing:-.02em}p,li{overflow-wrap:anywhere}p{max-width:72ch}p:empty{display:none}.wrap{width:min(1264px,calc(100% - 96px));margin:auto}.header{position:sticky;top:0;background:#fffffff5;backdrop-filter:blur(16px);z-index:20;border-bottom:1px solid #e5ebe3}.header-inner{height:104px;display:flex;align-items:center;gap:32px}.brand{margin-right:auto;flex-shrink:0}.brand img{width:209px;max-height:82px;object-fit:contain}.header nav{display:flex;gap:27px;align-items:center}.header nav a{font-size:14px;font-weight:600;white-space:nowrap;position:relative;padding:13px 0}.header nav a[aria-current]{color:#507f2c}.header nav a[aria-current]:after{content:'';position:absolute;bottom:4px;left:0;width:22px;height:3px;background:var(--green);border-radius:4px}.button{display:inline-flex;align-items:center;justify-content:center;background:var(--navy);color:white;border:1px solid var(--navy);padding:14px 27px;min-height:50px;border-radius:6px;font-size:14px;font-weight:650;letter-spacing:.025em;transition:background .25s,transform .25s}.button:hover{background:#0a5687;color:white;transform:translateY(-2px)}.access{padding:11px 22px;font-size:12px}.menu-toggle{display:none}.hero{position:relative;background:var(--paper);overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;min-height:620px;align-items:center;gap:36px;padding-top:62px;padding-bottom:78px}.hero-copy{position:relative;z-index:2}.hero h1{font-size:clamp(38px,4.25vw,64px);max-width:690px;font-weight:650;letter-spacing:-.052em;line-height:1.07}.hero h1 strong{font-weight:inherit}.hero h1 span{display:inline}.hero h1 span:last-child{color:#5d8c37}.hero-copy>p{margin-top:28px;font-size:17px;line-height:1.8;max-width:505px;color:#4b6268}.hero .button-row{margin-top:32px}.hero-art{position:relative;padding:20px 0;z-index:1}.hero-photo{width:100%;border-radius:80px 8px 80px 8px;position:relative;z-index:1}.hero-art:before{content:'';position:absolute;inset:-45px -60px -45px 50px;border:1px solid #b0c29e;border-radius:50%;transform:rotate(-20deg)}.hero-art:after{content:'';position:absolute;inset:-9px -24px -9px 20px;border:1px solid #d1dcc6;border-radius:50%;transform:rotate(-20deg)}.orb{position:absolute;background:#87ac4a;width:88px;height:88px;border-radius:50%;bottom:-10px;left:8px;z-index:2;border:12px solid var(--paper)}.welcome{background:var(--navy);color:white;padding:36px 0 44px}.welcome h2{color:#c1de9e;font-size:12px;letter-spacing:.15em;font-weight:600;margin-bottom:25px}.stats{display:grid;grid-template-columns:repeat(4,1fr)}.stat{padding:0 35px;border-right:1px solid #ffffff30}.stat:first-child{padding-left:0}.stat:last-child{border:0}.stat strong{font-size:54px;line-height:1.2;display:block;font-weight:500;letter-spacing:-.045em}.stat span{display:block;color:#d3dfdf;margin-top:8px;font-size:14px}.section{padding:78px 0}.section:nth-of-type(even){background:#f6f8f4}.row{display:flex;gap:30px;align-items:stretch}.row+.row{margin-top:32px}.col{flex:1;min-width:0}.col:empty{display:none}.copy{margin-bottom:24px}.copy:last-child{margin-bottom:0}.copy h2:last-child{margin-bottom:0}.copy p{line-height:1.85}.button-row{margin-top:30px}.row .button-row{text-align:center}.split{display:grid;grid-template-columns:1fr 1fr;gap:84px;align-items:center}.moodle .media img{width:100%;border-radius:8px 80px 8px 8px}.moodle .copy p{color:var(--muted)}.student-strip{padding-bottom:30px}.panorama{max-height:370px;overflow:hidden;background-size:cover;background-position:center}.panorama img{width:100%;max-height:370px;object-fit:contain}.person{height:100%;border-bottom:1px solid var(--line);padding-bottom:25px}.person>img{width:100%;aspect-ratio:1.28;object-fit:contain;background:#ecf0e7;border-radius:6px;margin-bottom:20px}.person .country{display:block;color:#517e2f;font-size:12px;font-weight:650;letter-spacing:.09em;text-transform:uppercase;margin-bottom:8px}.person h3{font-size:24px;max-width:320px}.person p{font-size:15px;line-height:1.75;color:#5b6c73}.person .social{margin-top:18px;width:23px;height:23px;color:#61766e}.people-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:40px 30px}.course{height:100%;background:#fff;border:1px solid #e1e7dd;border-radius:10px;overflow:hidden;transition:transform .35s,box-shadow .35s,border-color .35s;position:relative}.course:hover,.course:focus-within{transform:translateY(-6px);box-shadow:0 14px 35px #153f5010;border-color:#98b873}.course-image{overflow:hidden;display:block;background:#edf2e8}.course-image img{width:100%;aspect-ratio:1.5;object-fit:contain;transition:transform .65s}.course:hover .course-image img{transform:scale(1.025)}.course-copy{padding:27px 26px 63px}.course h3{font-size:23px;line-height:1.3}.course p{font-size:14px;color:#607079}.detail-button{position:absolute;bottom:20px;right:24px;border:1px solid #c9d6bf;border-radius:50%;width:34px;height:34px;line-height:1;color:var(--navy);background:#f3f7ee;font-size:24px}.detail-button:hover{background:#dcebcf}.logo-wall{display:grid;grid-template-columns:repeat(7,1fr);align-items:center;gap:22px 28px}.logo-wall figure{display:flex;align-items:center;justify-content:center;min-height:95px}.logo-wall img{width:100%;max-height:85px;object-fit:contain}.interior-hero{position:relative;min-height:180px;background:var(--navy);display:flex;align-items:center;border-bottom:1px solid var(--navy);overflow:hidden;isolation:isolate}.interior-hero>.wrap{position:relative;z-index:1}.interior-hero:before,.interior-hero:after{content:"";position:absolute;inset:0 0 0 auto;width:48%;pointer-events:none;z-index:-1}.interior-hero:before{background:#ffffff08;clip-path:polygon(0 0,65% 0,100% 100%,35% 100%)}.interior-hero:after{background:#001f3f26;clip-path:polygon(20% 0,100% 0,65% 100%)}.interior-hero h1{color:#fff;font-size:clamp(32px,3.4vw,46px);max-width:100%;padding:36px 0;line-height:1.15}.interior-hero h1:after{content:"";display:block;width:44px;height:3px;background:var(--green);border-radius:2px;margin-top:18px}.page-nosotros main>.section .copy{max-width:1000px;margin:0 auto 32px}.page-nosotros ol{display:grid;grid-template-columns:1fr 1fr;column-gap:60px;padding-left:24px}.page-nosotros li{padding:12px 6px;border-bottom:1px solid #e6ebe2}.page-nosotros li::marker{color:#6b963e;font-weight:650}.page-nosotros .copy ul{padding-left:21px}.page-nosotros .copy ul:empty{display:none}.original-mark{padding:0 0 20px;text-align:center}.original-mark figure{display:inline-block}.original-mark img{max-width:24px;opacity:.5}footer{background:#062e50;color:#d3e1e5;padding:42px 0 24px}.footer-main{display:flex;align-items:center;justify-content:space-between;gap:20px;padding-bottom:32px;border-bottom:1px solid #ffffff22}.footer-brand{display:block;background:white;border-radius:4px;padding:10px 16px}.footer-brand img{width:220px}.socials{display:flex;gap:22px}.social{width:22px;height:22px;display:inline-flex;color:inherit}.social svg{width:100%;height:100%;fill:currentColor}.footer-bottom{padding-top:24px;display:flex;flex-wrap:wrap;gap:15px;align-items:center;font-size:12px}.footer-bottom p:first-child{margin-right:auto}.footer-bottom p+p{margin-top:0}.footer-bottom a{text-decoration:underline}.visit-counter img{max-width:150px;max-height:30px}dialog{width:min(700px,calc(100% - 30px));border:0;border-radius:12px;padding:32px;max-height:90vh;color:var(--ink)}dialog::backdrop{background:#062e50b3;backdrop-filter:blur(5px)}.dialog-close{position:absolute;right:16px;top:16px;border:0;border-radius:50%;background:white;width:38px;height:38px;font-size:30px;z-index:2;color:var(--navy)}.dialog-content img{max-height:360px;width:100%;object-fit:contain;background:var(--paper);margin-bottom:25px}.dialog-content h3{font-size:28px}.dialog-content .button{margin-top:20px}.form-shell{max-width:1000px;margin:auto}.application-form{display:grid;grid-template-columns:1fr 1fr;gap:24px 30px;margin-top:32px}.field{min-width:0}.field>label{display:block;font-weight:600;font-size:14px;margin-bottom:8px}.field label span{color:#557d38}.field input:not([type=checkbox]),.field select{width:100%;min-height:52px;border:1px solid #cbd6c6;border-radius:5px;background:white;padding:11px 14px;font-size:14px;color:var(--ink)}.field input::placeholder{color:#6e7977}.field small{display:block;font-size:12px;color:#586a68;margin-top:7px}.full{grid-column:1/-1}fieldset{border:0;margin:0;padding:0;display:flex;gap:22px;flex-wrap:wrap}.check{display:flex;gap:9px;align-items:center;font-size:14px}.check input{width:18px;height:18px;accent-color:#517b32}.upload{padding:24px;background:#f0f5e9;border:1px dashed #92aa77;border-radius:5px}.upload p{font-size:14px;margin-bottom:15px}.signature-pad{width:100%;height:180px;border:1px solid #cbd6c6;background:white;margin-top:12px;border-radius:5px;touch-action:none;display:none}.text-button{background:none;border:0;text-decoration:underline;color:var(--navy);font-size:13px;padding:8px 0}.local-notice,.notice{border-left:3px solid #7da84e;background:#f0f5e9;padding:16px 20px;font-size:14px;max-width:none}.notice{margin-bottom:20px}.honeypot{position:absolute;left:-10000px;width:1px;height:1px;overflow:hidden}.sr-only,.skip{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.skip:focus{width:auto;height:auto;clip-path:none;top:10px;left:10px;background:white;padding:10px;z-index:100}:focus-visible{outline:3px solid #98bd52;outline-offset:5px} [hidden]{display:none!important}
@media(min-width:1500px){.hero-grid{min-height:680px}.hero h1{font-size:65px}}
@media(max-width:1100px){.wrap{width:calc(100% - 56px)}.header-inner{gap:20px}.header nav{gap:18px}.brand img{width:180px}.header nav a{font-size:12px}.access{padding:10px 16px}.hero-grid{gap:25px;min-height:550px}.hero h1{font-size:46px}.split{gap:40px}.logo-wall{grid-template-columns:repeat(5,1fr)}}
@media(max-width:850px){.header-inner{height:88px}.menu-toggle{display:block;border:0;background:transparent;color:var(--navy);font-size:14px;padding:10px}.header nav{display:none;position:absolute;left:0;right:0;top:88px;background:white;border-bottom:1px solid var(--line);padding:20px 28px;box-shadow:0 15px 20px #123f5010}.header nav.open{display:flex;flex-direction:column;align-items:stretch;gap:2px}.header nav a{font-size:16px;padding:11px 0}.hero-grid{grid-template-columns:1fr 1fr;min-height:500px;padding:50px 0}.hero h1{font-size:39px}.hero-copy>p{font-size:15px}.hero-art:before{inset:-20px}.hero-art:after{inset:0}.stat strong{font-size:42px}.stat{padding:0 20px}.stat span{font-size:12px}.people-grid{grid-template-columns:repeat(2,1fr)}.row{gap:20px}.course-copy{padding:20px 20px 60px}.course h3,.person h3{font-size:20px}.section{padding:55px 0}}
@media(max-width:600px){.wrap{width:calc(100% - 36px)}.brand img{width:156px}.header-inner{gap:8px;height:80px}.header nav{top:80px}.access{font-size:10px;padding:9px 12px;min-height:39px}.menu-toggle{font-size:0;padding:8px}.menu-toggle span{font-size:22px}.hero-grid{grid-template-columns:1fr;gap:36px;padding:40px 0 47px}.hero h1{font-size:42px;line-height:1.08}.hero-copy>p{font-size:15px;margin-top:22px}.hero-art{padding:0 10px;margin:0 8px}.hero-photo{border-radius:45px 6px}.hero-art:before{inset:-13px -10px}.hero-art:after{inset:5px -5px}.orb{width:60px;height:60px;bottom:-20px}.stats{grid-template-columns:1fr 1fr;gap:24px 0}.stat{padding-left:22px}.stat:nth-child(3){padding-left:0}.stat:nth-child(2){border:0}.stat strong{font-size:42px}.welcome{padding:28px 0 35px}.welcome h2{font-size:10px;line-height:1.6;letter-spacing:.1em}.row{flex-direction:column;gap:28px}.row+.row{margin-top:28px}.split{grid-template-columns:1fr;gap:30px}.section{padding:45px 0}.section h2{font-size:30px}.people-grid{grid-template-columns:1fr;gap:28px}.person>img{aspect-ratio:1.4}.person h3{font-size:25px;max-width:none}.person p{font-size:15px}.course h3{font-size:25px}.logo-wall{grid-template-columns:repeat(3,1fr);gap:12px 18px}.logo-wall figure{min-height:70px}.logo-wall img{max-height:68px}.interior-hero{min-height:142px}.interior-hero h1{font-size:32px;max-width:100%;padding:28px 0}.interior-hero h1:after{margin-top:14px}.page-nosotros ol{grid-template-columns:1fr;padding-left:22px}.application-form{grid-template-columns:1fr;gap:21px}.footer-brand img{width:165px}.footer-main{gap:20px}.socials{gap:14px}.social{width:19px;height:19px}.footer-bottom{font-size:11px;gap:10px}.footer-bottom p:first-child{width:100%}.panorama,.panorama img{max-height:180px}.student-strip{padding-bottom:0}.upload{padding:16px}fieldset{gap:12px}.check{width:100%}}
.row:has(.course){display:grid;grid-template-columns:repeat(3,minmax(0,1fr))}.hero-photo{filter:brightness(1.12)}@media(max-width:600px){.row:has(.course){grid-template-columns:1fr}}
/* Teacher cards: a restrained response, without suggesting a clickable profile. */
.person{transition:translate .6s cubic-bezier(.16,1,.3,1),border-color .45s ease,box-shadow .6s ease;border-radius:6px 6px 0 0}
.person>img{transition:transform .8s cubic-bezier(.16,1,.3,1);transform-origin:center bottom}
@media(hover:hover) and (pointer:fine){
 .person:hover{translate:0 -6px;border-bottom-color:var(--green);box-shadow:0 14px 24px -22px #073f6f50}
 .person:hover>img{transform:scale(1.018)}
}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}.person:hover{translate:none}.person:hover>img{transform:none}}

/* Compact footer: original credits and visitor counter. */
footer.footer-compact{padding:22px 0}.footer-compact .footer-bottom{padding-top:0}

/* Align the introductory paragraphs with the institutional content column. */
.page-nosotros main>.section .copy p{max-width:none}

@media(max-width:600px){.interior-hero:before,.interior-hero:after{width:42%;opacity:.65}}

/* Production review: touch targets, readable headings and stable media. */
.menu-toggle,.detail-button,.dialog-close{min-width:44px;min-height:44px}.dialog-content{padding-top:24px}.visit-counter{width:150px;min-height:30px}.visit-counter img{object-fit:contain}.hero-art{min-width:0}.header nav{max-height:calc(100dvh - 80px);overflow:auto}.course-image{position:relative}.course-copy p a,.copy p a{color:#236428;text-decoration:underline;text-underline-offset:3px}.form-fallback p{max-width:70ch}.form-fallback .button{margin-top:24px}.header nav a[aria-current]{color:#3e6922}.hero h1 span:last-child{color:#517b2e}
@media(max-width:360px){.brand img{width:140px}.hero h1{font-size:37px}.wrap{width:calc(100% - 32px)}.access{padding-inline:10px}}
@media(max-width:850px) and (min-width:601px){.row:has(.course){grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(prefers-reduced-motion:reduce){.course:hover,.course:focus-within,.button:hover{transform:none}}
.person .country{color:#416c24}
