/* Cristal legible, imágenes pequeñas y controles independientes del enlace padre. */
.svp-mega-parent { position:relative!important; }
.svp-mega-control { display:flex; align-items:center; border-radius:10px; background:transparent; }
.main-navigation .main-nav .svp-mega-control > a { display:flex; align-items:center; flex:1; min-width:0; padding-right:4px; background:transparent!important; }
.svp-mega-control:hover,.svp-mega-control:focus-within,.svp-mega-open > .svp-mega-control { background:#26323f; box-shadow:inset 0 0 0 1px #69e6dc; }
.svp-mega-control > .svp-mega-toggle { display:inline-flex; align-items:center; justify-content:center; vertical-align:middle; padding:0; width:44px; min-height:48px; border:0; border-radius:10px; background:transparent; color:#f2f4f7; font-size:22px; cursor:pointer; }
.svp-mega-control > .svp-mega-toggle:is(:hover,[aria-expanded=true]) { background:transparent; }
.svp-mega-toggle:focus-visible,.svp-mega-panel a:focus-visible { outline:3px solid #c9a5ee; outline-offset:3px; }
.svp-mega-toggle span { display:grid; place-items:center; width:16px; height:16px; line-height:0; transform-origin:center; transition:transform .18s; }
.svp-mega-toggle svg { display:block; width:16px; height:16px; }
.svp-mega-toggle[aria-expanded=true] span { transform:rotate(180deg); }
.main-navigation .main-nav ul .svp-mega-panel { display:none!important; opacity:1!important; visibility:visible!important; pointer-events:auto!important; left:0!important; top:100%!important; width:100%!important; max-height:calc(100dvh - 136px); overflow:auto; padding:28px!important; margin:0!important; background:rgba(15,19,28,.95)!important; backdrop-filter:blur(18px); border:1px solid #515d70; border-radius:18px; box-shadow:0 24px 64px rgba(0,0,0,0.6); box-sizing:border-box; z-index:1100; }
.main-navigation .main-nav ul .svp-mega-open > .svp-mega-panel,
.main-navigation .main-nav ul .svp-mega-parent:not(.svp-mega-ready):is(:hover,:focus-within) > .svp-mega-panel { display:grid!important; height:auto!important; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; }
.main-navigation .main-nav .svp-mega-panel > li { width:auto!important; min-width:0; float:none; list-style:none; background:transparent!important; border:0; }
.main-navigation .main-nav .svp-mega-card > a { display:flex; align-items:center; gap:14px; padding:18px!important; min-height:120px; height:100%; white-space:normal; line-height:1.45!important; border:1px solid #3a4658; border-radius:14px; background:rgba(30,37,50,.58)!important; color:#f2f4f7!important; box-sizing:border-box; transition:border-color .18s,background .18s; }
.main-navigation .main-nav .svp-mega-card > a:hover { border-color:#69e6dc; background:#253440!important; }
.svp-mega-panel strong { display:block; color:#f2f4f7; font-size:16px; line-height:1.4; }
.svp-mega-panel small { display:block; margin-top:6px; color:#c1cad9; font-size:13px; line-height:1.5; font-weight:400; }
.svp-mega-panel .svp-mega-image { display:block; width:72px; height:80px; aspect-ratio:9/10; object-fit:cover; border-radius:12px; flex-shrink:0; }
.svp-mega-brand{display:grid;place-items:center;width:96px;flex-shrink:0;overflow:hidden;}
.svp-mega-brand .svp-brand-logo{width:96px;height:40px;object-fit:contain;margin:0;}
.svp-mega-brand .svp-family-logo{transform:scale(.5);transform-origin:center;width:192px;flex-shrink:0;}
.svp-mega-project-logo{display:block;width:90px;height:52px;object-fit:contain;flex-shrink:0;}
@media(min-width:1101px){
  #masthead .main-nav > ul { align-items:center; flex-wrap:nowrap; }
  #masthead .main-navigation { flex-shrink:0; }
  #masthead .header-widget .wp-block-buttons { flex-wrap:nowrap; }
  #masthead .main-nav > ul > li { display:flex; align-items:center; }
  #masthead .main-nav > ul > li > a,#masthead .svp-mega-control > a { display:flex; align-items:center; height:52px; line-height:1.35; padding-inline:14px; font-size:15px; font-weight:600; border-radius:10px; }
  #masthead .svp-mega-control > a { padding-right:6px; }
  #masthead .svp-mega-toggle { flex:0 0 44px; width:44px; height:52px; min-height:52px; box-sizing:border-box; }
}
@media(min-width:1101px) and (max-width:1200px){
  body #masthead .inside-header { padding-inline:24px; }
}
.svp-mega-icon { display:grid; place-items:center; width:48px; height:48px; flex-shrink:0; color:#69e6dc; }
.main-navigation .main-nav .svp-mega-feature { padding:16px; border:1px solid #665175; border-radius:14px; background:linear-gradient(130deg,#361b4966,#183e3b44)!important; }
.svp-mega-feature p { font-size:13px; line-height:1.55; color:#c1cad9; margin:8px 0; }
.svp-mega-feature .svp-eyebrow { color:#ff89c8; font-size:11px; }
.main-navigation .main-nav .svp-mega-feature > a,.main-navigation .main-nav .svp-mega-more a { display:block; color:#69e6dc!important; background:transparent!important; line-height:1.5!important; padding:8px 0!important; font-size:13px; white-space:normal; text-decoration:underline; }
.svp-mega-rating { margin-top:8px; border-top:1px solid #515d70; }
.svp-mega-rating > span { color:#f5d78c; }
.svp-mega-panel .svp-mega-rating small { font-size:11px; }
.svp-mega-more { grid-column:1/-1; padding:8px 16px; }
.svp-mega-more > div { display:flex; flex-wrap:wrap; gap:8px 24px; }
@media(min-width:1101px) {
  #masthead :is(.inside-header,.main-navigation,.inside-navigation,.main-nav,.main-nav>ul) { position:static; }
  #masthead .svp-mega-parent { position:static!important; }
  #masthead .svp-mega-panel { left:50%!important; transform:translateX(-50%); width:calc(100% - 48px)!important; max-width:1360px; }
}
@media(max-width:1100px) {
  .main-navigation .main-nav .svp-mega-control { width:100%; min-height:60px; }
  .main-navigation .main-nav .svp-mega-control > a { width:auto; }
  .main-navigation .main-nav ul .svp-mega-panel { position:static!important; max-height:none; box-shadow:none; padding:12px!important; clear:both; }
  .main-navigation .main-nav ul .svp-mega-open > .svp-mega-panel { grid-template-columns:minmax(0,1fr); }
  .main-navigation .main-nav .svp-mega-card > a { min-height:110px; padding:12px!important; gap:10px; }
}
@media(max-width:600px) {
  .main-navigation .main-nav ul .svp-mega-open > .svp-mega-panel { grid-template-columns:minmax(0,1fr); }
  .svp-mega-panel .svp-mega-image { width:64px; height:64px; }
  .main-navigation .main-nav .svp-mega-card > a { min-height:96px; }
}
.svp-service-connections { margin:48px 0; }
.svp-related-projects { display:grid; grid-template-columns:repeat(auto-fit,minmax(min(100%,250px),1fr)); gap:24px; margin:24px 0; }
.svp-related-projects .svp-project-card { min-width:0; }
.svp-related-projects .svp-project-shot img { width:100%; height:180px; object-fit:cover; object-position:top; }
.svp-team-service { display:flex; align-items:flex-start; gap:24px; padding:24px; margin:32px 0; border:1px solid #515d70; border-radius:20px; background:rgba(21,25,34,.68); backdrop-filter:blur(10px); }
.svp-contact-options { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:32px 0; }
.svp-contact-choice { padding:24px; background:rgba(21,25,34,.68); border:1px solid #515d70; border-radius:16px; }
.svp-contact-choice h3 { margin-top:12px!important; }
.svp-contact-choice a { overflow-wrap:anywhere; }
.svp-contact-content { display:grid; grid-template-columns:minmax(0,1.4fr) minmax(0,1fr); gap:32px; align-items:start; margin:32px 0; }
.svp-contact-form-panel { padding:32px; background:#f5f6f9; color:#374151; border-radius:20px; }
.svp-pro-site .svp-contact-form-panel :is(h2,h3,p,label) { color:#374151!important; }
.svp-pro-site .svp-contact-form-panel a { color:#5c088b!important; }
.svp-contact-form-panel input:not([type=checkbox]):not([type=submit]),.svp-contact-form-panel textarea { color:#252d3a; background:#fff; border:1px solid #657084; border-radius:10px; width:100%; max-width:100%; }
.svp-contact-form-panel input[type=submit] { background:#db0075; color:white; border-radius:10px; min-height:48px; }
.svp-contact-note { padding:24px; border:1px solid #515d70; border-radius:20px; background:rgba(21,25,34,.68); }
.svp-booking-calendar { padding:16px; border-radius:20px; border:1px solid #515d70; background:#fff; overflow:hidden; }
.svp-booking-calendar iframe { display:block; width:100%; max-width:100%; }
@media(max-width:900px) { .svp-contact-options,.svp-contact-content { grid-template-columns:minmax(0,1fr); } }
@media(max-width:600px) { .svp-team-service { flex-direction:column; gap:12px; }.svp-contact-form-panel { padding:24px 20px; } }
@media(prefers-reduced-motion:reduce) { .svp-mega-toggle span,.svp-mega-card > a { transition:none!important; } }
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) { .main-navigation .main-nav ul .svp-mega-panel,.svp-team-service,.svp-contact-choice,.svp-contact-note { background:#151922!important; backdrop-filter:none; } }
.svp-contact-hero { display:grid; grid-template-columns:minmax(0,1.25fr) minmax(0,1fr); align-items:center; gap:32px; }
.svp-contact-hero-image { width:100%; height:300px; object-fit:cover; border-radius:20px; filter:saturate(.7); }
:is(.svp-contact-options,.svp-contact-content,.svp-contact-hero) > .wp-block-group__inner-container { display:contents; }
@media(max-width:900px) { .svp-contact-hero { grid-template-columns:minmax(0,1fr); }.svp-contact-hero-image { height:220px; } }

/* Enlaces del mismo tamaño; recomendaciones fuera de las filas del catálogo. */
.main-navigation .main-nav .svp-mega-panel > .svp-mega-catalog{grid-column:1/-1;}
.main-navigation .main-nav ul.svp-mega-panel ul.svp-mega-grid{
  position:static!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr));
  grid-auto-rows:1fr;gap:16px;width:100%!important;min-width:0;max-width:none;
  height:auto!important;opacity:1!important;visibility:visible!important;pointer-events:auto!important;
  float:none;transform:none!important;box-shadow:none;border:0;background:transparent!important;
  margin:0!important;padding:0!important;list-style:none;
}
.main-navigation .main-nav .svp-mega-grid > .svp-mega-card{display:flex;width:auto!important;min-width:0;margin:0;padding:0;float:none;}
.main-navigation .main-nav .svp-mega-grid .svp-mega-card > a{
  display:grid;grid-template-columns:80px minmax(0,1fr);align-items:center;gap:16px;
  width:100%;min-height:144px;height:auto;padding:20px!important;
}
.svp-mega-grid .svp-mega-card > a > span:last-child{min-width:0;overflow-wrap:anywhere;}
.svp-mega-grid .svp-mega-brand{width:80px;}
.svp-mega-grid .svp-mega-brand .svp-brand-logo{width:80px;}
.main-navigation .main-nav ul .svp-mega-open > .svp-mega-panel{grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;}
.main-navigation .main-nav .svp-mega-panel > .svp-mega-feature{
  box-sizing:border-box;border:1px solid #665175;min-width:0;
}
.svp-mega-panel > .svp-mega-feature:nth-child(2):last-child,
.svp-mega-panel > .svp-mega-feature:nth-child(2):has(+ .svp-mega-more){grid-column:1/-1;}
@media(max-width:1100px){
  .main-navigation .main-nav ul.svp-mega-panel ul.svp-mega-grid{grid-template-columns:minmax(0,1fr);gap:12px;}
  .main-navigation .main-nav .svp-mega-grid .svp-mega-card > a{grid-template-columns:64px minmax(0,1fr);gap:12px;min-height:128px;padding:12px!important;}
  .svp-mega-grid .svp-mega-brand,.svp-mega-grid .svp-mega-brand .svp-brand-logo{width:64px;}
  .svp-mega-grid .svp-mega-project-logo{width:64px;}
  .main-navigation .main-nav ul .svp-mega-open > .svp-mega-panel{grid-template-columns:minmax(0,1fr);}
}

@media(min-width:1101px){
  .main-navigation .main-nav ul.svp-mega-panel ul.svp-mega-grid:has(> li:nth-child(4):last-child){grid-template-columns:repeat(2,minmax(0,1fr));}
  .svp-mega-panel > .svp-mega-feature:is(:nth-child(2):last-child,:nth-child(2):has(+ .svp-mega-more)){
    display:grid;grid-template-columns:minmax(0,1fr) minmax(160px,.45fr) minmax(180px,.55fr);column-gap:24px;align-content:center;
  }
  .svp-mega-panel > .svp-mega-feature:is(:nth-child(2):last-child,:nth-child(2):has(+ .svp-mega-more)) > :is(p,strong){grid-column:1;}
  .main-navigation .main-nav .svp-mega-panel > .svp-mega-feature:is(:nth-child(2):last-child,:nth-child(2):has(+ .svp-mega-more)) > a{
    grid-column:2;grid-row:1/4;align-self:center;
  }
  .main-navigation .main-nav .svp-mega-panel > .svp-mega-feature:is(:nth-child(2):last-child,:nth-child(2):has(+ .svp-mega-more)) > a + a{
    grid-column:3;border-top:0;border-left:1px solid #515d70;padding-left:20px!important;margin:0;
  }
}
/* Compuestos Tech/Home/Pro completos, centrados sin recortar letras. */
.svp-mega-grid .svp-mega-brand{display:flex;align-items:center;justify-content:center;}
.svp-mega-grid .svp-mega-brand .svp-family-logo{flex:0 0 210px;width:210px;transform:scale(.38);margin:0;white-space:nowrap;}
.svp-mega-grid .svp-family-mark{flex:0 0 117px;}
@media(max-width:1100px){.svp-mega-grid .svp-mega-brand .svp-family-logo{transform:scale(.30);}}

/* Servicios: ilustraciones propias y lectura por decisiones, sin cifras simuladas. */
.svp-capability-art { display:block; width:100%; height:auto; aspect-ratio:2.5; flex:none; margin:0 0 20px; border-radius:16px; }
.svp-platform-chip:has(svg) { display:inline-flex; align-items:center; justify-content:center; }
.svp-platform-chip svg { width:26px; height:26px; }
.svp-learning-section,.svp-session-options { margin-block:clamp(40px,6vw,72px); }
.svp-learning-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; margin-block:24px; align-items:stretch; }
.svp-meeting-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
.svp-learning-card { display:flex; flex-direction:column; min-width:0; padding:24px; border:1px solid #515d70; border-radius:20px; background:rgba(21,25,34,.68); }
.svp-learning-card h3 { margin:16px 0 12px; font-size:clamp(1.15rem,2vw,1.35rem); }
.svp-learning-card p { color:#b6becb; }
.svp-learning-card a { margin-top:auto; padding-top:16px; color:#69e6dc; }
.svp-example { margin-top:auto; padding:16px; border-inline-start:3px solid #69e6dc; border-radius:0 12px 12px 0; background:rgba(105,230,220,.06); }
.svp-example strong { color:#69e6dc; }.svp-example p { margin:8px 0 0; }
.svp-session-steps { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:16px; padding:0!important; margin:24px 0; list-style:none!important; }
.svp-session-steps li { display:flex; gap:16px; padding:24px; min-width:0; border:1px solid #515d70; border-radius:16px; background:rgba(21,25,34,.68); }
.svp-session-steps h3 { margin:0 0 10px; font-size:1.15rem; }.svp-session-steps p { margin:0; color:#b6becb; }
.svp-step-number { color:#69e6dc; font-size:1.4rem; font-weight:700; line-height:1.4; }
.svp-related-projects { grid-template-columns:repeat(3,minmax(0,1fr)); grid-auto-rows:1fr; align-items:stretch; }
.svp-related-projects .svp-project-card { height:100%; display:flex; flex-direction:column; box-sizing:border-box; }
.svp-related-projects .svp-project-copy { display:flex; flex-direction:column; flex:1; padding:20px; min-width:0; }
.svp-related-projects .svp-project-copy h3 { margin-top:auto; padding-top:12px; }
.svp-related-projects .svp-project-shot { flex:none; width:100%; aspect-ratio:16/9; overflow:hidden; }
.svp-related-projects .svp-project-shot img { height:100%; object-fit:cover; }
.svp-related-projects .svp-client-logo-link { min-height:60px; height:60px; display:flex; align-items:center; }
.svp-related-projects .svp-client-logo { width:100%; max-width:200px; height:60px; object-fit:contain; }
.svp-review-google-source { border-top:1px solid #515d70; padding-top:16px; margin-top:16px; }.svp-review-google-source p { font-size:.9rem; }.svp-review-google-source a { color:#69e6dc; }
@media(max-width:900px) { .svp-learning-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }.svp-related-projects { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .svp-learning-grid,.svp-meeting-grid,.svp-session-steps,.svp-related-projects { grid-template-columns:minmax(0,1fr); gap:16px; }.svp-learning-card,.svp-session-steps li { padding:20px; }.svp-learning-section,.svp-session-options { max-width:100%; }.svp-service-connections { min-width:0; }.svp-related-projects .svp-project-card { width:100%; } }
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) { .svp-learning-card,.svp-session-steps li,.svp-example { background:#151922; } }
.svp-service-page > h2.wp-block-heading { border-inline-start:3px solid #69e6dc; padding-inline-start:16px; margin-block-start:40px; }
.svp-service-page > p { max-width:74ch; }
.svp-service-page .svp-service-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; align-items:stretch; }
.svp-service-page .svp-service-grid > .svp-service-card { display:flex; flex-direction:column; min-width:0; height:100%; box-sizing:border-box; }
@media(max-width:900px) { .svp-service-page .svp-service-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }
@media(max-width:600px) { .svp-service-page .svp-service-grid { grid-template-columns:minmax(0,1fr); gap:16px; }.svp-service-page > h2.wp-block-heading { padding-inline-start:12px; } }

/* Amazon: elegir una situación y entender diagnóstico, trabajo y entregable. */
.svp-amazon-selector { margin-block:32px 48px; }
.svp-amazon-choices.wp-block-buttons { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; }
.svp-amazon-choices .wp-block-button { width:100%; margin:0; }
.svp-amazon-choices .wp-block-button__link { display:flex; align-items:center; justify-content:flex-start; width:100%; height:100%; min-height:64px; padding:16px 20px; box-sizing:border-box; text-align:start; white-space:normal; }
.svp-amazon-route { padding:clamp(20px,3vw,32px); margin-block:28px; border:1px solid #515d70; border-radius:20px; background:rgba(21,25,34,.68); scroll-margin-top:150px; }
.svp-amazon-selector { scroll-margin-top:150px; }
.svp-amazon-route > h2 { font-size:clamp(1.45rem,3vw,2rem); margin-block:12px 16px; }
.svp-amazon-route > p:first-child { color:#69e6dc; font-size:.92rem; }
.svp-route-columns { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:20px; margin-block:24px; }
.svp-route-cell { min-width:0; }.svp-route-cell h3 { font-size:1.1rem; line-height:1.4; margin-block:0 12px; }.svp-route-cell p { margin-bottom:0; color:#b6becb; }
.svp-route-delivery { padding:16px; border:1px solid #69e6dc; border-radius:12px; background:rgba(105,230,220,.045); }
.svp-route-note { padding-inline-start:16px; border-inline-start:3px solid #c9a5ee; margin-block:20px; }.svp-route-note p { color:#b6becb; font-size:.95rem; }
.svp-amazon-route .wp-block-buttons { margin-top:24px; }
.svp-amazon-route > p:last-child { margin:16px 0 0; font-size:.9rem; }
.svp-amazon-pilot > .wp-block-details { padding:20px; margin-block:12px; border:1px solid #515d70; border-radius:16px; background:rgba(21,25,34,.68); }
.svp-amazon-pilot > .wp-block-details summary { cursor:pointer; font-weight:600; }.svp-amazon-pilot > .wp-block-details[open] summary { margin-bottom:16px; }
@media(max-width:900px) { .svp-amazon-choices.wp-block-buttons { grid-template-columns:repeat(2,minmax(0,1fr)); }.svp-route-columns { grid-template-columns:minmax(0,1fr); }.svp-route-cell:not(:last-child) { padding-bottom:16px; border-bottom:1px solid #515d70; } }
@media(max-width:600px) { .svp-amazon-choices.wp-block-buttons { grid-template-columns:minmax(0,1fr); }.svp-amazon-route { padding:20px; margin-block:20px; border-radius:16px; }.svp-amazon-route .wp-block-button { max-width:100%; }.svp-amazon-route .wp-block-button__link { white-space:normal; }.svp-route-columns { gap:16px; } }
@media(prefers-reduced-transparency:reduce),(prefers-contrast:more) { .svp-amazon-route,.svp-route-delivery,.svp-amazon-pilot > .wp-block-details { background:#151922; } }

/* Native core/group wrappers must not occupy a single diagnostic grid column. */
.svp-route-columns > .wp-block-group__inner-container { display:contents; }
