:root {
  --ink: #10192a;
  --paper: #f4efe6;
  --white: #fffaf2;
  --red: #ea4d2f;
  --blue: #164f87;
  --aqua: #9fdad4;
  --line: rgba(16, 25, 42, .22);
  --sans: "DM Sans", system-ui, sans-serif;
  --serif: "Newsreader", Georgia, serif;
}
* { box-sizing: border-box; }
html { scroll-behavior: smooth; scroll-padding-top: 5rem; }
body { margin: 0; color: var(--ink); background: var(--paper); font: 400 1rem/1.6 var(--sans); }
a { color: inherit; }
img { display: block; max-width: 100%; }
button, input, select, textarea { font: inherit; }
.skip { position: fixed; left: 1rem; top: -5rem; z-index: 99; padding: .7rem 1rem; background: var(--white); }
.skip:focus { top: 1rem; }
.site-header { min-height: 5rem; padding: 0 clamp(1.25rem, 4vw, 4rem); display: flex; align-items: center; justify-content: space-between; border-bottom: 1px solid var(--line); position: sticky; top: 0; z-index: 20; background: color-mix(in srgb, var(--paper) 94%, transparent); backdrop-filter: blur(12px); }
.brand { font: 500 1.65rem/1 var(--serif); text-decoration: none; letter-spacing: -.04em; }
.brand span { color: var(--red); }
nav { display: flex; gap: clamp(.85rem, 2vw, 2.2rem); align-items: center; }
nav a { font-size: .72rem; font-weight: 600; text-decoration: none; text-transform: uppercase; letter-spacing: .07em; }
nav a:hover, nav a:focus-visible { color: var(--red); }
.menu { display: none; background: none; border: 0; color: inherit; font: 600 .85rem var(--sans); text-transform: uppercase; cursor: pointer; }
.hero { min-height: calc(100vh - 5rem); display: grid; grid-template-columns: minmax(0, 1.05fr) minmax(22rem, .95fr); position: relative; }
.hero-copy { padding: clamp(4rem, 9vw, 8rem) clamp(1.25rem, 6vw, 6rem); align-self: center; }
.eyebrow, .kicker { font-size: .72rem; font-weight: 600; letter-spacing: .15em; text-transform: uppercase; }
.hero h1 { font: 400 clamp(5rem, 12vw, 10rem)/.76 var(--serif); letter-spacing: -.065em; margin: 1.8rem 0 2rem; }
.hero h1 em { color: var(--red); font-weight: 400; }
.lede { max-width: 38rem; font: 400 clamp(1.3rem, 2.3vw, 2rem)/1.35 var(--serif); }
.text-link { display: inline-flex; gap: .8rem; border-bottom: 1px solid currentColor; text-decoration: none; padding: .45rem 0; font-weight: 600; }
.hero-art { margin: 0; position: relative; min-height: 35rem; overflow: hidden; background: var(--blue); }
.hero-art img { width: 100%; height: 100%; object-fit: cover; mix-blend-mode: luminosity; transition: filter .5s ease, transform 1s ease; }
.hero-art:hover img { mix-blend-mode: normal; transform: scale(1.015); }
.hero-art figcaption { position: absolute; right: 1.5rem; bottom: 1.5rem; left: 1.5rem; padding: .75rem 1rem; background: rgba(16,25,42,.9); color: var(--white); font-size: .78rem; }
.index { position: absolute; bottom: 1rem; left: 1.2rem; writing-mode: vertical-rl; font-size: .64rem; letter-spacing: .14em; }
.section-label { display: flex; gap: 1rem; align-items: center; font-size: .7rem; font-weight: 600; letter-spacing: .14em; text-transform: uppercase; }
.section-label::after { content: ""; height: 1px; background: currentColor; opacity: .3; flex: 1; }
.section-label span { color: var(--red); }
.section-label.light span, .kicker { color: #ff745c; }
.professional-profile, .profile, .community, .testimonials, .service-section, .advisory { padding: clamp(5rem, 9vw, 8rem) clamp(1.25rem, 6vw, 6rem); }
.professional-profile { background: var(--white); }
.professional-intro { margin-top: 4rem; display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(3rem, 9vw, 8rem); align-items: start; }
.professional-intro h2, .testimonials h2 { font: 400 clamp(3rem, 6vw, 6rem)/.95 var(--serif); letter-spacing: -.045em; margin: 0; }
.professional-intro > div { max-width: 40rem; font-size: 1.08rem; }
.professional-intro > div p:first-child { margin-top: 0; }
.profile-highlights { display: grid; grid-template-columns: repeat(4, 1fr); margin-top: 5rem; border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.profile-highlights article { min-height: 13rem; padding: 1.5rem; border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.profile-highlights span { display: block; color: var(--red); font-size: .7rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; }
.profile-highlights strong { display: block; margin: 1.4rem 0 .7rem; font: 400 1.6rem/1.05 var(--serif); }
.profile-highlights p { margin: 0; font-size: .88rem; }
.professional-links { display: flex; flex-wrap: wrap; gap: 1rem; margin-top: 2rem; }
.professional-links a { display: inline-flex; align-items: center; gap: .8rem; min-height: 4rem; padding: .7rem 1rem; border: 1px solid var(--line); background: var(--paper); text-decoration: none; font-size: .86rem; transition: transform .2s ease, border-color .2s ease, box-shadow .2s ease; }
.professional-links a:hover, .professional-links a:focus-visible { color: var(--ink); border-color: var(--red); box-shadow: 0 8px 22px rgba(16,25,42,.08); transform: translateY(-2px); }
.platform-icon { width: 1.65rem; height: 1.65rem; flex: 0 0 auto; }
.platform-icon.cvlac { color: var(--blue); }
.platform-icon.linkedin { color: #0a66c2; }
.platform-link-copy { display: grid; gap: .05rem; line-height: 1.2; }
.platform-link-copy strong { font-size: .92rem; }
.platform-link-copy small { color: #58606c; font-size: .72rem; font-weight: 500; }
.platform-arrow { margin-left: .5rem; color: var(--red); font-size: 1rem; }
.inline-platform-icon { width: 1.2rem; height: 1.2rem; flex: 0 0 auto; color: var(--blue); }
.text-link.platform-text-link { align-items: center; }
.education-panel { margin-top: 4rem; padding: clamp(1.5rem, 4vw, 3rem); border: 1px solid var(--line); background: var(--paper); }
.education-panel-heading { display: grid; grid-template-columns: .75fr 1.25fr; gap: clamp(2rem, 6vw, 5rem); align-items: end; margin-bottom: 2.2rem; }
.education-panel-heading h3 { margin: .45rem 0 0; font: 400 clamp(2rem, 4vw, 3.6rem)/1 var(--serif); letter-spacing: -.035em; color: #234b3b; }
.education-panel-heading > p { margin: 0; color: #4f5862; }
.education-grid { display: grid; grid-template-columns: minmax(15rem, .75fr) minmax(0, 1.25fr); gap: clamp(2rem, 5vw, 4.5rem); }
.education-group-title { margin: 0 0 1rem; color: var(--red); font-size: .7rem; font-weight: 700; letter-spacing: .12em; text-transform: uppercase; }
.academic-item, .education-entry { border-top: 1px solid var(--line); padding: 1rem 0; }
.academic-item:last-child { border-bottom: 1px solid var(--line); }
.academic-item span { display: block; margin-bottom: .25rem; color: var(--blue); font-size: .72rem; font-weight: 700; letter-spacing: .08em; }
.academic-item strong, .education-entry strong { display: block; font-size: .94rem; line-height: 1.35; }
.academic-item p, .education-entry p { margin: .25rem 0 0; color: #59616a; font-size: .8rem; line-height: 1.45; }
.education-entry { display: grid; grid-template-columns: 4.2rem 1fr; gap: 1rem; }
.education-year { align-self: start; display: inline-flex; justify-content: center; padding: .25rem .45rem; background: #e6ece9; color: #234b3b; font-size: .72rem; font-weight: 700; }
.education-more { border-bottom: 1px solid var(--line); }
.education-more summary { display: flex; justify-content: space-between; align-items: center; gap: 1rem; padding: 1rem 0; color: var(--blue); cursor: pointer; font-size: .82rem; font-weight: 700; list-style: none; }
.education-more summary::-webkit-details-marker { display: none; }
.education-more summary span { font-size: 1.25rem; font-weight: 400; transition: transform .2s ease; }
.education-more[open] summary span { transform: rotate(45deg); }
.education-more .education-entry:first-of-type { border-top: 1px solid var(--line); }
@media(max-width:760px){.education-panel-heading,.education-grid{grid-template-columns:1fr}.education-panel-heading{gap:1rem}.education-entry{grid-template-columns:3.8rem 1fr}}
.profile-grid { margin-top: 4rem; display: grid; grid-template-columns: 1.05fr .95fr; gap: clamp(3rem, 9vw, 8rem); align-items: start; }
.profile h2, .community h2, .service-copy h2, .advisory h2, .contact h2 { font: 400 clamp(3rem, 6vw, 6rem)/.95 var(--serif); letter-spacing: -.045em; margin: 0; }
.profile-copy { max-width: 38rem; font-size: 1.08rem; }
.service-index { margin-top: 2.5rem; border-top: 1px solid var(--line); }
.service-index a { display: grid; grid-template-columns: 3rem 1fr; gap: 1rem; align-items: center; padding: 1rem 0; border-bottom: 1px solid var(--line); text-decoration: none; font-weight: 600; }
.service-index a:hover { color: var(--red); }
.service-index span { font-size: .7rem; letter-spacing: .1em; color: var(--red); }
.dark-section { background: var(--ink); color: var(--white); }
.community-grid { margin-top: 4rem; display: grid; grid-template-columns: 1.1fr .9fr; gap: clamp(3rem, 8vw, 7rem); align-items: start; }
.community h2 { max-width: 50rem; }
.community-copy { color: #d7dbe2; font-size: 1.08rem; }
.channel-actions { display: grid; gap: 1rem; margin-top: 2.5rem; }
.action-card { display: grid; grid-template-columns: 5rem 1fr auto; gap: 1rem; align-items: center; padding: 1.3rem 1.4rem; border: 1px solid rgba(255,255,255,.28); text-decoration: none; transition: background .2s ease, color .2s ease; }
.action-card:hover, .action-card:focus-visible { background: var(--white); color: var(--ink); }
.action-card span { font-size: .7rem; letter-spacing: .1em; text-transform: uppercase; }
.action-card strong { font-weight: 500; }
.action-card i { font-style: normal; font-size: 1.2rem; }
.testimonials { background: var(--aqua); }
.testimonials-layout { display: grid; grid-template-columns: 1.1fr .9fr; gap: clamp(3rem, 8vw, 7rem); align-items: start; margin-top: 4rem; }
.testimonials-copy { max-width: 38rem; font-size: 1.08rem; }
.testimonial-link { display: inline-flex; justify-content: space-between; gap: 2rem; margin-top: 1.5rem; padding: 1rem 1.2rem; background: var(--ink); color: var(--white); text-decoration: none; font-weight: 600; }
.testimonial-link:hover, .testimonial-link:focus-visible { background: var(--red); }
.service-section { border-top: 1px solid var(--line); }
.service-layout { margin-top: 4rem; display: grid; grid-template-columns: minmax(0, .85fr) minmax(32rem, 1.15fr); gap: clamp(3rem, 8vw, 7rem); align-items: start; }
.service-copy { position: sticky; top: 8rem; }
.service-copy h2 { margin: .7rem 0 2rem; }
.service-copy > p:not(.kicker):not(.legal-note) { font-size: 1.08rem; max-width: 38rem; }
.kicker.blue { color: var(--blue); }
.feature-list { list-style: none; margin: 2.5rem 0; padding: 0; border-top: 1px solid currentColor; }
.feature-list li { position: relative; padding: .85rem 0 .85rem 1.6rem; border-bottom: 1px solid color-mix(in srgb, currentColor 30%, transparent); }
.feature-list li::before { content: "•"; position: absolute; left: .25rem; color: var(--red); }
.request-form { background: var(--white); border: 1px solid var(--line); padding: clamp(1.5rem, 4vw, 3rem); }
.form-heading { display: flex; justify-content: space-between; gap: 2rem; align-items: end; padding-bottom: 1.5rem; margin-bottom: 2rem; border-bottom: 1px solid var(--line); }
.form-heading p { margin: 0; font: 400 clamp(1.8rem, 3vw, 2.7rem)/1 var(--serif); }
.form-heading span { max-width: 15rem; font-size: .78rem; color: #556070; }
.form-grid { display: grid; grid-template-columns: 1fr 1fr; gap: 1.2rem; }
.form-grid > label, fieldset { display: flex; flex-direction: column; gap: .45rem; font-size: .78rem; font-weight: 600; letter-spacing: .03em; }
.form-grid .full { grid-column: 1 / -1; }
input, select, textarea { width: 100%; border: 1px solid rgba(16,25,42,.3); border-radius: 0; background: transparent; color: inherit; padding: .78rem .85rem; min-height: 3rem; }
textarea { resize: vertical; line-height: 1.5; }
input:focus, select:focus, textarea:focus { outline: 3px solid color-mix(in srgb, var(--red) 25%, transparent); border-color: var(--red); }
fieldset { border: 1px solid rgba(16,25,42,.3); padding: 1rem; margin: 0; }
legend { padding: 0 .4rem; }
.checks { display: flex; flex-wrap: wrap; gap: .65rem 1.1rem; }
.checks label { display: inline-flex; align-items: center; gap: .45rem; font-weight: 400; font-size: .9rem; letter-spacing: 0; }
.checks input { width: 1rem; height: 1rem; min-height: 0; padding: 0; accent-color: var(--red); }
.submit-button, .contact-button { display: inline-flex; align-items: center; justify-content: space-between; gap: 1rem; width: 100%; margin-top: 1.5rem; border: 0; background: var(--ink); color: var(--white); padding: 1rem 1.2rem; text-decoration: none; font-weight: 600; cursor: pointer; }
.submit-button:hover, .submit-button:focus-visible { background: var(--red); }
.form-note { margin: 1rem 0 0; font-size: .72rem; color: #606876; }
.english-conversation { background: var(--blue); color: var(--white); border: 0; }
.english-conversation .feature-list { color: #e6edf5; }
.english-conversation .feature-list li::before { color: var(--aqua); }
.form-dark { background: #0d3154; border-color: rgba(255,255,255,.25); }
.form-dark .form-heading, .form-dark fieldset, .form-dark input, .form-dark select, .form-dark textarea { border-color: rgba(255,255,255,.3); }
.form-dark .form-heading span, .form-dark .form-note { color: #cad7e4; }
.form-dark select option { color: var(--ink); background: var(--white); }
.light-button { background: var(--white); color: var(--ink); }
.light-button:hover, .light-button:focus-visible { background: var(--aqua); color: var(--ink); }
.service-cta-card { min-height: 28rem; display: flex; flex-direction: column; justify-content: space-between; }
.service-cta-card h3 { margin: .8rem 0 1.5rem; font: 400 clamp(2.4rem, 4.5vw, 4.5rem)/1 var(--serif); letter-spacing: -.035em; }
.service-cta-card p:not(.kicker) { max-width: 38rem; color: #d7e4f0; }
.service-cta-card .submit-button { margin-top: 3rem; }
.translation-services { background: var(--aqua); }
.translation-card { background: color-mix(in srgb, var(--white) 82%, transparent); }
.translation-card p:not(.kicker) { color: var(--ink); }
.digital-services { background: var(--white); }
.digital-grid article { min-height: 28rem; }
.advisory-heading { display: grid; grid-template-columns: 1.15fr .85fr; gap: 5rem; align-items: end; margin: 4rem 0; }
.advisory-heading p { font-size: 1.08rem; }
.audience-grid { display: grid; grid-template-columns: repeat(3, 1fr); border-top: 1px solid var(--line); border-left: 1px solid var(--line); }
.audience-grid article { display: flex; flex-direction: column; min-height: 26rem; padding: clamp(1.5rem, 3vw, 2.5rem); border-right: 1px solid var(--line); border-bottom: 1px solid var(--line); }
.audience-grid article > span { color: var(--red); font-size: .7rem; letter-spacing: .12em; }
.audience-grid h3 { font: 400 clamp(1.8rem, 3vw, 2.8rem)/1.05 var(--serif); margin: 2rem 0 1rem; }
.audience-grid p { margin: 0 0 2rem; }
.audience-grid .text-link { margin-top: auto; align-self: flex-start; font-size: .88rem; }
.contact { padding: clamp(6rem, 13vw, 11rem) 1.25rem; text-align: center; background: var(--red); color: var(--white); }
.contact h2 { font-size: clamp(5rem, 13vw, 11rem); color: var(--paper); }
.contact > p:not(.eyebrow) { font-size: 1.08rem; }
.contact-button { width: fit-content; margin: 2rem auto 0; background: var(--ink); padding-inline: 1.5rem; }
.contact-button:hover, .contact-button:focus-visible { background: var(--white); color: var(--ink); }
footer { padding: 2rem clamp(1.25rem, 4vw, 4rem); display: grid; grid-template-columns: 1fr auto 1fr; gap: 2rem; align-items: center; font-size: .75rem; text-transform: uppercase; letter-spacing: .08em; }
footer p:last-child { text-align: right; }
.footer-brand { font-size: 1.4rem; }
@media (max-width: 980px) {
  .menu { display: block; }
  nav { display: none; position: absolute; top: 5rem; left: 0; right: 0; background: var(--paper); padding: 1.5rem; flex-direction: column; align-items: flex-start; border-bottom: 1px solid var(--line); }
  nav.open { display: flex; }
  nav a { font-size: .82rem; }
  .service-layout { grid-template-columns: 1fr; }
  .service-copy { position: static; }
  .audience-grid { grid-template-columns: 1fr; }
  .audience-grid article { min-height: auto; }
  .profile-highlights { grid-template-columns: 1fr 1fr; }
}
@media (max-width: 800px) {
  .hero { grid-template-columns: 1fr; }
  .hero-copy { padding-bottom: 4rem; }
  .hero-art { min-height: 65vh; }
  .index { display: none; }
  .professional-intro, .profile-grid, .community-grid, .testimonials-layout, .advisory-heading { grid-template-columns: 1fr; gap: 2.5rem; }
  .form-heading { align-items: start; flex-direction: column; gap: .7rem; }
  .form-heading span { max-width: none; }
  footer { grid-template-columns: 1fr 1fr; }
  footer p:nth-child(2) { display: none; }
}
@media (max-width: 560px) {
  .hero h1 { font-size: clamp(4.2rem, 25vw, 7rem); }
  .service-layout { gap: 2.5rem; }
  .form-grid { grid-template-columns: 1fr; }
  .form-grid > label, .form-grid .full, .form-grid > fieldset { grid-column: 1; }
  .action-card { grid-template-columns: 1fr auto; }
  .action-card span { grid-column: 1 / -1; }
  .profile-highlights { grid-template-columns: 1fr; }
}
@media (prefers-reduced-motion: reduce) { html { scroll-behavior: auto; } * { transition: none !important; } }


/* PERFIL Y SERVICIOS ESPECIALIZADOS — actualización noviembre 2026 */
.hero .second-link{margin-left:1.5rem}
.editorial-section{padding:clamp(5rem,9vw,8rem) clamp(1.25rem,6vw,6rem)}
.trajectory{background:#e8f0f0}
.editorial-heading{display:grid;grid-template-columns:1.1fr .9fr;gap:clamp(2rem,7vw,7rem);margin:3.5rem 0;align-items:end}
.editorial-heading h2{font:400 clamp(2.6rem,5.5vw,5.4rem)/.98 var(--serif);letter-spacing:-.045em;margin:.3rem 0 0}
.editorial-heading>p{font-size:1.05rem;max-width:37rem}
.editorial-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line);margin-bottom:2rem}
.editorial-cards article{padding:clamp(1.5rem,3vw,3rem);background:#e8f0f0}
.editorial-cards article>span,.recognition-list article>span{color:var(--red);font-weight:700;font-size:.72rem;letter-spacing:.1em;text-transform:uppercase}
.editorial-cards h3,.recognition-list h3,.platform-stories h3,.library-feature h3{font:400 clamp(1.65rem,2.7vw,2.5rem)/1.08 var(--serif);margin:1.2rem 0 .8rem}
.editorial-cards p{margin:0;max-width:37rem}
.community-subnote{max-width:39rem;color:#d7dbe2;font-size:1.05rem;margin:2rem 0 0}
.platform-stories{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1.5rem;margin-top:4rem}
.platform-stories article{border:1px solid rgba(255,255,255,.3);padding:clamp(1.5rem,3vw,2.5rem)}
.platform-stories h3{margin:.6rem 0 1rem}
.platform-stories p:not(.kicker){color:#d7dbe2;max-width:40rem}
.platform-stories a{display:inline-block;margin-top:1rem;font-weight:700;text-underline-offset:.3rem}
.impact{background:#f4efe6}
.impact-stats{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}
.impact-stats>div{padding:clamp(1rem,2.5vw,2rem);background:var(--paper)}
.impact-stats strong{display:block;font:400 clamp(2.8rem,5vw,5rem)/1 var(--serif)}
.impact-stats span{font-size:.8rem;display:block;margin-top:.75rem}
.impact-chart{display:grid;grid-template-columns:.85fr 1.15fr;gap:clamp(2rem,6vw,6rem);margin:3.5rem 0;border-top:1px solid var(--line);padding-top:2rem}
.impact-chart h3{font:400 clamp(1.9rem,3vw,2.8rem)/1.1 var(--serif);margin:0}
.impact-chart p,.library-note{font-size:.94rem;max-width:42rem}
.year-bars>div{display:grid;grid-template-columns:4.5rem 1fr 2rem;align-items:center;gap:.8rem;margin:.75rem 0}
.year-bars span,.year-bars strong{font-size:.8rem}
.bar-track{height:1rem;background:#d7dbd9}
.bar-track i{display:block;height:100%;background:var(--blue)}
.year-bars small{display:block;margin-top:1rem;font-size:.75rem;color:#586274}
.library-feature{display:flex;align-items:end;justify-content:space-between;gap:3rem;padding:2rem;background:#d7e6e3}
.library-feature>div{max-width:45rem}
.library-feature h3{margin:.5rem 0}
.library-feature .testimonial-link{white-space:nowrap}
.special-services{background:#fffaf2}
.service-training{border-top:1px solid var(--line);padding-top:clamp(2rem,4vw,3rem);max-width:72rem}
.service-training h3{font:400 clamp(2rem,3.2vw,3.2rem)/1.08 var(--serif);letter-spacing:-.035em;margin:.7rem 0 1.4rem}
.service-training p:not(.kicker){font-size:1.05rem;line-height:1.7;max-width:58rem}
.service-training .text-link{margin-top:.7rem}
.service-cards article{background:#fffaf2;display:flex;flex-direction:column}
.service-cards .text-link{margin-top:auto;align-self:flex-start}
.service-cards article p{margin-bottom:2rem}
.recognitions{background:#e8f0f0}
.recognition-list{border-top:1px solid var(--line)}
.recognition-list article{display:grid;grid-template-columns:7rem 1fr;gap:2rem;align-items:start;padding:2rem 0;border-bottom:1px solid var(--line)}
.recognition-list h3{margin:0 0 .65rem}
.recognition-list p{margin:0;max-width:48rem}
.contact-copy{max-width:60rem;margin:2rem auto;text-align:left}
.contact-copy p{font-size:1.02rem;line-height:1.7}
.contact-actions{display:flex;gap:1rem;justify-content:center;flex-wrap:wrap}
.contact-actions .contact-button{margin:1rem 0 0;min-height:3.6rem}
.contact-secondary{background:transparent;border:1px solid var(--white)}
.contact-secondary:hover{background:var(--white);color:var(--ink)}
@media(max-width:1050px){.platform-stories{grid-template-columns:1fr}}
@media(max-width:800px){.editorial-heading,.impact-chart,.platform-stories{grid-template-columns:1fr}.editorial-cards{grid-template-columns:1fr}.impact-stats{grid-template-columns:1fr 1fr}.library-feature{flex-direction:column;align-items:start}.library-feature .testimonial-link{white-space:normal}}
@media(max-width:560px){.hero .second-link{margin:1rem 0 0}.impact-stats{grid-template-columns:1fr}.recognition-list article{grid-template-columns:1fr;gap:.6rem}.contact-actions{flex-direction:column}.contact-actions .contact-button{justify-content:center}.year-bars>div{grid-template-columns:3.5rem 1fr 2rem}}

/* Corrección móvil: el título de contacto debe quedar visible completo */
@media (max-width: 600px) {
  .contact h2 {
    font-size: clamp(2.45rem, 10vw, 3.75rem);
    line-height: 1.05;
    letter-spacing: -0.045em;
    max-width: 100%;
    overflow-wrap: break-word;
  }
}
/* Contacto directo: elección de tema y dos canales sin intermediarios */
.contact-simple{width:min(100%,790px);margin:3rem auto 0;padding:clamp(1.35rem,3vw,2.5rem);background:var(--white);color:var(--ink);text-align:left;border:1px solid rgba(16,25,42,.25)}
.contact-simple-intro{font-size:1.06rem;line-height:1.6;margin:0 0 1.75rem}
.contact-simple-fields{display:grid;grid-template-columns:1fr 1fr;gap:1.1rem}
.contact-simple-fields label{display:flex;flex-direction:column;min-width:0;gap:.45rem;font-size:.86rem;font-weight:600;line-height:1.5}
.contact-simple-fields .wide{grid-column:1/-1}
.contact-simple-fields :is(input,select,textarea){width:100%;max-width:100%;min-width:0;min-height:3rem;display:block;background:#fff;color:var(--ink);border:1px solid #9ba5ad;border-radius:4px;padding:.75rem .8rem;font-size:1rem;font-weight:400}
.contact-simple-fields textarea{min-height:6.5rem;resize:vertical}
.contact-simple-fields input::placeholder,.contact-simple-fields textarea::placeholder{color:#66717d;opacity:1}
.contact-simple-note{margin:1.3rem 0 .7rem;color:#405563;font-size:.82rem;line-height:1.5}
.contact-simple-note:empty{display:none}
.contact-direct-actions{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.contact-direct{display:flex;justify-content:space-between;align-items:center;min-height:3.6rem;padding:.9rem 1rem;gap:.7rem;border:1px solid var(--ink);background:var(--ink);color:#fff;text-decoration:none;font-size:.94rem;font-weight:700;line-height:1.3}
.contact-direct:hover,.contact-direct:focus-visible{background:var(--blue);border-color:var(--blue);color:#fff}
.contact-direct.email-direct{background:#fff;color:var(--ink)}
.contact-direct.email-direct:hover,.contact-direct.email-direct:focus-visible{background:#e7eeed;color:var(--ink)}
.contact-simple-disclaimer{margin:1.2rem 0 0;font-size:.8rem;line-height:1.6;color:#4b5d69}
@media(max-width:650px){
  .contact-simple-fields,.contact-direct-actions{grid-template-columns:1fr}
  .contact-simple-fields .wide{grid-column:1}
  .contact-simple{margin-top:1.9rem}
  .contact-direct{min-height:3.5rem}
}

/* Promoción editorial discreta del estudio de diseño web en el pie de página */
footer p.eranios-promo:last-child{grid-column:1/-1;justify-self:stretch;text-align:left;border-top:1px solid var(--line);padding-top:1.2rem;margin:0;font-size:.87rem;font-weight:400;letter-spacing:normal;text-transform:none;line-height:1.65}
footer .eranios-promo a{font-weight:700;text-decoration:underline;text-underline-offset:3px}
@media(max-width:980px){footer .eranios-promo{display:block;grid-column:1/-1}}


/* MARCA NELLY PANESSO — verde bosque, marfil, terracota y grafito */
body.professional-site{
  --ink:#30312f;
  --paper:#f3ede2;
  --white:#fbf7ef;
  --red:#b85c42;
  --blue:#234b3b;
  --aqua:#d8e2d6;
  --line:rgba(48,49,47,.22);
  background:var(--paper);
  color:var(--ink);
}
body.professional-site .site-header{
  background:color-mix(in srgb,var(--paper) 95%,transparent);
}
body.professional-site .hero-copy{
  background:linear-gradient(145deg,#f8f2e8 0%,#f3ede2 72%,#e7ddd0 100%);
}
body.professional-site .hero h1 em,
body.professional-site .brand span,
body.professional-site .section-label span,
body.professional-site .profile-highlights span,
body.professional-site .editorial-cards article>span,
body.professional-site .recognition-list article>span{
  color:var(--red);
}
body.professional-site .hero-art{
  background:var(--blue);
  border-left:clamp(.55rem,1.2vw,1rem) solid var(--red);
}
body.professional-site .hero-art img{
  filter:saturate(.95) contrast(1.02);
  mix-blend-mode:normal;
  object-position:55% center;
}
body.professional-site .hero-art figcaption{
  background:rgba(35,75,59,.92);
  color:var(--white);
}
body.professional-site .professional-profile{
  background:var(--white);
}
body.professional-site .professional-intro h2,
body.professional-site .editorial-heading h2,
body.professional-site .service-training h3,
body.professional-site .recognition-list h3{
  color:var(--blue);
}
body.professional-site .profile-highlights article{
  background:color-mix(in srgb,var(--white) 82%,var(--paper));
}
body.professional-site .trajectory,
body.professional-site .recognitions{
  background:#dfe7dd;
}
body.professional-site .editorial-cards article{
  background:#e8eee6;
}
body.professional-site .impact{
  background:var(--paper);
}
body.professional-site .impact-stats>div{
  background:var(--paper);
}
body.professional-site .bar-track{
  background:#d5d7cf;
}
body.professional-site .bar-track i{
  background:var(--blue);
}
body.professional-site .library-feature{
  background:#d7e1d5;
}
body.professional-site .special-services{
  background:var(--white);
}
body.professional-site .testimonials{
  background:#d8e2d6;
}
body.professional-site .contact{
  background:var(--red);
  color:var(--white);
}
body.professional-site .contact h2{
  color:#fbf7ef;
}
body.professional-site .testimonial-link,
body.professional-site .contact-direct{
  background:var(--blue);
}
body.professional-site .testimonial-link:hover,
body.professional-site .testimonial-link:focus-visible,
body.professional-site .contact-direct:hover,
body.professional-site .contact-direct:focus-visible{
  background:var(--red);
}
body.professional-site .community.dark-section{
  background:#10192a;
  color:#fffaf2;
}
body.professional-site .community .section-label span,
body.professional-site .community .kicker{
  color:#ff745c;
}
body.professional-site .community .community-copy,
body.professional-site .community .platform-stories p:not(.kicker){
  color:#d7dbe2;
}
body.professional-site .community .platform-stories article{
  border-color:rgba(255,255,255,.3);
}
@media(max-width:800px){
  body.professional-site .hero-art{
    border-left:0;
    border-top:.65rem solid var(--red);
  }
}


/* HUB DE CONTENIDO ARCHIVÍSTICO — organización de canales */
body.professional-site .ca-hub-nav{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:1px;
  margin:3.5rem 0 1rem;
  background:rgba(255,255,255,.24);
  border:1px solid rgba(255,255,255,.24);
}
body.professional-site .ca-hub-nav a{
  position:relative;
  min-height:9.5rem;
  padding:1.35rem 2.4rem 1.35rem 1.35rem;
  display:flex;
  flex-direction:column;
  justify-content:space-between;
  gap:1rem;
  background:#17293a;
  color:#f5f7f7;
  text-decoration:none;
  transition:background .2s ease,color .2s ease;
}
body.professional-site .ca-hub-nav a.ca-hub-featured{
  grid-column:span 2;
  background:#e6e7d8;
  color:#17293a;
}
body.professional-site .ca-hub-nav span{
  font:400 clamp(1.35rem,2vw,2rem)/1.05 var(--serif);
}
body.professional-site .ca-hub-nav small{
  max-width:18rem;
  color:inherit;
  opacity:.78;
  font-size:.74rem;
  line-height:1.45;
}
body.professional-site .ca-hub-nav b{
  position:absolute;
  right:1.25rem;
  top:1.15rem;
  color:#78c0bc;
  font-size:1.1rem;
}
body.professional-site .ca-hub-nav a.ca-hub-featured b{color:#1b6d76}
body.professional-site .ca-hub-nav a:hover,
body.professional-site .ca-hub-nav a:focus-visible{
  background:#1b6d76;
  color:#fff;
}
body.professional-site .ca-hub-nav a:hover b,
body.professional-site .ca-hub-nav a:focus-visible b{color:#fff}
@media(max-width:900px){
  body.professional-site .ca-hub-nav{grid-template-columns:repeat(2,minmax(0,1fr))}
  body.professional-site .ca-hub-nav a.ca-hub-featured{grid-column:span 2}
}
@media(max-width:560px){
  body.professional-site .ca-hub-nav{grid-template-columns:1fr}
  body.professional-site .ca-hub-nav a,
  body.professional-site .ca-hub-nav a.ca-hub-featured{grid-column:1;min-height:7.6rem}
}


/* IDENTIDAD PASTEL DE CONTENIDO ARCHIVÍSTICO */
body.professional-site .community.dark-section{
  background:linear-gradient(135deg,#fff8f6 0%,#f9fbfa 48%,#eef9fc 100%);
  color:#27323a;
}
body.professional-site .community .section-label{color:#53606a}
body.professional-site .community .section-label span,
body.professional-site .community .kicker{color:#0d5ec4}
body.professional-site .community .community-copy,
body.professional-site .community .platform-stories p:not(.kicker){color:#53606a}
body.professional-site .community h2{color:#27323a}
body.professional-site .ca-brand-logo{
  width:min(100%,54rem);
  margin:3rem auto 1rem;
  background:#fff;
  border:1px solid #e7edf0;
  box-shadow:0 20px 55px rgba(63,99,121,.12);
  overflow:hidden;
}
body.professional-site .ca-brand-logo img{width:100%;height:auto}
body.professional-site .ca-hub-nav{
  background:#e5edf1;
  border-color:#e5edf1;
}
body.professional-site .ca-hub-nav a,
body.professional-site .ca-hub-nav a.ca-hub-featured{
  color:#27323a;
  border:0;
}
body.professional-site .ca-hub-nav a:nth-child(1){background:linear-gradient(135deg,#dff5f2,#e7f5fc)}
body.professional-site .ca-hub-nav a:nth-child(2){background:#f9d8df}
body.professional-site .ca-hub-nav a:nth-child(3){background:#f9dcc8}
body.professional-site .ca-hub-nav a:nth-child(4){background:#f8e8ad}
body.professional-site .ca-hub-nav a:nth-child(5){background:#cfeee8}
body.professional-site .ca-hub-nav b,
body.professional-site .ca-hub-nav a.ca-hub-featured b{color:#0d5ec4}
body.professional-site .ca-hub-nav a:hover,
body.professional-site .ca-hub-nav a:focus-visible{
  background:#e7f5fc;
  color:#0d5ec4;
  outline:3px solid rgba(13,94,196,.16);
  outline-offset:-3px;
}
body.professional-site .ca-hub-nav a:hover b,
body.professional-site .ca-hub-nav a:focus-visible b{color:#0d5ec4}
body.professional-site .community .platform-stories article{
  background:rgba(255,255,255,.72);
  border-color:#dfe8ed;
  box-shadow:0 12px 30px rgba(63,99,121,.07);
}
body.professional-site .community .platform-stories article:nth-child(1){border-top:5px solid #f2aebc}
body.professional-site .community .platform-stories article:nth-child(2){border-top:5px solid #f4c49f}
body.professional-site .community .platform-stories article:nth-child(3){border-top:5px solid #9edbd3}
body.professional-site .community .platform-stories article:nth-child(4){border-top:5px solid #8ed2ef}
body.professional-site .community .platform-stories a{color:#0d5ec4}
body.professional-site .impact{
  background:linear-gradient(180deg,#fffaf8 0%,#f7fbfc 100%);
}
body.professional-site .impact .editorial-heading h2,
body.professional-site .impact .kicker.blue,
body.professional-site .impact-chart h3,
body.professional-site .library-feature h3{color:#0d5ec4}
body.professional-site .impact-stats>div:nth-child(1){background:#f9d8df}
body.professional-site .impact-stats>div:nth-child(2){background:#f9dcc8}
body.professional-site .impact-stats>div:nth-child(3){background:#f8e8ad}
body.professional-site .impact-stats>div:nth-child(4){background:#cfeee8}
body.professional-site .library-feature{background:linear-gradient(135deg,#dff5f2,#e7f5fc)}
body.professional-site .impact .testimonial-link{background:#0d5ec4}


/* VISTA PREVIA COMPACTA DE CONTENIDO ARCHIVÍSTICO */
body.professional-site .community-preview{
  padding:clamp(4.5rem,8vw,7rem) clamp(1.25rem,6vw,6rem);
  background:linear-gradient(135deg,#fff8f6 0%,#f7fbfa 52%,#eef9fc 100%);
  border-top:1px solid var(--line);
  border-bottom:1px solid var(--line);
}
body.professional-site .community-preview-grid{
  display:grid;
  grid-template-columns:minmax(18rem,.82fr) minmax(0,1.18fr);
  gap:clamp(2.5rem,7vw,7rem);
  align-items:center;
  margin-top:3.5rem;
}
body.professional-site .community-preview figure{
  margin:0;
  background:#fff;
  border:1px solid #e2ebef;
  box-shadow:0 18px 50px rgba(63,99,121,.12);
}
body.professional-site .community-preview figure img{width:100%;height:auto}
body.professional-site .community-preview h2{
  margin:.5rem 0 1.4rem;
  color:#27323a;
  font:400 clamp(2.5rem,5vw,5rem)/.98 var(--serif);
  letter-spacing:-.045em;
}
body.professional-site .community-preview-copy>p:not(.kicker){
  max-width:45rem;
  color:#53606a;
  font-size:1.05rem;
}
body.professional-site .community-preview-actions{
  display:flex;
  flex-wrap:wrap;
  gap:.8rem;
  margin-top:2rem;
}
body.professional-site .community-preview-actions a{
  display:inline-flex;
  justify-content:space-between;
  gap:1.4rem;
  padding:.9rem 1rem;
  border:1px solid #0d5ec4;
  color:#0d5ec4;
  text-decoration:none;
  font-weight:700;
}
body.professional-site .community-preview-actions a.ca-primary{
  background:#0d5ec4;
  color:#fff;
}
body.professional-site .community-preview-actions a:hover,
body.professional-site .community-preview-actions a:focus-visible{
  background:#27323a;
  border-color:#27323a;
  color:#fff;
}
@media(max-width:800px){
  body.professional-site .community-preview-grid{grid-template-columns:1fr;gap:2.5rem}
  body.professional-site .community-preview figure{width:min(100%,34rem)}
}
@media(max-width:560px){
  body.professional-site .community-preview-actions{flex-direction:column}
  body.professional-site .community-preview-actions a{width:100%}
}
