/* BrainWorks – estilos propios (sustituyen a los estilos en línea de WordPress) */

/* Fondos del slider (antes en atributos style="") */
.slide-item-1{background-image:url(/img/bg1.jpeg)}
.slide-item-2{background-image:url(/img/bg2.jpg)}
.slide-item-3{background-image:url(/img/bg3.jpeg)}
.slide-item-4{background-image:url(/img/bg4.jpeg)}
.slide-item-5{background-image:url(/img/bg5.jpeg)}

/* Logo: tamaño fijado para evitar saltos de maquetación */
.site-logo{width:auto;height:auto;max-height:100px}

/* Selector de idioma */
#mainnav ul li.lang-switch{margin-left:18px;padding-left:18px;border-left:1px solid #ddd;white-space:nowrap}
#mainnav ul li.lang-switch a{display:inline-block;padding:0 4px;font-size:13px;font-weight:500;letter-spacing:.5px;color:#1c1c1c}
#mainnav ul li.lang-switch a.active{color:#2b7f27;text-decoration:underline;text-underline-offset:4px}
#mainnav ul li.lang-switch a:hover,#mainnav ul li.lang-switch a:focus{color:#2b7f27}
#mainnav-mobi ul li.lang-switch{border-left:0;margin:0;padding:10px 20px;text-align:left}
#mainnav-mobi ul li.lang-switch a{display:inline-block;padding:6px 10px;border:0}

/* Contenido */
.entry-content .map-img{width:100%;height:auto}
.entry-content table{width:100%;margin:0 0 24px;border-collapse:collapse}
.entry-content th,.entry-content td{padding:8px 10px;border:1px solid #e5e5e5;vertical-align:top;font-size:14px}
.entry-content th{background:#f7f7f7;color:#444}
.entry-content code{white-space:nowrap}
@media (max-width:600px){.entry-content table{display:block;overflow-x:auto}}
.gallery-item img{height:auto;max-width:100%}

/* Accesibilidad: foco visible y "saltar al contenido" */
a:focus-visible,.btn-menu:focus-visible{outline:2px solid #2b7f27;outline-offset:2px}
.skip-link:focus{position:fixed;left:10px;top:10px;z-index:100001}

/* Pie */
.site-footer .site-info{padding-top:10px;padding-bottom:10px}
.site-footer .fa-linkedin{font-size:16px}
.header-clone{height:140px}
#mainnav-mobi ul li.lang-switch a.active{color:#2b7f27;text-decoration:underline}

/* Selector de idioma siempre visible */
.lang-switch-mobile{display:none}
@media only screen and (max-width:1024px){
	.lang-switch-mobile{display:block;text-align:center;margin:4px 0 10px}
	.lang-switch-mobile a{display:inline-block;padding:4px 10px;font-size:14px;font-weight:500;letter-spacing:.5px;color:#1c1c1c}
	.lang-switch-mobile a.active{color:#2b7f27;text-decoration:underline;text-underline-offset:4px}
	.btn-menu{float:none;margin:0 auto}
	#mainnav-mobi ul li.lang-switch{display:none}
}
/* Pantallas medianas: evita que el menú salte a dos líneas */
@media only screen and (min-width:1025px) and (max-width:1199px){
	#mainnav ul li{padding:0 9px}
	#mainnav ul li a{font-size:13px}
	#mainnav ul li.lang-switch{margin-left:6px;padding-left:10px}
}

/* ===== Accesibilidad (WCAG 2.2 AA) ===== */
/* 1.4.1: enlaces dentro del texto identificables sin depender del color */
.entry-content a:not(.roll-button){text-decoration:underline;text-underline-offset:3px}
.entry-content .text-center a{font-weight:500}
/* 2.4.11: el foco no queda tapado por la cabecera fija */
@media only screen and (min-width:1025px){html{scroll-padding-top:150px}}
/* 2.5.8: objetivos táctiles de al menos 24×24 px */
.site-footer .site-info a{display:inline-block;min-height:24px;line-height:24px;padding:2px 4px}
.lang-switch a,.lang-switch-mobile a{min-width:32px;min-height:32px;line-height:24px;text-align:center}
@media only screen and (max-width:1024px){
	.site-footer .site-info{line-height:2.2}
	.site-footer .site-info .sep{display:none}
	.site-footer .site-info a{margin:4px 6px}
	.lang-switch-mobile a{min-width:44px;min-height:44px;line-height:36px}
	.btn-menu{width:44px;height:44px;line-height:44px}
	.go-top{width:44px;height:44px;line-height:44px}
}
/* Botón de pausa del carrusel (2.2.2) */
.hero-region{position:relative}
.slider-toggle{position:absolute;right:16px;bottom:16px;z-index:20;width:44px;height:44px;padding:0;margin:0;border:2px solid #fff;border-radius:50%;background:rgba(0,0,0,.6);color:#fff;font-size:16px;line-height:40px;text-align:center;cursor:pointer}
.slider-toggle:hover,.slider-toggle:focus-visible{background:#000;color:#fff}
.slider-toggle:focus-visible{outline:3px solid #ffbf47;outline-offset:2px}
/* Encabezados reordenados: conservan el aspecto original */
.entry-content .h3-look{font-size:32px;line-height:1.1}
.entry-content .h4-look{font-size:25px;line-height:1.1}
.entry-content .h5-look{font-size:20px;line-height:1.1}
@media only screen and (max-width:1024px){
	.entry-content .h3-look{font-size:22px}
	.entry-content .h4-look{font-size:18px}
	.entry-content .h5-look{font-size:16px}
}
/* Movimiento reducido según la preferencia del sistema */
@media (prefers-reduced-motion:reduce){
	*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}
}

/* Botones flotantes por encima de la barra de cookies */

.go-top.show{bottom:calc(11px + var(--cookie-bar-h, 0px))}

/* Móvil/tablet: la cabecera (y su menú desplegable) siempre por encima del carrusel.
   Necesario porque la cabecera forma su propio contexto de apilamiento (transiciones de página). */
@media only screen and (max-width:1024px){
	.site-header,.site-header.fixed,.site-header.float-header{position:relative!important;z-index:1000}
	#mainnav-mobi{z-index:1001}
	.hero-region,.sydney-hero-area,#slideshow{z-index:1}
}

/* ===== Nuevos bloques de contenido ===== */

.intro-block{max-width:860px;margin:0 auto 40px;text-align:center}
/* Tarjetas de servicios destacados */
.svc-cards{list-style:none;margin:0 0 24px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:24px}
.svc-cards .svc-card{position:relative;margin:0;padding:28px 24px 24px;border:1px solid #c9dfc6;border-radius:10px;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.09);display:flex;flex-direction:column;transition:transform .2s ease,box-shadow .2s ease}
.svc-cards .svc-card:hover,.svc-cards .svc-card:focus-within{transform:translateY(-3px);box-shadow:0 8px 22px rgba(0,0,0,.1)}
.svc-card img{margin:0 0 14px}
.svc-card h3{margin:0 0 10px}
.svc-card p{flex:1;margin-bottom:16px}
.entry-content .svc-link{font-weight:500;text-decoration:none}
.entry-content .svc-link::after{content:" \2192"}
/* toda la tarjeta clicable sin perder semántica */
.svc-card .svc-link::before{content:"";position:absolute;inset:0;border-radius:10px}
.svc-card .svc-link:focus-visible{outline:none}
.svc-card:focus-within{outline:3px solid #2b7f27;outline-offset:2px}
.svc-more{margin:8px 0 48px;text-align:center}
/* Por qué BrainWorks */
.why-grid{list-style:none;margin:0 0 48px;padding:0;display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:20px}
.why-grid li{margin:0;padding:20px;border:1px solid #c9dfc6;border-radius:10px;background:#eaf4e8}
.why-grid .fa{font-size:28px;color:#2b7f27;margin-bottom:10px}
.why-grid h3{margin:0 0 8px}
.why-grid p{margin:0}
/* Llamada a la acción */
.cta-box{margin:56px 0 0;padding:36px 28px;border-radius:12px;background:#1f5e1c;color:#fff;text-align:center}
.entry-content .cta-box h2,.entry-content .cta-box h3{color:#fff;margin:0 0 12px}
.cta-box p{color:#fff;max-width:720px;margin:0 auto 20px;font-size:17px}
.entry-content .cta-box .roll-button{background:#fff;border-color:#fff;color:#1f5e1c;text-decoration:none}
.entry-content .cta-box .roll-button:hover,.entry-content .cta-box .roll-button:focus-visible{background:transparent;color:#fff}
.entry-content a.roll-button{text-decoration:none}
/* Página de servicios */
.svc-index{display:flex;flex-wrap:wrap;gap:8px;margin:0 0 40px}
.entry-content .svc-index a{display:inline-block;padding:8px 14px;min-height:40px;border:1px solid #2b7f27;border-radius:20px;text-decoration:none;font-size:14px;line-height:22px}
.entry-content .svc-index a:hover,.entry-content .svc-index a:focus-visible{background:#2b7f27;color:#fff}
.svc-section{position:relative;padding:32px 0 32px 124px;border-top:1px solid #e6ece5;min-height:160px}
.svc-section .svc-icon{position:absolute;left:0;top:36px}
.svc-section h2{margin-top:0}
.svc-benefit{margin:16px 0 0;padding:14px 18px;border:1px solid #c9dfc6;border-left:5px solid #2b7f27;background:#e6f2e4;border-radius:0 6px 6px 0}
.steps{padding-left:22px}
.steps li{margin-bottom:6px}
@media only screen and (max-width:767px){
	.svc-section{padding:28px 0}
	.svc-section .svc-icon{position:static;width:72px;height:72px;margin-bottom:10px}
	.cta-box{padding:28px 18px}
}
/* Modos de accesibilidad */
.a11y-contrast .svc-card,.a11y-contrast .why-grid li,.a11y-contrast .svc-benefit,.a11y-contrast .cta-box{border:2px solid #fff!important}
.a11y-contrast .svc-card img,.a11y-contrast .svc-icon{background:#fff;border-radius:50%}
.a11y-contrast .why-grid .fa{color:#ffeb3b!important}
.a11y-noanim .svc-card:hover{transform:none}

/* ===== Carrusel propio (sustituye a Superslides) ===== */
#slideshow .slides-container{position:relative;height:100vh;min-height:520px;margin:0;padding:0}
#slideshow .slide-item{position:absolute;top:0;left:0;width:100%;height:100%;opacity:0;visibility:hidden;z-index:0;transition:opacity .9s ease,visibility 0s linear .9s}
#slideshow:not(.bw-slider) .slide-item:first-child,#slideshow .slide-item.is-active{opacity:1;visibility:visible;z-index:1;transition:opacity .9s ease}
@media only screen and (max-width:1025px){
	#slideshow .slides-container{height:auto;min-height:0}
	#slideshow .slide-item{bottom:auto;height:auto}
	#slideshow:not(.bw-slider) .slide-item:first-child,#slideshow .slide-item.is-active{position:relative}
	#slideshow .mobile-slide{display:block;width:100%;height:auto}
}
/* ===== Menú móvil propio (sustituye al script del tema) ===== */
@media only screen and (max-width:1024px){
	/* sin JavaScript el menú se muestra abierto; con JS, se pliega tras el botón */
	html.js #mainnav{display:none}
	#mainnav-mobi{display:none}
	#mainnav-mobi.is-open{display:block}
	.btn-menu{display:none}
	html.js .btn-menu{display:block}
}

/* ===== Tipografía unificada ===== */
body,button,input,select,textarea{font-family:'Roboto',Arial,sans-serif}
.entry-content p,.entry-content li,.entry-content td,.entry-content th{font-family:inherit}
.entry-content .lead{font-weight:400;font-size:inherit;line-height:inherit;color:inherit}
b,strong{font-weight:700}
h1,h2,h3,h4,h5,h6{font-weight:700}
.entry-content code{font-family:ui-monospace,Consolas,'Courier New',monospace;font-size:.9em}

/* Mapa de contacto con el mismo estilo que las tarjetas */
.map-wrap{margin:8px 0 32px}
.entry-content .map-card{display:block;border:1px solid #c9dfc6;border-radius:10px;overflow:hidden;background:#fff;box-shadow:0 4px 14px rgba(0,0,0,.09);transition:transform .2s ease,box-shadow .2s ease;line-height:0}
.entry-content .map-card:hover,.entry-content .map-card:focus-visible{transform:translateY(-3px);box-shadow:0 8px 22px rgba(0,0,0,.14)}
.entry-content .map-card:focus-visible{outline:3px solid #2b7f27;outline-offset:3px}
.map-card .map-img{display:block;width:100%;height:auto}
.a11y-noanim .entry-content .map-card:hover{transform:none}
/* Móvil: tarjetas a una columna, con más presencia */
@media only screen and (max-width:767px){
	.svc-cards,.why-grid{grid-template-columns:1fr;gap:16px}
	.svc-cards .svc-card,.why-grid li{box-shadow:0 3px 12px rgba(0,0,0,.12)}
	.svc-benefit{padding:12px 14px}
}
@media only screen and (max-width:767px){.site-footer{padding-bottom:80px}}
.svc-benefit,.why-grid li p{color:#4d4c4c}
