/* Cabecera y pie: ancho completo 100vw, contenido centrado con ancho máximo generoso */
body :is(#masthead,#mobile-header,.footer-widgets,#footer-widgets,.site-footer,footer.site-info) {
  width:100%!important;
  max-width:none!important;
  left:0!important;
  right:0!important;
  transform:none!important;
  margin-inline:0!important;
  box-sizing:border-box;
}
body #masthead {
  position:fixed!important;
  top:0;
  border-radius:0!important;
  z-index:1000;
  border-bottom:1px solid rgba(100,112,135,0.32);
}
body #masthead .inside-header {
  max-width:1440px!important;
  width:100%!important;
  margin-inline:auto!important;
  padding-inline:32px!important;
  box-sizing:border-box;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  flex-wrap:nowrap!important;
  min-height:72px;
}
body #mobile-header {
  position:fixed!important;
  top:0;
  border-radius:0!important;
  z-index:1000;
  border-bottom:1px solid rgba(100,112,135,0.32);
}
body #mobile-header .inside-navigation {
  max-width:1440px!important;
  width:100%!important;
  margin-inline:auto!important;
  padding-inline:20px!important;
  box-sizing:border-box;
}
body #masthead.site-header,body #mobile-header.main-navigation {
  background:rgba(11,13,18,0.88)!important;
  backdrop-filter:blur(18px)!important;
  -webkit-backdrop-filter:blur(18px)!important;
}

/* Pie y widgets de pie: ancho completo, contenido centrado a 1440px */
body :is(.footer-widgets-container,#footer-widgets .footer-widgets-container,.inside-footer-widgets,.inside-site-info) {
  width:100%!important;
  max-width:1440px!important;
  margin-inline:auto!important;
  padding-inline:32px!important;
  box-sizing:border-box;
}
body :is(#footer-widgets,.footer-widgets) .inside-footer-widgets {
  display:grid!important;
  grid-template-columns:1.35fr repeat(4,minmax(0,1fr))!important;
  gap:36px!important;
  margin-inline:0!important;
  width:100%!important;
  align-items:start!important;
}
body :is(#footer-widgets,.footer-widgets) .inside-footer-widgets > div {
  width:auto!important;
  min-width:0!important;
  float:none!important;
}
html {scroll-padding-top:128px;}
@media(max-width:1100px){html{scroll-padding-top:88px;}}
body.admin-bar :is(#masthead,#mobile-header) {top:32px;}
@media(max-width:782px){body.admin-bar :is(#masthead,#mobile-header){top:46px;}}
@media(min-width:769px){
 body .sidebar :is(.inside-left-sidebar,.inside-right-sidebar) {position:sticky;top:128px;max-height:calc(100dvh - 152px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;padding-bottom:4px;}
}
@media(min-width:769px) and (max-width:1100px){
 body .sidebar :is(.inside-left-sidebar,.inside-right-sidebar) {top:88px;max-height:calc(100dvh - 112px);}
}
body.svp-legal-layout #main .inside-article {display:grid;grid-template-columns:220px minmax(0,1fr);column-gap:40px;align-items:start;}
body.svp-legal-layout #main .inside-article > :not(.svp-legal-navigation) {grid-column:2;min-width:0;}
.svp-legal-navigation {grid-column:1;grid-row:1 / span 4;position:sticky;top:128px;max-height:calc(100dvh - 152px);overflow-y:auto;box-sizing:border-box;padding:20px;background:rgb(21 25 34 / .88);border:1px solid #64708777;border-radius:20px;color:#f2f4f7;font:400 16px/1.5 system-ui,sans-serif;}
body.svp-legal-layout #main h1 {font-size:clamp(30px,4vw,44px);line-height:1.22;}
body.svp-legal-layout #main .entry-content :is(p,li) {font-size:16px;line-height:1.75;color:#dbe2ea;}
body.svp-legal-layout #main .entry-content a {color:#8ce8e0;}
.svp-legal-navigation p {font-weight:650;margin:0 0 16px;}
.svp-legal-navigation ul {list-style:none;margin:0;padding:0;}
.svp-legal-navigation a {display:block;padding:10px 0;color:#8ce8e0;text-decoration:none;overflow-wrap:anywhere;}
.svp-legal-navigation a[aria-current] {color:#f2f4f7;text-decoration:underline;text-underline-offset:4px;}
.svp-legal-navigation a:focus-visible {outline:3px solid #c9a5ee;outline-offset:3px;}
@media(max-width:1100px){.svp-legal-navigation{top:88px;max-height:calc(100dvh - 112px);}}
@media(max-width:768px){
 body.svp-legal-layout #main .inside-article {display:block;}
 .svp-legal-navigation {position:static;max-height:none;margin-bottom:32px;}
 .svp-legal-navigation ul {display:flex;flex-wrap:wrap;gap:8px;}
 .svp-legal-navigation a {padding:8px 10px;border:1px solid #64708777;border-radius:10px;font-size:14px;}
}
body :is(.site-header,.main-navigation,.slideout-navigation) .wp-block-buttons .wp-block-button .wp-element-button {
 display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:10px 20px;border:1px solid #db0075!important;border-radius:10px;background:#db0075!important;color:#fff!important;font-size:14px;font-weight:600;line-height:1.3;text-decoration:none;
}
body :is(.site-header,.main-navigation,.slideout-navigation) .wp-block-buttons .wp-block-button .wp-element-button:hover {background:#c7006a!important;border-color:#c7006a!important;}
body :is(.site-header,.main-navigation,.slideout-navigation) .wp-block-buttons .is-style-outline .wp-element-button {background:#151922!important;color:#f2f4f7!important;border-color:#7c889b!important;}
body :is(.site-header,.main-navigation,.slideout-navigation) .wp-block-buttons .is-style-outline .wp-element-button:hover {background:#1e2532!important;}
:is(.site-header,.main-navigation,.slideout-navigation) a:focus-visible,.svp-footer-note a:focus-visible {outline:3px solid #c9a5ee;outline-offset:3px;}
.svp-footer-note {box-sizing:border-box;background:#0b0d12;color:#f2f4f7;border-block:1px solid #303744;padding:48px 24px;text-align:center;font-size:16px;line-height:1.6;}
.svp-footer-note h2 {font-size:24px;font-weight:650;line-height:1.2;margin:0 0 16px;color:#f2f4f7;}
.svp-footer-note p {max-width:65ch;margin:0 auto 24px;color:#98a2b3;}
.svp-footer-note .wp-block-buttons {justify-content:center;gap:16px;}
body .svp-footer-note .wp-block-button .wp-element-button {display:inline-flex;align-items:center;justify-content:center;box-sizing:border-box;min-height:48px;padding:10px 20px;background:#db0075!important;color:#fff!important;border:1px solid #db0075!important;border-radius:10px;font-size:14px;font-weight:600;line-height:1.3;text-decoration:none;}
body .svp-footer-note .wp-block-button .wp-element-button:hover {background:#c7006a!important;border-color:#c7006a!important;}
body .svp-footer-note .is-style-outline .wp-element-button {background:#151922!important;border-color:#7c889b!important;color:#f2f4f7!important;}
body .svp-footer-note .is-style-outline .wp-element-button:hover {background:#1e2532!important;}
.svp-pro-site .svp-booking-intro {margin-block:24px 32px;}
.svp-pro-site .svp-booking-intro a {color:#69e6dc;text-decoration:underline;text-underline-offset:.18em;}
.home .svp-footer-note {display:none;}
@media(max-width:600px){.svp-footer-note .wp-block-button{width:100%;}.svp-footer-note .wp-element-button{width:100%;}}
@media(prefers-reduced-motion:reduce){.svp-footer-note *, :is(.site-header,.main-navigation) .wp-element-button{transition:none!important;}}
@media(forced-colors:active){body :is(.svp-footer-note,.site-header,.main-navigation) .wp-element-button{forced-color-adjust:auto;}}

/* Las plantillas de lectura no reservaban espacio para la cabecera superpuesta. */
body.svp-reading #content,
body:not(.svp-pro-site):not(.page-id-3390) #content {
 padding-top:136px;
 box-sizing:border-box;
}
body.svp-reading #main,
body.svp-reading .sidebar .inside-left-sidebar,
body.svp-reading .sidebar .inside-right-sidebar {margin-top:0;}
body.svp-reading #main :is(.inside-article,.page-header,.comments-area) {padding:32px;}
body.page:not(.svp-pro-site):not(.page-id-3390) #main .inside-article {padding:32px;}
body.svp-reading #main .page-title {font-size:clamp(30px,4vw,44px);line-height:1.22;margin:0;}
body :is(#primary,.sidebar,.inside-left-sidebar,.inside-right-sidebar,.widget) {min-width:0;}
body .sidebar .widget {box-sizing:border-box;overflow-wrap:anywhere;}
body :is(.left-sidebar,.right-sidebar,.both-sidebars) .entry-content :is(.alignwide,.alignfull) {
 max-width:100%;width:auto;margin-inline:0;
}
body .entry-content :is(pre,.wp-block-table) {max-width:100%;overflow-x:auto;}
/* Tablas con esquinas redondeadas y bordes limpios */
body :is(table, .wp-block-table, .wp-block-table table, .entry-content table) {
  border-collapse:separate!important;
  border-spacing:0!important;
  border-radius:14px!important;
  overflow:hidden!important;
  border:1px solid rgba(100,112,135,0.45)!important;
  background:rgba(21,25,34,0.65)!important;
  max-width:100%;
}
body :is(table, .wp-block-table table, .entry-content table) :is(th, td) {
  padding:14px 18px!important;
  border-bottom:1px solid rgba(100,112,135,0.28)!important;
  border-right:1px solid rgba(100,112,135,0.28)!important;
  text-align:left;
}
body :is(table, .wp-block-table table, .entry-content table) tr:last-child td {
  border-bottom:none!important;
}
body :is(table, .wp-block-table table, .entry-content table) tr td:last-child,
body :is(table, .wp-block-table table, .entry-content table) tr th:last-child {
  border-right:none!important;
}
body :is(table, .wp-block-table table, .entry-content table) th {
  background:rgba(30,37,50,0.88)!important;
  color:#f2f4f7!important;
  font-weight:650!important;
  font-size:15px!important;
}
body :is(table, .wp-block-table table, .entry-content table) tr:first-child th:first-child,
body :is(table, .wp-block-table table, .entry-content table) tr:first-child td:first-child {
  border-top-left-radius:13px!important;
}
body :is(table, .wp-block-table table, .entry-content table) tr:first-child th:last-child,
body :is(table, .wp-block-table table, .entry-content table) tr:first-child td:last-child {
  border-top-right-radius:13px!important;
}
body :is(table, .wp-block-table table, .entry-content table) tr:last-child td:first-child {
  border-bottom-left-radius:13px!important;
}
body :is(table, .wp-block-table table, .entry-content table) tr:last-child td:last-child {
  border-bottom-right-radius:13px!important;
}
body .entry-content :is(iframe,video) {max-width:100%;}
body :is(.entry-content,.entry-title,.page-title,.widget-title) {overflow-wrap:anywhere;}

/* Campos contenidos y legibles, también en widgets heredados. */
body .sidebar .wp-block-loginout,
body .sidebar #loginform {box-sizing:border-box;width:100%;max-width:100%;padding:0!important;border:0!important;background:transparent!important;color:#dbe2ea;}
body .sidebar #loginform label {display:block;margin-bottom:8px;}
body .sidebar :is(input:not([type=checkbox]):not([type=radio]):not([type=hidden]):not([type=submit]),select,textarea) {
 box-sizing:border-box;width:100%;max-width:100%;min-width:0;min-height:48px;
 border:1px solid #8b98ac;border-radius:10px;background:#151922!important;color:#dbe2ea!important;
 font:400 16px/1.5 system-ui,sans-serif;padding:10px 12px;
}
body .sidebar input::placeholder {color:#b6becb;opacity:1;}
body .sidebar #loginform .login-remember label {display:flex;align-items:center;gap:8px;}
body .sidebar #loginform input[type=checkbox] {flex:0 0 auto;margin:0;}
body .sidebar #loginform input[type=submit] {
 max-width:100%;min-height:48px;padding:10px 20px;border:1px solid #db0075;
 border-radius:10px;background:#db0075;color:#fff;font-weight:600;white-space:normal;
}
body .sidebar :is(input,select,textarea):focus-visible {outline:3px solid #c9a5ee;outline-offset:3px;}
body .sidebar .wp-block-latest-posts > li {display:flow-root;margin-bottom:16px;}
body .sidebar .wp-block-latest-posts > li:last-child {margin-bottom:0;}
body .sidebar .wp-block-latest-posts__featured-image {width:96px;max-width:38%;margin-right:16px;}
body .sidebar .wp-block-latest-posts__featured-image img {display:block;width:100%;max-width:100%;height:auto;aspect-ratio:1;object-fit:cover;border-radius:10px;}

/* Solo la insignia flotante; los retos, scripts y validación siguen intactos. */
body.svp-recaptcha-disclosed .grecaptcha-badge {visibility:hidden;}
.svp-recaptcha-notice {box-sizing:border-box;font:400 13px/1.6 system-ui,sans-serif;color:#c1cad9;overflow-wrap:anywhere;}
.svp-recaptcha-notice a {color:#8ce8e0;text-decoration:underline;text-underline-offset:3px;}
.svp-recaptcha-notice--footer {max-width:1260px;margin:0 auto;padding:24px 24px 112px;}
/* Contacto conserva su formulario claro: tinta y enlaces apropiados a esa superficie. */
.page-id-3390 .wpcf7 :is(label,.wpcf7-list-item-label,.svp-recaptcha-notice) {color:#374151;}
.page-id-3390 .wpcf7 .svp-recaptcha-notice a {color:#5c088b;}
.page-id-3390 .wpcf7 :is(input,textarea)::placeholder {color:#5b6471;opacity:1;}
.page-id-3390 .wpcf7 input[type=submit] {background:#db0075;color:#fff;border-radius:10px;min-height:48px;}
.page-id-3390 .wpcf7 input[type=submit]:hover {background:#c7006a;}
.page-id-3390 .wpcf7 :is(input,textarea,select):focus-visible {outline:3px solid #c9a5ee;outline-offset:3px;}
@media(max-width:1100px){
 body.svp-reading #content,
 body:not(.svp-pro-site):not(.page-id-3390) #content {padding-top:88px;}
}
@media(max-width:600px){
 body.svp-reading #main :is(.inside-article,.page-header,.comments-area) {padding:24px 20px;}
 body.page:not(.svp-pro-site):not(.page-id-3390) #main .inside-article {padding:24px 20px;}
}

/* Lectura editorial: jerarquía del manual SVP sin cambiar cabecera ni widgets. */
body.svp-reading #main .entry-content h2 {font-size:24px;line-height:1.3;font-weight:650;margin-block:32px 16px;}
body.svp-reading #main .entry-content h3 {font-size:20px;line-height:1.35;font-weight:650;margin-block:24px 12px;}

/* Complianz conserva decisiones y eventos; solo cambia la colocación visual. */
body .cmplz-cookiebanner {
 left:auto!important;top:auto!important;
 right:max(16px,env(safe-area-inset-right,0px))!important;
 bottom:max(16px,env(safe-area-inset-bottom,0px))!important;
 transform:none!important;margin:0!important;
 width:440px!important;min-width:0!important;
 max-width:calc(100% - max(16px,env(safe-area-inset-left,0px)) - max(16px,env(safe-area-inset-right,0px)))!important;
 max-height:calc(100vh - 32px)!important;
 max-height:calc(100dvh - max(16px,env(safe-area-inset-top,0px)) - max(16px,env(safe-area-inset-bottom,0px)))!important;
 overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin;
 grid-template-rows:none;grid-template-columns:repeat(3,minmax(0,1fr));border-radius:20px;
}
body .cmplz-cookiebanner .cmplz-body {min-width:0;max-height:none;overflow:visible;}
body .cmplz-cookiebanner .cmplz-buttons {flex-wrap:wrap;}
body .cmplz-cookiebanner .cmplz-btn {min-height:48px;overflow-wrap:anywhere;}
body .cmplz-cookiebanner .cmplz-header {grid-template-columns:minmax(0,140px) minmax(0,1fr) 24px;gap:12px;}
body .cmplz-cookiebanner .cmplz-logo a {display:block;}
body .cmplz-cookiebanner .cmplz-title {justify-self:start;overflow-wrap:anywhere;line-height:1.35;}
body .cmplz-cookiebanner .cmplz-message {width:auto;max-width:100%;}
body .cmplz-cookiebanner {--cmplz_button_accept_background_color:#db0075;--cmplz_button_accept_text_color:#fff;--cmplz_text_color:#f2f4f7;--cmplz_hyperlink_color:#69e6dc;}
body .cmplz-cookiebanner .cmplz-logo img {max-width:100%;height:auto;object-fit:contain;}
body .cmplz-cookiebanner :is(a,button,[tabindex]):focus-visible,
body #cmplz-manage-consent button:focus-visible {outline:3px solid #c9a5ee;outline-offset:3px;}
/* Marc pide ocultar el acceso flotante; la política de cookies conserva las preferencias. */
body #cmplz-manage-consent,
body #cmplz-manage-consent:has(button.cmplz-show:not(.cmplz-hidden)){display:none!important;}
/* El diálogo tiene prioridad: no hay controles flotantes detrás ni encima. */
body:has(.cmplz-cookiebanner.cmplz-show:not(.cmplz-hidden)) :is(.svp-contact,.generate-back-to-top,.svp-scene-toggle) {visibility:hidden!important;pointer-events:none!important;}


body .cmplz-cookiebanner .cmplz-categories {width:auto;max-width:100%;}

/* Redimensionar nunca anima medidas ni desplaza el aviso fuera del viewport. */
body .cmplz-cookiebanner {transition-property:opacity,box-shadow!important;}
@media(prefers-reduced-motion:reduce){body .cmplz-cookiebanner,body .cmplz-cookiebanner * {animation:none!important;transition:none!important;}}

/* Preferencias dentro de la política: contraste propio, controles nativos intactos. */
body #cmplz-document #cmplz-manage-consent-container .cmplz-category {
 background:#151922;border:1px solid #515d70;border-radius:12px;margin-block:12px;overflow:visible;
}
body #cmplz-document #cmplz-manage-consent-container summary {
 background:transparent;color:#f2f4f7;padding:12px 16px;min-height:56px;border-radius:12px;list-style:none;
}
body #cmplz-document #cmplz-manage-consent-container summary::-webkit-details-marker {display:none;}
body #cmplz-document #cmplz-manage-consent-container .cmplz-category-header {
 display:flex;align-items:center;gap:12px;background:transparent;color:#f2f4f7;min-height:32px;
}
body #cmplz-document #cmplz-manage-consent-container .cmplz-category-title {
 color:#f2f4f7;font-size:16px;line-height:1.5;font-weight:600;flex:1;min-width:0;overflow-wrap:anywhere;
}
body #cmplz-document #cmplz-manage-consent-container .cmplz-always-active {color:#69e6dc;}
body #cmplz-document #cmplz-manage-consent-container .cmplz-icon {color:#b6becb;fill:currentColor;flex-shrink:0;}
body #cmplz-document #cmplz-manage-consent-container .cmplz-banner-checkbox {flex-shrink:0;}
body #cmplz-document #cmplz-manage-consent-container input[type="checkbox"] {accent-color:#69e6dc;width:24px;height:24px;margin:0;vertical-align:middle;}
body #cmplz-document #cmplz-manage-consent-container :is(summary,input):focus-visible {outline:3px solid #c9a5ee;outline-offset:3px;}
body #cmplz-document #cmplz-manage-consent-container .cmplz-description {color:#b6becb;padding:0 16px 16px;}

/* Robótica2195: contraste y desplazamiento de la tabla editorial. */
body.postid-2195 .entry-content .wp-block-table {overflow-x:auto!important;overflow-y:hidden!important;}
body.postid-2195 .entry-content .wp-block-table table {min-width:680px;max-width:none;width:100%;}
body.postid-2195 .entry-content .wp-block-table tbody tr {background:#151922!important;color:#f2f4f7;}
body.postid-2195 .entry-content .wp-block-table tbody tr:nth-child(even) {background:#1e2532!important;}

body.postid-2195 .entry-content .wp-block-table :is(th,td) {overflow-wrap:normal;word-break:normal;}
body.postid-2195 .entry-content .wp-block-table :is(th,td):first-child {min-width:180px;}
/* Mantener el pie recibido legible a una columna en móvil. */
@media(max-width:768px){body :is(#footer-widgets,.footer-widgets) .inside-footer-widgets {grid-template-columns:minmax(0,1fr)!important;gap:24px!important;}}

/* Inicio: pasos visibles tras servicios; mismo ancho útil que el resto. */
.svp-pro-site .svp-home .svp-home-steps ol {
  display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;
  max-width:none;margin:24px 0 0;padding:0;list-style:none;counter-reset:svp-step;
}
.svp-pro-site .svp-home-steps li {
  counter-increment:svp-step;min-width:0;margin:0;padding:24px;
  border:1px solid rgba(105,230,220,.24);border-radius:20px;background:rgba(20,24,34,.62);
}
.svp-pro-site .svp-home-steps li::before {
  content:"0" counter(svp-step);display:block;color:#69e6dc;font-size:28px;font-weight:700;margin-bottom:12px;
}
.svp-pro-site .svp-home-steps li strong {display:block;margin-bottom:8px;}
.svp-pro-site .svp-team-area {min-width:0;}
.svp-pro-site .svp-team-area h3 {margin-top:0;}
@media(max-width:700px){.svp-pro-site .svp-home .svp-home-steps ol{grid-template-columns:1fr;gap:16px;}}
