/* Shared editorial shell for both portfolio reports. */
:root{
  --report-header-h:76px;
  --report-intro-h:62px;
  --report-index-h:54px;
  --report-width:min(1180px,calc(100% - 48px));
}

body{background:#f5f3ec!important}
.project-shell,.report-shell{overflow:visible!important;background:#f5f3ec!important}

/* Main portfolio header remains identical and visible in the reports. */
body>.site-header{
  position:fixed!important;
  inset:0 0 auto!important;
  z-index:3300!important;
  display:flex!important;
  height:var(--report-header-h)!important;
  padding-inline:max(24px,calc((100vw - 1180px)/2))!important;
  background:rgba(245,243,236,.94)!important;
  border-bottom:1px solid rgba(17,18,20,.13)!important;
  box-shadow:none!important;
  backdrop-filter:blur(16px)!important;
  color:#17191b!important;
  transform:none!important;
  opacity:1!important;
  pointer-events:auto!important;
}
body>.site-header.is-hidden{transform:none!important}
body>.site-header .brand img{display:block!important;width:235px!important;max-width:none!important;height:auto!important;filter:brightness(0)!important}
body>.site-header .nav{display:flex!important;align-items:center!important;gap:25px!important;margin-left:auto!important;color:#34383c!important;font-size:.8rem!important;font-weight:700!important}
body>.site-header .nav a{color:inherit!important;padding-block:10px!important;text-decoration:none!important}
body>.site-header .header-actions{display:flex!important;align-items:center!important;gap:10px!important;margin-left:22px!important}
body>.site-header .linkedin-pill,body>.site-header .profile-mini{width:40px!important;height:40px!important;display:grid!important;place-items:center!important;border:1px solid rgba(17,18,20,.15)!important;border-radius:50%!important;background:#fff!important;color:#17191b!important}
body>.site-header .linkedin-pill svg{width:18px!important;height:18px!important}
body>.site-header .profile-mini{overflow:hidden!important}
body>.site-header .profile-mini img{width:100%!important;height:100%!important;object-fit:cover!important}
body>.site-header .menu-toggle{display:none!important}

/* Persistent report context and reading progress. */
.project-intro{
  position:sticky!important;
  top:var(--report-header-h)!important;
  z-index:3250!important;
  min-height:var(--report-intro-h)!important;
  padding:10px 0!important;
  background:rgba(245,243,236,.98)!important;
  border-bottom:1px solid rgba(17,18,20,.12)!important;
  box-shadow:0 6px 18px rgba(17,18,20,.035)!important;
}
.project-intro .container{width:var(--report-width)!important;min-height:42px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:18px!important}
.project-back{display:inline-flex!important;align-items:center!important;gap:.5rem!important;color:#657d16!important;font-size:.82rem!important;font-weight:800!important;text-decoration:none!important}
.project-label{color:#656a70!important;font-size:.66rem!important;font-weight:800!important;letter-spacing:.14em!important;text-transform:uppercase!important}

.report-index{
  position:sticky!important;
  top:calc(var(--report-header-h) + var(--report-intro-h))!important;
  z-index:3200!important;
  min-height:var(--report-index-h)!important;
  background:rgba(245,243,236,.97)!important;
  border-top:0!important;
  border-bottom:1px solid rgba(17,18,20,.12)!important;
  box-shadow:0 8px 24px rgba(17,18,20,.05)!important;
  backdrop-filter:blur(16px)!important;
}
.report-index-inner{width:var(--report-width)!important;min-height:52px!important;margin:auto!important;display:flex!important;align-items:center!important;gap:6px!important;overflow-x:auto!important;padding:7px 0!important;scrollbar-width:none!important}
.report-index-inner::-webkit-scrollbar{display:none}
.report-index a{position:relative!important;flex:none!important;padding:8px 12px!important;border-radius:999px!important;color:#5a6064!important;font-size:11px!important;font-weight:750!important;letter-spacing:.04em!important;text-decoration:none!important;white-space:nowrap!important;transition:color .2s,background .2s!important}
.report-index a:hover,.report-index a:focus-visible{color:#111214!important;background:#e9ecd9!important;outline:none!important}
.report-index a.active{color:#111214!important;background:#a9c447!important}
.report-progress{position:absolute!important;left:0!important;right:0!important;bottom:-1px!important;height:3px!important;background:rgba(17,18,20,.08)!important}
.report-progress i{display:block!important;width:0;height:100%!important;background:#718b1b!important;box-shadow:0 0 10px rgba(169,196,71,.55)!important;transition:width .12s linear!important}

.section[id],.report-section[id]{scroll-margin-top:calc(var(--report-header-h) + var(--report-intro-h) + var(--report-index-h) + 12px)!important}
.case-disclaimer{max-width:760px;margin:18px 0!important;padding:13px 15px;border-left:3px solid #a9c447;background:rgba(169,196,71,.12);color:inherit!important;font-size:.78rem!important}
.simulated-label{margin-left:auto;padding:.3rem .55rem;border:1px solid currentColor;border-radius:999px;font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;opacity:.8}

/* Balanced light/dark rhythm: preserve intentional dark sections. */
.section-light,.section-stone{color:#17191b!important}
.section-light p,.section-light li,.section-stone p,.section-stone li{color:#565c61!important}
.section-light h1,.section-light h2,.section-light h3,.section-light h4,.section-light strong,.section-light b,.section-stone h1,.section-stone h2,.section-stone h3,.section-stone h4,.section-stone strong,.section-stone b{color:#17191b!important}
.section-light .kicker,.section-stone .kicker,.section-light .eyebrow,.section-stone .eyebrow,.section-light .section-kicker,.section-stone .section-kicker{color:#657d16!important}
.section-dark{background-color:#111214!important;color:#f7f5ee!important}
.section-dark p,.section-dark li{color:rgba(247,245,238,.76)!important}
.section-dark h1,.section-dark h2,.section-dark h3,.section-dark h4,.section-dark strong,.section-dark b{color:#f7f5ee!important}
.section-dark .kicker,.section-dark .eyebrow,.section-dark .section-kicker{color:#b2cf4c!important}

/* Dark surfaces nested inside light sections retain their own contrast. */
.section-light :is(.disclaimer-card,.brand-board,.eg-panel,.dark-card),
.section-stone :is(.disclaimer-card,.brand-board,.eg-panel,.dark-card){color:#f7f5ee!important}
.section-light :is(.disclaimer-card,.brand-board,.eg-panel,.dark-card) :is(h2,h3,h4,strong,b),
.section-stone :is(.disclaimer-card,.brand-board,.eg-panel,.dark-card) :is(h2,h3,h4,strong,b){color:#f7f5ee!important}
.section-light :is(.disclaimer-card,.brand-board,.eg-panel,.dark-card) :is(p,li,span,small),
.section-stone :is(.disclaimer-card,.brand-board,.eg-panel,.dark-card) :is(p,li,span,small){color:rgba(247,245,238,.74)!important}
.section-light .brand-board .nualira-wordmark,.section-stone .brand-board .nualira-wordmark{color:#f7f5ee!important}
.section-light .brand-board .brand-values span,.section-stone .brand-board .brand-values span{color:#f7f5ee!important;border-color:rgba(255,255,255,.18)!important}

/* Light widgets never inherit white text from a parent section. */
.eg-light-saas,.eg-ai-light-widget,.section-light .eg-widget,.section-stone .eg-widget{color:#17191b!important;background:#fff!important}
.eg-light-saas :is(p,small,span),.eg-ai-light-widget :is(p,small,span),.section-light .eg-widget :is(p,small,span),.section-stone .eg-widget :is(p,small,span){color:#565c61!important;text-shadow:none!important}
.eg-light-saas :is(h3,h4,strong,b),.eg-ai-light-widget :is(h3,h4,strong,b),.section-light .eg-widget :is(h3,h4,strong,b),.section-stone .eg-widget :is(h3,h4,strong,b){color:#17191b!important}
.section-dark .eg-widget :is(p,small,span){color:rgba(247,245,238,.72)!important}
.section-dark .eg-widget :is(h3,h4,strong,b){color:#f7f5ee!important}

/* Consistent vertical rhythm and title safety. */
.report-section,.report-root>.section{padding-top:82px!important;padding-bottom:82px!important}
.hero h1,.section-heading h2,.section h2,.report-section h2{line-height:1!important;overflow:visible!important;padding-bottom:.08em!important}
.hero-copy,.section-heading,.section-head{overflow:visible!important}

/* CRM report: neutralise home hero rules inherited through the global stylesheet. */
.report-shell>.hero{min-height:calc(100vh - var(--report-header-h) - var(--report-intro-h) - var(--report-index-h))!important;padding:72px 0 82px!important}
.report-shell>.hero .hero-grid{position:relative!important;grid-template-columns:1.08fr .92fr!important;gap:72px!important;align-items:center!important;min-height:0!important}
.report-shell>.hero .hero-copy{width:auto!important;padding-block:0!important}

/* Wine report: one alignment axis for every editorial block and widget. */
.report-root :is(.section-head,.connect-grid,.feature-matrix,.crm-grid,.role-grid,.tool-grid,.split,.profile-wrap,.journey-line,.checkout-wrap,.roadmap-gallery,.workflow,.wide-image-placeholder,.closing-card,.legal-footer){width:var(--report-width)!important;max-width:1180px!important;margin-left:auto!important;margin-right:auto!important}
.report-root .image-section{width:100%!important;max-width:none!important;margin:0!important;padding-left:max(24px,calc((100vw - 1180px)/2))!important;padding-right:max(24px,calc((100vw - 1180px)/2))!important}
.report-root .section-head{margin-bottom:36px!important}
.report-root .desktop-widget,.report-root .mobile-widget-summary,.report-root .hover-gallery{max-width:1180px;margin-inline:auto}

/* Contexto digital: el argumento abre la sección y las tres claves ocupan una segunda fila. */
.report-root #contexto-digital .split{display:grid!important;grid-template-columns:1fr!important;gap:34px!important}
.report-root #contexto-digital .section-head{width:100%!important;max-width:920px!important;margin:0!important}
.report-root #contexto-digital .kpi-row{width:100%!important;grid-template-columns:repeat(3,minmax(0,1fr))!important}

/* Los componentes claros conservan contraste aunque estén dentro de una sección oscura. */
.report-root .section-dark .eg-widget.eg-light-saas,
.report-root .section-dark .eg-widget.eg-ai-light-widget{background:#fff!important;color:#17191b!important}
.report-root .section-dark .eg-widget.eg-light-saas :is(h3,h4,strong,b),
.report-root .section-dark .eg-widget.eg-ai-light-widget :is(h3,h4,strong,b){color:#17191b!important}
.report-root .section-dark .eg-widget.eg-light-saas :is(p,small,span),
.report-root .section-dark .eg-widget.eg-ai-light-widget :is(p,small,span){color:#565c61!important;text-shadow:none!important}
.report-root .eg-product-ux-widget .eg-pux-story{color:#4b5156!important;text-shadow:none!important}
.report-root #crm .crm-grid article{background:#fff!important;color:#17191b!important}
.report-root #crm .crm-grid article :is(h3,h4,strong,b){color:#17191b!important}
.report-root #crm .crm-grid article :is(p,small,span){color:#565c61!important}

/* Superficies oscuras anidadas en bloques claros y comparación destacada del informe CRM. */
.section-light .compare-grid .featured :is(h3,h4,strong,b,li),
.section-stone .compare-grid .featured :is(h3,h4,strong,b,li){color:#f7f5ee!important}

/* Wine hero: no vertical translation, no clipping and a readable compact composition. */
.report-root .hero.section-dark.print-page{min-height:600px!important;max-height:none!important;height:auto!important;padding:0!important;display:flex!important;align-items:center!important}
.report-root .hero.section-dark.print-page .hero-inner{width:var(--report-width)!important;max-width:1180px!important;min-height:600px!important;margin:auto!important;padding:64px 0!important;align-items:center!important}
.report-root .hero.section-dark.print-page .hero-copy{max-width:680px!important;transform:none!important}
.report-root .hero.section-dark.print-page .hero-copy h1{max-width:680px!important;margin:0 0 16px!important;padding:.06em 0 .12em!important;font-size:clamp(4rem,7vw,7.25rem)!important;line-height:.92!important;letter-spacing:-.065em!important}
.report-root .hero.section-dark.print-page .lead{margin-top:14px!important;font-size:clamp(20px,1.9vw,28px)!important;line-height:1.28!important}
.report-root .hero.section-dark.print-page .hero-support{margin-top:16px!important}
.report-root #resumen.section.section-dark.compact{padding-top:72px!important}
.report-root #resumen.section.section-dark.compact{background:#f5f3ec!important;color:#17191b!important}
.report-root #resumen.section.section-dark.compact :is(h2,h3,strong,b){color:#17191b!important}
.report-root #resumen.section.section-dark.compact p{color:#565c61!important}
.report-root #resumen .pulse-card{background:#fff!important;border-color:rgba(17,18,20,.13)!important;box-shadow:0 12px 32px rgba(17,18,20,.045)!important}
.report-root #resumen .pulse-card span{color:#657d16!important}

body>.footer{padding:24px 0!important;background:#08090a!important;color:rgba(255,255,255,.58)!important;border-top:1px solid rgba(255,255,255,.1)!important}
body>.footer .container{display:flex!important;justify-content:space-between!important;align-items:center!important;gap:20px!important}
body>.footer p{margin:0!important;font-size:.76rem!important}
body>.footer .footer-links{display:flex!important;gap:17px!important;align-items:center!important;flex-wrap:wrap!important}
body>.footer a,body>.footer button{padding:0!important;border:0!important;background:none!important;color:inherit!important;font-size:.75rem!important;text-decoration:none!important}

@media(max-width:1050px){
  body>.site-header .nav{display:none!important;position:fixed!important;inset:var(--report-header-h) 0 auto!important;padding:22px!important;background:#f5f3ec!important;border-bottom:1px solid rgba(17,18,20,.13)!important;flex-direction:column!important;align-items:stretch!important;gap:2px!important}
  body>.site-header .nav.is-open{display:flex!important}
  body>.site-header .menu-toggle{display:block!important;width:44px!important;height:44px!important;border:0!important;background:transparent!important;margin-left:auto!important}
  body>.site-header .menu-toggle span{background:#17191b!important}
}

@media(max-width:900px){
  .report-shell>.hero .hero-grid{grid-template-columns:1fr!important;gap:46px!important}
  .report-root #contexto-digital .kpi-row{grid-template-columns:1fr!important}
}

@media(max-width:720px){
  :root{--report-header-h:68px;--report-intro-h:58px;--report-index-h:54px;--report-width:min(100% - 30px,1180px)}
  body>.site-header{height:var(--report-header-h)!important;padding-inline:15px!important}
  body>.site-header .brand img{width:195px!important;max-width:none!important}
  body>.site-header .header-actions{display:none!important}
  body>.site-header .menu-toggle{display:block!important}
  .project-intro{padding:7px 0!important}
  .project-intro .container{min-height:44px!important;flex-direction:row!important;align-items:center!important;gap:12px!important}
  .project-label{max-width:48%;font-size:.6rem!important;text-align:right}
  .report-index-inner{width:100%!important;padding-inline:15px!important}
  .report-section,.report-root>.section{padding-top:64px!important;padding-bottom:64px!important}
  .report-shell>.hero{padding:58px 0 64px!important}
  .report-shell>.hero .hero-grid{grid-template-columns:1fr!important;gap:42px!important}
  .report-root .hero.section-dark.print-page,.report-root .hero.section-dark.print-page .hero-inner{min-height:520px!important}
  .report-root .hero.section-dark.print-page .hero-inner{padding:80px 0 48px!important}
  .report-root .hero.section-dark.print-page .hero-copy h1{font-size:clamp(3.35rem,15vw,5rem)!important}
  .report-root #resumen.section.section-dark.compact{padding-top:58px!important}
  .report-root .image-section{padding-left:15px!important;padding-right:15px!important}
  body>.footer .container{align-items:flex-start!important;flex-direction:column!important}
}

@media print{
  body>.site-header,.project-intro,.report-index{display:none!important}
}
