/* ImpulsArte Negocios 1.9.0 — rediseño editorial de la página comercial.
   Complementa el CSS original de la exportación Next; no modifica ImpulsArte OS ni la API. */
:root {
  --imp-ink: #171a2b;
  --imp-muted: #60687b;
  --imp-soft: #f5f6fb;
  --imp-surface: #ffffff;
  --imp-line: #e4e6f0;
  --imp-purple: #6354e9;
  --imp-purple-dark: #4732c9;
  --imp-highlight: #eeeaff;
  --imp-radius: 22px;
}
html { scroll-behavior: smooth; overflow-x: clip; scroll-padding-top: 110px; }
body { background: #f7f8fc !important; color: var(--imp-ink) !important; overflow-x: clip; font-size: 16px; }
main { overflow-x: clip; }
#sistema, #servicios, #extras, #metodo, #diagnostico, #planes, #laboratorio, #referencias, #contacto { scroll-margin-top: 110px; }
.section-shell { width: min(1200px,calc(100% - 64px)); }
section { box-sizing: border-box; }
section h2 { text-wrap: balance; }
section p { overflow-wrap: break-word; }
section .kicker { color: #6555cb; font-size: .79rem; letter-spacing: .105em; font-weight: 800; margin-bottom: 18px; line-height: 1.45; }
section .kicker span:first-child { color: #6555cb; }
section h2, .showcase-copy h2, .contact-card h2, .diagnostic-intro h2, .section-heading h2, .values-grid h2 {
  font-size: clamp(2rem,3.65vw,3.55rem); line-height: 1.08; letter-spacing: -.045em; font-weight: 780;
}
.section-heading { margin-bottom: 34px; max-width: 830px; }
.split-heading { grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr); align-items: end; gap: clamp(24px,5vw,68px); }
.split-heading>p { font-size: 1.04rem; line-height: 1.72; color: var(--imp-muted); max-width: 500px; }
a:focus-visible, button:focus-visible, [role="radio"]:focus-visible { outline: 3px solid #9187ff !important; outline-offset: 3px; }
.button { min-height: 49px; padding: 12px 21px; border-radius: 12px; font-size: .95rem; }
.button-primary { color: white !important; background: var(--imp-purple) !important; box-shadow: 0 12px 30px rgba(99,84,233,.17) !important; }
.button-primary:hover { background: var(--imp-purple-dark) !important; }
.button-ghost { color: var(--imp-ink) !important; background: white !important; border-color: #d8dceb !important; }
.button-ghost:hover { background: #f2f0ff !important; }

/* Menú superior. Conservamos el logotipo oficial sobre un soporte oscuro. */
.site-header { top: 14px; width: min(1200px,calc(100% - 38px)); height: 70px; padding: 0 14px 0 9px; border: 1px solid rgba(255,255,255,.13); border-radius: 18px; background: rgba(23,25,43,.97); box-shadow: 0 14px 45px rgba(23,25,43,.15); }
.brand-logo { object-fit: contain; mix-blend-mode: normal; }
.main-nav { gap: 19px; color: #e8e7f7; font-size: .86rem; }
.main-nav a { white-space: nowrap; }
.main-nav a:hover { color: #fff; }
.main-nav .nav-cta { background: #ebe8ff; color: #3322a8; border-radius: 11px; padding: 12px 16px; }
.main-nav .nav-cta:hover { color: #3322a8; background: white; }

/* Hero: mensaje claro, un solo foco visual y sin ornamentos flotantes. */
.hero { min-height: 730px; grid-template-columns: minmax(0,1.08fr) minmax(0,.92fr); gap: clamp(30px,5vw,76px); padding-top: 154px; padding-bottom: 94px; align-items: center; }
.hero-grid, .hero-orb, .hero:before, .hero:after, .hero-artboard:before, .hero-artboard:after, .artboard-note, .artboard-stamp { display: none !important; }
.hero .kicker { color: #6555cb; }
.hero h1 { max-width: 780px; font-size: clamp(3.2rem,5.35vw,5.6rem); font-weight: 800; letter-spacing: -.065em; line-height: 1.015; color: var(--imp-ink); }
.hero h1 em { color: var(--imp-purple) !important; background: none !important; -webkit-text-fill-color: currentColor; }
.hero-lede { max-width: 600px; margin-top: 26px; color: #525a6d; font-size: 1.12rem; line-height: 1.74; }
.hero-actions { margin-top: 30px; }
.hero-proof { gap: 22px; margin-top: 41px; padding-top: 22px; border-top: 1px solid var(--imp-line); }
.hero-proof div { max-width: 175px; grid-template-columns: auto 1fr; gap: 8px; }
.hero-proof strong { font-size: 1.48rem; color: var(--imp-ink); }
.hero-proof span { font-size: .71rem; color: var(--imp-muted); line-height: 1.4; }
.hero-artboard { min-height: 510px; margin: 0; border: 1px solid #dfe3f2; border-radius: 26px; background: linear-gradient(145deg,#e3e9ff,#f7f7ff 54%,#d9f0ff); box-shadow: 0 32px 78px rgba(35,44,104,.10); }
.artboard-label { top: 15px; left: 16px; right: 16px; padding: 10px 13px; border-radius: 11px; border: 1px solid rgba(79,65,185,.13); background: white; box-shadow: none; color: #5d50b3; transform: none; }
.artboard-label span, .artboard-label strong { letter-spacing: .07em; font-size: .67rem; }
.artboard-image { inset: 66px 17px 78px; border: 0; border-radius: 14px; background: white; box-shadow: 0 14px 40px rgba(40,50,111,.10); transform: none; }
.artboard-image img { width: 100%; height: 100%; object-fit: cover; object-position: center 31%; }
.artboard-tags { left: 17px; bottom: 20px; right: 17px; gap: 7px; }
.artboard-tags span, .artboard-tags span:nth-child(2), .artboard-tags span:nth-child(4) { font-size: .7rem; padding: 7px 10px; background: white; color: #6255a8; border: 1px solid #e3dfff; backdrop-filter: none; }
.marquee { display: none !important; }

/* Imagen de estudio y propuesta creativa. */
.creative-showcase { grid-template-columns: 1fr 1fr; gap: 22px; padding-block: 44px 90px; }
.showcase-visual { min-height: 480px; border: 1px solid var(--imp-line); border-radius: 24px; }
.showcase-visual:after { background: #fff; color: #4f43b2; border-radius: 11px; font-size: .7rem; box-shadow: 0 8px 22px rgba(0,0,0,.10); }
.showcase-copy { min-width: 0; padding: clamp(30px,4vw,58px); border: 1px solid #e8e5ff; border-radius: 24px; color: var(--imp-ink); background: #eeeaff; }
.showcase-copy h2 { font-size: clamp(2.1rem,3.35vw,3.65rem); line-height: 1.08; letter-spacing: -.045em; }
.showcase-copy>p:not(.kicker) { color: #555d71; margin: 22px 0; line-height: 1.72; }
.showcase-list { border-color: #dcd6fb; margin-top: 10px; }
.showcase-list span { border-color: #dcd6fb; color: #34354d; }
.showcase-copy>a { color: #5140c9; font-size: .95rem; }

/* Sistema: cuatro pasos fáciles de escanear. */
.system-section { padding-block: 84px 96px; }
.system-map { padding-top: 0; grid-template-columns: repeat(4,minmax(0,1fr)); gap: 16px; }
.system-map:before { display:none; }
.map-core { grid-column: 1/-1; position: static; transform: none; width: fit-content; height: auto; min-height: 54px; padding: 12px 18px; border: 1px solid #e6e0ff; border-radius: 13px; background: #ece8ff; color: #3f2daf; box-shadow: none; }
.map-core svg { color: #6e5ce2; }
.map-core small { color: #6c62a0; }
.system-map article { min-width: 0; min-height: 235px; padding: 25px; border: 1px solid var(--imp-line); border-radius: var(--imp-radius); color: var(--imp-ink); background: white; box-shadow: 0 12px 34px rgba(25,31,73,.035); }
.system-map article>span { color: var(--imp-purple); }
.system-map article svg { color: var(--imp-purple); }
.system-map article h3 { color: var(--imp-ink); font-size: 1.36rem; }
.system-map article p { color: var(--imp-muted); font-size: .94rem; line-height: 1.57; }

/* Servicios: pestañas en horizontal + ficha amplia, no menú angosto. */
.services-section { padding-block: 88px 102px; background: #fff; }
.service-tabs { display: flex; flex-direction: column; gap: 19px; }
.service-tab-list { flex-direction: row !important; overflow-x: auto; gap: 10px !important; padding: 3px 3px 8px !important; }
.service-tab-list [data-slot=tabs-trigger] { min-width: 0; flex: 1 0 0; min-height: 59px; justify-content: center; padding: 11px 14px; border: 1px solid #e1e3ee; border-radius: 12px; background: #f6f7fb; color: #535b70; white-space: nowrap; }
.service-tab-list [data-state=active] { background: #ece9ff !important; border-color: #c4bbff !important; color: #3e2fb3 !important; }
.service-tab-list span { font-size: .8rem; color: #6252d8; }
.service-panel { min-height: 0; padding: clamp(26px,4vw,48px); border: 1px solid #e3e6f1; border-radius: var(--imp-radius); background: #f8f9fe; color: var(--imp-ink); }
.service-panel h3 { font-size: clamp(1.75rem,2.9vw,2.8rem); line-height: 1.14; color: var(--imp-ink); letter-spacing: -.04em; }
.panel-eyebrow { color: var(--imp-purple); font-size: .78rem; }
.panel-copy { color: #576076; max-width: 870px; line-height: 1.7; font-size: 1.02rem; }
.service-cards { gap: 14px; }
.service-cards article { background: white; border: 1px solid #e4e6f1; border-radius: 15px; color: var(--imp-ink); padding: 22px; }
.service-cards article svg { color: var(--imp-purple); }
.service-cards article h4 { color: var(--imp-ink); }
.service-cards article p { color: var(--imp-muted); font-size: .93rem; line-height: 1.55; }

/* Extras: selector comprensible y dos columnas balanceadas. */
.extras-section { padding-block: 92px 98px; color: var(--imp-ink); background: #f7f8fc; }
.extra-tabs { display:flex; flex-direction: column; gap: 16px; }
.extra-tab-list { flex-direction:row!important; gap:8px!important; overflow-x:auto; width:100%; padding:3px 3px 9px!important; }
.extra-tab-list [data-slot=tabs-trigger] { min-height: 53px; min-width: 170px; flex:1; justify-content:center; padding:10px 13px; color:#576079; background:#fff; border:1px solid #e2e5f0; border-radius:12px; }
.extra-tab-list [data-state=active] { color:#4030b7!important; background:#ece9ff!important; border-color:#c4bcff!important; }
.extra-tab-list [data-slot=tabs-trigger] svg { color:#6554db; }
.extra-panel { min-height: 0; grid-template-columns: minmax(0,.92fr) minmax(0,1.08fr); border:1px solid #e1e5f1; border-radius:var(--imp-radius); background:#fff; color:var(--imp-ink); }
.extra-panel-intro { padding:clamp(26px,4vw,44px); background:#f0efff; border-color:#e3e0fb; }
.extra-icon { color:#5e50d9; background:white; border-color:#dfd9ff; }
.extra-panel-intro>p { margin:24px 0 9px; color:#6554ce; }
.extra-panel-intro h3 { color:#1b1e32; font-size:clamp(1.55rem,2.65vw,2.5rem); letter-spacing:-.04em; }
.extra-panel-intro>span { color:#535d73; line-height:1.66; }
.extra-panel-intro>strong { color:#4837bb; }
.extra-list { background:#fff; }
.extra-list article { border-color:#e8eaf2; }
.extra-list article>span { color:#6652d9; }
.extra-list article p { color:#293047; font-size:1rem; line-height:1.65; }
.print-ribbon { background:white; border:1px solid #e4e6f1; border-radius:15px; color:#4d5870; }
.print-ribbon strong, .print-ribbon b { color:#232944; }

/* Proceso: 5 pasos alineados en una fila en pantalla grande. */
.method-section { padding-block: 92px 104px; color:var(--imp-ink); background:#f0f2fa; }
.method-track { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:12px; border:0; }
.method-track article { display:flex; flex-direction:column; gap:18px; padding:24px; min-height:218px; border:1px solid #e2e5f0; border-radius:18px; background:#fff; }
.method-number { color:var(--imp-purple); font-size:.88rem; }
.method-track h3 { color:#20253a; font-size:1.16rem; margin:0 0 12px; }
.method-track p { font-size:.9rem; line-height:1.58; color:#596175; }
.method-principles { gap:10px; margin-top:18px; }
.method-principles p { color:#42485d; background:#fff; border-color:#e2e5f0; border-radius:12px; font-size:.85rem; }

/* Diagnóstico: preguntas legibles, opciones táctiles, progreso claro. */
.diagnostic-section { grid-template-columns:minmax(0,.80fr) minmax(0,1.2fr); gap:clamp(26px,5vw,70px); padding-block:102px; }
.diagnostic-intro { top:124px; }
.diagnostic-intro>p:not(.kicker) { color:var(--imp-muted); line-height:1.72; font-size:1.04rem; }
.diagnostic-aside { color:#505b70; background:#f0efff; border:1px solid #dedafa; font-size:.87rem; }
.diagnostic-aside svg { color:#6254d3; }
.audience-switch { padding:5px!important; border:1px solid #e1e3ef; border-radius:13px; background:#eceefa!important; }
.audience-switch [data-slot=tabs-trigger] { min-height:44px; color:#576176; }
.audience-switch [data-state=active] { background:white!important; color:#4736c1!important; }
.audience-context { border-color:#e2e5f0; color:#2e344b; background:#fff; }
.audience-context svg { color:var(--imp-purple); }
.audience-context span { color:var(--imp-muted); }
.diagnostic-card { background:white; border:1px solid #e2e5ef; border-radius:18px; color:var(--imp-ink); }
.diagnostic-progress { background:#e9e7fb; }
.diagnostic-progress span { background:#6958e7; }
.question-block { border-color:#e9ebf3; }
.question-block legend { color:#22283e; font-size:1rem; line-height:1.55; }
.question-block legend>span { color:#6958e7; }
.answer-grid { gap:10px; }
.answer-option { min-height:50px; border:1px solid #e4e6f1; border-radius:12px; color:#3e465b; background:#f8f9fd; font-size:.92rem; line-height:1.45; padding:12px; }
.answer-option:has([data-state=checked]),.answer-option[aria-checked=true] { border-color:#8478ef; background:#efecff; color:#31229c; }
.diagnostic-result { background:#f0efff; border-color:#ded8ff; color:#302c56; }
.diagnostic-result p { color:#4e5369; }

/* Planes: misma información y precios, menos ruido visual. */
.plans-section { padding-block:95px 102px; background:#f0f1ff; color:var(--imp-ink); }
.plans-section .kicker { color:#6252c1; }
.plans-section .split-heading>p { color:#505b70; }
.plans-switch { background:white!important; border:1px solid #dcdff1; border-radius:14px; padding:5px!important; }
.plans-switch [data-slot=tabs-trigger] { color:#565d75; min-height:46px; }
.plans-switch [data-state=active] { background:#6052d8!important; color:#fff!important; }
.plan-section-label { background:#fff; border-color:#dde1f0; color:#37405b; }
.plan-section-label p { color:#586178; }
.plan-tab-list { background:white!important; border-color:#e0e3ee; }
.plan-tab-list [data-state=active] { background:#6152d8!important; color:white!important; }
.plan-panel { min-height:0; margin-top:16px; border-color:#e2e4ee; border-radius:20px; background:white; box-shadow:0 20px 55px rgba(48,53,100,.055); }
.plan-identity { padding:38px; background:#252146; color:white; }
.plan-identity>span { color:#cac5ff; }
.plan-identity>p:first-of-type { margin-top:42px; }
.plan-detail { padding:38px; }
.plan-detail li { color:#3e4658; }
.plan-detail .button, .business-plan-card .button { color:white!important; background:var(--imp-purple)!important; }
.plan-note { color:#636d82; font-size:.84rem; }
.business-plan-grid { gap:14px; }
.business-plan-card { min-height:440px; background:#fff; border:1px solid #e0e3f0; border-radius:18px; box-shadow:0 12px 36px rgba(48,53,100,.04); }
.business-plan-card:nth-child(3) { background:#282347; color:white; }
.business-plan-card:not(:nth-child(3)) p,.business-plan-card:not(:nth-child(3)) li { color:#4c566b; }

/* Dos herramientas propias, con accesos intactos. */
.lab-section { padding-block:97px 104px; }
.lab-grid { gap:18px; }
.lab-card { min-height:475px; padding:32px; border-radius:22px; }
.os-card { background:#252145; }
.lab-card h3 { font-size:clamp(2rem,3vw,3.2rem); }
.lab-card>p { line-height:1.62; font-size:.98rem; }
.lab-card-head>div { color:#d0cdec; }
.lab-card-head svg { color:#aba1ff; }
.lab-footer span { color:#c3c4dd; }
.lab-footer a { color:white; background:#6354d8; border-color:#7264ed; }
.lab-footer a svg { color:white; }
.arcade-card { background:#22223c; }
.arcade-card .lab-index { margin-top:215px; }
.arcade-card:before { background:linear-gradient(180deg,rgba(9,10,23,.09),rgba(16,17,34,.95) 68%); }

/* Referencias: tarjetas cortas, separación evidente y lectura rápida. */
.references-section { padding-block:95px 105px; background:#fff; color:var(--imp-ink); border-color:#e6e8f1; }
.reference-stage { border-radius:22px; border:1px solid #e2e5ef; background:#fff; }
.reference-status { padding:22px 26px; color:#303950; background:#f7f8fd; border-color:#e2e6ee; }
.reference-status>svg, .reference-status span { color:var(--imp-purple); }
.reference-grid { grid-template-columns:repeat(3,minmax(0,1fr)); gap:0; }
.reference-card, .reference-card:nth-child(n+4) { gap:25px; min-height:240px; padding:25px; border-color:#e5e7f0; background:#fff; color:#22273d; box-shadow:none; }
.reference-card:hover { transform:none; background:#f8f7ff; box-shadow:inset 0 0 0 1px #e1dcff; }
.reference-card-top { color:#626b7e; }
.reference-mark { color:#6653dc; background:#f0edff; border-color:#e2dcff; }
.reference-card small { color:var(--imp-purple); }
.reference-card h3 { font-size:clamp(1.35rem,2vw,1.75rem); }
.reference-tags span { color:#536076; background:#f6f7fb; border-color:#e9eaf2; font-size:.76rem; }
.reference-rule { color:#647084; border-color:#e8e9f2; background:#f9fafc; }
.reference-rule svg { color:#6655dc; }

/* Valores y llamada final. */
.values-section { padding-block:82px; color:var(--imp-ink); border-color:#e4e7f0; background:#f6f7fc; }
.values-grid { gap:clamp(25px,6vw,80px); }
.value-statement>p { color:#566077; line-height:1.75; font-size:1.06rem; }
.value-statement>div { border-color:#dfe3ee; }
.value-statement span { color:#657088; font-size:.78rem; }
.value-statement strong { color:#20263d; }
.contact-section { padding-block:88px 100px; }
.contact-card { grid-template-columns: minmax(0,1.22fr) minmax(280px,.78fr); gap:36px; padding:clamp(32px,5vw,66px); border:1px solid #ded9fb; border-radius:26px; background:linear-gradient(120deg,#eeeaff,#f8f8ff 65%,#e3ecff); color:var(--imp-ink); }
.contact-card:after { display:none; }
.contact-card .kicker { color:#5b48c5; }
.contact-card>div:first-child>p:last-child { color:#535e74; font-size:1.04rem; line-height:1.7; }
.contact-actions { gap:12px; }
.contact-actions .button-primary { background:#6252d9!important; color:white!important; }
.contact-actions .button-ghost { background:white!important; border-color:#dad7f2!important; color:#3d328d!important; }
.contact-actions small { color:#697185; font-size:.84rem; }
.site-footer { width:min(1200px,calc(100% - 64px)); padding:38px 0 66px; border-color:#e3e6ef; color:#2f374b; }
.site-footer .brand-logo { width:136px; height:57px; padding:5px; background:#1b1b29; border-radius:10px; }
.site-footer>div:nth-child(2) p { color:#4d5870; font-size:.94rem; }
.site-footer>div:nth-child(2) span { color:#788196; font-size:.8rem; }
.footer-links { color:#485267; font-size:.87rem; flex-wrap:wrap; }
.footer-links a:hover { color:var(--imp-purple); }

@media (max-width: 1100px) {
 .main-nav { gap:11px; font-size:.78rem; }
 .main-nav .nav-cta { padding:10px 12px; }
 .hero { grid-template-columns:1fr 1fr; }
 .hero h1 { font-size:clamp(3rem,5.5vw,4.8rem); }
 .method-track { grid-template-columns:repeat(3,minmax(0,1fr)); }
 .method-track article { min-height:185px; }
}
@media (max-width: 980px) {
 .site-header { width:calc(100% - 28px); }
 .main-nav { top:78px; background:#202139; border:1px solid rgba(255,255,255,.12); border-radius:16px; box-shadow:0 16px 40px rgba(0,0,0,.16); gap:0; padding:12px; font-size:.96rem; }
 .main-nav a { padding:13px 14px; }
 .menu-button { display:inline-flex; background:#34344f; }
 .hero { grid-template-columns:1fr; min-height:0; gap:36px; padding-top:142px; padding-bottom:56px; }
 .hero-copy { max-width:780px; }
 .hero-artboard { width:100%; max-width:800px; min-height:490px; }
 .creative-showcase { grid-template-columns:1fr 1fr; }
 .system-map { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .diagnostic-section { grid-template-columns:1fr; }
 .diagnostic-intro { position:static; }
 .diagnostic-tabs { width:100%; }
 .lab-card { min-height:485px; }
 .values-grid { grid-template-columns:1fr 1fr; }
 .contact-card { grid-template-columns:1fr 1fr; }
}
@media (max-width: 720px) {
 html { scroll-padding-top:84px; }
 .section-shell, .site-footer { width:calc(100% - 34px); }
 .site-header { height:62px; top:9px; width:calc(100% - 20px); border-radius:13px; }
 .site-header .brand-logo { width:120px; height:46px; }
 .main-nav { top:70px; }
 section .kicker { font-size:.76rem; letter-spacing:.075em; }
 .hero { padding-top:111px; padding-bottom:34px; }
 .hero h1 { font-size:clamp(2.72rem,10vw,4.1rem); line-height:1.06; }
 .hero-lede { font-size:1rem; }
 .hero-actions { gap:10px; }
 .hero-actions .button { width:100%; }
 .hero-proof { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:10px; }
 .hero-proof div { display:block; }
 .hero-proof strong { display:block; font-size:1.34rem; }
 .hero-proof span { display:block; font-size:.66rem; }
 .hero-artboard { min-height:340px; border-radius:18px; }
 .artboard-label { top:10px; left:10px; right:10px; padding:9px 10px; }
 .artboard-image { inset:55px 10px 61px; border-radius:10px; }
 .artboard-tags { left:10px; right:10px; bottom:13px; gap:4px; }
 .artboard-tags span,.artboard-tags span:nth-child(2),.artboard-tags span:nth-child(4) { font-size:.62rem; padding:6px 8px; }
 .creative-showcase { grid-template-columns:1fr; gap:12px; padding-block:32px 55px; }
 .showcase-visual { min-height:330px; border-radius:17px; }
 .showcase-copy { padding:28px 23px; border-radius:17px; }
 .showcase-copy h2 { font-size:clamp(2rem,9vw,3.1rem); }
 .split-heading { grid-template-columns:1fr; gap:13px; }
 .split-heading>p { max-width:100%; font-size:1rem; }
 .section-heading { margin-bottom:27px; }
 .system-section,.services-section,.extras-section,.method-section,.diagnostic-section,.plans-section,.lab-section,.references-section,.values-section,.contact-section { padding-block:66px; }
 .system-map { grid-template-columns:1fr; gap:11px; }
 .map-core { grid-column:1; }
 .system-map article { min-height:0; padding:23px; }
 .system-map article svg { margin-top:12px; }
 .service-tab-list { gap:8px!important; }
 .service-tab-list [data-slot=tabs-trigger] { min-width:148px; flex:0 0 auto; min-height:50px; }
 .service-panel { min-height:0; padding:25px 20px; border-radius:17px; }
 .service-panel h3 { font-size:clamp(1.7rem,7vw,2.35rem); }
 .service-cards { grid-template-columns:1fr; }
 .extra-tab-list [data-slot=tabs-trigger] { min-width:158px; flex:0 0 auto; }
 .extra-panel { grid-template-columns:1fr; border-radius:17px; }
 .extra-panel-intro { padding:26px 22px; }
 .extra-list { padding:12px 22px; }
 .method-track { grid-template-columns:1fr; gap:9px; }
 .method-track article { flex-direction:row; align-items:flex-start; gap:16px; min-height:0; padding:20px; }
 .method-number { min-width:28px; }
 .method-track h3 { margin-bottom:6px; }
 .method-principles { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .diagnostic-section { gap:22px; }
 .answer-grid { grid-template-columns:1fr; }
 .plan-tab-list { grid-template-columns:repeat(2,minmax(0,1fr)); }
 .plan-panel { grid-template-columns:1fr; }
 .plan-identity { min-height:0; padding:28px; }
 .plan-identity>p:first-of-type { margin-top:23px; }
 .plan-detail { padding:28px; }
 .business-plan-grid { grid-template-columns:1fr; }
 .business-plan-card { min-height:0; }
 .lab-grid { grid-template-columns:1fr; gap:13px; }
 .lab-card { min-height:450px; padding:24px; border-radius:18px; }
 .reference-grid { grid-template-columns:1fr; }
 .reference-card,.reference-card:nth-child(n+4) { min-height:220px; gap:24px; padding:23px; }
 .values-grid { grid-template-columns:1fr; gap:25px; }
 .value-statement>p { margin-bottom:24px; }
 .contact-card { grid-template-columns:1fr; gap:24px; padding:30px 23px; border-radius:19px; }
 .site-footer { grid-template-columns:1fr; gap:16px; padding-block:29px 45px; }
 .footer-links { gap:15px; }
}
@media (max-width: 390px) {
 .section-shell,.site-footer { width:calc(100% - 28px); }
 .hero h1 { font-size:clamp(2.5rem,10.4vw,3.2rem); }
 .hero-proof { gap:7px; }
 .hero-proof span { font-size:.62rem; }
 .artboard-label span,.artboard-label strong { font-size:.55rem; }
 .method-principles { grid-template-columns:1fr; }
 .contact-card { padding:26px 19px; }
}
@media(prefers-reduced-motion:reduce) { .hero-orb,.hero-artboard:after { animation:none!important; } }
/* La página exportada asigna el fondo al elemento main (no al body). */
main#inicio { background:#f7f8fc; color:var(--imp-ink); }
/* Ajustes de contraste observados en revisión de secciones. */
.site-header .brand-logo,.site-footer .brand-logo { object-fit:cover; object-position:center; }
.lab-card h3, .lab-card .lab-index { color:#fff !important; }
.lab-card .lab-index { color:#bfb8ff !important; }
.arcade-card h3 { color:white!important; }
.print-ribbon p,.print-ribbon span { color:#596277; }
.print-ribbon strong { color:#252a41; }
