/* Content adaptations; original iPortfolio design retained. */
.header .social-links { display:flex; flex-wrap:wrap; justify-content:center; gap:8px; padding:0 24px; }
.header .social-links a { margin:0; flex:0 0 40px; }
.hero h2 { max-width: 1000px; font-size:clamp(2rem,4.6vw,4rem); }
.hero p { max-width: 960px; }
.about .content ul li { flex-wrap:wrap; gap:4px; }
.about .content ul strong { margin-right:4px; }
.portfolio .portfolio-info p { padding-right:58px; }
.portfolio .portfolio-info h4 { max-width:calc(100% - 14px); }
.skills .progress { height:auto; min-height:60px; padding-bottom:10px; }
.skills .progress .skill { white-space:normal; }
.email-compose-form > p { margin-bottom:24px; }
a:focus-visible,button:focus-visible { outline:3px solid #149ddd; outline-offset:4px; }
@media(max-width:575px) { .hero p { font-size:20px; } .portfolio .portfolio-info p { font-size:13px; } }
@media(prefers-reduced-motion:reduce) { html { scroll-behavior:auto!important; } [data-aos] { opacity:1!important; transform:none!important; } }

/* Project selector: persistent left menu and one central panel. */
.project-viewer { display:grid; grid-template-columns:220px minmax(0,1fr); gap:28px; align-items:start; }
.project-menu { position:sticky; top:24px; border:1px solid #e1e8ed; border-radius:10px; padding:16px; background:#f5f8fd; }
.project-menu h2 { font-size:19px; margin-bottom:14px; }
.project-menu a { display:block; padding:10px 12px; margin-bottom:4px; border-radius:6px; color:#272829; line-height:1.4; font-size:14px; }
.project-menu a:hover { background:#e4edf9; }
.project-menu a[aria-current="true"] { background:#0879ad; color:#fff; }
.project-panel { scroll-margin-top:24px; min-width:0; }
.project-panel[hidden] { display:none!important; }
.project-panel .project-image img { display:block; width:100%; height:auto; border-radius:8px; }
.project-panel .portfolio-description { padding:24px 0 0; }
.project-panel:focus { outline:none; }
.project-mobile-select { display:none; }
@media(max-width:767px) {
 .project-viewer { grid-template-columns:minmax(0,1fr); gap:20px; }
 .project-menu { position:static; }
 .project-viewer-ready .project-menu { display:none; }
 .project-viewer-ready .project-mobile-select { display:block; }
 .project-mobile-select label { display:block; font-weight:600; margin-bottom:8px; }
}

.boca-gallery { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; }
.boca-gallery-main { grid-column:1 / -1; }
.boca-gallery-item { margin:0; min-width:0; }
.boca-gallery-item a { display:block; background:#edf2f7; border-radius:8px; overflow:hidden; }
.project-panel .boca-gallery-item:not(.boca-gallery-main) img { width:100%; height:220px; object-fit:contain; }
.boca-gallery-item figcaption { font-size:14px; padding:8px 0; color:#405368; }
@media(max-width:575px) { .project-panel .boca-gallery-item:not(.boca-gallery-main) img { height:150px; } }

/* Match portfolio framing while retaining the original documentary photograph. */
#portfolio img.bue-project-photo, .project-panel .project-image img.bue-project-photo { width:100%; aspect-ratio:4 / 3; height:auto; object-fit:cover; object-position:center; }


#proyecto-11 .portfolio-description h3 { font-size:21px; margin:28px 0 16px; }


.femenino-video-card { grid-column:1 / -1; padding:16px; border:1px solid #dce4ec; border-radius:8px; background:#fff; min-width:0; }
.femenino-video-card h3 { font-size:18px; margin:16px 0 8px; }
.femenino-video-card iframe { border:0; }

#portfolio img.femenino-cover { width:100%; aspect-ratio:4 / 3; height:auto; object-fit:cover; object-position:50% 50%; }

#proyecto-11 .femenino-story-gallery { margin:28px 0 32px; }
#proyecto-11 .femenino-video-card { margin:28px 0 32px; }
#proyecto-11 .portfolio-description > p { line-height:1.85; margin-bottom:22px; }
#proyecto-11 .femenino-story-gallery img { display:block; border-radius:8px; }

/* Editorial flow: documentary images surrounded by the story. */
#proyecto-11 .femenino-editorial { margin-top:24px; }
#proyecto-11 .femenino-editorial-section { display:flow-root; margin:0 0 30px; }
#proyecto-11 .femenino-editorial p { font-family:Georgia, "Times New Roman", serif; font-size:18px; line-height:1.8; color:#344354; margin:0 0 18px; }
#proyecto-11 .femenino-editorial .editorial-media { width:43%; padding:0; border:0; margin-top:5px; margin-bottom:16px; }
#proyecto-11 .femenino-editorial .editorial-right { float:right; margin-left:26px; margin-right:0; }
#proyecto-11 .femenino-editorial .editorial-left { float:left; margin-right:26px; margin-left:0; }
#proyecto-11 .femenino-editorial .boca-gallery-item img { display:block; width:100%; height:auto; border-radius:4px; }
#proyecto-11 .femenino-editorial figcaption { font-size:13px; line-height:1.5; padding-top:8px; }
#proyecto-11 .femenino-editorial .femenino-video-card h3 { font-size:16px; margin:10px 0 6px; }
#proyecto-11 .femenino-editorial .femenino-video-card > a { font-size:14px; }
@media(max-width:767px) {
 #proyecto-11 .femenino-editorial .editorial-media { float:none; width:100%; margin:0 0 20px; }
 #proyecto-11 .femenino-editorial p { font-size:17px; line-height:1.75; }
}
#proyecto-11 .femenino-editorial-section { padding:0; }

#portfolio img.libreria-cover, #proyecto-4 .project-image img.libreria-cover { width:100%; aspect-ratio:4 / 3; height:auto; object-fit:cover; object-position:center; }

#portfolio img.radio-web-cover { width:100%; aspect-ratio:4 / 3; height:auto; object-fit:cover; object-position:center top; }

/* XicoSys Útil 1.1.0: native section and compact navigation. */
.header .profile-img img{width:84px;margin:10px auto;border-width:6px}
.header .logo{margin-bottom:8px!important}.header .logo h1{font-size:22px}
.header .social-links{gap:6px;padding:0 40px;margin:0 auto 10px!important}
.header .social-links a{flex:0 0 32px;width:32px;height:32px;font-size:16px;display:flex;align-items:center;justify-content:center}
.header .navmenu{padding:0 12px 10px}.header .navmenu a,.header .navmenu a:focus{padding:9px 12px;margin-bottom:2px;font-size:15px;min-height:42px}
.utiles .utiles-card{height:100%;padding:25px;background:var(--surface-color,#fff);border:1px solid #dce8ef;border-radius:12px;display:flex;flex-direction:column;box-shadow:0 4px 18px rgba(0,0,0,.035)}
.utiles .utiles-card h3{font-size:20px;line-height:1.4;margin:18px 0 12px;overflow-wrap:anywhere}.utiles .utiles-card p{overflow-wrap:anywhere}
.utiles .utiles-icon{font-size:32px;color:var(--accent-color,#149ddd)}.utiles .utiles-tag{font-size:13px;color:var(--default-color);background:#edf6fb;padding:4px 12px;border-radius:20px}
.utiles-button{background:var(--accent-color,#149ddd);border:1px solid var(--accent-color,#149ddd);color:#fff;padding:10px 18px;border-radius:6px;font-weight:600}.utiles-button:hover{background:#087ead;color:#fff}
.utiles-card .utiles-button{margin-top:auto;display:flex;justify-content:space-between;gap:12px}.utiles-note{font-size:13px;color:#526873}.utiles .form-control,.utiles .form-select{min-height:46px}
@media(max-width:1199px){.header .navmenu a{min-height:44px}}

/* v1.1.1: Noticias conserva su propia tipografia y colores. */
.noticias-integradas{padding:0;background:#000;scroll-margin-top:0}.noticias-integradas iframe{display:block;width:100%;height:900px;border:0;background:#000}.noticias-integradas noscript{color:#55ff77;padding:20px}
