
:root{--ink:#23372d;--muted:#5f6878;--blue:#5a9f2c;--paper:#f8f9fb;--line:#dfe4eb;--accent:#d1eb7d;--radius:4px;font-family:Inter,'Segoe UI',sans-serif;color:var(--ink);font-synthesis:none}*{box-sizing:border-box}body{margin:0;background:white}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline;text-underline-offset:5px}button,input,textarea,select{font:inherit}button,a,input,summary{touch-action:manipulation}button{cursor:pointer}.wrap{max-width:1240px;margin:auto;padding-inline:40px}.skip{position:absolute;left:-9999px}.skip:focus{left:20px;top:20px;background:white;z-index:10;padding:16px}.topbar{background:var(--ink);color:#e6ebf5;}.topbar .wrap{display:flex;justify-content:space-between;padding-block:11px}.header{display:flex;align-items:center;justify-content:space-between;min-height:112px;gap:35px}.brand img{width:145px;height:auto;display:block}.header nav{display:flex;flex-wrap:wrap;gap:24px;align-items:center;font-weight:600}.header nav a:last-child{border:1px solid var(--line);padding:11px 16px}.hero{background:var(--paper);border-top:1px solid #edf0f4;overflow:hidden}.hero-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:65px;align-items:center;padding-block:92px}.eyebrow{letter-spacing:.16em;font-weight:700;text-transform:uppercase;display:flex;align-items:center;gap:10px;margin:0 0 24px}.eyebrow>span{width:7px;height:7px;border-radius:50%;background:var(--blue)}h1,h2,h3,p{margin-top:0}h1{font-weight:550;line-height:1.06;letter-spacing:-.048em;margin-bottom:27px;max-width:800px}h2{font-weight:520;line-height:1.16;letter-spacing:-.035em}p{line-height:1.75;color:var(--muted)}.intro{line-height:1.8;max-width:570px;margin-bottom:34px}.actions{display:flex;align-items:center;gap:25px;flex-wrap:wrap}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:28px;background:var(--ink);border:1px solid var(--ink);color:white;padding:17px 21px;border-radius:var(--radius);font-weight:600;text-decoration:none}.button:hover{background:#263b60;text-decoration:none}.button span{line-height:1}.text-link{font-weight:600}.hero-art{aspect-ratio:1;max-width:480px;width:100%;background:#e8eedf;position:relative;overflow:hidden;border-radius:50% 50% 4px 4px}.orbit{position:absolute;border:1px solid #c9d6b9;border-radius:50%;width:130%;height:75%;left:-15%;top:15%;transform:rotate(-35deg)}.orbit-two{transform:rotate(40deg);width:95%;height:110%;top:-5%;left:0}.art-label{position:absolute;top:44px;left:42px;letter-spacing:.12em;font-weight:700;line-height:1.7}.art-label small{color:var(--muted);font-weight:400;letter-spacing:0}.art-symbol{position:absolute;inset:80px 10px 25px;display:flex;align-items:center;justify-content:center;letter-spacing:-.16em;font-weight:700;line-height:1;transform:rotate(-12deg);color:#5a9f2c;text-shadow:3px 10px 0 #d7e3c6}.art-symbol span:last-child{color:var(--ink);margin-left:-8px}.art-note{position:absolute;bottom:28px;left:32px;background:#fff9;border:1px solid #fff;padding:12px 15px;backdrop-filter:blur(6px);display:flex;gap:9px;align-items:center}.status-dot{display:inline-block;width:7px;height:7px;border-radius:50%;background:#5e9754}.pathways{display:grid;grid-template-columns:repeat(3,1fr);padding-block:45px 55px;border-bottom:1px solid var(--line);gap:30px}.pathways>a{padding:12px 25px 5px 0;border-right:1px solid var(--line)}.pathways>a:last-child{border:0}.pathways a:hover{text-decoration:none}.pathways span,.section-marker{font-weight:600;letter-spacing:.13em;color:#6f7d91}.pathways h2{margin:20px 0 28px}.pathways b{font-weight:500}.sections{padding-block:25px 60px}.content-section{padding-block:60px;border-bottom:1px solid var(--line);display:grid;grid-template-columns:1fr;gap:50px}.content-section:has(figure){grid-template-columns:1fr 1fr;align-items:center}.content-section h2{margin-top:20px}.content-section .prose{max-width:850px}.prose p,.prose li{line-height:1.85;color:var(--muted)}.prose a{color:var(--blue);text-decoration:underline}.prose strong{color:var(--ink);font-weight:600}.prose h2,.prose h3{margin-top:30px}.prose h3{}.content-section.card{background:var(--paper);padding:35px;margin-top:30px;border:1px solid var(--line)}figure{margin:0}figure img{display:block;max-width:100%;height:auto;width:100%;border-radius:var(--radius)}.faq{border-bottom:1px solid var(--line);padding:24px 0}.faq summary{cursor:pointer;font-weight:500}.faq .prose{padding-top:20px}.closing{background:var(--ink);color:white;padding:70px 0 80px}.closing h2{margin-bottom:30px}.closing .eyebrow{color:#b9c5d9}.light{background:var(--accent);border-color:var(--accent);color:var(--ink)}footer{padding-top:70px;background:#f5f6f8}.footer-grid{display:grid;grid-template-columns:1.3fr 1fr 1fr;gap:60px;padding-bottom:55px}.wordmark{font-weight:700;letter-spacing:-3px;color:#5a9f2c}.wordmark span{color:var(--ink)}.wordmark i{letter-spacing:0;vertical-align:top;font-style:normal}.footer-grid p{margin-top:18px}.footer-grid h2{letter-spacing:.06em;font-weight:700;margin:12px 0 25px}.footer-grid a{display:block;margin:15px 0;color:var(--muted)}.footer-bottom{display:flex;justify-content:space-between;gap:20px;padding-block:22px;color:var(--muted);border-top:1px solid var(--line)}.inner .hero-grid{grid-template-columns:1fr;padding-block:70px;gap:0}.inner h1{}.inner .intro{max-width:780px}.inner .hero-grid .actions{margin-top:0}.contact-block{display:grid;grid-template-columns:1fr 1.4fr;gap:70px;padding-block:30px 100px}.contact-block h2{}label{display:block;font-weight:600;margin-bottom:18px}input,textarea,select{display:block;width:100%;background:white;border:1px solid #c9d2df;padding:12px 13px;color:var(--ink);border-radius:var(--radius);margin-top:8px;min-width:0}textarea{resize:vertical}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:0 24px}.check{display:flex;gap:10px;align-items:center;font-weight:400;line-height:1.7}.check input{width:17px;height:17px;margin:0;flex-shrink:0}.check a{text-decoration:underline}.honeypot{position:absolute;left:-10000px}.notice{background:#fff7e4;border-left:3px solid #ccab54;padding:18px 22px;line-height:1.7;margin:20px 0;color:var(--ink)}.notice p{margin:8px 0 0}.success{background:#ecf7ec;border-color:#639b67}.editorial{padding-block:80px 100px;min-height:450px}.editorial>p{max-width:760px}.article-row{padding:30px 0;border-top:1px solid var(--line)}.article-row span{}.article-row h2{margin-top:10px}table{border-collapse:collapse;width:100%;text-align:left}th{background:#eef2f8;text-transform:uppercase;letter-spacing:.04em}td,th{padding:16px;border-bottom:1px solid var(--line);vertical-align:top}td a{color:var(--blue)}td code{}td form{margin:0}:focus-visible{outline:3px solid #3993d5;outline-offset:4px}code{overflow-wrap:anywhere}img{max-width:100%}@media(min-width:1500px){.hero-grid{padding-block:110px}}@media(max-width:1050px){.wrap{padding-inline:28px}.header{gap:20px}.header nav{gap:15px;}.hero-grid{gap:35px;padding-block:65px}.art-symbol{}.art-label{top:30px;left:25px}.contact-block{gap:40px}}@media(max-width:740px){.wrap{padding-inline:22px}.topbar .wrap{}.topbar .wrap>span{max-width:160px}.header{display:block;padding-block:18px}.brand img{width:115px}.header nav{gap:15px 19px;margin-top:20px;}.header nav a:last-child{padding:0;border:0}.hero-grid{grid-template-columns:1fr;gap:42px;padding-block:45px}.hero-art{max-width:390px;margin:auto;aspect-ratio:1.1}.art-symbol{}.hero h1{max-width:500px}.intro{}.eyebrow{}.button{padding:15px 18px}.pathways{grid-template-columns:1fr;padding-block:20px;gap:0}.pathways>a{padding:25px 0;border-right:0;border-bottom:1px solid var(--line)}.pathways h2{margin:14px 0}.content-section,.content-section:has(figure){grid-template-columns:1fr;gap:24px;padding-block:38px}.sections{padding-bottom:35px}.content-section h2{}.inner .hero-grid{padding-block:45px}.inner h1{}.closing{padding-block:50px}.footer-grid{grid-template-columns:1fr 1fr;gap:20px}.footer-grid>div:first-child{grid-column:1/-1}.footer-bottom{flex-wrap:wrap;line-height:1.8}.contact-block{grid-template-columns:1fr;gap:15px;padding-bottom:60px}.form-grid{grid-template-columns:1fr}h1{overflow-wrap:break-word}}

/* El rótulo permanece dentro del arco de la ilustración. */
.site-header{position:sticky;top:0;z-index:15;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 3px 12px #23372d08}.skip:focus{z-index:50}.site-header+main,.site-header+main [id]{scroll-margin-top:128px}@media(max-width:740px){.site-header+main,.site-header+main [id]{scroll-margin-top:180px}}
.art-label{left:25%;top:14%}.lead-image{padding-top:40px}.lead-image img{max-height:550px;object-fit:cover}

/* Encabezado compacto al desplazarse, sin ocultar opciones. */
.site-header .header{transition:min-height .18s ease,padding .18s ease,gap .18s ease}
.site-header .brand img{transition:width .18s ease}
.site-header .header nav{transition:gap .18s ease,margin .18s ease}
.site-header .header nav a:last-child{transition:padding .18s ease}
.site-header.is-compact .header{min-height:76px;gap:24px}
.site-header.is-compact .brand img{width:116px}
.site-header.is-compact .header nav{gap:20px}
.site-header.is-compact .header nav a:last-child{padding:8px 14px}
/* El monograma muestra los trazos del recurso original, sin reinterpretarlos. */
.art-symbol{inset:26% 15% 20%;display:block;transform:none;text-shadow:none;letter-spacing:normal}
.art-symbol svg{display:block;width:100%;height:100%;overflow:hidden}
@media(max-width:740px){
  .site-header.is-compact .header{min-height:0;padding-block:10px;gap:16px}
  .site-header.is-compact .brand img{width:90px}
  .site-header.is-compact .header nav{gap:10px 14px;margin-top:10px}
  .site-header.is-compact .header nav a:last-child{padding:0}
}
@media(prefers-reduced-motion:reduce){.site-header .header,.site-header .brand img,.site-header .header nav,.site-header .header nav a:last-child{transition:none}}

/* Variante cromática de portada; conserva exactamente los trazos de la marca. */
.hero-art{background:linear-gradient(145deg,#eef3dc 0%,#e2efdf 58%,#dcefeb 100%)}
.hero-art .orbit{border-color:#bdd0bd}
.hero-art .art-label{color:#28554c}
.art-symbol{inset:28% 17% 20%;transform:rotate(-12deg)}
.art-symbol svg{overflow:visible}
/* Tarifas editoriales de ExBach: misma paleta y tipografía del sitio. */
.exbach-site .tuition-section{padding:38px 0;border-bottom:1px solid var(--line)}
.exbach-site .tuition-section>h2{max-width:850px}
.exbach-site .tuition-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:26px 0}
.exbach-site .tuition-grid article{padding:22px;background:#f3f6ef;border:1px solid var(--line);border-radius:6px}
.exbach-site .tuition-grid h3{line-height:1.5}
.exbach-site .tuition-value{font-weight:600;letter-spacing:-.04em;margin:18px 0}
.exbach-site .tuition-grid p:not(.tuition-value){line-height:1.7;color:var(--muted)}

@media(max-width:800px){.exbach-site .tuition-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:440px){.exbach-site .tuition-grid{grid-template-columns:1fr}}
#exbach-monogram-mask{mask-type:alpha}

/* Cinco niveles compartidos; el menú conserva el tamaño del texto al compactarse. */
:root{
  --text-small:0.875rem;
  --text-body:1rem;
  --text-lead:1.375rem;
  --text-heading:clamp(1.75rem,3vw,2.25rem);
  --text-display:clamp(2.5rem,4.4vw,3.75rem);
  font-size:16px;
}
body{font-size:var(--text-body)}
h1,.hero h1,.inner h1{font-size:var(--text-display)}
h2,.content-section h2,.closing h2,.contact-block h2,.exbach-site .tuition-section>h2{font-size:var(--text-heading)}
h3,.prose h3,.pathways h2,.faq summary{font-size:var(--text-lead)}
.intro,.header nav,.button,.text-link,.footer-grid a,.footer-grid h2,.exbach-site .tuition-grid h3{font-size:var(--text-body)}
.topbar,.topbar .wrap,.eyebrow,.art-label,.art-label small,.art-note,.pathways span,.section-marker,.pathways b,.footer-grid p,.footer-bottom,.wordmark i,label,.check,.notice,.article-row span,table,th,td code,.exbach-site .tuition-grid p:not(.tuition-value){font-size:var(--text-small)}
.exbach-site .tuition-value{font-size:var(--text-heading)}
.wordmark{font-size:var(--text-heading)}
.header nav{line-height:1.5;gap:20px}
.button{line-height:1.5;transition:background-color .15s ease,color .15s ease,border-color .15s ease}
.button span{font-size:inherit}
.button:hover,.button:focus-visible{background:#165e68;border-color:#165e68;color:#fff;text-decoration:none}
.button.light:hover,.button.light:focus-visible{background:#e2f2ab;border-color:#e2f2ab;color:#23372d}
@media(max-width:1050px){.header nav{gap:12px 16px}}
@media(max-width:740px){.header nav{gap:12px 18px}.site-header.is-compact .header nav{gap:10px 16px}.footer-grid{grid-template-columns:1fr}.footer-grid>div:first-child{grid-column:auto}}
@media(prefers-reduced-motion:reduce){.button{transition:none}}
